1. 建立【分组聚合客户订单】转换工程。

kettle java 过虑数据 kettle过滤记录组件_控件

2. 获取客户的详细订单数据。

(1)点击csv文件输入控件,导入数据文件“order_detaillist.csv”,如图,点击获取字段控件,如图

kettle java 过虑数据 kettle过滤记录组件_数据_02

 

 (2)点击过滤记录控件,将文件中productname为空的和没有成功支付即status为fall的过滤掉,设置过滤条件,如图 

kettle java 过虑数据 kettle过滤记录组件_控件_03

kettle java 过虑数据 kettle过滤记录组件_控件_04

 

kettle java 过虑数据 kettle过滤记录组件_kettle java 过虑数据_05

 

(3)进行字段选择,保留需要的字段,去除多余的字段。在【字段选择】组件中,设置参数,仅保留productname、amount、productpaytotalprice等字段,并分别改名为“商品名称”“product_number”“product_paytotalprice”,如图所示,丢弃其他与计算各商品销售金额无关的字段。

kettle java 过虑数据 kettle过滤记录组件_etl_06

  3. 分组聚合统计客户的订单数据。

对已进行过滤和抽取的商品详情数据进行聚合统计,操作步骤如下。

(1)建立聚合计算商品销售金额的组件和连接。创建排序记录组件、分组(命名为“分组(按商品名称统计)”)组件,并建立组件之间的连接,如图所示。

kettle java 过虑数据 kettle过滤记录组件_kettle java 过虑数据_07

  (2)对商品名称进行排序。因为需要计算各商品的销售金额,所以必须对商品名称进行排序,在【排序记录】组件中,对商品名称字段按照升序进行排序。

kettle java 过虑数据 kettle过滤记录组件_kettle java 过虑数据_08

 (3)对购买商品数量和商品实际支付总金额等字段进行聚合计算,统计各个商品的销售金额。在【分组(按商品名称统计)】组件中,有关参数设置如图所示。

kettle java 过虑数据 kettle过滤记录组件_字段_09

  4. 装载和解读结果数据。

装载和解读计算各商品销售金额数据,操作步骤如下。

(1)建立数据装载组件和连接。创建排序记录组件(组件命名为“排序记录(按销售金额排序)”)、Excel输出(组件命名为“Excel输出(各商品销售金额)”)组件,将已进行聚合统计的各商品销售金额数据输出至Excel文件中,并建立组件之间的连接,如图所示。

kettle java 过虑数据 kettle过滤记录组件_etl_10

  (2)根据商品销售金额进行排序。在【排序记录(按销售金额排序)】组件中,设置商品销售金额字段按照降序排序。

kettle java 过虑数据 kettle过滤记录组件_etl_11

 (3)将经过排序的各商品销售金额数据输出并装载至Excel文件中。在【Excel输出(各商品销售金额)】组件中,设置参数,输出的Excel文件名为“无人售货机各商品销售金额.xls”,输出的字段参数如表所示。

kettle java 过虑数据 kettle过滤记录组件_字段_12

 

kettle java 过虑数据 kettle过滤记录组件_字段_13

  最后点击运行按钮,结果客户订单信息如图所示

kettle java 过虑数据 kettle过滤记录组件_etl_14