前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >oracle数据同步到Greenplum的shell脚本

oracle数据同步到Greenplum的shell脚本

作者头像
小徐
发布2019-08-05 15:15:24
1.2K0
发布2019-08-05 15:15:24
举报
文章被收录于专栏:GreenplumGreenplum

oracle数据同步到Greenplum的shell脚本

此脚本在运行时会先把oracle数据按照指定的分隔符下载到磁盘的目录下,再用替换脚本替换需要的分隔符和ascii字符,具体的替换方法请查看fileAsciiReplaceScriptAll.sh脚本

sqluldr2linux64 工具下载

代码语言:javascript
复制
sqluldr2linux64 下载地址:链接:https://pan.baidu.com/s/1pF_HMx5VUdwu16-cSn2ZBg 提取码:ddrn 
oracle 客户端下载地址:链接:https://pan.baidu.com/s/1Llt1hRJ0BL-NQQT8V90T8Q 提取码:rwjb

ASCII特殊字符介绍

ASCII特殊字符请查看:https://blog.csdn.net/xfg0218/article/details/80901752

测试数据介绍

1、oracle表信息updateinfo_xiaoxu

代码语言:javascript
复制
   ANCHEID	VARCHAR2(100 BYTE)
   ALITEM	VARCHAR2(1000 BYTE)
   ALTBE	VARCHAR2(4000 BYTE)
   ALTAF	VARCHAR2(4000 BYTE)
   ALTDATE	DATE
   S_EXT_NODENUM	VARCHAR2(10 BYTE)

2、oracle 表的个数

代码语言:javascript
复制
  select count(*) from updateinfo_xiaoxu;
   -- 6475930

oracle-to-greenplum 目录介绍

代码语言:javascript
复制
    data-dir
    存放oracle数据落地的目录

    select-sql
    sql文件存放的路径,oracle的sql文件以及greenplum的sql文件

    util
    常用工具的存放路径

    export-oracle.sh
    从oracle落地到磁盘的sh脚本

    import-greenplum.sh
    把磁盘的文件导入到greenplum的脚本

    sqluldr2linux64.bin
    抽取oracle的工具

oracle-to-greenplum 使用说明

代码语言:javascript
复制
 su - oracle
 time sh export-oracle.sh 
       0 rows exported at 2019-05-13 12:42:14, size 0 MB.
 1000000 rows exported at 2019-05-13 12:42:20, size 172 MB.
 2000000 rows exported at 2019-05-13 12:42:26, size 296 MB.
 3000000 rows exported at 2019-05-13 12:42:32, size 468 MB.
 4000000 rows exported at 2019-05-13 12:42:38, size 603 MB.
 5000000 rows exported at 2019-05-13 12:42:44, size 743 MB.
 6000000 rows exported at 2019-05-13 12:42:50, size 887 MB.
 6475930 rows exported at 2019-05-13 12:42:52, size 952 MB.
     output file /home/xiaoxu/oracle-to-greenplum/data-dir/updateinfo_xiaoxu.csv closed at 6475930 rows, size 952 MB.

 替换特殊字符与分隔符......
 
 参数说明
 把此脚本复制到带有特殊字符的文件夹下运行此脚本即可把全部文件进行替换,例如:sh fileAsciiReplaceScriptAll.sh

 转换开始...... 

 文件 /home/xiaoxu/oracle-to-greenplum/data-dir/updateinfo_xiaoxu.csv 特殊符号替换开始....
 文件 /home/xiaoxu/oracle-to-greenplum/data-dir/updateinfo_xiaoxu.csv 特殊符号替换结束,耗时:0 h 1 m 5s

 文件 /home/xiaoxu/oracle-to-greenplum/data-dir/updateinfo_xiaoxu.csv 替换分隔符开始....
 文件 /home/xiaoxu/oracle-to-greenplum/data-dir/updateinfo_xiaoxu.csv 替换分隔符结束,耗时: 0 h 0 m 26 s


 全部文件转换结束,耗时: 0 h 1 m 32 s
 
 创建 updateinfo_xiaoxu.csv 表结构开始...... 
     DROP TABLE
 CREATE TABLE

 real	0m0.200s
 user	0m0.003s
 sys	0m0.004s

 导入 updateinfo_xiaoxu.csv  数据开始......
 COPY 6475930

 real	0m19.699s
 user	0m2.845s
 sys	0m0.834s

 real	2m32.290s
 user	1m30.223s
 sys	0m21.867s

oracle-to-greenplum 总结说明

代码语言:javascript
复制
1、在以上可以看出使用sqluldr2linux64导数据,大概6s就能抽取100W行数据,大概有172M
2、替换分隔符与ASCII码耗时1m32s
3、创建表结构与导入表数据耗时:19.699s
4、总耗时2m32.29s
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-05-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 河马coding 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • oracle数据同步到Greenplum的shell脚本
  • sqluldr2linux64 工具下载
  • ASCII特殊字符介绍
  • 测试数据介绍
  • oracle-to-greenplum 目录介绍
  • oracle-to-greenplum 使用说明
  • oracle-to-greenplum 总结说明
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档