您的位置:网站首页 > 热门源码 > 正文

2010年10大热门的开源NoSQL服务器软件2014年12月24日星期三

类别:热门源码 日期:2014-12-24 19:19:12 人气: 来源:
灵界打击,lindsay,hayw,acome书包网,光年是什么的单位,161dyw.com,小儿难养分集剧情,funky,forses,深圳小王子king,泷泽萝拉初体验,海波依尔,www.kuulee.c,乡村爱情第五部剧情,三国杀曹洪,鞍山家讯网,psp极品飞车13金手指,梦见自己剃光头,北京买春信息,918cao.com,处屋伴侣,红颜露水txt,七宝空间,天地大烘炉,撒旦哥哥放开我,带三四的成语,传世传说,中山组工网,双高干文推荐,虎皮丝足鱼哪里钓,烈女斗夫,魔能之静电,沈阳医保女,蜗居全集百度影音,机器人男友别乱来,纯情大小姐的贴身保镖,保姆妈妈剧情介绍,父子同心国语,跑狗atm,富春山居,扫雪煮茶,日本街头拔毛,僵尸王子在校园,千金之珠任务,91huang,csol鬼服,sex8.c,杰出的反义词,李长江简历,314bo.com

  11月23日开源中国源创会年度(万豪酒店)千人盛典正在报名中

  NoSQL,就是反SQL,是一项全新的数据库革新运动,特别是在 2010 年得以迅猛发展。而各种开源的 NoSQL 软件突然间涌现在你面前。目前似乎没有对 NoSQL 给出一个标准的定义,也没有相应的规范,但从这些软件可以看出 NoSQL 软件的共同点:运行、K/V存储结构,这之前有人称之为集中式缓存服务,其实你可以把二者等同起来。

  那么多的 NoSQL 软件,到底哪些更受欢迎呢?为此,开源中国社区为你评选出10款2010年最受关注的 NoSQL 软件。

  1. Cassandra

  Cassandra在 2010 年出尽风头,但最终都以失败告终,包括 Twitter 以及 Digg 的案例使我们不得不对 NoSQL 技术是否成熟,是否能在大规模系统中应用产生了怀疑。但这并不影响 Cassandra 拔得头筹,因为还有 Facebook 的支持。

  Apache Cassandra是一套开源分布式Key-Value存储系统。它最初由Facebook开发,用于储存特别大的数据。Facebook目前在使用此系统。

  主要特性:

  Cassandra 采用 Java 开发,Apache 授权协议。

  2. memcached

  memcached是老牌的缓存服务的领头羊,目前国内使用该系统的网站非常的多,在这基础上还有国内开发的memcachedb是 memcached 支持持久化存储。

  memcached是一套分布式的快取系统,当初是Danga Interactive为了LiveJournal所发展的,但目前被许多软件(如MediaWiki)所使用。不过,memcached 缺乏认证以及安全管制

  memcached 采用 C 语言开发,可在 Linux 系统下使用,采用 BSD 授权。

  3. Membase

  Membase是 NoSQL 家族的一个新的重量级的,其完全兼容 memcached 的方式,有望笼络 memcached 的用户群。Membase 的可伸缩性、集群、复制以及管理方便等特性又是 memcached 无法匹敌的。

  Membase 同样采用 C 语言开发,支持 Windows 和 Linux 系统,使用 Apache 授权协议。

  接下来介绍两款国产的 NoSQL 软件:

  4. Tair

  Tair是由淘宝网自主开发的分布式Key/Value结构数据存储系统,在淘宝网有着大规模的应用。您在登录淘宝、查看商品详情页面或者在淘江湖和好友“捣浆糊”的时候,都在直接或间接地和Tair交互。

  Tair 采用 C 语言开发,支持 Linux 系统,使用 GPLv2 授权协议。

  5. BeansDB

  BeansDB是豆瓣网开发的一个主要针对大数据量、高可用性的分布式Key Value存储系统,采用HashTree和简化的版本号来快速同步最终一致性(弱),一个简化版的Dynamo。

  它采用类似memcached的去中心化结构,在客户端实现数据由。目前只提供了 Python版本的客户端,其它语言的客户端可以由memcached的客户端稍加得到。

  主要特性包括:

  BeansDB 采用 Python 语言开发,支持 Linux 系统,使用 BSD 授权协议。

  6.

  是一个高性能的key-value数据库。的 出现,很大程度补偿了memcached这类keyvalue存储的不足,在部分场合可以对关系数据库起到很好的补充作用。它提供了Python,Ruby,Erlang,PHP客户端,使用很方便。

  Redis 的短板:

  Redis 采用 C 语言开发,支持 Linux 系统,使用 BSD 授权协议。

  7. CouchDB

  Apache CouchDB是一个面向文档的数据库管理系统。它提供以 JSON 作为数据格式的 REST 接口来对其进行操作,并可以通过视图来文档的组织和呈现。 CouchDB 是 Apache 基金会的开源项目。

  CouchDB落实到最底层的数据结构就是两类B+Tree 。

  不过最近有消息说 CouchDB 将走一条不同于 NoSQL 的子,具体情况如何我们只能拭目以待。

  CouchDB 是用ErLang开发的哦,跨平台支持,Apache 授权协议。

  8. Tokyo Cabinet

  Tokyo Cabinet是一个DBM的实现。这里的数据库由一系列key-value对的记录构成。key和value都可以是任意长度的字节序列,既可以是二进制也可以是字符串。这里没有数据类型和数据表的概念。

  当做为Hash表数据库使用时,每个key必须是不同的,因此无法存储两个key相同的值。提供了以下访问方法:提供key,value参数来存储,按 key删除记录,按key来读取记录,另外,遍历key也被支持,虽然顺序是任意的不能被。这些方法跟Unix标准的DBM,例如BM,NDBM 等等是相同的,但是比它们的性能要好得多(因此可以替代它们)

  当按B+树来存储时,拥用相同key的记录也能被存储。像hash表一 样的读取,存储,删除函数也都有提供。记录按照用户提供的比较函数来存储。可以采用顺序或倒序的游标来读取每一条记录。依照这个原理,向前的字符串匹配搜 索和整数区间搜索也实现了。另外,B+树的事务也是可用的。

  Tokyo Cabinet 采用 C 语言开发,支持 Linux 系统,使用 LGPL 授权协议。

  9. OrientDB

  Orient DB 是一个可伸缩的文档数据库,支持 ACID 事务处理。使用 Java 5 实现。OrientDB 最强的一个地方是可以使用 类 SQL 的查询语句进行数据查询。

  OrientDB 采用 Java 语言开发,跨平台支持,使用 Apache 授权协议。

  10. Hibari

  (在日语中意思为“云雀”)是一个专为高可靠性和大数据存储的数据库引擎,可用于云计算中,例如 webmail、SNS 和其他要求T/P级数据存储的中。Hibari 支持 Java, C/C++, Python, Ruby, 和 Erlang 语言的客户端。

  Hibari 并不是一个关系数据库,主要是通过 key-value 的方法进行数据存储。

  Hibari 使用 ErLang 语言开发,支持 Linux/BSD 系统,Apache 授权协议。

  是否意犹未尽?更多的 NoSQL 开源项目请看此处。

  MongoDB,呵呵,哪儿有说的那么好。恩,满嘴嚷嚷着说其好,又说不出缺点的,大多数是Hello World水平的人。

  断电丢数据问题是个地雷,动不动还飙内存,如果是Win下面,磁盘碎片特别多..其他的小Issue就更别说了。

  恨不该啊恨不该,NoSQL真的远没成熟,目前也就适合做做互联网项目--反正数据不值钱,丢了就丢了。

  MongoDB,呵呵,哪儿有说的那么好。恩,满嘴嚷嚷着说其好,又说不出缺点的,大多数是Hello World水平的人。

  断电丢数据问题是个地雷,动不动还飙内存,如果是Win下面,磁盘碎片特别多..其他的小Issue就更别说了。

  恨不该啊恨不该,NoSQL真的远没成熟,目前也就适合做做互联网项目--反正数据不值钱,丢了就丢了。

  如果是断电了或者出什么问题,就敢mysql之类的东西就不丢失数据或者损坏数据?

  MongoDB,呵呵,哪儿有说的那么好。恩,满嘴嚷嚷着说其好,又说不出缺点的,大多数是Hello World水平的人。

  断电丢数据问题是个地雷,动不动还飙内存,如果是Win下面,磁盘碎片特别多..其他的小Issue就更别说了。

  恨不该啊恨不该,NoSQL真的远没成熟,目前也就适合做做互联网项目--反正数据不值钱,丢了就丢了。

  如果是断电了或者出什么问题,就敢mysql之类的东西就不丢失数据或者损坏数据?

  呵呵,我敢,MySQL不会把全部数据损坏。

  但是呢,俺们当时遇到过一次,测试机,不小心碰掉了插头,恩..全部坏掉,全丢了。

  好吧,也许你觉得这个问题不是MongoDB的Issue,那么更让我们头疼的是,生产服务器重启之后,MongoDB的数据丢失。这是最无法的。

  哈哈,所有的IT应用都有风险,只是说风险的控制和发生的频率多大而已,否则就不会有那么多的多机热备机制了。

  另一个,感觉NoSQL并不是那么脆弱,比如google的BigTable就是很好的应用,Cassandra刚刚起步,而且得到Apache的支持,肯定能成大气,反而是其它的方案,倒是有点悬。

  memcached其实不算是NoSQL,而是属于缓存方案,NoSQL也不是简单的K-V模式,感觉这篇文章有点了

  哈哈,所有的IT应用都有风险,只是说风险的控制和发生的频率多大而已,否则就不会有那么多的多机热备机制了。

  另一个,感觉NoSQL并不是那么脆弱,比如google的BigTable就是很好的应用,Cassandra刚刚起步,而且得到Apache的支持,肯定能成大气,反而是其它的方案,倒是有点悬。

  memcached其实不算是NoSQL,而是属于缓存方案,NoSQL也不是简单的K-V模式,感觉这篇文章有点了

  如果只是要做Data Grid和Cache神马的,Oracle Coherence是个非常成熟的解决方案,完全工业级别的。

  如果只是应用里要做大规模的Key-Value存储,BerkeleyDB绝对是个好选择,亦是工业级别的。

  Oracle的这两个东西,都成熟了很多年了,只要客户有钱,一切都不是问题。

  楼上的,BerkeleyDB在顺序IO访问表现还尚可,但随机IO访问时,性能下降很快阿。我测试下来的情况,不容乐观。

  oracle coherence,谁用谁知道,replication模式数据上了8g,系统就开始神经质了,不是很稳定,甚至还会导致整个cluster挂掉。

  distributed 模式,技术细节不方便说,但绝对也不是百分之百那么好的。

  我去oracle技术大会站咨询过这些,只是国内用的人似乎较少,oracle都不肯派出开发组人来回答,最终草草了事。

  不过呢,能用上coherence的项目,呵呵,可靠性方面的要求,预算款的金额,哪里是Mongobd之类可以掺合的呢?

  你说的这些本来就不是该NoSQL干的事,至于MongoDB,有视觉中国成功运用的例子,不用怀疑软件本身。你提出的问题只是特定领域,本来就应该果断选择关系型数据库的。Oracle用的舒心是要版权费用的,不应该和开源产品放在一起比较,因为开源产品购买了技术支持也一样舒心。

关键词:热门源码
0
0
0
0
0
0
0
0
下一篇:没有资料

网友评论 ()条 查看

姓名: 验证码: 看不清楚,换一个

推荐文章更多

热门图文更多

最新文章更多

关于联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助

CopyRight 2002-2012 技术支持 源码吧 FXT All Rights Reserved

赞助合作: