8.3.5加载用户数据至用户维度表
1.打开kettle工具,创建转换
使用Kettle工具,创建一个转换load_dim_customer,并添加表输入控件、映射控件、字段选择控件、值映射控件、维度查询/更新控件以及Hop跳连接线。
2.配置“表输入”控件
双击“表输入”控件,进入“表输入”配置界面,单击【新建】按钮,配置数据库连接,配置完成后单击【确认】按钮。MySQL数据库连接的配置。
在SQL框中编写用于获取字段customer_last_update中的最大值,将该值替换为”1970-01-01 00:00:00”并赋值给临时字段max_dim_customer_last_update;单击“预览”按钮,查看临时字段max_dim_customer_last_update是否将默认值设置为“1970-01-01 00:00:00”。
3.配置“表输入2”控件
双击“表输入2”控件,进入“表输入”配置界面,单击【新建】按钮,配置数据库连接。在SQL框中编写SQL语句,用于获取数据库sakila中数据表customer中的最新数据,如图所示。
获取数据表customer的最新数据中包含字段address_id,因此需要创建一个子转换。
打开kettle工具创建转换fetch_address(该转换为转换load_dim_customer的子转换),并添加“映射输入规范”控件,“数据库查询”控件,“过滤记录控件,“JavaScript代码”控件,“字段选择”控件、“映射输出规范”控件以及Hop跳连接线。
4.配置“映射输入规范”控件
双击“映射输入规范”控件,进入“Mapping input specification”界面,并添加映射的字段“address_id”,该字段为传递的参数(由于转换load_dim_customer中表输入2控件流获取的字段address_id,用于查询用户的地址信息,而后续数据仓库的维度表数据也需要用户的地址信息,因此这里将字段address_id作为传递的参数),添加完毕后单击【确定】按钮,完成“映射输入规范”控件的配置,如图所示。
5.配置“数据库查询”控件双击数据库查询控件,进入数据库查询界面,单击“新建”按钮