在我的项目中:
- 不会修改数据(仅查询)。
- 将有超过1.000.000个数据实例。
- 查询效果至关重要。
- 如果使用SQL,它将是一个包含7列的单个表。 (没有关节)
醇>
NoSQL中也使用了不同的分类方法。下面给出了一些例子:
专栏: Accumulo,Cassandra,HBase
文档: Clusterpoint,Couchdb,Couchbase,MarkLogic,MongoDB
键值: Dynamo,FoundationDB,MemcacheDB,Redis,Riak,FairCom c-treeACE
图表: Allegro,Neo4J,OrientDB,Virtuoso,Stardog
来源:http://en.wikipedia.org/wiki/NoSQL#cite_note-7
首先,数据库系统是否确实为这种情况带来了可观察到的性能差异? 如果它是,那么,请你解释哪一个更适合我的项目SQL或NoSQL,如果NoSQL那么分类方法呢?
提前谢谢
答案 0 :(得分:3)
我目前正在参与一个项目,以建立一个"标准"拥有大量数据的数据库。我们首先在SQL中实现,以查看查询的性能。一旦完成,我们就解决了性能问题。
这有多种原因,但仅举几例:
标准SQL很容易在多个实例中实现和标准化(截至目前)
如果您了解SQL,请快速实施。为了节省时间并使项目继续进行。
有大量关于SQL实现的信息。
我无法回答关于NoSQL的问题,但希望有人可以填补我。
答案 1 :(得分:1)
您需要问的重要问题是您将要执行的查询类型。例如,ClusterPoint提供实时聚合,因此如果您需要结果分组和提取摘要,它将为您提供出色的性能。
对于常规键/值,它们都应该表现得非常好,所以选择一个你最熟悉的键。