SQL和NoSQL哪一个更适合这种情况,为什么?

时间:2014-08-01 14:13:38

标签: sql database nosql

在我的项目中:

  
      
  1. 不会修改数据(仅查询)。
  2.   
  3. 将有超过1.000.000个数据实例。
  4.   
  5. 查询效果至关重要。
  6.   
  7. 如果使用SQL,它将是一个包含7列的单个表。 (没有关节)
  8.   

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那么分类方法呢?

提前谢谢

2 个答案:

答案 0 :(得分:3)

我目前正在参与一个项目,以建立一个"标准"拥有大量数据的数据库。我们首先在SQL中实现,以查看查询的性能。一旦完成,我们就解决了性能问题。

这有多种原因,但仅举几例:

  1. 标准SQL很容易在多个实例中实现和标准化(截至目前)

  2. 如果您了解SQL,请快速实施。为了节省时间并使项目继续进行。

  3. 有大量关于SQL实现的信息。

  4. 我无法回答关于NoSQL的问题,但希望有人可以填补我。

答案 1 :(得分:1)

您需要问的重要问题是您将要执行的查询类型。例如,ClusterPoint提供实时聚合,因此如果您需要结果分组和提取摘要,它将为您提供出色的性能。

对于常规键/值,它们都应该表现得非常好,所以选择一个你最熟悉的键。