近年来, NoSQL在IT界着实火了一把。不仅仅在互联网领域,越来越多的企业应用中,NoSQL也成为关系数据库管理系统(RDBMS)一种替代选项。如今,市面上有很多NoSQL解决方案,而MongoDB是其中最为流行的解决方案。
并行数据库是指那些在无共享的体系结构中进行数据操作的数据库系统。这些系统大部分采用了关系数据模型并且支持SQL语句查询,但为了能够并行执行SQL的查询操作,系统中采用了两个关键技术:关系表的水平划分和SQL查询的分区执行。
说到大数据,不得不提的就是阿里巴巴。这家全球领先的电子商务企业,每天处理的数据量是其他任何公司都无法比拟的,它也正在转型成为一家真正意义上的数据公司——MySQL就是阿里巴巴转型的重要武器。曾经采访过阿里的一位数据库架构师,他认为阿里将开源MySQL的性能达到最佳状态,超越任何关系型数据库和NoSQL。
BigTable类数据库系统(HBase,Cassandra等)是为了解决海量数据规模的存储需要设计的。这里说的海量数据规模指的是单个表存储的数据量是在TB或者PB规模,单个表是由千亿行*千亿列这样的规模组成的。提到这个数据规模的问题,不得不说的就是现在在NoSQL市场中,最火的四种NoSQL系统依次是MongoDB,Redis,Cassandra,HBase。
Rick Branson是Instagram基础架构软件工程师,他在接受DataStax联合创始人Matt Pfeil采访时表示:随着数据量的快速增长,Redis已不再是他们的最佳使用对象,他们正在大量使用Cassandra。
10gen最近宣布限量发行其MongoDB备份服务,该服务提供了增量备份和指定时间点的恢复功能。为了备份或恢复MongoDB,我们一般会使用mongodump和mongorestore工具。我们也可以选择使用--oplog获取指定时间点的快照。然而,每次备份整个数据库将消耗更多的时间和硬盘空间。10gen的新服务正是由此切入——提供支持按照指定时间点恢复的持续增量备份功能。同时,作为一个基于云的备份服务,用户可以按需支付,而不必提前规划存储容量。
现在看起来可能是一团糟,但是未来却是一片光明。在商业领域,NoSQL也有相应的闪光点。这会是美好的一天。软件架构师们屏住呼吸,等待冠军的出现,以及在谈到使用NoSQL解决方案工作时,标准将会是规范的。
Cloudant公司提供了分布式的数据即服务功能(DBaaS)。公司旗下的员工由来自美国波士顿和英国的布里斯托的组成,他们当中有的是参与了CERN(欧洲核子研究中心)的大型强子对撞机项目的优秀科学家。Cloudant公司专为那些需要NoSQL数据库但不想自己进行管理的企业提供了托管服务。
本月初,甲骨文公司发布了正式版的MySQL 5.6数据库(参考:甲骨文发布最新MySQL 5.6版 ),其中增加了一些NoSQL特性,即通过Memcached API对InnoDB的灵活NoSQL访问,提供了InnoDB数据的简单、关键值查找。然而在一些业内人士看来,MySQL 5.6的NoSQL功能却形如“鸡肋”。
系统的可扩展性是推动NoSQL运动发展的的主要理由,包含了分布式系统协调,故障转移,资源管理和许多其他特性。这么讲使得NoSQL听起来像是一个大筐,什么都能塞进去。尽管NoSQL运动并没有给分布式数据处理带来根本性的技术变革,但是依然引发了铺天盖地的关于各种协议和算法的研究以及实践。正是通过这些尝试逐渐总结出了一些行之有效的数据库构建方法。在这篇文章里,我将针对NoSQL数据库的分布式特点进行一些系统化的描述。
在线博彩行业在英国有着非常大的市场,其中博彩公司WinUnited旗下的YouWin.com就是非常著名的一家。据记者了解,该公司使用10gen旗下的开源NoSQL数据库MongoDB实现了实时博彩系统的升级。
这篇文章由Datasalt的创始人Ivan de Prado和Pere Ferrera提供,Datasalt是一家专注于大数据的公司,推出了Pangool和Spoilt SQL Big Data等开源项目。在这篇文章中,通过BBVA信用卡支付的例子详解了云计算中的低延时方案。
HBase是一个类似Bigtable的分布式数据库,它的大部分特性和Bigtable一样,是一个稀疏的、长期存储的(存在硬盘上)、多维度的排序映射表。这张表的索引是行关键字、列关键字和时间戳。每个值是一个不解释的字符数组,数据都是字符串,没有类型。用户在表格中存储数据,每一行都有一个可排序的主键和任意多的列。由于是稀疏存储的,所以同一张表里面的每一行数据都可以有截然不同的列。
据首版产品发布一年之后,甲骨文在今天发布了最新的Oracle NoSQL数据库 2.0,该数据库是一款基于BerkeleyDB的key-value NoSQL数据库,主要用于处理企业大数据挑战,如图片、文档存储。
本文英文原文发表于知名技术博客《Highly Scalable Blog》,对NoSQL数据库中的分布式算法和思想进行了详细的讲解。
近期MongoDB在Hack News上是频繁中枪。许多人更是声称恨上了MongoDB,David mytton就在他的博客中揭露了MongoDB许多现存问题。然而恨的人有之偏爱的也同样很多,作为回击:Russell Smith带来了多年工作经验的总结。
Hadoop,HBase,NoSQL是当今业界比较火的一些名词。满互联网都是对它的他们的赞许,其实光芒的背后还有部分缺点。本文只是vogts的一些观点和想法。
首先说明下redis的虚拟内存与操作系统的虚拟内存不是一码事,但是思路和目的都是相同的。就是暂时把不经常访问的数据从内存交换到磁盘中,从而腾出宝贵的内存空间用于其他需要访问的数据。尤其是对于redis这样的内存数据库,内存总是不够用的。
MongoDB团队于8月最后一天发布了MongoDB 2.2版本,该版本包含了超过1000处的新特性、bug修复和性能改进。MongoDB团队称,2.2版本最重要的改进主要放在了灵活性和性能的提升上。 其中Aggregation框架、并发改进、Data Center Awareness功能值得关注。
虽然NoSQL流行语火起来才短短一年的时间,但是不可否认,现在已经开始了第二代运动。尽管早期的堆栈代码只能算是一种实验,然而现在的系统已经更加的成熟、稳定。不过现在也面临着一个严酷的事实:技术越来越成熟——以至于原来很好的NoSQL数据存储不得不进行重写,也有少数人认为这就是所谓的2.0版本