我开始研究NoSQL数据库 我认为我的主要概念是将数据存储为“地图”,即作为NoSQL通过唯一ID区分的键值对。
此时我很困惑(与设计数据库时有关)。
这(数据存储为“地图”)是否意味着我们存储在NoSQL集合中的数据必须是“同质的”?
与Map
中的Java
相同,例如,键的类型相同且值都是相同的类型?
NoSQL数据库是否支持参照完整性的概念?或者由于它们被存储为地图,我将不得不这样做 编写代码来手动更新任何相关的集合?
答案 0 :(得分:4)
如果我们谈论MongoDB:
数据库端没有参照完整性强制执行。您必须在应用程序代码中执行此操作。您也可以使用触发器和级联更新/删除。
文档可以是复杂的树状结构,其中键是字符串,值可以是different types。
文件不需要是同质的。同一个集合可以包含任何结构和字段集的文档。