Modelo de mensagem de streaming de eventos de dados mestre ( IBM Master Data Management )

Quando você transmite eventos de dados mestre para sistemas downstream usando o recurso de IBMMaster Data Management transmissão de eventos e uma Apache Kafka conexão, as mensagens de evento seguem um modelo padrão.

A Apache Kafka mensagem gerada tem três componentes:

  • O cabeçalho da mensagem inclui metadados para a mensagem
  • A chave da mensagem inclui a parte de acionamento da mensagem
  • O valor da mensagem inclui os detalhes restantes da mensagem.

Cabeçalho da Mensagem

Detalhes do cabeçalho da mensagem do evento de dados mestre
Chave do cabeçalho da mensagem Valor
Serializador O serializador utilizado para a Kafka mensagem. O único serializador compatível é JSON.
EVENT_TYPE Um dos tipos de evento suportados para os quais a mensagem foi gerada, como record_change ou entity_change.
MESSAGE_TS0 Um carimbo de data/hora mostrando a hora em que a mensagem foi gerada.
ID de correlação cruzada O ID de correlação da transação para a qual a mensagem foi gerada. Por exemplo: 5af16599-f0fc-41f4-8957-4774a5c18ebf.

Chave de mensagem

Detalhes da chave da mensagem do evento de dados mestre
Chaves de mensagem Valor
ação A ação que causou o evento. Os valores possíveis são create, update, delete, link e unlink.
TRIGGER_TYPE O evento (gatilho) que causou a geração da mensagem. Para eventos de alteração de dados, o gatilho é causado por um record change ou um manual_linkage (link ou desvinculação).
chave_partição Um identificador exclusivo para este evento de alteração de dados. A chave é usada durante o envio da mensagem para tópicos com várias partições.

Por exemplo:

         {
            "action": "create",
            "trigger_type": "record_change",
            "partition_key": 4312
         }

Valor da mensagem

O valor da mensagem é composto por duas partes principais:

  • Detalhes do registro que causou o evento de alteração de dados.
  • Um conjunto de entidades que foram afetadas por esta ação.
Detalhes do valor da mensagem do evento de dados mestre
Chave de valor da mensagem Valor
detalhes do registro Detalhes completos do registro e do evento que desencadeou a alteração dos dados. No caso de um link ou deslink manual, esse valor é null porque não houve nenhuma alteração subjacente no registro que causasse um evento de alteração de entidade.
detalhes_da_entidade Um conjunto de entidades que foram afetadas por uma ação. A ação pode ser um link record_change ou manual_linkage um unlink.
Este valor contém os detalhes da entidade, a ação, o ID do registro anterior e o ID do registro atual. As alterações na composição da entidade são capturadas usando before e current, que armazenam os números dos registros que estavam associados antes e depois da alteração na composição da entidade.

Por exemplo:

         {
         "record_details": {
                 "action": "create”,
                 "record_type": "person”,
                 "record_id": "872882872”,
                 "record_source": "TEST-6,
                 "record_number": 4312
         },
         "entity_details": {
                 "entities": [
                       {
                          "entity_id": "person_entity-4312”,
                          "entity_type": "person_entity”,
                          "timestamp": 1683216456613,
                          "action": "create”,
                          "before": [],
                          "current: [4312]
                       }
                  ]
           }
         }