写点什么

PowerDrill,Google 又一个大数据分析大杀器

  • 2012-08-29
  • 本文字数:1365 字

    阅读完需:约 4 分钟

将近十年前,Google 放出的两篇论文催生了 Hadoop。最近,Google 又有两篇论文放出,描述了他们用来处理大数据的利器。其中一篇提到的是 Dremel 。前不久,他们在正在举行的 VLDB 2012 大会上发布了一篇论文《 Processing a Trillion Cells per Mouse Click 》,其中提到了 Google 内部使用的一个工具——PowerDrill,只需要点一次鼠标,PowerDrill 就可以处理上万亿条信息。论文中说:相比提供类似信息分析功能的传统数据库,该工具要快 10 倍到 100 倍。

Google 从 2008 年开始使用 PowerDrill,将其作为 Dremel 的变通方案。Google 数据中心的头头之一 Urs Hölzle 在《连线》杂志的一篇文章中说:Dremel 可以在3 秒钟内查询一个P 的数据。PowerDrill 虽不能处理这么多数据,可能应对的量也不小了,而且它的处理速度更快。论文中的数据指出:PowerDrill 可以在30 到40 秒内处理7820 亿个单元的数据。Google 说,这比Dremel 的方式“高好几个数量级”。

网易杭州研究院副总监汪源发布了一篇博客,对PowerDrill 和Dremel 作出了分析和对比。他首先指出二者的相似之处:

PowerDrill 与 Dremel 的类似之处在于都用了列存,都为 SQL 接口。

接下来,他分析了二者的不同:

  • 两者的设计目标不同,Dremel 设计用来管理非常大量的大数据集(指数据集的数量和每数据集的规模都大),而 PowerDrill 设计用来分析少量的大数据集(指数据集的规模大,但数据集的数量不多)时提供更强劲的分析性能。
  • 设计思路不同,包括:
    1. Dremel 数据存于外存;PowerDrill 数据存于内存。
    2. Dremel 没做数据分区,分析时要扫瞄所有需要的列;PowerDrill 做了组合范围分区,分析时可以跳过很多不需要的分区(真实应用统计可以跳过 92.41% 的分区)。
    3. Dremel 用层次数据模型;PowerDrill 用普通关系模型。
    4. Dremel 数据通常不需要 load,增加数据很方便;PowerDrill 数据要 load,增加数据(估计)不太方便。

然后,他提到 PowerDrill 最鲜明的特点:

一个是已经提到的组合范围分区,另一个是空间效率非常高的内存数据结构。

首先,各列的数据使用基于字典的压缩技术,并且是双层字典。全局字典编码列中所有不同值,每个分区还有个小字典,映射分区内不同值的编码到全局编码,这样各分区内的值的编码取值范围比较小,从而可以用较少的比特来编码一个值。

在这个基本方法之上,还通过一下方式进一步优化空间效率:全局字典用 trie 结构;属性值 Zippy 压缩(热点数据不压缩,LRU 替换);reorder 纪录。这些优化通常能带来 2-10+ 倍的空间效率提升。

对于使用内存做分析的做法,汪源认为:

PowerDrill 设计用来分析少量的核心数据集,一般应用场景下数据量并不大,因此通过内存架构来提高分析效率我觉得是个相当合理的选择。

不过他对其组合范围分区的方式有自己的看法:

虽然论文中说领域专家通常很容易确定分区属性,但这个方式总是不通用,并且会导致 load 之后 append 数据不方便。如果用类似于 InfoBright 的 Knowledge Grid 的方式,可能分区过滤的效果会差一些,但可以规避上述两个问题。

Mike Olson 是 Cloudera 的 CEO,他曾说:“如果你想知道未来的大规模、高性能数据处理基础设施是什么样子,我的建议是去阅读 Google 目前刚刚放出的研究论文。”

MapReduce 和 BigTable 的论文催生了大数据处理的事实标准 Hadoop,这让我们不禁好奇:Dremel 和 PowerDrill 又会催生什么项目呢?

