Apache Hbase安装及运行

安装hbase1.4,确保在这之前hadoop是正常运行的。设置相应的环境变量,

export HADOOP_HOME=/u01/hadoop

export HBASE_HOME=/u01/hbase

export PATH=$PATH:$HADOOP_HOME/bin:$HBASE_HOME/bin

启动hbase

./start-hbase.sh

确保hadoop, hbase能正常启动,如有问题,可自行搜索文档解决。

[oracle@ol66 bin]$ jps

11685 NodeManager

11157 SecondaryNameNode

10844 NameNode

11405 ResourceManager

13135 HMaster

13455 Jps

10959 DataNode

确保hbase在hadoop上正常运行

[oracle@ol66 u01]$ hdfs dfs -ls /

Found 3 items

drwxr-xr-x   - oracle supergroup          0 2018-02-28 00:52 /hbase

drwxr-xr-x   - oracle supergroup          0 2018-02-27 23:14 /ogg

drwxr-xr-x   - oracle supergroup          0 2018-02-28 00:33 /tmp

[oracle@ol66 bin]$ ./hbase shell

HBase Shell

Use "help" to get list of supported commands.

Use "exit" to quit this interactive shell.

Version 1.4.0, r10b9b9fae6b557157644fb9a0dc641bb8cb26e39, Fri Dec  8 16:09:13 PST 2017

hbase(main):001:0> list

TABLE                                                                                                                                                                 

0 row(s) in 0.3800 seconds

=> []

hbase(main):002:0>

可以看到,系统中还没有任何表。

OGG安装及测试

配置OGG for bigdata的环境变量

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$JAVA_HOME/jre/lib/amd64/server

安装ogg for bigdata 12.3版本软件

进入ggsci

ggsci>create subdirs

退回到操作系统命令行,在OGG安装目录下执行如下命令,拷贝hbase示例投递参数后进行修改

