1.ETL(MySQL-Hive)建立连接
1)连接MySQL
2)连接Hive
首先开启一下Hive的JDBC连接
2.转换测试-输出类型
1)csv_to_tx
点击运行
2)sys_info_out
点击执行
3)stu_table_out
清空一下表 避免主键重复
点击执行
4)stu_insert_update
点击执行
5)stu_update
更新是有前提条件的 文件中的数据记录数要和MySQL表中的数据记录数一致
如果我们在文本中添加一行 点击运行
6)stu_delete
7)stu_to_xml
点击运行
3.转换测试-输入类型
1)table_input_to_xml
点击执行
2)generate_result_to_xml
点击执行
4.转换测试-转换
1)value_map (nan->男 nv->女)
点击运行 查看结果
2)column_cvt_row (列转行)
点击运行
3)column_split_mutl_row (列拆分为多行)
点击执行
4)cut_str (字符串剪切)
点击执行
5)del_repeat_result
去重需要排序
点击执行
6)insert_const_clmn
我们在5)的基础上添加一个常量组件
重新获取一下字段
点击执行
7)insert_seq
点击执行
8)fields_choice
点击执行
9)拆分字段
点击执行
11)string_process(字符串操作)
点击执行
12)字符串替换
重新获取一下字段
点击执行
13)row_cvt_column(行转列)
点击执行
5.流程 switch_branch
点击执行
6.filter_result 空操作 过滤记录
点击执行
7.add_mysql_to_hive(增量 使用脚本和BigData组件)
首先 在MySQL创建一张表 插入数据
然后 我们去Hive也创建一个order表
然后 我们把Hive的JDBC服务启动
hive --service hiveserver2
添加一个字段选择按钮 因为MySQL到Hive时字段需要一致 字段选择的好处是可以给字段改名
双击界面空白处 给dt赋值 添加一个分区
Parquet Output这一步我们要做一些操作
下面我们连接一下Hadoop
点击执行 Hive中查验数据
8.all_mysql_to_hive (全量)
在数据仓库中 我们上线以后 如果将MySQL中的数据ETL到Hive中 那么我们应该先全量ETL 再增量ETL 下面我们先做全量
点击执行 可以看到数据全量加载到ods层
下面我们做一个增量
点击执行 数据增量加载进来了
9.javascript_program
使用csv文件 里面的数据是json格式的
10. db_selectby_id 查询组件
点击执行 文件和数据库连在一起了
11.将mysql_to_hive打包到集群运行
yum install unzip -y
unzip data-integration.zip
cd data-integration.zip
添加执行权限
chmod +x *.sh
编写脚本
vim mysql_to_hive.sh
#!/bin/bash
/root/data-integration/pan.sh -file /root/mysql_to_hive.ktr -param:dt=2020-12-12 -level Basic
chmod +x mysql_to_hive.sh
./mysql_to_hive.sh
程序报错 缓存的问题
cd /root/data-integration/system/karaf/caches
rm -rf /root/data-integration/system/karaf/caches/*
删除缓存之后 再次调用脚本