kafka在业务系统中也很常见,kafka的生态也很丰富。OGG对kafka的支持也很完善,OGG for Bigdata很早就支持将数据写入kafka,这时对于kafka来说,OGG是生产者。从OGG for Bigdata 21.3开始,也可以捕获kafka的数据,这时对于kafka来说,OGG是消费者,做了一个反序列化的动作,kafka是什么数据,存入Oracle数据库之后还是什么数据。自此之后,OGG可以是生产者,也可以是kafka的消费者。捕获的数据,可以在目标端以BLOB,CLOB,VARCHAR2,JSON等方式存储,如果是21c之后,也可以以Native JSON类型存储。
下面是OGG捕获kafka配置信息,主要是三个文件:
GLOBALS
========
OGGSOURCE KAFKA
JVMCLASSPATH /u01/ogg/bigdata/21.7/ggjava/ggjava.jar:/u01/ogg/bigdata/kafka/libs/*
JVMBOOTOPTIONS -Xmx512m -Dlog4j.configurationFile=log4j-default.properties -Dgg.log.level=INFO
ekafka.prm
==============
EXTRACT EKAFKA
TRANLOGOPTIONS KAFKACONSUMERPROPERTIES /u01/ogg/bigdata/21.7/dirprm/kafka_consumer.properties
VAM libggbigdata_vam.so
EXTTRAIL dirdat/ck
table ohsdba.*;
kafka_consumer.properties
===========================
bootstrap.servers=demo:19092
group.id=test-consumer-group
key.deserializer=org.apache.kafka.common.serialization.ByteArrayDeserializer
value.deserializer=org.apache.kafka.common.serialization.ByteArrayDeserializer
Reference
https://blogs.oracle.com/dataintegration/post/goldengate-for-big-data-213000-is-now-available
https://docs.oracle.com/en/middleware/goldengate/big-data/21.1/gadbd/using-oracle-goldengate-capture-kafka.html