这个其实是转自杭州第三次spark meetingup,华为的李昆大神的分享。

OLAP分析场景 ORC File Parquet File Cube File
Full scan one dimension Fast  Fast Median
(Low Cardinality) (只扫需要的列) (只扫需要的列) (只扫需要的列,但MDK较大)
Full scan one dimension Slow Slow Fast
(High Cardinality) (Stripe Level字典编码,需要重复解码) (Row Group Level字典编码,需要重复解码) (全局字典编码,无重复解码)
Full scan multiple dimension aggregation Slow Slow Fast
(读取多行并做join) (读取多行并做join) (星型模型转换后无需join)
Filter single dimension Slow Very Slow Fast
(需要全扫描单列,可利用min/max跳过Stripe) (需要全扫描单列,无索引) (利用多维索引)
Filter multiple dimensions Slow Very Slow Very Fast
Select Year,ServiceName,  (需要全扫描多列,可利用min/max跳过Stripe) (需要全扫描多列,无索引) (利用多维索引)
Filter on Measure Slow Slow Slow
(需要全扫描,可利用min/max跳过Stripe) (需要全扫描,无索引) (度量上无索引,需要全扫描)

排版有些乱,大家凑合看一下。

从这个比较来看,大基数的全量多维的查询,CubeFile的优势是很明显的。

个人感觉,最大原因是ORCFile和ParquetFile他们是分块索引数据的,而CubeFile是全量索引数据的。现在理解的还比较浅,等深入理解后再来论这个的区别和关系。

ORCFILE,ParquetFile,CubeFile使用场景区别的更多相关文章

  1. 从物联网防火墙himqtt源码谈哈希和红黑树的应用场景区别

    从物联网防火墙himqtt源码谈哈希和红黑树的应用场景区别 himqtt是首款完整源码的高性能MQTT物联网防火墙 - MQTT Application FireWall,C语言编写,很多数据结构适合 ...

  2. java中List接口的实现类 ArrayList,LinkedList,Vector 的区别 list实现类源码分析

    java面试中经常被问到list常用的类以及内部实现机制,平时开发也经常用到list集合类,因此做一个源码级别的分析和比较之间的差异. 首先看一下List接口的的继承关系: list接口继承Colle ...

  3. 事务以及MySQL事务隔离级别+MySQL引擎的区别

    1.事务的基本要素:ACID 1.原子性(Atomicity): 事务开始后所有操作,要么全部做完,要么全部不做,不可能停滞在中间环节.事务执行过程中出错,会回滚到事务开始前的状态,所有的操作就像没有 ...

  4. Android onKeyDown、onKeyUp、dispatchKeyEvent的区别

    1. onKeyDown.onKeyUp.dispatchKeyEvent的区别和使用场景 区别: 1.1 onKeyDown.onKeyUp是按键事件的回调接口(冒泡式调用),dispatchKey ...

  5. Gpon与Epon的区别

    一.GPON Gpon(Gigabit-Capable pon)技术起源于ATMPON技术标准,现已形成基于ITU-TG.984.X标准的最新一代宽带无源光综合接入标准. 1.GPON技术特点: 1. ...

  6. 【HBase】与关系型数据库区别、行式/列式存储

    [HBase]与关系型数据库区别 1.本质区别 mysql:关系型数据库,行式存储,ACID,SQL,只能存储结构化数据 事务的原子性(Atomicity):是指一个事务要么全部执行,要么不执行,也就 ...

  7. MySQL中的find_in_set()函数使用技巧心得与应用场景总结

    Author:极客小俊 一个专注于web技术的80后 我不用拼过聪明人,我只需要拼过那些懒人 我就一定会超越大部分人! CSDN@极客小俊,CSDN官方首发原创文章 企业博客 CSDN.com 个人博 ...

  8. 华为云计算IE面试笔记-桌面云中的用户组、虚拟机模板、模板虚拟机、虚拟机组和桌面组的关系及区别。发放完整复制和链接克隆虚拟机时,步骤有什么区别,要怎么选择桌面组?

    概念解释: 模板虚拟机:FC上创建的裸虚拟机,用于制作不同类型的虚拟机模板. 虚拟机模板:用于创建虚拟机的模板,对裸虚拟机(模板虚拟机)进行配置或自定义安装软件后,转为模板.虚拟机模板类型有完整复制, ...

  9. JSP模板继承功能实现

    背景 最近刚入职新公司,浏览一下新公司项目,发现项目中大多数JSP页面都是独立的.完整的页面,因此许多页面都会有如下重复的代码: <%@ page language="java&quo ...

随机推荐

  1. 登录DA面板出现:License has expired

    登录DA面板出现:License has expired的解决方法. 首先看是否过期,如果出现The license looks fine on this end. 登录 SSH as root # ...

  2. Window 常用命令

    Window 常用命令   Ctrl +alt +delete 切换用户 Ctrl +shift+esc 启动任务管理

  3. HDU 4883 TIANKENG’s restaurant

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4883 解题报告:一家餐馆一天中有n波客人来吃饭,第 i 波  k 客人到达的时间是 s ,离开时的时间 ...

  4. [OpenJudge 3063]罪犯问题

    [OpenJudge 3063]罪犯问题 试题描述 一天,警官抓获了N个嫌犯,审问N个罪犯的途中,作为警长助手的你突然发现其中被确定为罪犯的K号人是你曾经出生入死的兄弟,你不能眼睁睁看着他被抓进牢里. ...

  5. 使用caffe自动测试模型top5的结果

    方法很简单,直接在定义网络的prototxt里面最后加一层就可以了. 这一层定义如下 layer { name: "accuracy_5" type: "Accuracy ...

  6. Linux rsync 命令详解

    服务器之间常常要保持些文件或目录的一致,比如一些大的软件下载网站,它们通常使用多台服务器来提供下载服务.当一台服务器上的文件更新后,其它的服务器 也需要更新,而且 在更新的时候应该是只对新增或是修改过 ...

  7. 数据结构与算法实验题7.1 M 商人的求救

    问题描述:A 国正面临着一场残酷的战争,城市被支持不同领导的两股势力占据,作为一个商人,M先生并不太关心政治,但是他知道局势很严重,他希望你能救他出去.M 先生说:“为了安全起见,我们的路线最多只能包 ...

  8. LocalResizeIMG前端HTML5本地压缩图片上传,兼容移动设备IOS,android

    LocalResizeIMG前端HTML5本地压缩图片上传,兼容移动设备IOS,android jincon 发表于 2015-02-26 18:31:01 发表在: php开发 localresiz ...

  9. spring事物传播属性

    PROPAGATION_REQUIRED Support a current transaction; create a new one if none exists.  支持一个当前事务;如果不存在 ...

  10. Ninject学习笔记<二>

    本文转载自kuangkro 如果给您带来不便请联系博主 一.控制反转和依赖注入 Ninject是一个轻量级的基于.Net平台的依赖注入(IOC)框架.所谓的IOC,即控制反转(Inversion of ...