cdh查看namenode的内存设置_CDH+Kylin三部曲之三:Kylin官方demo

本文是CDH+Kylin三部曲的最后一部分,介绍了如何运行Kylin的官方demo。内容包括Yarn参数设置、导入样例数据、检查数据、构建Cube并进行查询性能对比。通过实践,展示了Kylin在大数据处理上的高效能。
摘要由CSDN通过智能技术生成

欢迎访问我的GitHub

https://github.com/zq2599/blog_demos

内容:所有原创文章分类汇总及配套源码,涉及Java、Docker、Kubernetes、DevOPS等;

本文是《CDH+Kylin三部曲》系列的终篇,先简单回顾前面的内容:

  1. 《CDH+Kylin三部曲之一:准备工作》:准备好机器、脚本、安装包;
  2. 《CDH+Kylin三部曲之二:部署和设置》:完成CDH和Kylin部署,并在管理页面做好相关的设置;

现在Hadoop、Kylin都就绪了,接下来实践Kylin的官方demo;

Yarn参数设置

Yarn的内存参数设置之后一定要重启Yarn使之生效,否则Kylin提交的任务是会由于资源限制而无法执行;

关于Kylin官方demo

  1. 下图是官方demo的脚本的一部分(create_sample_tables.sql),基于HDFS数据创建Hive表:

    55b5fec46e5191fc494622c4464229d0.png
  2. 通过脚本可见KYLIN_SALES为事实表,其他是维度表,并且KYLIN_ACCOUNT和KYLIN_COUNTRY存在关联,因此维度模型符合Snowflake Schema;

    导入样例数据

  3. SSH登录CDH服务器

  4. 切换到hdfs账号:su - hdfs

  5. 执行导入命令:${KYLIN_HOME}/bin/sample.sh

  6. 导入成功,控制台输出如下:

    e0a9f7812d876ed924187a541b0c1aec.png

    检查数据

  7. 检查数据,执行beeline进入会话模式(hive官方推荐用beeline取代Hive CLI):

    d52b3412611a881cb3fb725aeb327580.png
  8. 在beeline会话模式输入链接URL:!connect jdbc:hive2://localhost:10000,按照提示输入账号hdfs,密码直接回车:

    f41d2d0afb64a6e558d38b11b5f6c375.png
  9. 用命令show tables查看当前的hive表,已建好:

    447554b377e62ba3c8934f567b4553aa.png
  10. 查出订单的最早和最晚时间,后面构建Cube的时候会用到,执行SQL:select min(PART_DT), max(PART_DT) from kylin_sales; ,可见最早2012-01-01,最晚2014-01-01,整个查询耗时18.87秒:

    d5a8bb24be09e9f988e09eea37b89fa9.png

    构建Cube:

    数据准备完成,可以构建Kylin Cube了:

  11. 登录Kylin网页:http://192.168.50.134:7070/kylin

  12. 加载Meta数据,如下图:

    b42bd2b7a3296c4987cbee0955701ead.png
  13. 如下图红框所示,数据加载成功:

    1199fbd0326f0184b54b22d1b835b564.png
  14. 在Model页面可以看到事实表和维度表,如下图的操作可以创建一个MapReduce任务,计算维度表KYLIN_ACCOUNT每个列的基数(Cardinality):

    9c3878017fc35681ce5f658f695c1252.png
  15. 去Yarn页面(CDH服务器的8088端口),如下图,可见有个MapReduce类型的任务正在执行中:

    a2be0ce79fbc2ef462e8e88180b3f9f8.png
  16. 上述任务很快就能完成(10多秒),此时刷新Kylin页面,可见KYLIN_ACCOUNT表的Cardinality数据已经计算完成了(hive查询得到ACCOUNT_ID数量是10000,但下图的Cardinality值为10420,Kylin对Cardinality的计算采用的是HyperLogLog的近似算法,与精确值有误差,其他四个字段的Cardinality与Hive查询结果一致):

    79fa7c5f3d5394963166de30e599811a.png
  17. 接下来开始构建Cube:

    1fee39c884cc2af2cfdd42c1643dbc8a.png
  18. 日期范围,刚才Hive查询结果是2012-01-01到2014-01-01,注意截止日期要超过2014-01-01:

    94c317ec0a6863eb1e4551da9aff50b4.png
  19. 在Monitor页面可见进度:

    cc915359315877c3483c2a2efa74c7d6.png
  20. 去Yarn页面(CDH服务器的8088端口),可以看到对应的任务和资源使用情况:

    51d8d5011a386d2d0e0d0f4c0cb24f73.png
  21. build完成后,会出现ready图标:

    6e3d6c171d63ffa9405e762b9685c694.png

    查询

  22. 先尝试查询交易的最早和最晚时间,这个查询在Hive上执行的耗时是18.87秒,如下图,结果一致,耗时0.14秒:

    563f4416a788f190a46b64dc68be7e8d.png
  23. 下面这个SQL是Kylin官方示例用来对比响应时间的,对订单按日期聚合,再按日期排序,然后接下来分别用Kylin和Hive查询:

    select part_dt, sum(price) as total_sold, count(distinct seller_id) as sellers from kylin_sales group by part_dt order by part_dt;
  24. Kylin查询耗时0.13秒:

    a3a05797b62a2b6e23ee120d95aed4db.png
  25. Hive查询,结果相同,耗时40.196秒:

    548ee1a6085a6298b4a489b3c126af26.png
  26. 最后来看下资源使用情况,Cube构建过程中,18G内存被使用:

    d3ddcfd34291d489502038d9b4120cb8.png 至此,CDH+Kylin从部署到体验就已完成,《CDH+Kylin三部曲》系列也结束了,如果您正在学习Kylin,希望本文能够给您一些参考。

欢迎关注公众号:程序员欣宸

微信搜索「程序员欣宸」,我是欣宸,期待与您一同畅游Java世界... https://github.com/zq2599/blog_demos

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值