Tag: 键值存储

无模式数据库系统的吸引力是什么?

我一直听到很多关于无模式(通常是分布式)的数据库系统的讨论,比如MongoDB,CouchDB,SimpleDB等等。 虽然我可以理解他们可能是有价值的某些目的,在我的大多数应用程序中,我试图持有具有特定types的特定数量的字段的对象,我只是自动思考在关系模型中。 我一直在考虑具有唯一整数ID,空/非空字段,SQL数据types和select查询来查找集的行。 虽然我被这些新系统的分布式本质和简单的JSON / RESTful接口所吸引,但是我不明白如何松散地input键/值哈希将帮助我进行开发。 为什么松散types的无模式系统能够保持干净的数据集? 我怎么能find所有date在x和y之间的项目,当他们可能没有date? 有没有join的概念? 我知道很多系统有自己的差异和优势,但是我想知道范式的差异。 我想这是一个开放式的问题,但也许社区的答案和他们亲眼看到这些系统的优点的方式将有助于启发我和其他人什么时候我想要利用这些(公认的更多臀部)系统,而不是传统的RDBMS。

Redis密钥中冒号的目的是什么?

我正在学习如何将Redis用于我的项目。 有一件事,我没有得到我的头是什么冒号密钥用于名称。 我已经看到这些关键的名字: users:bob color:blue item:bag 冒号是否将密钥分成不同的类别,并使密钥更快find? 如果是这样,你可以使用多个冒号命名键将其分成子类别? 最后,他们与在Redis服务器中定义不同的数据库有什么关系? 我已经通过文档阅读,并做了大量的谷歌search这个问题,但奇怪的是我找不到任何讨论这个问题。

在Node.js中使用轻量级JavaScript DB

任何人都知道一个轻量级的,耐用的数据库,用Javascript写的,可以用Node.js。 我不希望像Mongo或Couch这样的(伟大的)解决scheme的“重量”。 一个简单的内存JS数据库能够以磁盘forms保存为文件就足够了。 我只会用它来存储less量的数据。 要求: 可以使用node.js服务器应用程序运行 可以将整个数据库保存到磁盘并在发生故障后恢复 不需要primefaces写入或交易支持 快速查询和sorting会很好 只需要支持小数据量,总共高达1MB 到目前为止,我已经遇到了TAFFY db,但是它在Node.js中似乎并没有被优化。 有人看到我在找什么吗? 谢谢

您使用NoSQL数据存储时遇到了哪些可伸缩性问题?

NoSQL是指与关系数据库和ACID保证的历史相关的非关系数据存储。 stream行的开源NoSQL数据存储包括: Cassandra (表格,用Java编写,由思科,WebEx,Digg,Facebook,IBM,Mahalo,Rackspace,Reddit和Twitter使用) CouchDB (文档,用Erlang编写,由BBC和Engine Yard使用) Dynomite (键值,用Erlang编写,由Powerset使用) HBase (键值,用Java编写,Bing使用) Hypertable (表格,用C ++编写,百度使用) 凯 (键值,写在Erlang) MemcacheDB (键值,用C语言编写,由Reddit使用) MongoDB (文档,用C ++编写,由Electronic Arts,Github,NY Times和Sourceforge使用) Neo4j (graphics,用Java编写,由瑞典一些大学使用) Project Voldemort (由Java使用的由Java编写的键值) Redis (键值,用C语言编写,由Craigslist,Engine Yard和Github使用) Riak (键值,用Erlang编写,由Comcast和Mochi Media使用) Ringo (诺基亚使用的Erlang编写的键值) Scalaris (关键值,用Erlang编写,由OnScale使用) Terrastore (文档,用Java编写) ThruDB (文档,用C ++编写,由JunkDepot.com使用) 东京内阁/东京暴君 (密钥值,用C语言编写,由Mixi.jp(日本社交网站)使用) 我想知道您的SO读者已经使用数据存储和您使用的NoSQL数据存储解决了哪些具体问题。 问题: 您使用NoSQL数据存储来解决哪些可伸缩性问题? 您使用了哪些NoSQL数据存储? 在切换到NoSQL数据存储之前,您使用了哪个数据库? 我正在寻找第一手的经验,所以请不要回答,除非你有这个。