最具影响力的数字化技术在线社区

168主编 发表于 2018-11-9 10:16:10

如何用Apache kylin分析亚马逊产品评价

摘要在“用Apache Spark分析8000万亚马逊产品评分评价”中,Max Woolf利用Python,R及Apache Spark分析了亚马逊数据集。本文将介绍如何利用Apache Kylin和Tableau来轻松生成即席查询报表并查看其响应时间。软硬件要求所需软件:
[*]Kylin 1.6或以上
[*]BI工具,你可以使用任何你喜爱的BI工具,Tableau Desktop将是本文使用的BI工具。
[*]可选项:如果你没办法直接访问Hadoop集群,可以用Docker来装载一个Hadoop系统 (我装载了没有问题)
克隆以下文件包git clone https://github.com/albertoRamon/Kylin.git关于亚马逊产品评价数据集这个数据集提供了两种文件:评价文件:包含购买完产品后客户给产品的打分,从0到5颗星,并写产品评价。元数据文件:包含产品的完整描述:产品名称,产品品牌,产品图片,产品分类等。这些文件中的亚马逊产品通过asin唯一识别码进行关联。我们使用如下两个文件:元数据文件是一个gz压缩的json文件,包含940万的产品数据。(大小:3.4GB/10.5GB)产品评价文件是一个未压缩的CSV文件,包含8260万的评价数据。将数据下载下来(未压缩)并存在DataDownloaded文件夹,如图所示:https://kyligence.io/wp-content/uploads/2018/04/170606-1.png注释1: 下载大文件需要写邮件提交申请。注释2: 产品评价文件可以用subset部分的一个较小文件替代。准备数据集我们需要把这两个原始文件加载到Hive表中,执行这个命令的python脚本如下python processItem.pypython processMetadata.py随后你会在DataProcessed文件夹中生成两个新文件,如图所示:https://kyligence.io/wp-content/uploads/2018/04/170606-2.png将数据复制到Hive并创建表如果你在使用Docker编辑脚本/01-ImportData.sh并指定ID Docker镜像ContainerID=’58b’执行以下脚本: 复制数据到Docker容器并创建Hive表./Scripts/01-ImportData.sh如果你没有使用Docker:手动复制DataProcessed文件夹中的数据到你的集群gateway,编辑脚本/02-CreateTB.sql 并指定路径。set hivevar:PathFiles=/Amazon_Review;连接你的集群并执行:hive -f 02-CreateTB.sql构建Cube1. 创建新项目点击https://kyligence.io/wp-content/uploads/2018/04/170606-3.png并输入一个项目名称https://kyligence.io/wp-content/uploads/2018/04/170606-31.png
[*]导入数据源
点击https://kyligence.io/wp-content/uploads/2018/04/170606-4.png和https://kyligence.io/wp-content/uploads/2018/04/170606-42.png选择需要导入的表 (按住Ctrl多选)https://kyligence.io/wp-content/uploads/2018/04/170606-5.png
[*]创建数据模型
点击https://kyligence.io/wp-content/uploads/2018/04/170606-6.png和https://kyligence.io/wp-content/uploads/2018/04/170606-61.png指定一个事实表https://kyligence.io/wp-content/uploads/2018/04/170606-7.png指定一个维度表https://kyligence.io/wp-content/uploads/2018/04/170606-8.png指定一个维度字段https://kyligence.io/wp-content/uploads/2018/04/170606-9.png指定一个计算字段https://kyligence.io/wp-content/uploads/2018/04/170606-10.png
[*]定义Cube
点击https://kyligence.io/wp-content/uploads/2018/04/170606-11.png选择之前定义的Amazon_Review的数据模型https://kyligence.io/wp-content/uploads/2018/04/170606-12.png定义其中两个维度为Normalhttps://kyligence.io/wp-content/uploads/2018/04/170606-13.png定义计算字段https://kyligence.io/wp-content/uploads/2018/04/170606-14.png在配置文件中覆盖:https://kyligence.io/wp-content/uploads/2018/04/170606-15.png开始构建:https://kyligence.io/wp-content/uploads/2018/04/170606-16.png>https://kyligence.io/wp-content/uploads/2018/04/170606-17.png处理8000万行数据,在一台笔记本上用了30分钟:https://kyligence.io/wp-content/uploads/2018/04/170606-18.png用BI工具连接Cube用Tableau连接Cube生成报表https://kyligence.io/wp-content/uploads/2018/04/170606-19.png来源:https://kyligence.io/zh/2017/06/06/apache-kylin-analyse-amazon-product-evaluation/
页: [1]
查看完整版本: 如何用Apache kylin分析亚马逊产品评价