漫谈 Greenplum 开源背后的动机
漫谈 Greenplum 开源背后的动机
这几天最大的消息莫过于 Greenplum 的开源,年初开始 Pivotal 就宣布了 greenplum 的开源,经过大半年的翘首等待,终于在十月底在欧洲的 Postgres 大会宣布开源,并兑现在 Github 上开放代码(https://github.com/greenplum-db/gpdb ),社区的官网为 http://greenplum.org/, 其官方博客也有提到相关事项。代码是采用 Apache 许可,今天已经有社区的朋友尝鲜从社区取下代码,在 Greenplum 上测试了 tpch 的性能,虽然测试比较粗糙但是结果基本和商业版的一样,印证了之前 greenplum 将走向全开源的消息。虽然里面关键的新一代优化器 orca 还没有看到代码,但据消息这部分后续也会开出来,估计这个是其对这个最核心资产的一个谨慎的操作。
总体的印象来看,其采取开放的 Apache 许可,代码基本上无保留开源,这次的开源更大程度是公司层面的战略行为,而不是简单的市场推广的战术行为。
Greenplum 的开源,在我看来有几个驱动力。
首先是受其 cloud foundry 开源战略成功的驱动。pivotal在整个emc联邦的定位来说是偏中间件这一层,emc是存储,vmware是虚拟化,pivotal要搞定的是PaaS。而pivotal的业务上来说,要把云和大数据这两个支柱搞定,才能把emc联邦的疆域稳定下来。云这一层来说vmware已经是私有云的霸主,而剩下的上层PaaS这一层如果落入他人之手对其来说也是一个大威胁,所以PaaS这一层也是志在必得。鉴于当时已经在市场有很多对手,2011年的时候cloudfoundry启动是以开源的模式来去做,把IBM和HP拉上。这个战略取得了出人意料的巨大成功,现在CF几乎要变成了PaaS的事实标准,IBM也推出了基于CF的bluemix产品,而pivotal在今年发布的2014年的财报,极为惹眼的标题:破纪录的2014年,史上最快的开源产品销售增长( http://finance.yahoo.com/news/pivotal-cloud-foundry-reports-record-160000128.html )在短短的一年里,就获得4千万美金的软件销售收入,另外也获得了财富500强中的100个客户!这对于基础软件来说,基本是神话。说了这么多,无外乎就是给大家强调一下,整个pivotal在cloudfoudry的巨大成功下,对于开源的认识已经到了商业战略的层次,已经不需要去讨论要不要开源,开源已经成为杀手级的武器!在此背景下我们来去理解greenplum的开源才更容易理解。
其次,Pivotal 的大数据战场,需要新的战略调整。上面提到,除了云以外,Pivotal的战略重心是大数据,Pivotal除了有自己的hadoop发行版以外还有greenplum作为大数据最重要的资产。但是大数据整个市场都不是太理想,Hadoop发行版除了有Cloudera,Hortonworks,MapR这三个第三方发行版以外,还有Pivotal,IBM,Intel这些厂商本身的发行版,市场最突出的问题是碎片化(fragmented),Hadoop的门槛低,厂商林立,同质化严重,不仅仅难以溢价出售,传统大厂商靠溢价销售基础软件获取超额利益的路子开始行不通;更为重要的是越来越多的客户倾向于使用第三方独立的发行版,道理不难理解,用户更希望的是Linux生态里面有Redhat和SuSe这样的发行厂商,而不希望类似AIX或者是Windows Server这种由厂商控制的生态,这个更加加剧了厂商面临的困境。Intel由于其发行版的糟糕市场表现,开始陆续解散自己的Hadoop团队,国内的星环就是在这个背景下诞生,2014年Intel重金投资Cloudera 7.4亿美金取得18%的股权,Dell也投入Cloudera的阵营,HP、微软、Teradata则倾向于直接使用Hortonworks的发行版,HP还投资了Hortonworks。但是Cloudera的优势明显,营收是Hortonworks的将近一倍,Cloudera俨然有成为Hadoop生态的新的霸主的阵势,市场格局开始慢慢固化,Intel有可能是这场战役的赢家。在这样的市场格局里面,Pivotal的困境可想而知,HD的发行版肯定需要重新调整策略,所以Pivotal联合IBM、GE等15个弱势玩家, 在今年3月宣告成立ODP(Open Data Platform)组织,本质上是希望通过支持Hortonworks抗衡Cloudera,取得平衡。但是这个赌注的胜算并不明显,Cloudera的CEO甚至公开嘲讽ODP,说其出现本身就是Cloudera的一个胜利( https://gigaom.com/2015/03/03/cloudera-ceo-declares-victory-over-big-data-competition/ ),Greenplum的开源正是作为ODP的砝码而出现,Pivotal决定把HD发行版、Gemfire、HAWQ还有Greenplum开源,所以从这个角度我们看到,Greenplum的开源本身,就是Pivotal希望赢回这场战役的一个砝码,对其而言,越多人用越好,没有必要隐藏任何功能。
其实在 Greenplum 开源之前,MPP 数据库的日子也并不好过,也是市场碎片化,每个厂家也就区区几千万美金的营收,市场难以有大的突破,传统丰厚的 DW 市场也难以打入,Hadoop 生态又是以开源为主,甚至很多类似 Impala 这样的产品也在做其类似的功能,传统的打不开,新市场又难以全面打开,而且竞争重重,进退两难。而Greenplum十多年来的架构也无力进行大的调整。正是在这样的背景下,倒不如开源,盘活大局。下面这篇文章称其举动为 open sourcing code is the modern graceful way to retire an unprofitable product line (http://skylandtech.net/2015/02/24/thinking-about-the-pivotal-announcements/ )
Greenplum 的开源应该是相对比较激进和带有攻击性(aggressive)一着棋,成败难料,但对于整个生态会有比较大的影响。
漫谈 Greenplum 开源背后的动机的更多相关文章
- 开源大数据引擎:Greenplum 数据库架构分析
Greenplum 数据库是最先进的分布式开源数据库技术,主要用来处理大规模的数据分析任务,包括数据仓库.商务智能(OLAP)和数据挖掘等.自2015年10月正式开源以来,受到国内外业内人士的广泛关注 ...
- 基于软件开源实践(FLOSS)论共产主义的可实现性
好久没发博客,来个狠的,我不信挨踢界有人比我更蛋疼来研究这个. 在马克思提出共产主义100多百年后,软件开发领域中出现了一种特别的生产方式:开源(FLOSS:Free/Libre and Open S ...
- 转:从开源项目学习 C 语言基本的编码规则
从开源项目学习 C 语言基本的编码规则 每个项目都有自己的风格指南:一组有关怎样为那个项目编码约定.一些经理选择基本的编码规则,另一些经理则更偏好非常高级的规则,对许多项目而言则没有特定的编码规则,项 ...
- 关于k8s这项大动作,预示着边缘计算迎来“开源”发展的新周期……
在文章<最近在边缘计算领域,发生了一件足以载入物联网史册的大事…>我曾经提到Kubernetes(简称K8s)将从超大规模云计算环境,被带入到物联网边缘计算场景中. 事情有了新进展,从本周 ...
- 开源运动的"圣经"——《大教堂与集市》读书笔记
作者:Eric S. Raymond 一.黑客圈简史 1.早期 (1)MIT 与 ITS "黑客"一词大约就起源于MIT的计算机文化. 从PDP-1时代开始,黑客文化的命运就和DE ...
- PostgreSQL和Greenplum、Npgsql
PostgreSQL和Greenplum.Npgsql 想着要不要写,两个原因“懒”和“空”.其实懒和空也是有联系的,不是因为懒的写,而是因为对PostgreSQL和Npgsql的知识了解匮乏,也就懒 ...
- greenplum和postgresql
想着要不要写,两个原因"懒"和"空".其实懒和空也是有联系的,不是因为懒的写,而是因为对PostgreSQL和Npgsql的知识了解匮乏,也就懒得写.好了,开头 ...
- Greenplum 数据库架构分析
Greenplum 数据库是最先进的分布式开源数据库技术,主要用来处理大规模的数据分析任务,包括数据仓库.商务智能(OLAP)和数据挖掘等.自2015年10月正式开源以来,受到国内外业内人士的广泛关注 ...
- (转)聊聊Greenplum的那些事
开卷有益——作者的话 有时候真的感叹人生岁月匆匆,特别是当一个IT人沉浸于某个技术领域十来年后,蓦然回首,总有说不出的万千感慨. 笔者有幸从04年就开始从事大规模数据计算的相关工作,08年作为Gree ...
随机推荐
- 测试过程中LR的关联报错
在测试过程中,录制的脚本会做一些关联.在测试的过程中,常常出现关联失败的情况. 如果最后的结果有检查点,检查点失败而事务失败. 每次出现这样的情况,我都不知道如何办.为了不出现错误,我都在关联函数里面 ...
- Hibernate,Session方法使得java对象进入持久化状态;持久化对象特征
以下情况java对象进入持久化状态: session.save()方法把临时对象转变为持久化对象. session.load()和session.get()方法得到的对象总是处于持久化状态. sess ...
- BZOJ 1588:营业额统计(Splay)
http://www.lydsy.com/JudgeOnline/problem.php?id=1588 题意:中文题意. 思路:每一个点每一个点插入Splay,然后插入新的一个点之后,查这个节点的前 ...
- northwind数据库
① Categories: 种类表相应字段:CategoryID :类型ID:CategoryName:类型名;Description:类型说明;Picture:产品样本 ② CustomerCust ...
- 如何扩大ImageView的点击区域
我们在开发中会遇到,给imageview设置点击事件,但是美工切的原始图片一般在24dp左右,这个尺寸点击时会出现不灵敏的情况(点击区域太小). 解决方案: 给imageView设置 scaleTy ...
- [转]iOS应用程序生命周期(前后台切换,应用的各种状态)详解
转载地址:http://blog.csdn.net/totogo2010/article/details/8048652 iOS的应用程序的生命周期,还有程序是运行在前台还是后台,应用程序各个状态的变 ...
- DBUtils开源JDBC类库,对JDBC简单封装(作用是:简化编码工作量,同时不会影响程序的性能)
DBUtils:提高了程序的性能,编程更加简便 架包 mysql-connector-java-jar commons-dbcp-1.4jar commons-pool-1.5.5jar common ...
- HDU(3555),数位DP
题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=3555 Bomb Time Limit: 2000/1000 MS (Java/Others ...
- 理解mipi协议
完成mipi信号通道分配后,需要生成与物理层对接的时序.同步信号: MIPI规定,传输过程中,包内是200mV.包间以及包启动和包结束时是1.2V,两种不同的电压摆幅,需要两组不同的LVDS驱动电路在 ...
- ZOJ 3593 One Person Game
One Person Game Time Limit: 2 Seconds Memory Limit: 65536 KB There is an interesting and simple ...