Abilitazione del partizionamento di argomenti di dati per KCOP

Puoi abilitare il partizionamento degli argomenti dei dati per tutti i KCOP (custom operation processor) Kafka supportati da CDC Replication Engine for Kafka.

Il partizionamento degli argomenti di dati può aumentare il parallelismo di applicazione. Questa soluzione offre prestazioni migliori rispetto alla specifica della proprietà partitioner.class nel file kafkaproducer.properties perché fa sì che CDC Replication utilizzi un produttore Kafka per partizione invece di un produttore Kafka per argomento.

Opzione 1
Aggiungendo la proprietà PARTITION_AUTO, è possibile assegnare dinamicamente le partizioni all'argomento su cui si sta scrivendo. La Replica CDC determina automaticamente il numero appropriato di partizioni e le assegna all'argomento. Tuttavia, l'argomento deve esistere perché questa proprietà funzioni. Inoltre, è necessario specificare il percorso del file kafkaconsumer.properties in kcops.properties utilizzando la proprietà KAFKACONSUMER_PROPERTIES_PATH per utilizzare questa funzione. Ad esempio:
KAFKACONSUMER_PROPERTIES_PATH=<CDC-install-dir>/instance/<your-instance>/conf/kafkaconsumer.properties
PARTITION_AUTO=true
Opzione 2
Per specificare che CDC Replication deve distribuire i record su un determinato numero di partizioni, aggiungere la proprietà PARTITION_TOPIC_topic_name a un file delle proprietà KCOP. Ad esempio:
PARTITION_TOPIC_data=3

Questa impostazione fa sì che Replica CDC scriva i record nelle partizioni 0, 1 e 2 per i dati argomento. Altri argomenti non sono partizionati.

Per specificare il numero predefinito di partizioni, aggiungere la proprietà PARTITION_DEFAULT a un file delle proprietà KCOP. Ad esempio:

PARTITION_DEFAULT=3

Questa impostazione fa sì che Replica CDC scriva i record nelle partizioni 0, 1 e 2 per tutti gli argomenti di dati.

Entrambe le proprietà possono essere utilizzate contemporaneamente, ma PARTITION_TOPIC_* ha la precedenza su PARTITION_DEFAULT. Ad esempio, le seguenti istruzioni fanno sì che CDC Replication scriva i record nelle partizioni 0, 1, 2, 3, 4 e 5 per l'argomento data. Per altri argomenti di dati, i record vengono scritti nelle partizioni 0, 1 e 2:

PARTITION_TOPIC_data=6
PARTITION_DEFAULT=3

Se si desidera eseguire la rimappatura e la partizione, utilizzare il nome rimappato di un argomento di dati. Ad esempio:

MAP_ALL=all-topic
PARTITION_TOPIC_all-topic=3

I record vengono partizionati tramite hash utilizzando un valore chiave. Se un record non ha una chiave, viene partizionato con round - robin. Se viene utilizzato più di un thread del programma di creazione di immagini, ogni thread ha il proprio contatore round - robin.

Importante:
  • Il numero massimo di produttori Kafka creati da una sottoscrizione è uguale a quello delle tabelle di origine.
  • L'impostazione del prefisso dell'argomento nella Console di gestione utilizzando le proprietà Kafka modifica la convenzione di denominazione dell'argomento predefinita. Se si imposta il prefisso dell'argomento senza utilizzare la rimappatura dell'argomento, assicurarsi di utilizzare il formato seguente:
    PARTITION_TOPIC_topic-prefix.schema.table=int