2012-08-29 20:0618993
用户头像

发布了 479 篇内容, 共 159.3 次阅读, 收获喜欢 50 次。

关注

评论

发布
暂无评论
发现更多内容

如何在c++侧编译运行一个aclnn(AOL)算子?

zjun

算子 大模型 CANN 昇腾 Ascend

VMware ESXi 8.0U3c Unlocker & OEM BIOS 集成网卡驱动和 NVMe 驱动 (集成驱动版)

sysin

esxi

Java面试题及答案整理(1000+面试题附答案解析)

蓝蓝路

编程 计算机 java面试

1685页Java面试题大全(整理版)3000+面试题附答案详解,最全面详细

采菊东篱下

编程 计算机 java面试

Ascend推理组件MindIE LLM

zjun

推理模型 Ascend 大模型推理

AIGC对本地配置要求高吗,云桌面如何实现一键镜像?

青椒云桌面

AIGC云桌面 AIGC云电脑 sd云端部署

强大三维模型渲染和动画插件 Video Copilot Element 3D for Mac激活版

小玖_苹果Mac软件

开辟新蓝海 华为坤灵剑指中小企业安全增量市场

Geek_2d6073

Axure RP 10 for Mac中文激活版:高效原型设计软件

小玖_苹果Mac软件

Antares Auto-Tune Pro for Mac(音调校正) 11.0 激活版

小玖_苹果Mac软件

ATB是什么?

zjun

CANN Ascend 大模型推理

ATB概念之:算子tiling

zjun

CANN 数据切片 Ascend 大模型推理

AscendC从入门到精通系列(二)基于Kernel直调开发AscendC算子

zjun

算子 CANN 昇腾 AscendCL Ascend

【万字长文】MarsCode结合 Manim 打造炫酷的算法演示动画

战场小包

Python AI 代码生成 AIGC

如何使用Ascend的ATB加速库?

zjun

CANN Ascend 大模型推理

AscendC从入门到精通系列(一)初步感知AscendC

zjun

算子 大模型 CANN AscendCL Ascend

uniapp开发鸿蒙,是前端新出路吗?

猫林老师

前端 HarmonyOS

阿里巴巴保姆级“Spring Cloud Alibaba 学习笔记”面面俱到,太全了!

蓝蓝路

Java 微服务

开源云原生数据仓库 ByConity测试

多啦A梦

ByConity

智能加氢站站控系统(源码+文档+部署+讲解)

深圳亥时科技

Bodymovin for Mac (AE动画导出json工具) v5.12.1英文激活版

小玖_苹果Mac软件

ATB算子实现原理解读

zjun

CANN Ascend 大模型推理

VMware ESXi 8.0U3c Unlocker & OEM BIOS 标准版和厂商定制版

sysin

esxi

智谱清言英特尔酷睿Ultra专享版发布,离线模型玩转AIPC

E科讯

HarmonyOS鸿蒙开发 - 解决上下两栏白边 - 沉浸式效果

猫林老师

HarmonyOS 鸿蒙应用开发 鸿蒙原生应用开发 HarmonyOS NEXT

蓝宝石插件套装Boris FX Sapphire mac激活版 支持AE PS AVX OFX等

小玖_苹果Mac软件

还在为入门鸿蒙效率慢而困惑?不妨试试开发学习神器 - AI辅助编程

猫林老师

鸿蒙 HarmonyOS 鸿蒙应用开发 鸿蒙原生应用开发 HarmonyOS NEXT

3D渲染与动画制作的创意利器 KeyShot 2024 for mac中文激活版

小玖_苹果Mac软件

强大Raw格式图像ps插件Adobe Camera Raw for Mac中文激活

小玖_苹果Mac软件

牛客网2024版Java最新面试宝典(附答案解析)正式开源!

采菊东篱下

程序员 java面试

Kafka 迁移 AutoMQ 时 Flink 位点管理的挑战与解决方案

AutoMQ

PowerDrill,Google又一个大数据分析大杀器_Google_郑柯_InfoQ精选文章