我打算写一份存储联系信息的地址簿。
每个联系人可以拥有无限数量的字段。 主要是字符串和整数。 但也许是对其他对象的引用。
使用带有ORM和OODBMS的RDBMS与文档DBMS(如CouchDB)有什么优缺点。
感谢。
答案 0 :(得分:1)
关系数据库的大多数问题是,如果您有大量表连接到一个或多个表,并且如果您需要一次关闭数据,则必须优化SQL查询以进行连接高效。
在NoSQL数据库中,主要目标是能够快速并横向扩展。有些人确实避免了数据连接,所以你必须自己这样做(通过在内存中提取数据并匹配连接)。 Facebook自己的Cassandra(现在是一个Apache项目)基本上是一个NoSQL数据库系统,它不保证单点故障。
此外,与NoSQL数据库相比,在索引大型文档时,RDBMS索引相对更快(但这可能是有争议的)。
我没有使用CouchDB或MongoDB,所以我无法比较它们。我所知道的是有些内存加入内存(如Redis),这实际上意味着将所有数据从数据库拉到内存(RAM)并进行连接。
我不知道这是不是你想要的。
答案 1 :(得分:0)
考虑将数据写入自定义文本文件。
人们的地址簿很少会超过几百个条目,所以很容易在整个列表中扫描您需要做的任何操作。