oracle 同步数据 greenplum linux kettle

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

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

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

第一步:在greenplum主机安装kettle

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

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

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


点击查看 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
...




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

第三部分: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:也可以自己建立一个没有内容的空文件


保存好运行后,数据入库,同时查看 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后
配置相关变量,就可以使用了。


目录
相关文章
|
2月前
|
Oracle Cloud Native 关系型数据库
Oracle Linux 9.5 正式版发布 - Oracle 提供支持 RHEL 兼容发行版
Oracle Linux 9.5 正式版发布 - Oracle 提供支持 RHEL 兼容发行版
73 10
Oracle Linux 9.5 正式版发布 - Oracle 提供支持 RHEL 兼容发行版
|
2月前
|
存储 Oracle 关系型数据库
【赵渝强老师】Oracle的还原数据
Oracle数据库中的还原数据(也称为undo数据或撤销数据)存储在还原表空间中,主要用于支持查询的一致性读取、实现闪回技术和恢复失败的事务。文章通过示例详细介绍了还原数据的工作原理和应用场景。
【赵渝强老师】Oracle的还原数据
|
2月前
|
监控 Oracle 关系型数据库
Linux平台Oracle开机自启动设置
【11月更文挑战第8天】在 Linux 平台设置 Oracle 开机自启动有多种方法,本文以 CentOS 为例,介绍了两种常见方法:使用 `rc.local` 文件(较简单但不推荐用于生产环境)和使用 `systemd` 服务(推荐)。具体步骤包括编写启动脚本、赋予执行权限、配置 `rc.local` 或创建 `systemd` 服务单元文件,并设置开机自启动。通过 `systemd` 方式可以更好地与系统启动过程集成,更规范和可靠。
163 2
|
2月前
|
Oracle Ubuntu 关系型数据库
Linux平台Oracle开机自启动设置
【11月更文挑战第7天】本文介绍了 Linux 系统中服务管理机制,并详细说明了如何在使用 systemd 和 System V 的系统上设置 Oracle 数据库的开机自启动。包括创建服务单元文件、编辑启动脚本、设置开机自启动和启动服务的具体步骤。最后建议重启系统验证设置是否成功。
|
3月前
|
存储 Oracle 关系型数据库
|
2月前
|
SQL Oracle 关系型数据库
【赵渝强老师】Oracle的联机重做日志文件与数据写入过程
在Oracle数据库中,联机重做日志文件记录了数据库的变化,用于实例恢复。每个数据库有多组联机重做日志,每组建议至少有两个成员。通过SQL语句可查看日志文件信息。视频讲解和示意图进一步解释了这一过程。
|
2月前
|
SQL Oracle 关系型数据库
【赵渝强老师】Oracle的数据文件
在Oracle数据库中,数据库由多个表空间组成,每个表空间包含多个数据文件。数据文件存储实际的数据库数据。查询时,如果内存中没有所需数据,Oracle会从数据文件中读取并加载到内存。可通过SQL语句查看和管理数据文件。附有视频讲解及示例。
|
3月前
|
弹性计算 Linux 数据库
阿里云国际版如何迁移Linux云服务器系统盘中的数据
阿里云国际版如何迁移Linux云服务器系统盘中的数据
|
4月前
|
Linux Docker 容器
9. 同步执行Linux多条命令
9. 同步执行Linux多条命令
|
3月前
|
Oracle 关系型数据库 数据库
oracle数据创建同义词
oracle数据创建同义词
60 0