Greenplum数据导入方案
Case2:tsale_staticshares表导数
-
导数说明:
- 存储格式:parquet
- 压缩:snappy
- 并行度:3
-
Impala查询
-
单表统计时间:4.28s
-
空间开销:约1G
-
时间开销:约7分钟
-
Case2:tsale_dividenddetail表导数
-
导数说明:
- 存储格式:parquet
- 压缩:snappy
- 并行度:5
-
Impala查询
-
单表统计时间:3.35s
-
空间开销:约2.2G
-
时间开销:约23分钟
-
Case2:rtta_bal_fund表导数
-
导数说明:
-
存储格式:parquet
-
压缩:snappy
-
并行度:3
-
空间开销:约600M
-
时间开销:约5分钟
-
业务功能实现
-
需求:
- 从rtta_bal_fund 表按照份额最后变化日期抽取当天的修改记录,按主键
- FUNDACCO
- TRADEACCO
- AGENCYNO
- NETNO
- SRCSYS
- PORT_CODE
- SHARETYPE
- 修改tsale_staticshares表中的
- 分红方式
- 基金份额
- 冻结份额
- 未付收益
- 冻结未付收益
- 交易所标志
- 份额最后变化日期到表
Case3:GP增量数据更新
- 从rtta_bal_fund 表按照份额最后变化日期抽取当天的修改记录,按主键
-
实现:通过Impala进行增量update,耗时约5.48s
Oracle准实时增量同步方案
Case4:Oracle增量数据更新
-
Step1:Hive当前数据查询
-
Step2:启动Spark Streaming程序
- 注:目前设置为10s一次更新,可根据时效要求调整为不同时间粒度(ms~hour)
- 注:目前设置为10s一次更新,可根据时效要求调整为不同时间粒度(ms~hour)
-
Step3:Oracle源端增量新增数据
Case4:Oracle增量数据更新(续)
-
Step4:SparkStreaming运行日志中可以观察到新增数据(Json格式)
-
Step5:Hive中查询可观察到新增的数据
结论:通过OGG+Kafka+SparkStreaming的方案,可以根据任意时间粒度(ms、s、min、hour)的需要,准实时同步Oracle的数据到Hive。