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

SQL日薄西山NoSQL标准化刻不容缓_MySQL-mysql教程

SQL日薄西山NoSQL标准化刻不容缓
bitsCN.com

  如同拉里.埃里森的豪华游艇一样,关系型数据库正驶向日薄西山之处。但对NoSQL而言,标准的查询语言和应用程序接口亟待建立标准。

  Oracle已称霸数据库世界多年,但在未来,霸权的衰落不可避免的。在NoSQL和大数据浪潮的冲击下,基于逻辑范式设计的RDBMS已然摇摇欲坠。虽然Oracle及其盟友已经做出了快速的反映,并推出了自己的NoSQL数据库,但是Oracle所面对的尴尬情形就如同当年的Novell一样。

/

  关系型数据库不会立刻消亡,它是一种影响深远的技术,在数据库领域曾独领风骚。关系型数据库有着严密的数学背景,其事务处理具有著名的ACID属性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。

  但我并不认为事务处理是关系型数据库的优势。事务处理跨越多个请求和响应周期,保证数据一致性的能力往往被夸大了。除了事务处理机制,我们还有其它方法保证数据一致性。

  关系型数据库最大的优势其实是标准化。关系型数据库自身的发展史也证明,即便是最基本的标准化也比漫无章法更能占据市场。事实上,标准化也成为数据库融合、收购的极大障碍。

  从关系型数据库到NoSQL的过渡是不可避免的。关系型数据库早在硬盘只有10MB的时代就被创造出来,而在现在,存储已经非常便宜,我们对性能和扩展性的期望也变得非常高。另一方面,随着互联网信息的膨胀,我们对数据分析和数据挖掘的要求也与日俱增。毫无疑问,在互联网时代,NoSQL才是数据库的未来。

  许多公司并不具备能力极强的IT部门,也有许多公司通过外包的方式维持IT的运营。以Oracle数据库为例,在许多公司可能很缺乏具备专业知识的DBA,甚至其职责往往由系统管理员代理。传统数据库的复杂度成为阻碍公司发展的瓶颈。

  所有的一切都意味着,我们不必使用结构化的数据,我们追求数据库的分布式、低延迟,以及快速处理海量数据的能力。

  然而,这种转变困难重重。NoSQL缺乏一种主导力量。以关系型数据库为例,不管你选择哪种数据库产品(例如,DB2、Oracle或者SQL Server),它们都会遵循ANSI SQL标准,这让我们有所依赖。对于新的数据库,Pig、Hive等查询语言,也让我们觉得有共通之处。关系型数据库为我们提供了标准的访问接口,即便是最古老的ODBC。而对于NoSQL,你必须使用特定的数据库连接器。

  大家都知道,NoSQL并不是为所有人设计的,但是标准的设计有助于市场的拓展。不论是对于可能成为潜在客户的大型机构,还是对于独立的风险投资商,标准化的产品、供应商、长期的技术支持都是吸引其注意力的筹码。当今,几乎没有人乐意采购昂贵的软件,但标准化仍然可以为技术的发展提供良好的空间。

  为什么NoSQL要与传统的关系型数据库一决雌雄?原因就在于争夺数据库驱动SPI(服务编程接口)和API对主要编程语言平台的支持,这和构建标准化的查询语言别无二致。

  不必追求完美的标准。关系型数据库供应商也没有在标准化方面做到尽善尽美,NoSQL只要将标准化做到足够好,足够吸引人,以至于人们乐意迁移到NoSQL平台就可以了。另一方面,我们要考虑到如何为不同类型的NoSQL数据库制定标准,比如文档类型的MongoDB,图形数据库Neo4j。

  对图形数据库设计的查询语言不一定适用于文档数据库或键值结构数据库。当然,在常规情况下,我们的查询都很简单,非常容易得到支持。这些非关系型数据库也有许多共通之处,例如,它们都支持层次化查询(hierarchical query)。我认为,一种标准不是一种强制,而是一种建议。

  微软的一些研究人员也曾提出NoSQL的标准化问题。他们曾试图使MongoDB支持UnQL和LINQ。在Java的世界里,Spring Data是通用的CRUD接口,但一切还没有眉目。

  NoSQL供应商及所有NoSQL支持者是时候走到一起了!乘风破浪,共同制定NoSQL的标准,迎接NoSQL的未来!(张志平/编译)

