乐趣区

关于云计算:CDHKylin三部曲之三Kylin官方demo

欢送拜访我的 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 表:

  1. 通过脚本可见 <font color=”blue”>KYLIN_SALES</font> 为事实表,其余是维度表,并且 KYLIN_ACCOUNT 和 KYLIN_COUNTRY 存在关联,因而维度模型合乎 Snowflake Schema;

导入样例数据

  1. SSH 登录 CDH 服务器
  2. 切换到 hdfs 账号:<font color=”blue”>su – hdfs</font>
  3. 执行导入命令:<font color=”blue”>${KYLIN_HOME}/bin/sample.sh</font>
  4. 导入胜利,控制台输入如下:

检查数据

  1. 检查数据,执行 <font color=”blue”>beeline</font> 进入会话模式 (hive 官网举荐用 <font color=”blue”>beeline</font> 取代 Hive CLI):

  1. 在 beeline 会话模式输出链接 URL:<font color=”blue”>!connect jdbc:hive2://localhost:10000</font>,依照提醒输出账号 <font color=”blue”>hdfs</font>,明码间接回车:

  1. 用命令 <font color=”blue”>show tables</font> 查看以后的 hive 表,已建好:

  1. 查出订单的最早和最晚工夫,前面构建 Cube 的时候会用到,执行 SQL:<font color=”blue”>select min(PART_DT), max(PART_DT) from kylin_sales;</font>,可见最早 <font color=”blue”>2012-01-01</font>,最晚 <font color=”blue”>2014-01-01</font>,整个查问耗时 <font color=”red”>18.87 秒 </font>:

构建 Cube:

数据筹备实现,能够构建 Kylin Cube 了:

  1. 登录 Kylin 网页:http://192.168.50.134:7070/kylin
  2. 加载 Meta 数据,如下图:

  1. 如下图红框所示,数据加载胜利:

  1. 在 Model 页面能够看到事实表和维度表,如下图的操作能够创立一个 MapReduce 工作,计算维度表 KYLIN_ACCOUNT 每个列的基数 (Cardinality):

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

  1. 上述工作很快就能实现 (10 多秒),此时刷新 Kylin 页面,可见 <font color=”blue”>KYLIN_ACCOUNT</font> 表的 Cardinality 数据曾经计算实现了(hive 查问失去 ACCOUNT_ID 数量是 10000,但下图的 Cardinality 值为 10420,Kylin 对 Cardinality 的计算采纳的是 HyperLogLog 的近似算法,与准确值有误差,其余四个字段的 Cardinality 与 Hive 查问后果统一):

  1. 接下来开始构建 Cube:

  1. 日期范畴,方才 Hive 查问后果是 <font color=”blue”>2012-01-01</font> 到 <font color=”blue”>2014-01-01</font>,留神截止日期要超过 2014-01-01:

  1. 在 Monitor 页面可见进度:

  1. 去 Yarn 页面 (CDH 服务器的 8088 端口),能够看到对应的工作和资源应用状况:

  1. build 实现后,会呈现 ready 图标:

查问

  1. 先尝试查问交易的最早和最晚工夫,这个查问在 Hive 上执行的耗时是 <font color=”red”>18.87 秒 </font>,如下图,后果统一,耗时 <font color=”red”>0.14 秒 </font>:

  1. 上面这个 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;
  1. Kylin 查问耗时 <font color=”red”>0.13 秒 </font>:

  1. Hive 查问,后果雷同,耗时 <font color=”red”>40.196 秒 </font>:

  1. 最初来看下资源应用状况,Cube 构建过程中,18G 内存被应用:


至此,CDH+Kylin 从部署到体验就已实现,《CDH+Kylin 三部曲》系列也完结了,如果您正在学习 Kylin,心愿本文可能给您一些参考。

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

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

退出移动版