热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

NoSQL数据库是否会像承诺的那样走下去?

本文是对《WillNoSQLDatabasesLiveUptoTheirPromise?》一文的简要翻译。翻译中省略了人名、研究机构名称,只翻译了作者自己或者作者引用的他人观点。【原文下载地址】与关系型数据库相比,NoSQL数据库最大的优势是它们能高效地处理非结构化的数据,如字

本文是对《 WillNoSQLDatabasesLiveUptoTheirPromise? 》一文的简要翻译。翻译中省略了人名、研究机构名称,只翻译了作者自己或者作者引用的他人观点。 【原文下载地址】 与关系型数据库相比,NoSQL 数据库最大的优势是它们能高效地处理非结构化的数据,如字

本文是对《Will NoSQL Databases Live Up to Their Promise?》一文的简要翻译。翻译中省略了人名、研究机构名称,香港虚拟主机,只翻译了作者自己或者作者引用的他人观点。

【原文下载地址】

  与关系型数据库相比,NoSQL数据库最大的优势是它们能高效地处理非结构化的数据,如字符文件、邮件、多媒体、社交媒体等。一些NoSQL数据库可以运行在分布式的环境中,因此可以用多个较廉价的设备来完成一台高性能服务器的功能。

  一些

  最早提出和使用

关系型数据库的局限性:

规模。当数据规模变得很大时,香港服务器租用,一台服务器就装不完所有的表格了,这时候就需要进行分布式处理。但是将关系型数据库进行分布式处理是不是一件容易的事情,因为将不同机器上的表格join到一起很困难。另外,关系型数据库并不是设计来进行数据分割的,因此对它们进行分布式的功能划分是一件累人又麻烦的工作。

复杂性。关系型数据库需要将数据转换到表格中。当一类数据不容易转换为表格类数据时,其所对应的关系型数据库的结构将变得复杂且难以使用。

SQLSQL对于处理结构化数据是很有效的,但对于非结构化数据就显得力不从心了。

大量的约束条件。关系型数据库提出了严格的约束条件及数据完备性要求。但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

推荐阅读
  • MongoDB核心概念详解
    本文介绍了NoSQL数据库的概念及其应用场景,重点解析了MongoDB的基本特性、数据结构以及常用操作。MongoDB是一个高性能、高可用且易于扩展的文档数据库系统。 ... [详细]
  • 本文详细介绍了Java代码分层的基本概念和常见分层模式,特别是MVC模式。同时探讨了不同项目需求下的分层策略,帮助读者更好地理解和应用Java分层思想。 ... [详细]
  • 基于iSCSI的SQL Server 2012群集测试(一)SQL群集安装
    一、测试需求介绍与准备公司计划服务器迁移过程计划同时上线SQLServer2012,引入SQLServer2012群集提高高可用性,需要对SQLServ ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • 本文深入探讨了NoSQL数据库的四大主要类型:键值对存储、文档存储、列式存储和图数据库。NoSQL(Not Only SQL)是指一系列非关系型数据库系统,它们不依赖于固定模式的数据存储方式,能够灵活处理大规模、高并发的数据需求。键值对存储适用于简单的数据结构;文档存储支持复杂的数据对象;列式存储优化了大数据量的读写性能;而图数据库则擅长处理复杂的关系网络。每种类型的NoSQL数据库都有其独特的优势和应用场景,本文将详细分析它们的特点及应用实例。 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • 2021年Java开发实战:当前时间戳转换方法详解与实用网址推荐
    在当前的就业市场中,金九银十过后,金三银四也即将到来。本文将分享一些实用的面试技巧和题目,特别是针对正在寻找新工作机会的Java开发者。作者在准备字节跳动的面试过程中积累了丰富的经验,并成功获得了Offer。文中详细介绍了如何将当前时间戳进行转换的方法,并推荐了一些实用的在线资源,帮助读者更好地应对技术面试。 ... [详细]
  • Oracle字符集详解:图表解析与中文乱码解决方案
    本文详细解析了 Oracle 数据库中的字符集机制,通过图表展示了不同字符集之间的转换过程,并针对中文乱码问题提供了有效的解决方案。文章深入探讨了字符集配置、数据迁移和兼容性问题,为数据库管理员和开发人员提供了实用的参考和指导。 ... [详细]
  • 开发心得:利用 Redis 构建分布式系统的轻量级协调机制
    开发心得:利用 Redis 构建分布式系统的轻量级协调机制 ... [详细]
  • 华为捐赠欧拉操作系统,承诺不推商用版
    华为近日宣布将欧拉开源操作系统捐赠给开放原子开源基金会,并承诺不会推出欧拉的商用发行版。此举旨在推动欧拉和鸿蒙操作系统的全场景融合与生态发展。 ... [详细]
  • 在将Web服务器和MySQL服务器分离的情况下,是否需要在Web服务器上安装MySQL?如果安装了MySQL,如何解决PHP连接MySQL服务器时出现的连接失败问题? ... [详细]
  • V8不仅是一款著名的八缸发动机,广泛应用于道奇Charger、宾利Continental GT和BossHoss摩托车中。自2008年以来,作为Chromium项目的一部分,V8 JavaScript引擎在性能优化和技术创新方面取得了显著进展。该引擎通过先进的编译技术和高效的垃圾回收机制,显著提升了JavaScript的执行效率,为现代Web应用提供了强大的支持。持续的优化和创新使得V8在处理复杂计算和大规模数据时表现更加出色,成为众多开发者和企业的首选。 ... [详细]
  • 在当今的软件开发领域,分布式技术已成为程序员不可或缺的核心技能之一,尤其在面试中更是考察的重点。无论是小微企业还是大型企业,掌握分布式技术对于提升工作效率和解决实际问题都至关重要。本周的Java架构师实战训练营中,我们深入探讨了Kafka这一高效的分布式消息系统,它不仅支持发布订阅模式,还能在高并发场景下保持高性能和高可靠性。通过实际案例和代码演练,学员们对Kafka的应用有了更加深刻的理解。 ... [详细]
  • 提升Android开发效率:Clean Code的最佳实践与应用
    在Android开发中,提高代码质量和开发效率是至关重要的。本文介绍了如何通过Clean Code的最佳实践来优化Android应用的开发流程。以SQLite数据库操作为例,详细探讨了如何编写高效、可维护的SQL查询语句,并将其结果封装为Java对象。通过遵循这些最佳实践,开发者可以显著提升代码的可读性和可维护性,从而加快开发速度并减少错误。 ... [详细]
  • 第二章:Kafka基础入门与核心概念解析
    本章节主要介绍了Kafka的基本概念及其核心特性。Kafka是一种分布式消息发布和订阅系统,以其卓越的性能和高吞吐量而著称。最初,Kafka被设计用于LinkedIn的活动流和运营数据处理,旨在高效地管理和传输大规模的数据流。这些数据主要包括用户活动记录、系统日志和其他实时信息。通过深入解析Kafka的设计原理和应用场景,读者将能够更好地理解其在现代大数据架构中的重要地位。 ... [详细]
author-avatar
isonlyk
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有