MPP DB 是 大数据实时分析系统 未来的选择吗?

大数据领域,实时分析系统(在线查询)是最常见的一种场景,前面写了一个《实时分析系统(HIVE/HBASE/IMPALA)浅析》讨论业界当前常见的方案。互联网公司用得比较多是HIVE/HBASE,如腾讯基于HIVE深度定制改造,改名为TDW,小米等公司选用HBASE等。关于HIVE/HBASE/IMPALA介绍等可以看我前面的文章。

当前在实时分析系统中,最难的是多维度复杂查询,目前没有一个很好的解决方案,这两天和人讨论到MPP DB(分布式数据库,以Greenplum为最典型代表)。如果从性能来讲,MPP DB在多维复杂查询性能确实要好于HIVE/HBASE/IMPALA等,因此有不少声音认为,MPP DB是适合这种场景的未来的解决方案。MPP DB看似对多维度复杂查询性能较好,但是同时有两个致命的缺点,大家选型的时候不得不考虑:

1、扩展性:

MPP DB都号称都能扩展到1000个节点以上,实际在应用过程中,就我目前从公开资料看到的不超过100个节点,如支付宝中用Greenplum来做财务数据分析的最大一个集群60多台机器。另外和Greenplum公司交流,在广东移动最大的用来做数据存储的,也就100台以内。这和hadoop动不动4,5千个节点一个节点集群简直不在一个数量级上。

为什么MPP DB扩展性不好?

有很多原因,有产品成熟度,也有应用广度的问题,但是最根本的还是架构本身的问题。讲到架构这里就要先讲下CAP原则:

Consistency(一致性), 数据一致更新,所有数据变动都是同步的 Availability(可用性), 好的响应性能 Partition tolerance(分区容错性) 可靠性 定理:任何分布式系统只可同时满足二点,没法三者兼顾。 忠告:架构师不要将精力浪费在如何设计能满足三者的完美分布式系统,而是应该进行取舍。

MPP DB还是基于原DB扩展而来,DB里面天然追求一致性(Consistency),必然带来分区容错性较差。集群规模变得太大,业务数据太多时,MPP DB的元数据管理就完全是一个灾难。元数据巨大无比,一旦出错很难恢复,动不动导致毁库。

所以MPP DB要在扩展性上有质的提示,要对元数据,以及数据存储有架构上的突破,降低对一致性的要求,这样扩展性才能提升,否则的话很难相信一个MPP DB数据库是可以容易扩展的。

2、并发的支持:

一个查询系统,设计出来就是提供人用的,所以能支持的同时并发越高越好。MPP DB核心原理是一个大的查询通过分析为一一个子查询,分布到底层的执行,最后再合并结果,说白了就是通过多线程并发来暴力SCAN来实现高速。这种暴力SCAN的方法,对单个查询来说,动用了整个系统的能力,单个查询比较快,但同时带来用力过猛的问题,整个系统能支持的并发必然不高,从目前实际使用的经验来说,也就支持50~100的并发能力。

当前HBASE/IMPALA应对复杂查询时,也是通过全盘SCAN的方法来实现的,这种场景下,硬盘数量越多越好,转速越快越好。HBASE为什么号称支持上千并发,这也是在特定的场景下(查询时带用户标示,即带row key)才能实现的,复杂查询场景下,什么系统都歇菜。

所以MPP DB应用场景已经非常明显了,适合小集群(100以内),低并发的(50左右)的场景。MPP DB未来是不是趋势,我不知道,但是至少目前来看,用MPP DB来应对大数据的实时分析系统是非常吃力的。

原文发布于微信公众号 - 大数据和云计算技术(jiezhu2007)

原文发表时间:2014-05-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏zaking's

搜索正在遍及世界

大部分工作人员刚刚从Lucene Revolution社区回来。与Lucene/Solr社区的精英们一起参加活动实在是一次让人无法忘怀的经历。我们可以越来越明显...

1803
来自专栏BIT泽清

理财App无法上架?马甲包VS金融许可证资质上架方案哪个更靠谱?

理财App无法上架?马甲包VS金融许可证资质上架方案哪个更靠谱?现在投资理财行业都很火爆,如借贷宝,从去年末起,根据政策,金融理财小额贷款等行业的App更新或...

5378
来自专栏Hadoop实操

大数据凉了?No,流式计算浪潮才刚刚开始!

AI 前线导读:本文重点讨论了大数据系统发展的历史轨迹,行文轻松活泼,内容通俗易懂,是一篇茶余饭后用来作为大数据谈资的不严肃说明文。本文翻译自《Streami...

1316
来自专栏SDNLAB

OpenStack发布Queens版本,扩展对GPU和容器支持

OpenStack本周发布了第17个代码版本Queens,该版本包含一些重大的更新,例如软件定义存储功能、GPU兼容性以及容器工作负载的跟踪等。Queens不仅...

3906
来自专栏Netkiller

食品安全溯源区块链解决方案探索

中国广东省深圳市龙华新区民治街道溪山美地 518131 +86 13113668890 <netkiller@msn.com>

3.5K149
来自专栏闰土大叔

不会git的程序员,会不会被鄙视?

事先声明啊,这与公司技术栈无关,不要说有些公司只用 git 管理。对于公司而言,使用什么版本控制有一定的考虑或者历史原因。但如果你遇到一个不会 git 的新同事...

966
来自专栏IT大咖说

如何在OpenStack中轻松部署MySQL应用

2133
来自专栏CSDN技术头条

多集群真的不会管理!

传统单一集群式的服务模式将会越来越暴露出它的局限性,包括它的单主节点性能瓶颈,异构环境下的服务模式等等,而多集群协同服务将会是大规模集群服务的一个重要演变趋势。

421
来自专栏腾讯大数据的专栏

拿什么保护你---TDW数据安全

互联网时代,大数据扮演着极为重要的角色;腾讯作为中国最大社交平台,具备最具权威、代表性的互联网大数据。数据平台部TDW作为公司级的海量数据存储和计算平台,集中了...

2008
来自专栏大数据和云计算技术

大数据服务上云的思考

说说大数据怎么上云的一些思考: 1、首先说说,大数据和云的关系。云是一种网络形态的概念,是继1980年代大型计算机到客户端-服务器的大转变之后的又一种巨变。云计...

2798

扫码关注云+社区