1. 基本概念
Hive是由Facebook在2007年8月开始开发,并于2008年8月开源(https://issues.apache.org/jira/browse/HADOOP-3601)。它是建立在Hadoop上的数据仓库工具,它可以对存储在HDFS、HBase、PG等存储系统中的文件进行结构化分析等操作。
Hive提供了以下功能:
1) 提供类SQL语言(HQL),可以很方便的做ETL操作
2) 数据可以存储在多个不同的存储系统,可以使用多种存储类型
3) 查询执行是通过MapReduce实现
4) 提供丰富的函数,普通函数(split等)、分析函数(sum等)、表级函数(row_number等)
2. 产生背景
在Hadoop出现以前,是关系型数据库的天下,SQL语言成为很多人的必备技能。但是,随着数据量的日益增长,单机存储计算已然满足不了海量数据的分析需求。并行计算框架MapReduce随之产生,并得到了迅猛的发展,它可以对数据并行分析处理,使得海量数据的快速分析成为可能。但是,编写MR程序却不是一件很容易的事情,Hive随之而来,它可以将SQL语言自动转换成MR程序去执行,可以让使用者只关注自己的业务逻辑,如此方便的神器自然得到了很多人的青睐,尤其是原来习惯编写SQL的人,hive得到的迅猛发展。
3. TDW之Hive历史
了解我们公司的Hive,不得不说TDW(Tencent distributed Data Warehouse)的历史。我们是在2009年7月,成立TDW项目组,并启动技术架构预言。同年12月,确定TDW技术架构方案,并开始投入开发。2010年6月TDW 0.1版本发布,具备数据仓库基础功能。随后,不断完善功能、调优。2011年7月,TDW IDE发布,提高了TDW的易用性的同时,大大促进了TDW在公司的普及。
TDW是公司级数据平台,基于share-nothing架构