CarbonData:华为开发并支持Hadoop的列式文件格式
华为开发自有系统 时间:2021-04-16 阅读:(
)
CarbonData是由华为开发、开源并支持ApacheHadoop的列式存储文件格式,支持索引、压缩以及解编码等,其目的是为了实现同一份数据达到多种需求,而且能够实现更快的交互查询.
目前该项目正处于Apache孵化过程中.
为什么重新设计一种文件格式目前华为针对数据的需求分析主要有以下5点要求:1、支持海量数据扫描并取其中几列;2、支持根据主键进行查找,并在压秒级响应;3、支持在海量数据进行类似于OLAP的交互式查询,并且查询中涉及到许多过滤条件,这种类型的workload应该在几秒钟内响应;4、支持快速地抽取单独的记录,并且从该记录中获取到所有列信息;5、支持HDFS,这样客户可以利用现有的Hadoop集群.
目前现有的Hadoop生态系统中没有同时满足这五点要求文件格式.
比如Parquet/ORC的文件仅仅满足第一和第五条要求,而其他的要求无法满足,所以基于这些事实华为开始开发CarbonData.
CarbonData有啥优势CarbonData文件格式是基于列式存储的,并存储在HDFS之上;其包含了现有列式存储文件格式的许多有点,比如:可分割、可压缩、支持复杂数据类型等;并且CarbonData为了解决上面5点要求,加入了许多独特的特性,主要概括为以下四点:1、存储数据及其索引:在有过滤的查询中,它可以显著地加速查询性能,减少I/O和CPU资源.
CarbonData的索引由多级索引组成,处理框架可以利用这些索引信息来减少调度和一些处理的开销;在任务扫描数据的时候它可以仅仅扫描更细粒度的单元(称为blocklet),而不需要扫描整个文件.
2、可操作的编码数据:通过支持高效的压缩和全局编码模式,它可以直接在压缩或者编码的数据上查询,仅仅在需要返回结果的时候才进行转换,这种技术被称为latematerialized.
3、列组:支持多列组成一个列组,并且使用行格式进行存储,这减少了查询时行重建的开销.
4、支持多种使用场景:比如支持类OLAP风格的交互式查询、顺序存取、随机访问等.
CarbonData文件格式一个CarbonData文件是由一系列被称为blocklet组成的;除了blocklet,还有许多其他的元信1/4息,比如模式、偏移量以及索引信息等,这些元信息是存储在CarbonData文件中的footer里.
每当在内存中建立索引的时候都需要读取footer里面的信息,因为可以利用这些信息优化后续所有的查询.
每个blocklet又是由许多DataChunks组成.
DataChunks里面的数据既可以按列或者行的形式存储;数据既可以是单独的一列也可以是许多列.
文件中所有的blocklets都包含相同数量和类型的DataChunks.
CarbonData文件格式如下所示:每个DataChunk又是由许多被称为Pages的单元组成.
总共有三种类型的pages:1、DataPage:包含一列或者列组的编码数据;2/42、RowIDPage:包含行id的映射,在DataPage以反向索引的形式存储时会被使用;3、RLEPage:包含一些额外的元信息,只有在DataPage使用RLE编码的时候会被使用.
CarbonData文件的详细信息如下:编译CarbonData编译CarbonData的预备条件:1、类Unix环境(Linux,MacOSX)2、git3、ApacheMaven(推荐使用3.
0.
4)4、Java7or85、Scala2.
106、ApacheThrift0.
9.
3从github中克隆CarbonData$gitclonehttps://github.
com/HuaweiBigData/carbondata.
git根据自己需求依次选择下面命令编译CarbonData1、Buildwithouttesting$cdcarbondata$mvn-DskipTestscleaninstall3/42、Buildwithtesting:$cdcarbondata$mvncleaninstall3、Buildalongwithintegrationtestcases$cdcarbondata$mvn-Pintegration-testcleaninstall更多关于Carbondata的信息请参见https://github.
com/HuaweiBigData/carbondata本博客文章除特别声明,全部都是原创!
原创文章版权归过往记忆大数据(过往记忆)所有,未经许可不得转载.
本文链接:【】()PoweredbyTCPDF(www.
tcpdf.
org)4/4
ThomasHost域名注册自2012年,部落最早分享始于2016年,还算成立了有几年了,商家提供基于KVM架构的VPS,数据中心包括美国、法国、英国、加拿大和爱尔兰等6个地区机房,VPS主机套餐最低2GB内存起步,支持Windows或者Linux操作系统,1Gbps端口不限制流量。最近商家提供了一个5折优惠码,优惠后最低套餐月付5美元起。下面列出部分套餐配置信息。CPU:1core内存:2GB硬...
水墨云怎么样?本站黑名单idc,有被删除账号风险,建议转出及数据备份!水墨云ink cloud Service是成立于2017年的商家,自2020起开始从事香港、日本、韩国、美国等地区CN2 GIA线路的虚拟服务器租赁,同时还有台湾、国内nat vps相关业务,也有iplc专线产品,相对来说主打的是大带宽服务器产品。注意:本站黑名单IDC,有被删除账号风险,请尽量避免,如果已经购买建议转出及数据备...
sharktech怎么样?sharktech (鲨鱼机房)是一家成立于 2003 年的知名美国老牌主机商,又称鲨鱼机房或者SK 机房,一直主打高防系列产品,提供独立服务器租用业务和 VPS 主机,自营机房在美国洛杉矶、丹佛、芝加哥和荷兰阿姆斯特丹,所有产品均提供 DDoS 防护。此文只整理他们家10Gbps专用服务器,此外该系列所有服务器都受到高达 60Gbps(可升级到 100Gbps)的保护。...
华为开发自有系统为你推荐
支持ipadphpadmin下载求张艺兴《莲》mp3下载outlookexpress如何开启OUTLOOK EXPRESS功能?期刊eset温州商标注册温州注册商标需要注册公司吗35邮箱邮箱地址怎么写即时通民生银行即时通是什么?什么是通配符什么是模糊查询?武林官网武林外传网游国服2019年还有多少人玩?discuz伪静态求虚拟主机Discuz 伪静态设置方法
域名备案信息查询 主机点评 unsplash 日志分析软件 南昌服务器托管 国外网站代理服务器 天互数据 web服务器的架设 softbank邮箱 cdn加速原理 酷番云 微软服务器操作系统 搜索引擎提交入口 免费网页空间 优酷黄金会员账号共享 服务器是干什么用的 什么是web服务器 云服务器比较 注册阿里云邮箱 购买空间 更多