自2011年下半年开始,我就1直关注Apache开源社区,侧重点放在大数据方面的成熟框架和产品。在这期间,陆续研究过Hadoop、Hive、HBase、Mahout、Kafka、Flume、Storm,和近两年很火的Spark和Flink等,和很多从事大数据的朋友1样,经历过无数的夜晚,对着电脑屏幕逐行研究这些源代码,同时也看到无数的开源爱好者和技术专家加入Hadoop开源社区,贡献自己的气力,日复1日,乐此不疲。
谈起大数据,不能不提Hadoop,如今其早已发展成了大数据处理的事实标准。Hadoop诞生于2005年,其遭到Google的两篇论文(GFS和MapReduce)的启发。起初,Hadoop只是用来支持Nutch搜索引擎的项目,从2006年开始,Hadoop脱离了Nutch,成了Apache的顶级项目,不管是在学术界还是工业界都得到了迅猛的发展。
如今已经是2016年了,Hadoop10周岁了,这10年期间围绕其核心组件(HDFS,MapReduce,Yarn)陆续出现了1批工具,用来丰富Hadoop生态圈,解决大数据各方面的问题,这其中就包括ApacheKylin。
ApacheKylin(麒麟)是由eBay研发并贡献给开源社区的Hadoop上的散布式大范围联机分析(OLAP)平台,它提供Hadoop之上的SQL查询接口及多维分析能力以支持大范围数据,能够处理TB乃至PB级别的分析任务,能够在亚秒级查询巨大的Hive表,并支持高并发。ApacheKylin于2014年10月开源,并于当年11月成为Apache孵化器项目,是eBay第1个贡献给Apache软件基金会的项目,也是第1个由中国团队完全贡献到Apache的项目,在这里对ApacheKylin的中国团队表示感谢,感谢贡献如此出色的大数据分析平台。
从去年开始接触Apache Kylin,我感觉很亲切,也很欣喜。当前研究的版本为0.7.1,也就是Kylin加入Apache孵化器项目后的第1个Apache发行版本,虽然当时的Kylin存在1些问题,但是其基于Hadoop设计的框架还是很有创意和特点的。经过1年多的发展,截至目前,ApacheKylin的版本已发展到1.5.3,并且从1.5版本开始,ApacheKylin进行了重构,支持可扩大架构;支持更多的数据源,构建引擎和存储引擎;构建算法不断优化;支持与更多的可视化工具集成等。
如今,Apache Kylin已被利用在eBay、Exponential、京东、美团、明略数据、网易及其他公司。愈来愈多的大数据团队开始选择ApacheKylin作为公司大数据分析平台的组成部份,满足其海量数据的多维指标实时查询分析。通过很多社区的交换分享,我发现很多朋友对ApacheKylin没有1个整体的认识,在使用进程中出现各种各样的问题,打击自信心,他们急切希望能有1本全面介绍Apache Kylin的书籍。由于我常常在博客和社辨别享ApacheKylin实战方面的1些经验,所以很多朋友鼓励我能够写1本比较全面介绍Apache Kylin的书籍,帮助更多的爱好者更好地加入ApacheKylin的社区,并在生产环境中进行实践。刚开始比较犹豫,毕竟写书需要花费大量的时间和精力,而且要对读者负责,容不得半点马虎。后来有社区的几个朋友给我打电话劝说,和清华大学出版社的夏毓彦编辑1再鼓励,还有家人的支持,我就下定决心写这本书,目的只有1个,就是希望读者能够通过这本书,对ApacheKylin有1个完全的认识,掌握各方面的技能,并终究利用在自己公司的生产环境中。
这是1本全面介绍Apache Kylin的书籍,包括环境搭建、案例实战演示、源码分析、Cube优化等,另外还会触及数据仓库、数据模型、OLAP、数据立方体等方面的知识。通过本书系统性学习和实战操作,朋友们将能够到达基于Apache Kylin搭建企业级大数据分析平台,并熟练掌握使用Apache Kylin多维度地分析海量数据,终究通过可视化工具展现结果。
本书合适从事Hadoop、HBase、Hive和Kylin等方面工作的人员参考浏览,最好能掌握1点OLAP、数据立方体等数据仓库方面的知识。但是我相信这本书也合适任何想从事大数据方面工作的程序员和架构师。
本书中会触及大量的Linux Shell命令,这些命令都是在CentOS操作系统上履行成功的,对其他的1些Linux系统也一样适用,如有不适用的,可以查阅资料,修改命令以符合对应的操作系统。
要下载本书章节中的样例代码,请到https://github.com/jiangshouzhuang/-Apache-Kylin-下载。
由于本人的写作能力有限,可能有些章节内容斟酌其实不全面,或版本升级致使某些章节部份内容不是最新的。为了更好地为读者服务,我特地建立了1个QQ群:118152802,读者有关本书的任何问题,我都会及时给朋友们答复,谢谢支持。
这本书的面世,得到了很多朋友的大力相助,在这里感谢所有帮助我完成这本书的人。
感谢公司的同事们,特别感谢项同德和万文兵两位项目经理给予的支持和鼓励,感谢施健健给予的技术支持和帮助。
感谢CSDN和cnblogs博客中优秀的文章给予的技术支持。
感谢清华大学出版社所有为本书的出版和发行付出了辛苦劳动的人们。
最后,我要感谢我的家人,给予我的不懈支持。感谢父母帮我们照顾调皮捣蛋的宝宝;感谢妻子1如既往地照顾我的生活,给予我充足的时间用来写作。没有家人的支持和照顾,我是不可能完成这本书。
自从书预售以来,陆陆续续有很多朋友加了QQ,微信或群,也抽时间帮助很多朋友解决Kylin使用方面的问题和探讨如何更好地使用Kylin到实际的项目中。但是由于个人能力有限,还要全身心肠投入到工作中,所以对1些朋友提的问题可能不会很快的回复,还请体谅。
最后非常感谢亲爱的读者和Kylin社区朋友的支持和鼓励,希望朋友们多提出宝贵的意见和建议,再次表示感谢。