NoSQL数据库是否会像承诺的那样走下去?
本文是对《 WillNoSQLDatabasesLiveUptoTheirPromise? 》一文的简要翻译。翻译中省略了人名、研究机构名称,只翻译了作者自己或者作者引用的他人观点。 【原文下载地址】 与关系型数据库相比,NoSQL 数据库最大的优势是它们能高效地处理非结构化的数据,如字
本文是对《Will NoSQL Databases Live Up to Their Promise?》一文的简要翻译。翻译中省略了人名、研究机构名称,香港虚拟主机,只翻译了作者自己或者作者引用的他人观点。
【原文下载地址】
与关系型数据库相比,NoSQL数据库最大的优势是它们能高效地处理非结构化的数据,如字符文件、邮件、多媒体、社交媒体等。一些NoSQL数据库可以运行在分布式的环境中,因此可以用多个较廉价的设备来完成一台高性能服务器的功能。
一些
最早提出和使用
关系型数据库的局限性:
规模。当数据规模变得很大时,香港服务器租用,一台服务器就装不完所有的表格了,这时候就需要进行分布式处理。但是将关系型数据库进行分布式处理是不是一件容易的事情,因为将不同机器上的表格join到一起很困难。另外,关系型数据库并不是设计来进行数据分割的,因此对它们进行分布式的功能划分是一件累人又麻烦的工作。
复杂性。关系型数据库需要将数据转换到表格中。当一类数据不容易转换为表格类数据时,其所对应的关系型数据库的结构将变得复杂且难以使用。
SQL。SQL对于处理结构化数据是很有效的,但对于非结构化数据就显得力不从心了。
大量的约束条件。关系型数据库提出了严格的约束条件及数据完备性要求。但NoSQL的支持者认为数据库的使用者通常并不需要那么严格的约束条件,并且不喜欢这些约束条件所造成的成本及为系统增加的复杂性。
由于关系型数据所固有的这些局限性,供应商及用户开始逐渐转向
有三种比较常见的NoSQL数据库:
Key-value
正像其名字所暗示的那样,
Uppsala
其他例子还有
列式数据库(column-oriented database)
相比于存储一些列高度结构化的,将行列以统一格式进行规范的关系型数据库相比,列式数据库包含了一个可扩展的列(
这类数据库的代表有
基于文件的存储(document-based stores)
这类数据库将数据以文件集合的方式进行存储和组织。在这种方式下,用户可以增加任意多的任意长度的域(
这方面的例子有
开源
大部分的NoSQL数据库都是开源的,这也反映了全球软件市场的一种发展趋势。
译者注:开源软件的最大好处是可以集众人之力快速将软件开发收敛到稳定版本,香港虚拟主机,其盈利模式一般是通过软件的周边产品来赚钱,如提供技术支持、认证或提供更丰富功能的版本等。
NoSQL的优势与弊端
优势:
NoSQL
为了提高性能,开发人员一般不要求自己的
NoSQL
弊端:
①复杂性与开销
由于
②可靠性
关系型数据库天生支持
③一致性
由于
④对技术不熟悉
由于很多组织对
⑤有限的生态结构
不像商用的关系型数据库,很多开源的NoSQL应用还不提供商业支持或管理工具。
展望
在接下来的五年中,并且
在最近的一两年内,
NoSQL数据库并不会取代关系型数据库,但是它会是某些特定类型项目的最佳选择。以后用户在为自己的数据选择数据库时,将会有关系型数据库之外的其他选择。用户将根据自己的需求来选择合适的数据库类型。
作者信息:
Editor: Lee Garber, Computer,
l.garber@computer.org