在ETL 处理中经常需要将用户提交的Excel 元数据导入到数据库中,因为用户提交数据有时是最终结果以数据透视表形式体现,所以直接导入表单是不行的,需要做行列的转换。用人工方式工作量很大,因此采用 Kettle ETL 中的 Row Normaliser 组件实现感觉效果不错。
具体实现步骤
1 元数据 是数据透视表形式实现 列名 (日期,东区,北区,南区,Express)
现在需要转换为 (日期,区域,销售)格式导入数据库
2 Kettle ETL 实现数据的行转列 Row Normaliser 组件中定义元数据区域列名同目标字段映射
字段名称: 元数据的区域维度列名称
类型: 在目标文件中 【区域】字段的Values
新的字段:对应元数据的 Row Values,在目标文件中以Sales 字段 值形式体现
3 定义输出文件