Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database NoSQL技术、用例、优缺点_Database_Nosql_Scalability_Bigdata - Fatal编程技术网

Database NoSQL技术、用例、优缺点

Database NoSQL技术、用例、优缺点,database,nosql,scalability,bigdata,Database,Nosql,Scalability,Bigdata,我对非关系数据库非常感兴趣,但由于许多原因,我只熟悉其中的一小部分。因此,我想列出您在基本用例中使用的所有NoSQL技术及其优缺点。 如果您在使用某些技术、有趣的经验等工作期间遇到一些具体问题,欢迎您与社区分享 就我个人而言,我与: Mongodb: 用例:在我看来,如果您需要良好的聚合特性,自动复制是最好的方法之一。规模大。有很多特性可以像日常使用的数据库一样使用它,如果出于某种原因您不想使用SQL解决方案,Mongo可能是一个不错的选择。此外,如果您需要动态查询,mongo也很不错。mon

我对非关系数据库非常感兴趣,但由于许多原因,我只熟悉其中的一小部分。因此,我想列出您在基本用例中使用的所有NoSQL技术及其优缺点。

如果您在使用某些技术、有趣的经验等工作期间遇到一些具体问题,欢迎您与社区分享


就我个人而言,我与:

Mongodb:

用例:在我看来,如果您需要良好的聚合特性,自动复制是最好的方法之一。规模大。有很多特性可以像日常使用的数据库一样使用它,如果出于某种原因您不想使用SQL解决方案,Mongo可能是一个不错的选择。此外,如果您需要动态查询,mongo也很不错。mongodb还支持索引——这也是一个重要的特性

优点:快速,良好的规模,易于使用,内部地理空间索引

缺点:写操作相对较慢,阻止原子操作会产生很多问题。内存消耗进程可能“吃掉”所有可用内存

Couchdb:

用例:我在类似Wiki的项目中使用它,我认为对于这种情况,它是一个完美的数据库。在更新过程中,每个文档都会自动保存在新版本中,这有助于查看所有更改。用于积累、偶尔更改的数据,在这些数据上运行预定义的查询

优点:易于使用,面向REST的界面,版本

缺点:当文档数量相当大(超过50万)时,性能会出现问题,有点纯粹的查询功能(添加Lucene可以解决这个问题)

SimpleDB:

用例:这是来自亚马逊的数据服务,是他们提供的所有东西中最便宜的。功能非常有限,所以如果您想使用Amazon服务,主要用例是使用它,但支付的费用尽可能少

优点:价格便宜,所有数据都像文本一样存储-操作简单,使用方便


缺点:非常有限(文档大小、集合大小、属性计数、属性大小)。所有以文本形式存储的数据在按日期或数字排序时也会产生额外的问题(因为它使用字典排序,在保存日期或数字时需要一些解决方法)。

Cassandra

如果写作是你的主要目标,那么Cassandra是一个完美的解决方案,它的设计目的是写很多东西(在某些情况下,写作可能比阅读更快),所以它非常适合记录日志。它对数据分析也非常有用。除了卡桑德拉建立了地理分布特征

优势由Apache(良好的社区和高质量)支持,编写速度快,没有单点故障。扩展时易于管理(易于部署和扩展群集)

缺点索引实现有问题,按索引查询有一些限制,如果使用索引插入,性能会降低。流数据传输问题