阅读更多

0顶
1踩

数据库

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

2016-05-03 16:35 by 副主编 mengyidan1988 评论(0) 有5548人浏览
引用
作者: 王翔(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 条 请登录后发表评论

发表评论

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

相关推荐

  • 【操作系统篇】第二篇——计算机系统概述(下)

    操作系统的体系结构系统调用什么是系统调用知识点回顾:操作系统作为用户和计算机硬件之间的接口,需要向上提供一些简单的服务。主要包括命令接口和程序接口。其中,程序接口由一组系统调用组成。"系统调用"是操作系统提供给应用程序(程序员/编程人员)使用的接口,可以理解为一种可供应用程序调用的特殊函数,应用程序可以通过系统调用来请求获得操作系统内核的服务系统调用与库函数的区别普通应用程序,可直接进行系统调用,也可使用库函数。有的库函数涉及系统调用,有的不涉及。

  • 操作系统面经-什么是系统调用

    处于用户态的进程有诸多限制(如不能进行 I/O 操作),所以有些功能必须由内核代劳完成。说白了,系统调用其实就是函数调用,只不过调用的是内核态的函数。控制寄存器的第 16 位是写保护位,若设置为零,则允许超级权限往内核中写入数据。是一份内核符号表,包含了内核中的变量名和函数名地址,在每次编译内核时,自动生成。当应用程序需要调用一个系统调用时,首先需要将要调用的系统调用号(也就是系统调用所在。了解了系统调用的原理后,要拦截系统调用就很简单了。是内核提供给应用程序使用的功能函数,由于应用程序一般运行在。

  • 操作系统学习之系统调用

    一、操作系统学习之系统调用 1. 什么是系统调用 2. 系统调用有什么用 3. 为什么需要系统调用 4. 系统调用的具体流 1)执行过程 2)如何实现用户态与内态之间的切换 3) 系统调用常见名词 4) 系统调用如何返回、传递返回值 5) 系统调用如何传递参数 5. 栈切换​​​​​​​ 6. 系统调用的类型有哪些 7. 系统调用有什么缺点.........

  • 王道考研 2022 操作系统选择题错题第一章

    操作系统---第一章计算机系统概述---选择题错题

  • 什么是系统调用?

    01、 系统调用是什么 系统内核通过包装一些能够实现特定功能的特殊硬件指令和硬件状态,即为内核函数,通过一组称为系统调用(system call)的接口呈现给用户,为系统调用而封装出来的API也达数百个。 为了保护设备,操作系统不可能让所有的程序都能轻松地访问到任何的文件,因此进程在系统上的运行分为2个级别: (1) 用户态(user mode):用户态运行的进程可以直接读取用户程序的数据; (2) 系统态(kernel mode):系统态运行的程序可以访问计算机的任何资源,不受限制;诸如一些修改寄存器内容

  • 操作系统——系统调用

    1.简介 操作系统作为用户和计算机的接口,需要向上提供一些简单易用的服务,主要包括命令接口和程序接口。其中,程序接口由一组系统调用组成 系统调用是操作系统提供给应用程序(程序员/编程人员)使用的接口,可以理解为一种可供应用程序调用的特殊函数,应用程序可以发出系统调用请求来获得操作系统的服务。 2.为什么要提供系统调用? 小红和小明一起去打印作业,按下打印按钮之后,打印内容并没有混淆。如果进程可以随便使用打印机,两个打印的作业就会混杂。 解决混淆的方法:操作系统提供系统调用功能,用户进程想要使用打印

  • 操作系统之系统调用

    1.什么是系统调用 应用程序通过系统调用请求操作系统服务 应用程序不能直接申请系统资源,必须通过系统调用的方式向操作系统提出服务请求,由操作系统代为完成。这样保证了系统的稳定性和安全性。 系统调用分为 设备管理,文件管理,进程控制,进程通信,内存管理 系统调用的相关处理都是在核心态下的 2. 系统调用与库函数的区别 库函数可能是封装好的系统调用,也可能不涉及系统调用。应用程序可能发出系统调用,...

  • 操作系统-系统调用

    系统调用,用户态,内核态,Ring

  • 【操作系统】系统调用是什么

    01、 系统调用是什么 操作系统提供给程序员的接口就是系统调用。 进程在系统上的运行分为2个级别: (1) 用户态(user mode):用户态运行的进程可以直接读取用户程序的数据; (2) 系统态(kernel mode):系统态运行的程序可以访问计算机的任何资源,不受限制 平常我门的进程几乎都是用户态,读取用户数据,当涉及到系统级别资源的操作(例如文件管理、进程控制、内存管理等)的时候,就要用到系统调用了。 02、 用户态到内核态切换途径 系统调用,中断,异常 03、 CPU响应

  • 操作系统面试(二):什么是系统调用呢?

    进程在系统上的运行分为2个级别 用户态(user mode):用户态运行的进程可以直接读取用户程序的数据 系统态(kernel mode):系统态运行的程序可以访问计算机的任何资源,不受限制 平常我们运行的程序都是用户态的,如果想要将进程运行在系统态则需要利用系统调用 系统调用 在我们运行的用户程序中,凡是与系统级别的资源有关的操作(例如文件管理、进程控制、内存管理等)都必须通过系统调用方式向OS提出服务请求,并由OS代为完成 平常我门的进程几乎都是用户态,读取用户数据,当涉及到系统操作,计算机..

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

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

  • 一个controller调用另一个controller_写一个无需系统调用的屏幕输出

    先说说今天(文章是21号写的)最大的事情,量子计算机的突破:据英国《金融时报》报道,谷歌声称已经达到“量子霸权”,打造出第一台能够超越当今最强大的超级计算机能力的量子计算机!该计算机能够在 3 分 20 秒内执行一个计算,而同样的计算用当今最强大的超级计算机 Summit 进行,需要约 10000 年。这是一个真正里程碑式的进展!这标志着量子理论开始走向应用,注定是一场科技的变革,IT行业也将发生...

  • 4.为什么选择系统调用?什么时候使用系统调用操作文件?

    实际上,很多已经被我们习以为常的C语言标准函数,在Linux平台上的实现都是靠系统调用完成的,所以如果想对系统底层的原理作深入的了解,掌握各种系统调用是初步的要求。进一步,若想成为一名Linux下编程高手,也就是我们常说的Hacker,其标志之一也是能对各种系统调用有透彻的了解。 即使除去上面的原因,在平常的编程中你也会发现,在很多情况下,系统调用是实现你的想法的简洁有效的途径,所以有可能的话应...

  • 操作系统 —— 系统调用

    一、什么是系统调用 操作系统作为用户和计算机硬件之间的接口,需要向上提供一些简单易用的服务。主要包括命令接口和程序接口。其中,程序接口由一组系统调用组成。 应用程序通过系统调用请求操作系统的服务。系统中的各种共享资源都由操作系统统一掌管,因此在用户程序中,凡是与资源有关的操作(如存储分配、I/o操作、文件管理等),都必须通过系统调用的方式向操作系统提出服务请求,由操作系统代为完成。这样可以...

  • 系统调用的概念和作用

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

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

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

  • 什么是系统调用

    系统的调用 1 内核模式与用户模式 为了保护设备,操作系统不可能让所有的程序都能轻松地访问到任何的文件,将处理器CPU分为两种模式,内核模式和用户模式,诸如一些修改寄存器内容的命令,比如次磁盘的IO操作、访问物理页内存、访问网络上的数据包,这些涉及内核的操作只能是通过高权限的内核模式下进行,用户模式下没有权限进行。 2 系统调用概念 系统内核通过包装一些能够实现特定功能的特殊硬件指令和硬件状态,即为内核函数,通过一组称为系统调用(system call)的接口呈现给用户,为系统调用而封装出来的API也

Global site tag (gtag.js) - Google Analytics