17 什么时候不使用Cassandra? 最近有很多关于卡桑德拉的话题。 Twitter,Digg,Facebook等都使用它。 什么时候有意义: 使用Cassandra, 不使用Cassandra,并且 使用RDMS代替Cassandra。 199 database rdbms nosql cassandra
15 使用NoSQL数据存储时遇到了哪些可伸缩性问题?[关闭] 已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅关注一个问题编辑此帖子。 去年关闭。 改善这个问题 NoSQL指的是非关系数据存储,它打破了关系数据库和ACID保证的历史记录。流行的开源NoSQL数据存储包括: 卡桑德拉(表格,用Java编写,由Cisco,WebEx,Digg,Facebook,IBM,Mahalo,Rackspace,Reddit和Twitter使用) CouchDB(用Erlang编写的文档,由BBC和Engine Yard使用) 炸药(键值,用Erlang编写,由Powerset使用) HBase的(键值,用Java编写,由Bing使用) 超表表(表格,用C ++编写,由百度使用) 凯(键值,用Erlang编写) 内存缓存数据库(键值,用C编写,由Reddit使用) MongoDB(用C ++编写的文档,由Electronic Arts,Github,NY Times和Sourceforge使用) Neo4j(图形,用Java编写,一些瑞典大学使用) 伏地魔计划(键值,用Java编写,LinkedIn使用) 雷迪斯(键值,用C编写,由Craigslist,Engine Yard和Github使用) 里亚克(键值,用Erlang编写,由Comcast和Mochi Media使用) 林哥(键值,用Erlang编写,由诺基亚使用) Scalaris(键值,用Erlang编写,由OnScale使用) Terrastore(文档,用Java编写) ThruDB(文档,用C ++编写,由JunkDepot.com使用) 东京内阁/东京暴君(键值,用C编写,由Mixi.jp(日本社交网站)使用) 我想了解您-SO阅读器-使用数据存储已解决的特定问题以及您使用的NoSQL数据存储。 问题: 您使用NoSQL数据存储解决了哪些可伸缩性问题? 您使用了什么NoSQL数据存储? 在切换到NoSQL数据存储之前,您使用什么数据库? 我正在寻找第一手经验,因此,除非您有经验,否则请不要回答。 189 database nosql key-value-store graph-databases distributed-database
4 是否可以在两个不同的集合中生成重复的Mongo ObjectId? 是否可以为两个不同集合中的文档生成完全相同的Mongo ObjectId?我意识到这绝对不可能,但是有可能吗? 无需太具体,我想问的原因是我正在开发的应用程序向我们展示了当选官员的公开资料,他们希望将其转换为我们网站的正式用户。我们为用户和当前不是我们网站成员的民选官员提供单独的收藏集。还有其他各种文档,其中包含有关民选官员的各种数据,所有数据都使用其民选官员ObjectId映射回该人。 创建帐户后,我们仍将突出显示与当选官员相关的数据,但它们现在也是用户集合的一部分,带有相应的用户ObjectId,以将其个人资料映射到与我们的应用程序的交互。 几个月前,我们已经开始将应用程序从MySql转换为Mongo,而在过渡期间,我们为这两种数据类型存储了旧版MySql ID,现在我们也开始在用户中存储当选的官方Mongo ObjectId。文档以映射回民选的官方数据。 我正在考虑仅将新用户ObjectId指定为先前的当选官方ObjectId,以简化操作,但想确保与任何现有用户ObjectId都不冲突。 感谢您的见解。 编辑:发布此问题后不久,我意识到我提出的解决方案不是一个好主意。最好保留我们现有的当前模式,并仅链接到用户文档中当选的官方“ _id”。 187 mongodb database nosql
10 存储时间序列数据,是关系数据还是非关系数据? 我正在创建一个系统,该系统使用SNMP(可能)每5分钟间隔以不同的指标(例如CPU使用率,磁盘使用率,温度等)轮询设备以获取数据。最终目标是以时间序列图的形式向系统用户提供可视化效果。 过去,我曾研究过使用RRDTool,但由于它无限期地存储捕获的数据对我的项目很重要,因此拒绝了它,并且我希望对捕获的数据进行更高级别和更灵活的访问。所以我的问题是真的: 关系数据库(例如MySQL或PostgreSQL)或非关系数据库或NoSQL数据库(例如MongoDB或Redis)在查询图形数据时的性能更好。 关系型 给定一个关系数据库,我将使用一个data_instances表,该表中将存储为所有设备测量的每个指标捕获的数据的每个实例,具有以下字段: 领域: id fk_to_device fk_to_metric metric_value timestamp 当我想为特定设备上的特定指标绘制图形时,我必须查询此单表以过滤掉其他设备,并分析该设备的其他指标: SELECT metric_value, timestamp FROM data_instances WHERE fk_to_device=1 AND fk_to_metric=2 该表中的行数为: d * m_d * f * t 其中d是的数量的装置,m_d是累计度量的数目被记录为所有设备,f是频率在其中数据被轮询和t是总量时间系统已收集数据。 如果用户一年每5分钟记录3台设备的10个指标,那么我们的记录将不足500万条。 指标 如果没有索引fk_to_device并且无法fk_to_metric扫描此不断扩展的表,则将花费太多时间。因此,索引上述字段以及timestamp(用于创建具有局部时间段的图形)都必须是索引。 非关系(NoSQL) MongoDB具有集合的概念,与表不同的是,这些表可以以编程方式创建而无需设置。有了这些,我就可以划分每个设备的数据存储,甚至是每个设备记录的每个指标。 我没有使用NoSQL的经验,也不知道它们是否提供任何增强查询性能的功能(例如索引),但是上一段建议在数据存储在NoSQL下的结构中执行大多数传统的关系查询工作。 未定 具有正确索引的关系解决方案会在一年之内减少吗?还是NoSQL方法的基于集合的结构(与我对存储数据的思维模型匹配)提供了明显的好处? 184 database nosql relational-database time-series non-relational-database
8 DynamoDB与MongoDB NoSQL [关闭] 已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 2年前关闭。 改善这个问题 我正在尝试弄清楚我可以为将来的项目使用什么,我们计划在第一年每月存储大约50万条记录,在接下来的几年中可能会更多,这是一个垂直应用程序,因此不需要使用为此,这就是为什么我决定选择noSQL数据存储的原因。 我想到的第一个选择是mongo db,因为它是一个非常成熟的产品,得到了社区的大力支持,但另一方面,我们得到了一个全新的产品,该产品以最高的性能提供托管服务,我将开发此产品应用程序,但没有维护计划(至少目前是这样),所以我认为这将是一个巨大的优势,因为亚马逊提供了一种灵活的扩展方式。 我主要关心的是查询结构,我还没有研究过dynamoDB查询功能,但是由于是ak / v数据存储,所以我觉得这可能比mongo db有更多限制。 如果有人有将项目从mongoDB迁移到DynamoDB的经验,则任何建议将不胜感激。 172 mongodb amazon-web-services nosql amazon-dynamodb
6 BASE术语解释 的BASE缩写,是用于描述特定的数据库,通常NoSQL数据库的属性。它通常被称为ACID的反义词。 仅有几篇文章涉及BASE的细节,而ACID则有很多文章详细介绍了原子性,一致性,隔离性和耐用性。维基百科只用了几行字样。 这使我对定义有一些疑问: 乙 asically 甲 vailable,s ^经常状态,È ventual一致性 利用本文和我的想象,我对这些属性的解释如下: 基本上可用可以指数据的感知可用性。如果单个节点发生故障,则部分数据将不可用,但整个数据层将保持运行状态。 这种解释是正确的,还是其他含义? 更新:从Mau的答案推论得出,这是否意味着整个数据层始终都在接受新数据,也就是说,没有可以防止立即插入数据的锁定方案? 软状态:我只能找到需要定期刷新的数据概念。如果不刷新,数据将过期或被删除。 自动删除数据库中的数据对我来说很奇怪。 过期或过时的数据更有意义。但是这个概念将适用于任何类型的冗余数据存储,而不仅仅是NoSQL。那它还能描述其他东西吗? 最终的一致性意味着,如果有足够的时间,更新将最终传播到所有服务器。 我很清楚这个属性。 有人可以详细解释这些属性吗? 还是仅仅是牵强附会,毫无意义的首字母缩略词,指的是化学中发现的酸和碱的概念? 170 database nosql terminology definition base-db
9 什么是NoSQL?它如何工作?它提供什么好处?[关闭] 已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 6年前关闭。 改善这个问题 我一直在听有关NoSQL的事情,由于数据库交互通常是提高网络速度的瓶颈,因此它最终可能会替代SQL DB存储方法。 所以我有几个问题: 到底是什么 它是如何工作的? 为什么它比使用SQL数据库更好?那有什么好呢? 该技术是否太新而无法开始实施,还是值得一看? 168 database nosql
6 如何清空redis数据库? 在过去的几天里,我一直在使用redis(并为其添加一些乐趣),我想知道是否有一种方法可以轻松清空数据库(删除设置,现有键...)。 。 在测试期间,我创建了具有很多成员的多个集合,甚至创建了我不记得名字的集合(但是我怎么能列出这些人呢?)。 关于如何摆脱所有这些的任何想法吗? 164 database nosql redis
9 NoSql与关系数据库 最近,NoSQL得到了极大的普及。 与传统的RDBMS相比,NoSQL有何优势? 158 database database-design nosql relational-database rdbms
6 什么是BSON,它与JSON到底有什么不同? 我只是从MongoDB开始,我注意到的一件事是它使用BSON在内部存储数据。但是,关于BSON是什么以及在MongoDB中如何使用BSON的文档尚不清楚。有人可以向我解释吗? 158 json mongodb bson nosql
30 是否有任何符合ACID的NoSQL数据存储? 想要改善这篇文章吗?提供此问题的详细答案,包括引文和答案正确的解释。答案不够详细的答案可能会被编辑或删除。 是否有任何符合ACID的NoSQL数据存储? 156 database nosql acid
4 NoSQL-MongoDB与CouchDB [关闭] 已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引文回答。 4年前关闭。 改善这个问题 对于NoSQL运动,我是一个完全的菜鸟。我听说过很多有关MongoDB和CouchDB的信息。我知道两者之间存在差异。在进入NoSQL的第一步时,您建议学习哪些内容? 154 mongodb couchdb nosql
9 NoSQL用例[关闭] 已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 4年前关闭。 改善这个问题 最近,NoSQL在我们的行业中引起了很多关注。我对人们在关系数据库存储上使用最佳用例的想法非常感兴趣。是什么促使开发人员认为特定的数据集更适合NoSQL解决方案。我对MongoDB和CouchDB特别感兴趣,因为它们似乎在PHP开发方面获得了最多的报道,这是我的重点。 144 sql mongodb couchdb relational-database nosql
12 MongoDB:如何用一个命令更新多个文档? 我很惊讶地发现以下示例代码仅更新一个文档: > db.test.save({"_id":1, "foo":"bar"}); > db.test.save({"_id":2, "foo":"bar"}); > db.test.update({"foo":"bar"}, {"$set":{"test":"success!"}}); > db.test.find({"test":"success!"}).count(); 1 我知道我可以循环浏览并不断更新,直到它们都被更改为止,但这似乎效率很低。有没有更好的办法? 144 mongodb document nosql
8 什么时候应该使用NoSQL数据库而不是关系数据库?可以在同一站点上同时使用两者吗? 使用NoSQL数据库有什么优势?我最近阅读了很多关于它们的文章,但是我仍然不确定为什么要实现它们,以及在什么情况下我想使用它们。 141 mongodb couchdb nosql