大数据仓库-kudu

标签: 大数据 仓库 kudu | 发表时间:2015-11-21 16:56 | 作者:jiezhu2007
出处:http://www.iteye.com

数据仓库里面存储引擎是非常重要的,存储引擎的好坏,基本决定了整个数仓的基础。

 

kudu目标

cloudera公司最近发布了一个kudu存储引擎。按照cloudera的想法,kudu的出现是为了解决,hbase,parquet不能兼顾分析和更新的需求,所以需要一个新的存储引擎可以同时支持高吞吐的分析应用以及少量更新的应用。cloudera 的设计目标是:(http://blog.cloudera.com/blog/2015/09/kudu-new-apache-hadoop-storage-for-fast-analytics-on-fast-data/)

• Strong performance for both scan and random access to help customers simplify complex hybrid architectures

在扫描和随机访问两种场景下都有很强的性能,帮助客户简化混合架构。

• High CPU efficiency in order to maximize the return on investment that our customers are making in modern processors

高cpu利用率

• High IO efficiency in order to leverage modern persistent storage

高io效率充分利用现代存储

• The ability to update data in place, to avoid extraneous processing and data movement

支持数据原地更新

• The ability to support active-active replicated clusters that span multiple data centers in geographically distant locations

支持双活复制集群

kudu核心机制

Cloudera有一篇论文描述kudu的机制,Kudu: Storage for Fast Analytics on Fast Data 。可以从http://getkudu.io/kudu.pdf下载。这里简单说下kudu的关键机制。

 

  1. 模仿数据库,以二维表的形式组织数据,创建表的时候需要指定schema。所以只支持结构化数据。

  2. 每个表指定一个或多个主键。

  3. 支持insert/update/delete,这些修改操作全部要指定主键。

  4. read操作,只支持scan原语。

  5. 一致性模型,默认支持snapshot ,这个可以保证scan和单个客户端 read-you-writes一致性保证。更强的一致性保证,提供manually propagate timestamps between clients或者commit-wait。

  6. cluster类似hbase简单的M-S结构,master支持备份。

  7. 单个表支持水平分割,partitions叫tablets,单行一定在一个tablets里面,支持范围,以及list等更灵活的分区键。

  8. 使用Raft 协议,可以根据SLA指定备份块数量。

  9. 列式存储

  10. delta flushes,数据先更新到内存中,最后在合并到最终存储中,有专门到后台进程负责。

  11. Lazy Materialization ,对一些选择性谓词,可以帮助跳过很多不必要的数据。

  12. 支持和MR/SPARK/IMPALA等集成,支持Locality ,Columnar Projection ,Predicate pushdown 等。

     

总结

为应对BI领域少量更新和大量扫描分析场景,kudu 借鉴了很多传统数仓等技术。对这个领域目前是impala+kudu/Hive/Spark SQL/Greenplum MPP数据库在混战,未来这个会走向融合,传统的mpp数据库个人认为会是一个过渡产品。

 

 
 

微信扫一扫
关注该公众号



已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [大数据 仓库 kudu] 推荐:

大数据仓库-kudu

- - 数据库 - ITeye博客
数据仓库里面存储引擎是非常重要的,存储引擎的好坏,基本决定了整个数仓的基础. cloudera公司最近发布了一个kudu存储引擎. 按照cloudera的想法,kudu的出现是为了解决,hbase,parquet不能兼顾分析和更新的需求,所以需要一个新的存储引擎可以同时支持高吞吐的分析应用以及少量更新的应用.

IBM开建世界最大数据仓库

- 疯癫二楞子 - 译言-电脑/网络/数码科技
来源IBM Builds Biggest Data Drive Ever - Technology Review. IBM开建迄今为止最大数据驱动. 该系统能够详细模拟现实世界现象--或存储240亿首MP3歌曲. 2011年8月25日星期四,汤姆 西蒙尼特提供. A data repository almost 10 times bigger than any made before is being built by researchers at IBM's Almaden, California, research lab.

数据仓库

- Ran - Linux@SOHU
翻译:马少兵、曾怀东、朱翊然、林业. 尽管服务器存储、处理能力得到有效的提高,以及服务器价格的降低,让人们能够负担起大量的服务器,但是商业软件应用和监控工具快速的增加,还是使得人们被大量的数据所困扰. 在数据仓库领域中的许多系统管理员、应用开发者,以及初级数据库管理员发现,他们正在处理“海量数据”-不管你准备与否-都会有好多不熟悉的术语,概念或工具.

数据仓库概念

- - 互联网 - ITeye博客
数据仓库:是一个数据库环境,它提供用户用于决策支持的当前和历史数据,这些数据在传统的数据库中不方便得到. 特点:面向主题,集成的,相对稳定的,反应历史变化的. 组成:数据仓库的数据库,数据抽取工具,元数据,访问工具,数据集市,数据仓库管理,信息发布系统. 数据挖掘:就是从大量数据中获取有效的,新颖的,潜在有用的,最终可理解的模式的过程.

谈大数据(2)

- - 人月神话的BLOG
对于大数据,后面会作为一个系列来谈,大数据涉及的方面特别多,包括主数据,数据中心和ODS,SOA,云计算,业务BI等很多方面的内容. 前面看到一个提法,即大数据会让我们更加关注业务方面的内容,而云平台则更多是技术层面的内容. 对于大数据会先把各个理解的关键点谈完了,再系统来看大数据的完整解决方案和体系化.

大数据之惑

- - 互联网分析
算起来,接触大数据、和互联网之外的客户谈大数据也有快2年了. 也该是时候整理下一些感受,和大家分享下我看到的国内大数据应用的一些困惑了. 云和大数据,应该是近几年IT炒的最热的两个话题了. 在我看来,这两者之间的不同就是: 云是做新的瓶,装旧的酒; 大数据是找合适的瓶,酿新的酒. 云说到底是一种基础架构的革命.

白话大数据

- - 互联网分析
这个时代,你在外面混,无论是技术还是产品还是运营还是商务,如果嘴里说不出“大数据”“云存储”“云计算”,真不好意思在同行面前抬头. 是千万级别的用户信息还是动辄XXXTB的数据量. 其实,大数据在我的眼里,不是一门技术,而是一种技能,从数据中去发现价值挖掘价值的技能. ”当我掷地有声用这句话开场时,正好一个妹子推门而入,听到这句话,微微一怔,低头坐下.

交通大数据

- - 人月神话的BLOG
本文简单谈下智慧交通场景下可能出现的大数据需求和具体应用价值. 对于公交线路规划和设计是一个大数据潜在的应用场景,传统的公交线路规划往往需要在前期投入大量的人力进行OD调查和数据收集. 特别是在公交卡普及后可以看到,对于OD流量数据完全可以从公交一卡通中采集到相关的交通流量和流向数据,包括同一张卡每天的行走路线和换乘次数等详细信息.

Snapjoy,你的私人照片仓库

- @six - 36氪
作为一个有危机意识的网民,我们很多时候都会有备份自己硬盘的习惯,里面可能会有一些很重要的东西,例如珍贵的相片,我们会需要至少一种云服务,以防万一,在我们的电脑发生悲剧的时候,就算本地的备份被毁掉,我们还可以把那些珍贵的相片保存下来. Snapjoy,Y Combinator的孵化公司,就是为了解决相片备份而来的.

数据仓库的设计与开发

- - 数据库 - ITeye博客
     数据仓库系统的设计与开发. 1)       收集和分析业务需求.   用户需求,管理人员需求. 2)       建立数据模型和数据仓库的物理设计.   概念模型,逻辑模型,物理模型. 3)       定义数据源. 数据源面向应用,不是面向主题,而且数据源之间存在多个不一致的情况,所以必须在已有的系统中定义记录系统(内容正确,在多个数据源间起决定作用的操作型数据源).