阅读更多

0顶
1踩

数据库

原创新闻 NoSQL— 依然顽强进取的小众

2016-05-03 16:35 by 副主编 mengyidan1988 评论(0) 有5499人浏览
引用
作者: 王翔(Vision Wang),架构师、经济学博士,专注业务创新、企业架构、信息安全和贸易经济。
声明:原创投稿,未经许可,禁止任何形式的转载


近日,InfoWorld的一篇报道对于Garnter的数据库市场分析报告做了解读:数据库市场中甲骨文、微软和IBM依然位列市场份额的前三强,而众多NoSQL虽然在媒体和业内常常占据绝对版面,但似乎“叫好但不够太叫座”——MongoDB、Cassandra、Basho、Couchbase、MarkLogic等凑在一起仅占数据库市场整体的8%左右。

对于NoSQL能否击溃传统关系数据库,市场的评论似乎总是一边倒的乐观,如果非要给这个市场超越加上一个期限,各方主流评论似乎也在越缩越小。但现实是关系数据库和NoSQL在用户眼中越来越像两套产品,如果说早年听了NoSQL的宣传后用户感觉两类数据库的区别就好像烤箱和微波炉、并且很可能最终变成一体机的话,那么现在两者的差别(从用户视角)更像是洗衣机和洗碗机。因此,Gartner的5年统计结果表明,虽然微软、甲骨文、IBM的市场份额互有起落,但总体而言关系数据库三巨头的市场份额变化不大,更多是几家传统品牌之间的“分蛋糕的时候块大块小”的问题,而且5年对于IT这个行业而言已经不算短了;反观NoSQL市场,群雄逐鹿、浩浩荡荡,而且众多NoSQL厂商的开源特质使他们自然获得众多云计算平台(以及相关技术媒体)的热捧,但抛开技术仅从市场角度看,他们的优势成果也正不断被传统关系数据库厂商学习、集成,NoSQL并没有如当年的“The Boston Tea Party”一样迅疾产生巨大影响,但却逐步转变为众多技术团队的技术信仰、精神寄托。

不过,不可否认市场需要NoSQL,很难假设如果没有这批NoSQL数据库,那么今天的数据软件会如何。可能我们关注的重点仍然在如何优化SQL语句、如何购买“贵的吓人”的数据库集群;同时,应用(尤其是手机APP)上的各种媒体信息也难以如此丰富。市场又是冰冷残酷的,大批用户通过自己的“需求选票”把NoSQL供在了“锦上添花”、“业务创新”的高阁。原因不是这些NoSQL产品(,尤其是市场竞争中出现这的几个旗手)的技术问题,关键在于他们能否提供类似的市场支持体验。毕竟对于现阶段大多数用户而言,IT是支持手段,数据库能够满足基本的要求即可,应用而非数据库才是交付业务价值最直接的手段,但面对强大的市场“在位者”,根据Gartner对2015年市场份额估值仅有区区3.23亿美元的几大NoSQL厂商而言阻力太大。这要求NoSQL要适应市场法则,要么尝试提供与传统商用关系数据库产品近似的市场服务体系,要么创造新的应用契机,在全新的“蓝海”继续占领技术“高地”。从实际运营看,NoSQL几大旗手似乎都选择“双线作战”,其效果纵向看确实有效,市场正在被这些后来者“蚕食”。

数据库市场正在上演当年程序语言发展类似的“戏码”,但比起当年Java出世后的效果确实节奏变慢了,这也说明IT行业从懵懂走向成熟。NoSQL已经走过了当初最艰难的过程,丛林竞争中出现了几个具有相当体量的竞争者,他们需要一个契机,需要等待世界经济大环境周期从复苏跨入繁荣的一个过程。同时,NoSQL们也应做好准备,结合市场商业经验准备更多的Total Solution,机会才可能留给他们。