bitsCN.com
推荐阅读
  • MongoDB核心概念详解
    本文介绍了NoSQL数据库的概念及其应用场景,重点解析了MongoDB的基本特性、数据结构以及常用操作。MongoDB是一个高性能、高可用且易于扩展的文档数据库系统。 ... [详细]
  • 从0到1搭建大数据平台
    从0到1搭建大数据平台 ... [详细]
  • 本文深入探讨了NoSQL数据库的四大主要类型:键值对存储、文档存储、列式存储和图数据库。NoSQL(Not Only SQL)是指一系列非关系型数据库系统,它们不依赖于固定模式的数据存储方式,能够灵活处理大规模、高并发的数据需求。键值对存储适用于简单的数据结构;文档存储支持复杂的数据对象;列式存储优化了大数据量的读写性能;而图数据库则擅长处理复杂的关系网络。每种类型的NoSQL数据库都有其独特的优势和应用场景,本文将详细分析它们的特点及应用实例。 ... [详细]
  • NoSQL数据库,即非关系型数据库,有时也被称作Not Only SQL,是一种区别于传统关系型数据库的管理系统。这类数据库设计用于处理大规模、高并发的数据存储与查询需求,特别适用于需要快速读写大量非结构化或半结构化数据的应用场景。NoSQL数据库通过牺牲部分一致性来换取更高的可扩展性和性能,支持分布式部署,能够有效应对互联网时代的海量数据挑战。 ... [详细]
  • Oracle字符集详解:图表解析与中文乱码解决方案
    本文详细解析了 Oracle 数据库中的字符集机制,通过图表展示了不同字符集之间的转换过程,并针对中文乱码问题提供了有效的解决方案。文章深入探讨了字符集配置、数据迁移和兼容性问题,为数据库管理员和开发人员提供了实用的参考和指导。 ... [详细]
  • MongoDB核心概念与基础知识解析
    MongoDB 是一种基于分布式文件存储的非关系型数据库系统,主要采用 C++ 语言开发。本文将详细介绍 MongoDB 的核心概念和基础知识,包括其与传统 SQL 数据库的区别,数据库及集合的基本操作,如数据的插入、更新、删除和查询等。通过本文,读者可以全面了解 MongoDB 的基本功能及其应用场景。 ... [详细]
  • 本文将深入探讨MySQL与MongoDB在游戏账户服务中的应用特点及优劣。通过对比这两种数据库的性能、扩展性和数据一致性,结合实际案例,帮助开发者更好地选择适合游戏账户服务的数据库方案。同时,文章还将介绍如何利用Erlang语言进行高效的游戏服务器开发,提升系统的稳定性和并发处理能力。 ... [详细]
  • 掌握 MongoDB 基础操作与实用技巧 ... [详细]
  • nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 前两天有位朋友邀请我回答个问题,为什么MongoDB(索引)使用B-树而Mysql使用B+树?我觉得这个问题非常好,从实际应用的角度来学习数据结构,没有比这更好的方法了。因为 ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • V8不仅是一款著名的八缸发动机,广泛应用于道奇Charger、宾利Continental GT和BossHoss摩托车中。自2008年以来,作为Chromium项目的一部分,V8 JavaScript引擎在性能优化和技术创新方面取得了显著进展。该引擎通过先进的编译技术和高效的垃圾回收机制,显著提升了JavaScript的执行效率,为现代Web应用提供了强大的支持。持续的优化和创新使得V8在处理复杂计算和大规模数据时表现更加出色,成为众多开发者和企业的首选。 ... [详细]
  • SSAS入门指南:基础知识与核心概念解析
    ### SSAS入门指南:基础知识与核心概念解析Analysis Services 是一种专为决策支持和商业智能(BI)解决方案设计的数据引擎。该引擎能够为报告和客户端应用提供高效的分析数据,并支持在多维数据模型中构建高性能的分析应用。通过其强大的数据处理能力和灵活的数据建模功能,Analysis Services 成为了现代 BI 系统的重要组成部分。 ... [详细]
  • 如何高效启动大数据应用之旅?
    在前一篇文章中,我探讨了大数据的定义及其与数据挖掘的区别。本文将重点介绍如何高效启动大数据应用项目,涵盖关键步骤和最佳实践,帮助读者快速踏上大数据之旅。 ... [详细]
  • 修复一个 Bug 竟耗时两天?真的有那么复杂吗?
    修复一个 Bug 竟然耗费了两天时间?这背后究竟隐藏着怎样的复杂性?本文将深入探讨这个看似简单的 Bug 为何会如此棘手,从代码层面剖析问题根源,并分享解决过程中遇到的技术挑战和心得。 ... [详细]
author-avatar
手机用户2502852637_666
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有