ODS层构建:代码导入
目标:实现Python项目代码的导入及配置
实施
Oracle本地驱动目录**:将提供的**instantclient_12_2**目录放入D盘的根目录下
PyHive本地连接配置:将提供的CMU目录放入C盘的根目录下
auto_create_hive_table包
创建路径包
- 在datatohive的init文件中放入如下代码
- 其他包的init都放入如下内容
将对应的代码文件放入对应的包或者目录中
step1:从提供的代码中复制config、log、resource这三个目录直接粘贴到**auto_create_hive_table**包下
step2:从提供的代码中复制entity、utils、EntranceApp.py这三个直接粘贴到**itcast**包下
step3:从提供的代码中复制fileformat等文件直接粘贴到**datatohive**包下
DW归档目录:将提供的代码中的dw目录直接粘贴到项目中
ODS层构建:代码结构及修改
目标:了解整个自动化代码的项目结构及实现配置修改
路径
- step1:工程代码结构
- step2:代码模块功能
- step3:代码配置修改
实施
工程代码结构
代码模块功能
- `auto_create_hive_table`:用于实现ODS层与DWD层的建库建表的代码
- `cn.itcast`
- `datatohive`
- CHiveTableFromOracleTable.py:用于创建Hive数据库、以及获取Oracle表的信息创建Hive表等
- CreateMetaCommon.py:定义了建表时固定的一些字符串数据,数据库名称、分层名称、文件类型属性等
- CreateHiveTablePartition.py:用于手动申明ODS层表的分区元数据
- LoadData2DWD.py:用于实现将ODS层的数据insert到DWD层表中
- `fileformat`
- AvroTableProperties.py:Avro文件格式对象,用于封装Avro建表时的字符串
- OrcTableProperties.py:Orc文件格式对象,用于封装Orc建表时的字符串
- OrcSnappyTableProperties.py:Orc文件格式加Snappy压缩的对象
- TableProperties.py:用于获取表的属性的类
- `entity`
- TableMeta.py:Oracle表的信息对象:用于将表的名称、列的信息、表的注释进行封装
- ColumnMeta.py:Oracle列的信息对象:用于将列的名称、类型、注释进行封装
- `utils`
- OracleHiveUtil.py:用于获取Oracle连接、Hive连接