推荐资源
1. InfoWorld
NoSQL chips away at Oracle, IBM, and Microsoft dominance
2. Database Trends and Applications
Accenture and Splunk Partner to Help Organizations Leverage Machine Data for Better Business Outcomes
3. eWeek
Oracle Expands Cloud Services With Acquisition of Textura
来自: CSDN
0
1
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 操作系统实验五、实现系统调用

    这是操作系统实验课上的一个实验内容,本次实验的主要内容为实现一些系统调用,并且设计一个C程序库,封闭getch(),gets(),putch(),puts(),scanf()和printf()等利用系统调用实现的细节,开发一个用户程序,测试这些函数功能。

  • 系统调用的概念和作用

    一、什么是系统调用,有何作用 1.概念 用户接口 命令接口-允许用户直接使用 程序接口-允许用户通过程序间接使用:由一组系统调用组成 系统调用 “系统调用”是操作系统提供给应用程序(程序员/编程人员)使用的接口,可以理解为一种可供应用程序调用的特殊函数,应用程序可以发出系统调用请求来获得操作系统的服务。会使处理器从用户态进入核心态 2.作用 生活场景:你去学校打印店打印论文,当你按下“打印”之后,打印机开始工作。你的论文打印到一半时,另一位同学按下了“打印”按钮开始打印他自己的论文。..

  • 编写程序的目的?为什么要学习编程

    在我看来,我们写程序的目的就是去解决一些我们日常生活中的问题, 由于我们大脑处理信息能力的速度有时会比电脑慢,所以我们写一段代码来教计算机去怎么处理这些信息,最后去输出我们想要的结果。 而中间具体处理的过程交给计算机去处理,比如我们在进行复杂计算时,我们可以编写一个用来计算的程序,我们要做的只是去输入我们想要计算的数字,计算机便会给出我们想要的结果。 而中间具体实现的过程我们不...

  • 计算机操作系统(第四版)题(一)

    ↵ 1.计算机系统的组成包括()。[2分] A.程序和数据 B.处理器和内存 C.计算机硬件和计算机软件D.处理器、存储器和外围设备 计算机系统包括计算机软件和硬件 2.()是多道操作系统不可缺少的硬件支持。[2分] A.打印机B.中断机构 C.软盘 D.鼠标 中断技术出现可以让CPU实现在不同程序切换执行 3.()操作不是P操作可完成的。[2分]A.为进程分配处理机 B.使信号量的值变小 C.可用于进程的同步 D.使进程进入阻塞状态 分配处理机是由进程调度中的分派程序完...

  • 系统调用的用途

    (1)  系统调用可以为用户空间提供访问硬件资源的统一接口,以至于应用程序不必去关 注具体的硬件访问操作。 比如,读写文件时,应用程序不用去管磁盘类型,甚至于不用关心是哪种文件系统。 (2)  系统调用可以对系统进行保护,保证系统的稳定和安全。系统调用的存在规定了用 户进程进入内核的具体方式, 换句话说,用户访问内核的路径是事先规定好的,只能从规定位置进入内核,而不准许肆意跳入内核。有了这样

  • 操作系统中系统调用的必要性与实现

     前记这段时间的确太忙了,有很长一段时间没有动笔写报告了,这段时间pyos的开发也基本上处与半停滞状态,前两天刚建了一个pyos的cvs(http://pyos.binghua.com),希望已后的开发可以稍微高效一点~~~:)近来没做什么东西,只完成了一个系统调用的实验,言归正传,下面我还是来介绍一下我的这个实验吧。 实验综述与操作系统中系统调用的必要性每一个操作系统都有

  • 操作系统中系统调用的执行过程

    1、硬件接收到中断信号,立刻保存现场,并查找中断向量表,将CPU控制权转交给系统调用总入口程序。 2、对于系统调用总入口程序,也要先保存现场,将参数保存在内核的堆栈中。然后查找系统调用表,将CPU控制权转交给对应的系统调用处理程序或者是内核函数。 3、执行系统调用处理程序 4、恢复现场,返回用户程序。 参考资料:陈向群老师的《操作系统原理》 ...

  • Linux_系统调用过程及意义

    系统调用 Linux内核中设置了一组用于实现各种系统功能的接口,称为系统调用。为了方便使用操作系统,操作系统预留出了一些接口,这些接口就是系统调用函数。用户可以通过系统调用命令在自己的应用程序中调用它们。从某种角度来看,系统调用和普通的函数调用非常相似。区别仅仅在于,系统调用由操作系统核心提供,运行于核心态;而普通的函数调用由函数库或用户自己提供,运行于用户态。 系统调用号 在Linux中,...

  • 操作系统学习笔记(四): 系统调用

    本节围绕系统调用展开,主要讲解了系统调用的概念与实现、程序调用与系统调用的不同、系统调用的开销。 概念: 首先看一个标准C库的例子:当我们程序中使用了C库中的printf()函数,实际在底层是在内核态中调用了write()函数。图中右侧则是将程序代码与C库都算到应用程序中,内核提供了一个系统调用接口。从这个例子我们可以得到以下几点:1. 系统调用是操作系统服务的编程接口;2. 系统调用通常由高...

  • 计算机基础知识对编程的重要性

    码农和架构师的差别在哪里从题目看文章,大家的第一想法是本篇文章是一篇讲述计算机基础知识和编程之间的关系,但是为什么开篇是这样的呢?当然这样的开篇并没有多大的意义,唯一的目的就是吸引读者而已。纵观计算机专业的学生在毕业之后大多数会走向编写程序的道路,当然也会有部分同学有自己更感兴趣的事情,从而在毕业之后选择其他的职业。在这里根据我个人在毕业之后的编写程序的道路,写下一点总结,希望能和大家交流,有什么不

  • 《一个操作系统的实现》笔记(7)--输入/输出系统(I/O)

    键盘很简单,只要设置8259A芯片的键盘端口的handler处理函数就可以了。键盘敲击的过程键盘编码器,用于监视键盘的输入,并把适当的数据传送给计算机。 键盘控制器,用来接受和解码来自键盘的数据,并与8259A以及软件等通信。 敲击键盘包含两个含义:动作和内容。 敲击键盘所产生的编码被称作扫描码。当8048检测到一个键的动作后,会把相应的扫描码发送给8042,8042会把它转换成相应的Sca

  • 计算机操作系统学习笔记3(系统调用)

    回顾:在前面学的用户接口时,我们学习了两种,一是允许用户直接使用的命令接口,二是允许用户通过程序间接使用的程序接口,而程序接口就是由一组程序调用组成的 “系统调用”是操作系统提供给应用程序(程序员/编程人员)使用的接口,可以理解为一种可供应用程序调用的特殊函数,应用程序可以发出系统调用请求来获得操作系统的服务 问题:为什么需要“系统调用”功能? 在现实生活中,在打印店打印东西,你按下了打印按钮,在你的东西打印到了一半的时候,另外的一个同学页按下了打印按钮,但是最后你们打印的东西没有混在一起,都是按照顺序打印

  • 系统调用

    什么是系统调用: 系统调用向操作系统发出请求,操作系统会对各个请求进行协调管理。 系统调用和普通调用的区别 系统调用本质上是一种过程调用,但它是一种特殊的过程调用,与一般用户程序中的过程调用有明显的区别 。 运行状态不同 运行状态不同。系统调用的调用过程和被调用过程运行在不同的状态,而普通的过程调用一般运行在相同的状态。 调用方法不同 调用方法不同。系统调用必须通过软中断机制首先进入系统核心,然后才能转向相应的命令处理程序。普通过程调用可以直接由调用过程转向被调用过程。 .

  • 操作系统的系统调用是怎么一回事呢?

    为了从操作系统中获得服务,用户程序必须使用系统调用( System Call),系统调用陷入内核并调用操作系统。访管指令把目态切换成管态,并启用操作系统。当有关工作完成之后,在系统调用后面的指令把控制权返回给用户程序。本节介绍系统调用的概念,系统调用的分类,以及系统调用的执行过程。 一、系统调用简介 所谓系统调用,就是用户在程序中调用操作系统所提供的一些子功能。这是一种特殊的过程调用,这种调用...

  • 操作系统—系统调用与内核

    1.系统调用: 操作系统服务之所以通过系统调用的方式供用户使用,其根本原因是对系统进行“保护”。程序的运行空间分为内核空间和用户空间,其程序各自按不同的特权运行,在逻辑上相互 隔离。应用程序不能直接访问内核数据,也无法直接调用内核函数,他们只能在用户空间操纵用户数据,调用用户空间函数。但在很多情况下,应用程序需要获得系统服务,这时就必须利用系统提供给用户的特殊接口--系统调用。 系统调用是应

  • 操作系统实验——增加系统调用(详细图文解释)

    Linux新增系统调用,详细的图文教程

  • 操作系统:系统调用的实现

    内核态与用户态、内核段与用户段 内核态与用户态是保护模式下的概念 内核态:具有较高特权,可以访问所有寄存器和存储区,执行所有指令;OS一般运行在内核态 用户态:较低权限的执行状态,仅能执行规定的指令(如不能随意 jmp ),访问指定的寄存器,应用程序一般只能在用户态运行 计算机中用两个 bit 来表示四种特权状态,硬件将 0 作为内核态,3 作为用户态,Windows 与 Linux 均只使用两个...

  • 什么是系统调用?操作系统为什么要提供系统调用?

    系统调用是操作系统的一种接口,允许用户程序访问操作系统的内部服务和资源。系统调用提供了一种方便的机制,使用户程序可以与操作系统进行交互,而无需直接接触操作系统的内部实现细节。 操作系统要提供系统调用是因为,如果每个用户程序都直接访问操作系统的内部服务和资源,将会使操作系统的实现变得更加复杂。通过系统调用接口,操作系统可以将一些复杂的任务委托给内核来完成,并且还可以对用户程序进行更多的控制和管理,从...

  • 计算机操作系统之系统调用

    目录 ????什么是系统调用,有何作用? ????系统调用与库函数的区别 ????系统调用背后的过程 ????总结 我们将带着以下问题去学习什么是系统调用 什么是系统调用,有何作用? 操作系统作为用户和计算机硬件之间的接口,需要向上提供一些简单易用的服务。主要包括命令接口和程序接口。其中,程序接口由一组系统调用组成。 “系统调用”是操作系统提供给应用程序(程序员/编程人员)使用的接口,可以理解为一种可供应用程序调用的特殊函数,应用程序可以发出系统调用请求来获得操作系统的服务。

Global site tag (gtag.js) - Google Analytics