Hello All,
I am very new to IBM IIDR and kafka integration.
I need to parse the Kafka topic value into the same data type which is there in the source datasource(oracle, db2 etc.)
for Example :
In the below example, the schema definition is created by the CDC into the Kafka schema registry(avro) and all the source attributes have
different data types(Decimal, varchar etc.).
{"subject":"cdckafka.oraclekafka.sourcedb.kafka.cdcurrencytp-value","version":1,"id":3,"schema":"{\"type\":\"record\",\"name\":\"CDCURRENCYTP\",\"namespace\":\"value.SOURCEDB.KAFKA\",\"fields\":[{\"name\":\"LANG_TP_CD\",\"type\":[{\"type\":\"string\",\"logicalType\":\"DECIMAL\",\"dbColumnName\":\"LANG_TP_CD\",\"precision\":19,\"scale\":0},\"null\"],\"default\":\"0\"},{\"name\":\"CURRENCY_TP_CD\",\"type\":[{\"type\":\"string\",\"logicalType\":\"DECIMAL\",\"dbColumnName\":\"CURRENCY_TP_CD\",\"precision\":19,\"scale\":0},\"null\"],\"default\":\"0\"},{\"name\":\"NAME\",\"type\":[{\"type\":\"string\",\"logicalType\":\"VARCHAR\",\"dbColumnName\":\"NAME\",\"length\":120},\"null\"],\"default\":\"\"},{\"name\":\"DESCRIPTION\",\"type\":[{\"type\":\"string\",\"logicalType\":\"VARCHAR\",\"dbColumnName\":\"DESCRIPTION\",\"length\":255},\"null\"],\"default\":\"\"},{\"name\":\"EXPIRY_DT\",\"type\":[{\"type\":\"string\",\"logicalType\":\"TIMESTAMP\",\"dbColumnName\":\"EXPIRY_DT\",\"length\":29},\"null\"],\"default\":\"\"},{\"name\":\"LAST_UPDATE_DT\",\"type\":[{\"type\":\"string\",\"logicalType\":\"TIMESTAMP\",\"dbColumnName\":\"LAST_UPDATE_DT\",\"length\":29},\"null\"],\"default\":\"\"},{\"name\":\"CURRENCY_CODE\",\"type\":[{\"type\":\"string\",\"logicalType\":\"CHARACTER\",\"dbColumnName\":\"CURRENCY_CODE\",\"length\":3},\"null\"],\"default\":\"\"}]}"}
however, when we are consuming the message from the topic all converted into the string format.
{"LANG_TP_CD":{"string":"100"},"COUNTRY_TP_CD":{"string":"197"},"NAME":{"string":"Finland"},"DESCRIPTION":null,"EXPIRY_DT":null,"LAST_UPDATE_DT":{"string":"2001-09-28T22:20:11.000000000000"},"ISO_CODE":{"string":"FI"}}
{"LANG_TP_CD":{"string":"100"},"COUNTRY_TP_CD":{"string":"198"},"NAME":{"string":"Switzerland"},"DESCRIPTION":null,"EXPIRY_DT":null,"LAST_UPDATE_DT":{"string":"2006-10-24T22:20:11.000000000000"},"ISO_CODE":{"string":"CH"}}
{"LANG_TP_CD":{"string":"100"},"COUNTRY_TP_CD":{"string":"7"},"NAME":{"string":"Argentina"},"DESCRIPTION":{"string":"Argentina"},"EXPIRY_DT":null,"LAST_UPDATE_DT":{"string":"2001-08-29T00:00:00.000000000000"},"ISO_CODE":{"string":"AR"}}
Could you please & suggest how to read the messages using the same format which is available in the data source?
Thank,
Manish
------------------------------
manish bachhania
------------------------------
#DataIntegration#DataReplication