【数据仓库-离线文件导入模块开发】
2019-01-14 本文已影响0人
七齐起器
数据仓库-离线文件(excel/csv)导入模块开发
项目诉求:讲离线文件准确无误的导入数据仓库中
1. 若存在,则覆盖原来的数据;
2. 默认sheet_name是数据表名,数据表的每列默认为Q1、Q2、……Qn,第一行的数据默认作为表的中文注释,即详细解释;
3. 字段分隔符按照 \001,行分割符不管;(长文本里面经常会有换行,指定行分隔符为\n,势必会造成行截断),
不指定列分隔符当导入的数据超过数据表的字段数会自动往下一行填充;
技术: python 的xlrd包
处理细节:
1. 从配置中获取HDFS路径,并且判断文件是否存在,若不存在则报错;
2. 判断配置中的Hive是否连接正常;
3. 从HDFS对应的外部文件下载到本地;打开csv / excel 文件,建立数据表;读取表的内容,存成txt文件格式;
4. 讲文件移动到Hive数据仓库对应的文件目录下;
开发基本上没啥难度,也没有遇到什么坑。主要要注意的是python处理中文的时候会遇到中文乱码的情况;