cp AdapterExamples/big-data/hbase/* dirprm/

在dirprm目录下,编辑hbase.props文件。

根据安装的hbase的路径,修改gg.classpath中 hbase lib的路径;保存退出。

hbase.props的完整内容如下:

gg.handlerlist=hbase

gg.handler.hbase.type=hbase
gg.handler.hbase.hBaseColumnFamilyName=cf
gg.handler.hbase.keyValueDelimiter=CDATA[=]
gg.handler.hbase.keyValuePairDelimiter=CDATA[,]
gg.handler.hbase.encoding=UTF-8
gg.handler.hbase.pkUpdateHandling=abend
gg.handler.hbase.nullValueRepresentation=CDATA[NULL]
gg.handler.hbase.authType=none
gg.handler.hbase.includeTokens=false

gg.handler.hbase.mode=tx

goldengate.userexit.timestamp=utc
goldengate.userexit.writers=javawriter
javawriter.stats.display=TRUE
javawriter.stats.full=TRUE

gg.log=log4j
gg.log.level=INFO
gg.report.time=30sec

gg.classpath=/u01/hbase/lib/*:/u01/hbase/conf/:

javawriter.bootoptions=-Xmx512m -Xms32m -Djava.class.path=ggjava/ggjava.jar

重新进入GGSCI,使用示例参数和示例队列创建投递进程。

GGSCI>add replicat rhbase, exttrail AdapterExamples/trail/tr

rhbase.prm的内容如下:

REPLICAT rhbase
-- Trail file for this example is located in "AdapterExamples/trail" directory
-- Command to add REPLICAT
-- add replicat rhbase, exttrail AdapterExamples/trail/tr
TARGETDB LIBFILE libggjava.so SET property=dirprm/hbase.props
REPORTCOUNT EVERY 1 MINUTES, RATE
GROUPTRANSOPS 10000
MAP QASOURCE.*, TARGET QASOURCE.*;

测试

启动投递进程

GGSCI (ol66) 19> start rhbase

Sending START request to MANAGER ...

REPLICAT RHBASE starting

GGSCI (ol66) 20> info rhbase

REPLICAT   RHBASE    Initialized   2018-02-28 00:53   Status STARTING

Checkpoint Lag       00:00:00 (updated 00:02:16 ago)

Process ID           15424

Log Read Checkpoint  File AdapterExamples/trail/tr000000000
                      First Record  RBA 0

GGSCI (ol66) 22> info rhbase

REPLICAT   RHBASE    Last Started 2018-02-28 00:55   Status RUNNING

Checkpoint Lag       00:00:00 (updated 00:02:20 ago)

Process ID           15424

Log Read Checkpoint  File /u01/ogg4bd/AdapterExamples/trail/tr000000000
                      First Record  RBA 0

GGSCI (ol66) 27> info rhbase

REPLICAT   RHBASE    Last Started 2018-02-28 00:55   Status RUNNING

Checkpoint Lag       00:00:00 (updated 00:00:01 ago)

Process ID           15424

Log Read Checkpoint  File /u01/ogg4bd/AdapterExamples/trail/tr000000000
                      2015-11-06 02:45:39.000000  RBA 5660

投递完成,在OGG中检查投递结果

GGSCI (ol66) 28> stats rhbase, total

Sending STATS request to REPLICAT RHBASE ...

Start of Statistics at 2018-02-28 00:56:23.

Replicating from QASOURCE.TCUSTMER to QASOURCE.TCUSTMER:

*** Total statistics since 2018-02-28 00:55:43 ***
         Total inserts                                      5.00
         Total updates                                      1.00
         Total deletes                                      0.00
         Total discards                                     0.00
         Total operations                                   6.00

Replicating from QASOURCE.TCUSTORD to QASOURCE.TCUSTORD:

*** Total statistics since 2018-02-28 00:55:43 ***
         Total inserts                                      5.00
         Total updates                                      3.00
         Total deletes                                      2.00
         Total discards                                     0.00
         Total operations                                  10.00

End of Statistics.


在hbase上查看,已经比刚开始多了2张表

hbase(main):002:0> list

TABLE                                                                                                                                                                 

QASOURCE:TCUSTMER                                                                                                                                                     

QASOURCE:TCUSTORD                                                                                                                                                     

2 row(s) in 0.0190 seconds

=> ["QASOURCE:TCUSTMER", "QASOURCE:TCUSTORD"]

查看数据

hbase(main):005:0> scan 'QASOURCE:TCUSTMER'

ROW                                        COLUMN+CELL                                                                                                                
  ANN                                       column=cf:CITY, timestamp=1519750550592, value=NEW YORK                                                                    
  ANN                                       column=cf:CUST_CODE, timestamp=1519750550592, value=ANN                                                                    
  ANN                                       column=cf:NAME, timestamp=1519750550592, value=ANN'S BOATS                                                                 
  ANN                                       column=cf:STATE, timestamp=1519750550592, value=NY                                                                         
  BILL                                      column=cf:CITY, timestamp=1519750550592, value=DENVER                                                                      
  BILL                                      column=cf:CUST_CODE, timestamp=1519750550592, value=BILL                                                                   
  BILL                                      column=cf:NAME, timestamp=1519750550592, value=BILL'S USED CARS                                                            
  BILL                                      column=cf:STATE, timestamp=1519750550592, value=CO                                                                         
  DAVE                                      column=cf:CITY, timestamp=1519750550592, value=TALLAHASSEE                                                                 
  DAVE                                      column=cf:CUST_CODE, timestamp=1519750550592, value=DAVE                                                                   
  DAVE                                      column=cf:NAME, timestamp=1519750550592, value=DAVE'S PLANES INC.                                                          
  DAVE                                      column=cf:STATE, timestamp=1519750550592, value=FL                                                                         
  JANE                                      column=cf:CITY, timestamp=1519750550421, value=DENVER                                                                      
  JANE                                      column=cf:CUST_CODE, timestamp=1519750550421, value=JANE                                                                   
  JANE                                      column=cf:NAME, timestamp=1519750550421, value=ROCKY FLYER INC.                                                            
  JANE                                      column=cf:STATE, timestamp=1519750550421, value=CO                                                                         
  WILL                                      column=cf:CITY, timestamp=1519750550421, value=SEATTLE                                                                     
  WILL                                      column=cf:CUST_CODE, timestamp=1519750550421, value=WILL                                                                   
  WILL                                      column=cf:NAME, timestamp=1519750550421, value=BG SOFTWARE CO.                                                             
  WILL                                      column=cf:STATE, timestamp=1519750550421, value=WA                                                                         

5 row(s) in 0.3150 seconds

hbase(main):001:0> scan 'QASOURCE:TCUSTORD'

ROW                                        COLUMN+CELL                                                                                                                
  BILL|1995-12-31 15:00:00|CAR|765          column=cf:CUST_CODE, timestamp=1519750550614, value=BILL                                                                   
  BILL|1995-12-31 15:00:00|CAR|765          column=cf:ORDER_DATE, timestamp=1519750550614, value=1995-12-31 15:00:00                                                   
  BILL|1995-12-31 15:00:00|CAR|765          column=cf:ORDER_ID, timestamp=1519750550614, value=765                                                                     
  BILL|1995-12-31 15:00:00|CAR|765          column=cf:PRODUCT_AMOUNT, timestamp=1519750550614, value=3                                                                 
  BILL|1995-12-31 15:00:00|CAR|765          column=cf:PRODUCT_CODE, timestamp=1519750550614, value=CAR                                                                 
  BILL|1995-12-31 15:00:00|CAR|765          column=cf:PRODUCT_PRICE, timestamp=1519750550614, value=14000.00                                                           
  BILL|1995-12-31 15:00:00|CAR|765          column=cf:TRANSACTION_ID, timestamp=1519750550614, value=100                                                               
  BILL|1996-01-01 00:00:00|TRUCK|333        column=cf:CUST_CODE, timestamp=1519750550614, value=BILL                                                                   
  BILL|1996-01-01 00:00:00|TRUCK|333        column=cf:ORDER_DATE, timestamp=1519750550614, value=1996-01-01 00:00:00                                                   
  BILL|1996-01-01 00:00:00|TRUCK|333        column=cf:ORDER_ID, timestamp=1519750550614, value=333                                                                     
  BILL|1996-01-01 00:00:00|TRUCK|333        column=cf:PRODUCT_AMOUNT, timestamp=1519750550614, value=15                                                                
  BILL|1996-01-01 00:00:00|TRUCK|333        column=cf:PRODUCT_CODE, timestamp=1519750550614, value=TRUCK                                                               
  BILL|1996-01-01 00:00:00|TRUCK|333        column=cf:PRODUCT_PRICE, timestamp=1519750550614, value=25000.00                                                           
  BILL|1996-01-01 00:00:00|TRUCK|333        column=cf:TRANSACTION_ID, timestamp=1519750550614, value=100                                                               
  WILL|1994-09-30 15:33:00|CAR|144          column=cf:CUST_CODE, timestamp=1519750550614, value=WILL                                                                   
  WILL|1994-09-30 15:33:00|CAR|144          column=cf:ORDER_DATE, timestamp=1519750550614, value=1994-09-30 15:33:00                                                   
  WILL|1994-09-30 15:33:00|CAR|144          column=cf:ORDER_ID, timestamp=1519750550614, value=144                                                                     
  WILL|1994-09-30 15:33:00|CAR|144          column=cf:PRODUCT_AMOUNT, timestamp=1519750550453, value=3                                                                 
  WILL|1994-09-30 15:33:00|CAR|144          column=cf:PRODUCT_CODE, timestamp=1519750550614, value=CAR                                                                 
  WILL|1994-09-30 15:33:00|CAR|144          column=cf:PRODUCT_PRICE, timestamp=1519750550614, value=16520.00                                                           
  WILL|1994-09-30 15:33:00|CAR|144          column=cf:TRANSACTION_ID, timestamp=1519750550453, value=100                                                               

3 row(s) in 0.6770 seconds

可以看到,OGG配置投递到Hbase非常简单,可以根据DB中表的主键字段创建key,如果没有PK字段,则投递时会报错。以下是当前OGG版本支持的Hbase版本

GoldenGate实时投递数据到大数据平台(7)– Apache Hbase的更多相关文章

  1. GoldenGate实时投递数据到大数据平台(2)- Cassandra

    简介 GoldenGate是一款可以实时投递数据到大数据平台的软件,针对apache cassandra,经过简单配置,即可实现从关系型数据将增量数据实时投递到Cassandra,以下介绍配置过程. ...

  2. GoldenGate实时投递数据到大数据平台(5) - Kafka

    Oracle GoldenGate是Oracle公司的实时数据复制软件,支持关系型数据库和多种大数据平台.从GoldenGate 12.2开始,GoldenGate支持直接投递数据到Kafka等平台, ...

  3. 大数据学习---大数据的学习【all】

    大数据介绍 什么是大数据以及有什么特点 大数据:是指无法在一定时间内用常规软件工具对其内容进行抓取.管理和处理的数据集合. 大数据是一种方法论:“一切都被记录,一切都被数字化,从数据中寻找需求,寻找知 ...

  4. 转 开启“大数据”时代--大数据挑战与NoSQL数据库技术 iteye

    一直觉得“大数据”这个名词离我很近,却又很遥远.最近不管是微博上,还是各种技术博客.论坛,碎碎念大数据概念的不胜枚举. 在我的理解里,从概念理解上来讲,大数据的目的在于更好的数据分析,否则如此大数据的 ...

  5. GoldenGate实时投递数据到大数据平台(6)– HDFS

    GoldenGate可以实时将RDBMS的数据投递到HDFS中,在前面的文章中,已经配置过投递到kafka, mongodb等数据平台,本文通过OGG for bigdata的介质中自带的示例演示实时 ...

  6. GoldenGate实时投递数据到大数据平台(3)- Apache Flume

    Apache Flume Flume NG是一个分布式.可靠.可用的系统,它能够将不同数据源的海量日志数据进行高效收集.聚合,最后存储到一个中心化数据存储系统中,方便进行数据分析.事实上flume也可 ...

  7. GoldenGate实时投递数据到大数据平台(4)- ElasticSearch 2.x

    ES 2.x ES 2.x安装 下载elasticSearch 2.4.5, https://www.elastic.co/downloads/elasticsearch 解压下载后的压缩包,启动ES ...

  8. GoldenGate实时投递数据到大数据平台(1)-MongoDB

    mongodb安装 安装 linux下可使用apt-get install mongodb-server 或 yum install mongodb-server 进行安装. 也可以在windows上 ...

  9. [转载] 使用 Twitter Storm 处理实时的大数据

    转载自http://www.ibm.com/developerworks/cn/opensource/os-twitterstorm/ 流式处理大数据简介 Storm 是一个开源的.大数据处理系统,与 ...

随机推荐

  1. linux shell下16进制 “\uxxxx” unicode to UTF-8中文

    问题出现背景: 项目中有个通过ip获取归属地城市需求,我是直接通过新浪的ip归属查询接口来获取的.我使用的是shell脚本调用 RESULT=$(curl -s 'http://int.dpool.s ...

  2. 获取请求IP

    服务器获取客户端或者网页的请求,获取IP时需要注意,并不是直接 request.getRemoteAddr(); 就可以了,因为一个请求到达服务器之前,一般都会经过一层或者多层代理服务器,比如反向代理 ...

  3. 动态性能视图v$mystat,v$sesstat,v$statname

    视图说明: v$mystat-------> 当前会话统计 v$sesstat------> 按会话进行分组统计 v$sysstat-------> 当系统的整体统计 v$statn ...

  4. react build后直接从浏览器打开

    存在两个问题 一,资源文件路径 config/paths.js 这里原来的.pathname:'/', 改成.pathname:'./' function getServedPath(appPacka ...

  5. [原]Failed connect to mirrors.cloud.aliyuncs.com:80; Connection refused

    web site : https://opsx.alibaba.com/mirror 运行后出现下面的Error: base//x86_64/other_db FAILED http://mirror ...

  6. 【CF434D】Nanami's Power Plant 最小割

    [CF434D]Nanami's Power Plant 题意:有n个二次函数$y=a_ix^2+b_ix+c_i$($a_i,b_i,c_i$是整数),第i个函数要求x的取值在$[l_i,r_i]$ ...

  7. Linux下的at定时执行任务命令详解

    之前说了使用crontab实现定时执行任务,假如我们只是想要让特定任务运行一次,那么,这时候就要用到at监控程序了.一.at服务 cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下 ...

  8. web端MSF搭建

    去购买一个廉价VPS  阿里X/tx学生服务器然后选择Ubuntu系统http://jingyan.baidu.com/article/2c8c281dabacad0008252aa6.html安装M ...

  9. C 输出变量值到文件中的方法

    LinphoneChatMessage *message FILE *fpt; fpt = fopen("wendangming.txt", "w");//打开 ...

  10. 自己用纯C++实现简单的QT中信号与槽机制

    前天在我很久以前的一篇博文 (http://blog.csdn.net/liukang325/article/details/45742675) 中有人回复说看到我的博文很激动,希望我详细介绍一下信号 ...