oracle 同步数据 greenplum linux kettle

简介: gh 加油 最近公司在做项目时,使用oracle采集底层数据,使用greenplum分析加工数据,数据交换使用的是kettle。
gh 加油

最近公司在做项目时,使用oracle采集底层数据,使用greenplum分析加工数据,数据交换使用的是kettle。

本次方案缺点:kettle必须部署在greenplum的主节点

第一步:在greenplum主机安装kettle

第二步:给gpadmin用户授权kettle安装目录读写

第三步:创建一个测试例子

测试例子分为两步:
第一步将oracle的数据转换为txt
第二步将txt的数据同步到gp,如下图

B5nfzn2jlq+kAAAAAElFTkSuQmCC

点击查看 greenplum load的配置





描述一下load action :

load action:update/insert/merge 有三种类型,就像oracle类似,只需要关注 get fields 的下方match ,update;一个是匹配,一个是update

merge into a using (select * from b) z
on (match)
update
...



YhmBh6PxfWwAAAAASUVORK5CYII=

第二部分 local host name
端口号我选择的是gp的对外端口(可以测试一下其他端口5555,6666)
hostname:我选择是gp主机名
port:5432
hostname:master
lyhtrsQwToPWdlhzv84qqn87r2QcAAACAa7OfnXA

第三部分:gp configuration

一般情况下,gp的安装路径都在/usr/local/greenplum-db/bin/gpload
control file :可以自己先建立一个文件名

[gpadmin@master gpextdata]$ ls
a.csv  b.txt  c.txt  member_delta.dat  my_flag.yml  my_load.yml  my_update.yml  test001.txt  test002.txt  test_distribute.dat
[gpadmin@master gpextdata]$ cat my_flag.yml
[gpadmin@master gpextdata]$

my_flag.yml没有文件内容

data_file:也可以自己建立一个没有内容的空文件

+fs2bt+liGSZUF5SeMj7wOfVQvfzJJwAAAEBf4D5

保存好运行后,数据入库,同时查看 my_flag.yml内容
[gpadmin@master gpextdata]$ ls
a.csv  b.txt  c.txt  member_delta.dat  my_flag.yml  my_load.yml  my_update.yml  test001.txt  test002.txt  test_distribute.dat
[gpadmin@master gpextdata]$ cat my_flag.yml
VERSION: 1.0.0.1
DATABASE: tutorial
USER: user1
HOST: 192.168.1.80
PORT: 5432
GPLOAD:
    INPUT:
    - SOURCE:
        LOCAL_HOSTNAME:
        - master
        PORT: 5432
        FILE: ['/home/admin/gpextdata/c.txt']
    - COLUMNS:
        - id:
        - "name":
    - FORMAT: TEXT
    - DELIMITER: ','
    - QUOTE: ''
    - HEADER: FALSE
    - ENCODING: UTF8
    - ERROR_LIMIT: 50
    OUTPUT:
    - TABLE: "public.test001"
    - MODE: insert

单独这个命令也可以执行

[gpadmin@master gpextdata]gpflod -f my_flag.yml;


备注:在load method的下方 Erase cfg/data files after use 的对勾取消掉



不知道大家有没有方案可以不在本机执行?

远程方案自己已经做完,链接: http://blog.itpub.net/29162273/viewspace-2130770/

其实就是在远程机器中安装greenplum-loader后
配置相关变量,就可以使用了。


目录
相关文章
|
5天前
|
SQL 存储 Oracle
Oracle的PL/SQL定义变量和常量:数据的稳定与灵动
【4月更文挑战第19天】在Oracle PL/SQL中,变量和常量扮演着数据存储的关键角色。变量是可变的“魔术盒”,用于存储程序运行时的动态数据,通过`DECLARE`定义,可在循环和条件判断中体现其灵活性。常量则是不可变的“固定牌”,一旦设定值便保持不变,用`CONSTANT`声明,提供程序稳定性和易维护性。通过 `%TYPE`、`NOT NULL`等特性,可以更高效地管理和控制变量与常量,提升代码质量。善用两者,能优化PL/SQL程序的结构和性能。
|
2月前
|
SQL Oracle 关系型数据库
Oracle 将表中的数据查出更改某一字段的值后再插入该表
Oracle 将表中的数据查出更改某一字段的值后再插入该表
32 2
|
2月前
|
存储 Oracle NoSQL
Oracle 表空间、数据文件、schema的关系
Oracle 表空间、数据文件、schema的关系
39 2
|
2月前
|
SQL Oracle 关系型数据库
Oracle查询优化-查询只包含数字或字母的数据
【2月更文挑战第4天】【2月更文挑战第10篇】查询只包含数字或字母的数据
88 1
|
3月前
|
Oracle 关系型数据库 数据库
Oracle查询优化-复制表的定义及数据
【1月更文挑战第5天】【1月更文挑战第14篇】在Oracle数据库中,复制表定义和复制表数据是两个常见的操作。
51 1
|
5天前
|
Oracle 安全 关系型数据库
Oracle数据守卫(DG):数据的“守护者”与“时光机”
【4月更文挑战第19天】Oracle Data Guard保障数据安全,通过实时维护备库实现故障切换,保证业务连续性。它使用日志传输和应用保持数据同步,如同“时光机”,借助闪回技术能恢复误操作数据。此外,它还提供数据压缩、加密和故障转移等功能,提升数据库安全性与性能。作为数据管理员,理解并善用Data Guard是确保企业数据安全的关键。
|
5天前
|
存储 NoSQL Oracle
Oracle 12c的内存列存储:数据的“闪电侠”
【4月更文挑战第19天】Oracle 12c的内存列存储以超高速度革新数据处理,结合列存储与内存技术,实现快速查询与压缩。它支持向量化查询和并行处理,提升效率,但需合理配置以平衡系统资源。作为数据管理员,应善用此功能,适应业务需求和技术发展。
|
5天前
|
存储 Oracle 关系型数据库
Oracle 12c的多重索引:数据的“多维导航仪”
【4月更文挑战第19天】Oracle 12c的多重索引提升数据查询效率,如同多维导航仪。在同一表上创建针对不同列的多个索引,加速检索过程。虽然过多索引会增加存储和维护成本,但合理选择和使用索引策略,结合位图、函数索引等高级特性,能优化查询,应对复杂场景。数据管理员应善用这些工具,根据需求进行索引管理,支持企业数据分析。
|
5天前
|
存储 Oracle 数据管理
Oracle 12c的自动数据优化(ADO)与热图:数据管理的“瘦身”与“透视”艺术
【4月更文挑战第19天】Oracle 12c的ADO和热图技术革新数据管理。ADO智能清理无用数据,优化存储,提升查询速度,实现数据"瘦身";热图则以直观的视觉表示展示数据分布和状态,助力识别性能瓶颈,犹如数据的"透视"工具。这两项技术结合,强化数据管理,为企业业务发展保驾护航。
|
5天前
|
SQL Oracle 关系型数据库
Oracle的PL/SQL游标属性:数据的“导航仪”与“仪表盘”
【4月更文挑战第19天】Oracle PL/SQL游标属性如同车辆的导航仪和仪表盘,提供丰富信息和控制。 `%FOUND`和`%NOTFOUND`指示数据读取状态,`%ROWCOUNT`记录处理行数,`%ISOPEN`显示游标状态。还有`%BULK_ROWCOUNT`和`%BULK_EXCEPTIONS`增强处理灵活性。通过实例展示了如何在数据处理中利用这些属性监控和控制流程,提高效率和准确性。掌握游标属性是提升数据处理能力的关键。