什么是文档数据库?
定义的文档数据库
文档数据库是一种非关系数据库,旨在将数据作为类 JSON 文档存储和查询。文档数据库让开发人员可以使用他们在其应用程序代码中使用的相同文档模型格式,更轻松地在数据库中存储和查询数据。文档和文档数据库的灵活、半结构化和层级性质允许它们随应用程序的需求而变化。文档模型可以很好地与目录、用户配置文件和内容管理系统等使用案例配合使用,其中每个文档都是唯一的,并会随时间而变化。文档数据库支持灵活的索引、强大的临时查询和文档集合分析。
在以下示例中,类 JSON 文档描述图书。
[
{
"year" : 2013,
"title" : "Turn It Down, Or Else!",
"info" : {
"directors" : [ "Alice Smith", "Bob Jones"],
"release_date" : "2013-01-18T00:00:00Z",
"rating" : 6.2,
"genres" : ["Comedy", "Drama"],
"image_url" : "http://ia.media-imdb.com/images/N/O9ERWAU7FS797AJ7LU8HN09AMUP908RLlo5JF90EWR7LJKQ7@@._V1_SX400_.jpg",
"plot" : "A rock band plays their music at high volumes, annoying the neighbors.",
"actors" : ["David Matthewman", "Jonathan G. Neff"]
}
},
{
"year": 2015,
"title": "The Big New Movie",
"info": {
"plot": "Nothing happens at all.",
"rating": 0
}
}
]
使用案例
内容管理
文档数据库是内容管理应用程序的一个绝佳选择,例如博客和视频平台。通过文档数据库,应用程序跟踪的每个实体都可以存储为单个文档。 随着需求的发展,对于开发人员来说,可以使用文档数据库更直观地更新应用程序。此外,如果数据模型需要更改,则只需要更新受影响的文档。不需要更新架构,也不需要对数据库停机时间进行更改。
目录
文档数据库在存储目录信息方面高效且有效。 例如,在电子商务应用程序中,不同的产品通常具有不同数量的属性。在关系数据库中管理数千个属性效率较低,并且阅读性能会受到影响。使用文档数据库,可以在单个文档中描述每个产品的属性,以方便管理和加快阅读速度。更改一个产品的属性不会影响其他产品。
AWS 上的文档数据库
Amazon DocumentDB(兼容 MongoDB)
Amazon DocumentDB(兼容 MongoDB)是快速、可扩展、高度可用且完全托管的文档数据库服务,支持 MongoDB 工作负载。开发人员可以使用相同的 MongoDB 应用程序代码、驱动程序和工具来运行、管理和扩展 Amazon DocumentDB 上的工作负载,并获得改进的性能、可扩展性和可用性,而无需费心管理底层基础设施。