把这个拿出来的目的, 是想得到更多的反馈意见, 请邮件至zhouchen.zm@taobao.com
历史
Hive 由 2009 年 3 月引入淘宝作为数据平台的海量数据分析基础框架, 引入的原因有如下
几点:
(1) 不是所有用户都懂计算机编程, 特别是 MapReduce 的分布式程序, 并且数据平
台的用户大多数会 SQL, Hive 则提供了由 SQL 解析成 MapReduce 作业的功能, 用
户只需要掌握 SQL 即可上手, 学习曲线较为平滑.
(2) Hive SQL 表意精简, 大幅度地减少开发量, 提高数据分析的生产效率. 例如,
之前统计网站 UV 的代码至少需要 Mapper, Reducer, JobDriver 三个类共计数百
行 Java 代码, 使用 Hive 只需要一行 SQL.
(3) Hive 具有查询优化引擎, 结合了一部分传统数据库的优化理论以及针对
MapReduce 分布式程序的一些优化理念. MapReduce 原生程序达到 Hive 同等的效
率,需要编写大量的优化代码.
(4) Hive提供元数据服务, 而原生MapReduce以及Pig都不提供. 元数据有助于数
据血缘分析,数据生命周期定义,数据共享以及权限控制等数据仓库的基础功能.
经过两年的发展, Hive 已经成为淘宝数据平台的主要离线数据分析基础框架. 在横向
上诞生了极限存储,DIP,Web IDE 等项目, 同时影响了天网调度系统,数据同步工具
(DataX, DbSync),数据平台生命周期分析系统的发展历程;在纵向上, Hive 产生的结
果数据已经成为量子统计,数据魔方,搜索,BI 业务的主要数据来源,并且一淘,淘宝商城,
支付宝,B2B,阿里金融集团子公司也开始使用 Hive 作为他们的数据分析工具, 提取他们
所需要的数据.
问题
随着 Hive 在淘宝的深度使用, 有一些问题逐渐暴露出来:
(1) 根据 Hive 培训的结果反馈, 集团内有一些数字化运营, PD 员工开始使用 Hive.
这部分用户的特征是对数据的商业价值敏感度及对数据化产品的认识度都相对于开
发人员更高, 但他们往往不会 SQL 语言, 更容易接受可视化操作.
(2) Hive 使用的 SQL 语言不利于图形化操作.市面上出现的一些成熟的 SQL 图形化操
作工具都可以有效地解决 Join 操作的图形化,但都无法较好地解决如何实现子查
询以及 aggregation 操作的图形化.
(3) SQL是一种描述型语言, 开发SQL的用户必须把他所需要的结果关系Schema化分
为多个子 Schema, 全部想清楚才能编写 SQL 程序. SQL 不符合人类循序渐进的思
维方式, 初次使用 Hive 的用户经常反馈不知如何下手取数据.
(4) Hive由于SQL表意的局限性, 有一些分析程序不得不使用原生MapReduce编写.
但原生的MapReduce 无法方便地共享 Hive 的数据, 因为 MapReduce 无法获取Hive 的元数据信息.
(5) 数据分析是一道复杂的过程, 查询数据库往往是其中的一个步骤,所以众多数据库
系统都可以将其 SQL 嵌入到其它编程语言中, 作为数据化产品的一个组成部分.淘
宝有一些用户曾尝试在 Python/Java 语言中嵌入 Hive SQL, 但都以失败告终.
(6) Hive 是 Facebook 公司主导的开源项目, 代码质量存在一定的问题. 研发人员普
遍反映 Hive 代码结构紊乱, 添加一个新功能经常需要涉及 Hive 所有的核心类.
并且由于 Facebook 的生产环境和淘宝的环境有较大的差异, 所以采纳社区的
patch 经常需要数个月的稳定期. 在这段稳定期, 给用户体验带来了负面影响.
(7) Hive 没有关注错误提示信息的友好性. 对于一些简单的错误, 用户都没有办法自
我判断, 需要报告给研发人员.
因为以上几个原因, Hive 在淘宝的发展受到制约. 从用户看, Hive 无法顺利地挖掘
潜在的用户群, 而这些用户确实需要数据; 从开发上看, Hive 进展缓慢, 开发人员疲于
解答和解决各类 Hive 错误
详情见附件pdf
分享到:
相关推荐
自己改的百度离线地图API2.0,可以断网运行, 包含 1.拉框放大,测距,画线,多边型等功能 2.自定缩放级别显示指定标签 3.快速定位及隐藏指定类型 其他api项唯一 一验证,抛砖引玉,待大家一起研究。
淘宝数据分析,实际是电商数据分析,归结到底还是零售数据分析,给你一些分析 的思路,权当做抛砖引玉。 总体来说可以分为商品分析、客户分析、地区分析、时间分析四大维度(参考数据 雷达的分析思路)。在这里我...
关于淘宝的一个产品分析,2009年4月完稿,一些地方淘宝已经完善了,但是我没有精力修改这个ppt,谁要是有空的话,继续完善,算是共同作者le
SAS 语言抛砖引玉
淘宝开放平台,这里不再费话了,直接看网址:http://open.taobao.com/ 这里有很多的实例,本人最近也一直在学习。 前几天看到浪子的群里有一位朋友说想要ASP的实例,自己就找了个时间简单写一下。 当然写的不好,...
本次,我们将以 亚马逊AWS云平台为例,讨论如何设计一个可以容错的应用,目的是希望对基于AWS云平台的架构设计原则进行一个概要介 绍,从而了解如何基于像AWS这样的云平台进行架构设计,起到抛砖引玉的作用。
SAS语言抛砖引玉》 任何想学习和了解SAS语言的人,学习SAS的好材料,确实很有用。
目前大多的SAS 数据也并不是没有讲到基础内容,而是都草草的介绍了一些语言基础就开始把读者带入统计过程,本来有些初学者心态就很急,而作者这么快的就将读者带入应用领域,更加没有人去学好语言基础了。...
提出一个既适于客户端应用又适于服务端的应用的、统一架构,极大程度上统一及简化了网站架构设计。 目前在三种主流的Web服务实现方案中,REST模式服务相比复杂的SOAP和XML-RPC对比来讲,更加简 洁,越来越多的web...
通达信指标公式源码 股市冷暖 判断大盘牛熊利器 抛砖引玉熊市主图.doc
抛砖引玉成语故事.docx
成语故事抛砖引玉.docx
本文从最常用的PFC拓扑的角度来探讨电源设计的方法,希望电源设计尽可能变得透明,科学和合理,最大限度的提高产品开发效率,降低系统设计风险。
ASP.net 企业实战 抛砖引玉 特别有实践价值。能帮助初学者迅速上手做项目。
体验营销之抛砖引玉.pdf
挖财是涵盖记账、管钱、理财、信贷、...本演讲将通过挖财审批数据系统,数据分析二三例的剖析,重点介绍大数据如何在现代审批核系统中使用,针对信贷系统面临的困难如何建立大数据平台,如何建设相关系统支撑大数据。
《SAS 语言抛砖引玉》,学习SAS的好材料,确实很有用。花钱从别的论坛上买的,大家可以下下来学习一下。
《SAS语言抛砖引玉》 任何想学习和了解SAS语言的人。