2010-07-21 58 views
1

我打算写一个存储联系信息的地址簿。我应该使用什么样的数据库系统?

每个联系人可以有无限数量的字段。 主要是字符串和整数。 但也许引用其他对象。

使用带ORM的RDBMS与OODBMS与文档DBMS(如CouchDB)相比有哪些优缺点?

谢谢。

回答

1

关系数据库的大多数问题是,如果你有大量的表连接到一个或多个表,并且如果你需要关闭一次数据,你将不得不优化你的SQL查询以使加入高效。

NoSQL数据库中,主要目标是能够快速和横向扩展。有些方法可以避免数据连接,因此您必须自己完成此操作(通过在内存中提取数据并匹配连接)。 Facebook自己的Cassandra(现在是一个Apache项目)基本上是一个NoSQL数据库系统,它保证没有单点故障。

此外,与索引大型文档相比,RDBMS索引相对于NoSQL数据库来说速度相对较快(但存在争议)。

我还没有玩过CouchDB或MongoDB,所以我无法比较它们。我所知道的是有些内存加入(如Redis),这实际上意味着将所有数据从数据库提取到内存(RAM)并进行连接。

我不知道这是你在找什么。

0

考虑将数据写入自定义文本文件。

人们的地址簿很少能够通过几百个条目,所以很容易扫描整个列表以查看您需要执行的任何操作。

+0

这不会真的帮助我。 地址簿将用于存储大量的联系人,并且会被频繁查询,因此性能将成为关键。 – 2010-07-22 12:56:42

相关问题