GoldenGate实时投递数据到大数据平台(6)– HDFS
GoldenGate可以实时将RDBMS的数据投递到HDFS中,在前面的文章中,已经配置过投递到kafka, mongodb等数据平台,本文通过OGG for bigdata的介质中自带的示例演示实时将数据写入到HDFS文件系统。
安装hadoop
安装hadoop3.0.0,设置相应的环境变量
export HADOOP_HOME=/u01/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
启动hadoop
bin/hadoop namenode -format
sbin/start-all.sh
确保hadoop能正常启动,如有问题,可自行搜索文档解决。
[oracle@ol66 sbin]$ jps
11685 NodeManager
11157 SecondaryNameNode
10844 NameNode
11405 ResourceManager
12126 Jps
10959 DataNode
OGG环境准备
创建ogg投递数据到HDFS时,数据保存的目录
[oracle@ol66 sbin]$ hdfs dfs -mkdir /ogg
[oracle@ol66 sbin]$ hdfs dfs -ls /
Found 1 items
drwxr-xr-x - oracle supergroup 0 2018-02-27 22:58 /ogg
数据写入到/ogg/hdfs目录
hdfs dfs -mkdir /ogg/hdfs
配置OGG for bigdata需要的环境变量
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$JAVA_HOME/jre/lib/amd64/server
OGG安装配置
安装ogg for bigdata软件,
进入ggsci,创建子目录
ggsci>create subdirs
退回到操作系统命令行,拷贝安装目录下 AdapterExamples/big-data/hdfs 所有文件到 dirprm/ 目录下,然后编辑hdfs.props文件。主要修改内容有如下两项
- 根据安装的hadoop路径,修改gg.classpath中hadoop lib的路径;
- 修改rootFilePath的属性为/ogg/hdfs,即前面建立的目录
保存退出。hdfs.props完整的内容如下:
gg.handlerlist=hdfs gg.handler.hdfs.type=hdfs gg.handler.hdfs.mode=tx goldengate.userexit.timestamp=utc gg.log=log4j gg.report.time=30sec gg.classpath=/u01/hadoop/share/hadoop/common/*:/u01/hadoop/share/hadoop/common/lib/*:/u01/hadoop/share/hadoop/hdfs/*:/u01/hadoop/share/hadoop/hdfs/lib/*:/u01/hadoop/etc/hadoop/: javawriter.bootoptions=-Xmx512m -Xms32m -Djava.class.path=ggjava/ggjava.jar |
详细的参数配置可参考官方文档。
重新进入GGSCI,使用示例参数和示例队列创建投递进程。
GGSCI>add replicat rhdfs, exttrail AdapterExamples/trail/tr
rhdfs.prm的内容如下:
REPLICAT rhdfs |
启动进程
GGSCI>start rhdfs
GGSCI (ol66) 13> info rh*
REPLICAT RHDFS Initialized 2018-02-27 23:37 Status STARTING
Checkpoint Lag 00:00:00 (updated 00:00:03 ago)
Process ID 12217
Log Read Checkpoint File AdapterExamples/trail/tr000000000
First Record RBA 0
GGSCI (ol66) 14> info rh*
REPLICAT RHDFS Last Started 2018-02-27 23:38 Status RUNNING
Checkpoint Lag 00:00:00 (updated 00:00:05 ago)
Process ID 12217
Log Read Checkpoint File /u01/ogg4bd/AdapterExamples/trail/tr000000000
First Record RBA 0
GGSCI (ol66) 15> info rh*
REPLICAT RHDFS Last Started 2018-02-27 23:38 Status RUNNING
Checkpoint Lag 00:00:00 (updated 00:00:02 ago)
Process ID 12217
Log Read Checkpoint File /u01/ogg4bd/AdapterExamples/trail/tr000000000
2015-11-06 02:45:39.000000 RBA 5660
可以看到,示例数据已经全部投递完成,在HDFS上查看结果:
[oracle@ol66 sbin]$ hdfs dfs -ls /ogg/hdfs
Found 2 items
drwxr-xr-x - oracle supergroup 0 2018-02-27 23:27 /ogg/hdfs/qasource.tcustmer
drwxr-xr-x - oracle supergroup 0 2018-02-27 23:27 /ogg/hdfs/qasource.tcustord
查看目录下的文件
[oracle@ol66 sbin]$ hdfs dfs -ls /ogg/hdfs/qasource.tcustmer
Found 1 items
-rw-r--r-- 1 oracle supergroup 905 2018-02-27 23:28 /ogg/hdfs/qasource.tcustmer/QASOURCE.TCUSTMER_RHDFS_2018-02-27_23-27-54.255.txt
查看具体的文件内容
[oracle@ol66 sbin]$ hdfs dfs -cat /ogg/hdfs/qasource.tcustmer/QASOURCE.TCUSTMER_RHDFS_2018-02-27_23-27-54.255.txt
生成的数据文件默认是CSV格式,可以指定分隔符,文件名在hdfs.props中可以配置。
官方支持的版本如下:
GoldenGate实时投递数据到大数据平台(6)– HDFS的更多相关文章
- GoldenGate实时投递数据到大数据平台(2)- Cassandra
简介 GoldenGate是一款可以实时投递数据到大数据平台的软件,针对apache cassandra,经过简单配置,即可实现从关系型数据将增量数据实时投递到Cassandra,以下介绍配置过程. ...
- GoldenGate实时投递数据到大数据平台(5) - Kafka
Oracle GoldenGate是Oracle公司的实时数据复制软件,支持关系型数据库和多种大数据平台.从GoldenGate 12.2开始,GoldenGate支持直接投递数据到Kafka等平台, ...
- 大数据学习---大数据的学习【all】
大数据介绍 什么是大数据以及有什么特点 大数据:是指无法在一定时间内用常规软件工具对其内容进行抓取.管理和处理的数据集合. 大数据是一种方法论:“一切都被记录,一切都被数字化,从数据中寻找需求,寻找知 ...
- 转 开启“大数据”时代--大数据挑战与NoSQL数据库技术 iteye
一直觉得“大数据”这个名词离我很近,却又很遥远.最近不管是微博上,还是各种技术博客.论坛,碎碎念大数据概念的不胜枚举. 在我的理解里,从概念理解上来讲,大数据的目的在于更好的数据分析,否则如此大数据的 ...
- GoldenGate实时投递数据到大数据平台(3)- Apache Flume
Apache Flume Flume NG是一个分布式.可靠.可用的系统,它能够将不同数据源的海量日志数据进行高效收集.聚合,最后存储到一个中心化数据存储系统中,方便进行数据分析.事实上flume也可 ...
- GoldenGate实时投递数据到大数据平台(7)– Apache Hbase
Apache Hbase安装及运行 安装hbase1.4,确保在这之前hadoop是正常运行的.设置相应的环境变量, export HADOOP_HOME=/u01/hadoop export HBA ...
- GoldenGate实时投递数据到大数据平台(4)- ElasticSearch 2.x
ES 2.x ES 2.x安装 下载elasticSearch 2.4.5, https://www.elastic.co/downloads/elasticsearch 解压下载后的压缩包,启动ES ...
- GoldenGate实时投递数据到大数据平台(1)-MongoDB
mongodb安装 安装 linux下可使用apt-get install mongodb-server 或 yum install mongodb-server 进行安装. 也可以在windows上 ...
- [转载] 使用 Twitter Storm 处理实时的大数据
转载自http://www.ibm.com/developerworks/cn/opensource/os-twitterstorm/ 流式处理大数据简介 Storm 是一个开源的.大数据处理系统,与 ...
随机推荐
- LigerUi遮罩的两个方法
$.ligerDialog.waitting('正在查询,请稍候...'); $.ligerDialog.close();
- Tomcat部署及优化
一.Tomcat安装部署 一.安装jdk和Tomcat 1.上传jdk和Tomcat mkdir -p /opt/tools/ /application ##jdk:jdk-8u131 tomcat: ...
- 微信小程序中this使用
微信小程序中,在wx.request({});方法调用成功或者失败之后,有时候会需要获取页面初始化数据data的情况,这个时候,如果使用,this.data来获取,会出现获取不到的情况,调试页面也会报 ...
- [LeetCode] 339. Nested List Weight Sum_Easy tag:DFS
Given a nested list of integers, return the sum of all integers in the list weighted by their depth. ...
- nodejs+mysql入门实例(删)
//连接数据库 var mysql = require('mysql'); var connection = mysql.createConnection({ host: 'bdm253137448. ...
- shell实现SSH自动登陆【转】
前言 公司开发使用docker,每次登陆自己开发机总要输入 ssh user_name@ip_string,然后再确认输入password,手快了还经常会输错.作为一个懒人,肯定要找一个取巧的方式,查 ...
- iOS UI基础-9.2 UITableView 简单微博列表
概述 我们要实现的效果: 这个界面布局也是UITableView实现的,其中的内容就是UITableViewCell,只是这个UITableViewCell是用户自定义实现的.虽然系统自带的UITab ...
- python进阶(六) 虚拟环境git clone报错解决办法
在虚拟环境目录,进行git clone xxxxx.git 项目,报如下图错误 解决办法:env GIT_SSL_NO_VERIFY=true git clone xxxx.git
- VS基本学习之(变量与常量)
一.变量与常量 1) 变量 由(定义+赋值+取值组成) 变量的命名规则: ① 变量名组成:字母 数字 下划线 @ 汉字 ② 首字母只能用:字母 下划线 @ 汉字(不能是数字 ...
- jquery $.ajax $.get $.post的区别?
$.ajax 是 jQuery 底层 AJAX 实现,$.ajax是一种通用的底层封装,$.ajax()请求数据之后,则需要使用回调函数,有beforeSend.error.dataFilter.su ...