Commandes d'adaptateur pour les consommateurs

Les commandes d'adaptateur Kafka pour les consommateurs sont valides pour les sources de données d'entrée. Pour plus de détails, voir les informations de configuration du consommateur dans la documentation Apache Kafka.

ID de groupe

Spécifie la chaîne unique qui identifie le groupe de consommateurs auquel appartient un consommateur. Cette propriété active la gestion de groupe Kafka, qui est utilisée lorsque la commande -TP spécifie uniquement les noms de sujets sans partitions de sujet. La valeur par défaut est une chaîne null. La commande d'adaptateur correspondante est -GID groupID (ou -GROUPID groupID).

Configuration du consommateur Kafka associée : group.id

Stratégie de validation de décalage

Spécifie la stratégie que l'adaptateur utilise pour valider un décalage lorsqu'il consomme un message. La commande d'adaptateur correspondante est -OCS (ou -OFFSETCOMMITSTRATEGY).

La stratégie est l'une des suivantes :
  • Manuel : L'adaptateur Kafka valide le décalage lorsqu'il valide la transaction, comme défini par le paramètre Transaction > Portée sur la carte en entrée de la mappe. Il s'agit de la valeur par défaut.
  • Auto : Le cluster Kafka valide périodiquement le décalage.
  • Jamais : Ni le cluster Kafka ni l'adaptateur Kafka ne valident le décalage.

Nombre de nouvelles tentatives de validation de décalage

Spécifie le nombre de fois où il convient d'ignorer les échecs de validation de décalage et poursuivre la consommation de messages. La commande d'adaptateur correspondante est -OCRC (-OFFSETCOMMITRETRYCOUNT).

Lorsque l'opération de validation de décalage échoue et que le nombre spécifié n'est pas atteint, l'adaptateur incrémente le compteur interne des validations échouées et continue de consommer des messages comme si la validation avait abouti. Si le sujet d'erreur a été spécifié et que la valeur de cette commande est différente de 0, l'adaptateur envoie au sujet d'erreur le message d'erreur avec les informations de rubrique, de partition et de décalage de l'opération de validation ayant échoué. L'adaptateur retente de valider les décalages en attente lors de la prochaine opération de validation programmée. La valeur par défaut de cette commande est 0, ce qui indique à l'adaptateur de traiter les échecs de validation de décalage comme des erreurs de gravité fatale et de ne pas tenter de faire de nouveaux essais. La valeur spéciale S est prise en charge et est utilisée pour spécifier un nombre illimité de tentatives.

Ignorer les doubles

Demande à l'adaptateur de suivre tous les messages qu'il a consommés dans le processus en cours et d'ignorer les messages qu'il a consommés précédemment. La commande d'adaptateur correspondante est -SD (-SKIPDUPLICATES).

q

Si le sujet d'erreur est configuré, l'adaptateur envoie des messages d'erreur indiquant que des messages en double ont été détectés (leur sujet, leur partition et leur décalage) au sujet d'erreur.

-OFFSETCOMMITTRETRYCONSTRAINT value [value] -OCC value [value]

Spécifie les contraintes que l'adaptateur doit satisfaire lors de la validation des décalages en attente. L'une des deux valeurs suivantes peut être spécifiée, ou les deux peuvent être spécifiées, séparées par un espace :

apo : Signifie Partitions affectées uniquement (Assigned Partitions Only) et signifie que le consommateur d'adaptateur doit valider uniquement les décalages en attente qui appartiennent aux partitions qui lui sont actuellement affectées. Les décalages qui appartiennent à une partition que le consommateur possédait à un moment donné, mais qui a ensuite été affectée à un autre consommateur, sont ignorés.

ssc : Signifie Ignorer les validations périmées (Skip Stale Commits) et signifie que l'adaptateur ne doit pas valider les décalages en attente sur une partition qui sont plus anciens que les décalages actuellement engagés sur la même partition, pour le même groupe de consommateurs. Ces anciens décalages sont considérés comme périmés et sont possibles si le consommateur perd une partition en raison du rééquilibrage des partitions, et qu'un autre consommateur du même groupe de consommateurs se voit attribuer la partition, consomme et valide des décalages au-delà du dernier consommateur de décalage par le consommateur d'origine. Si le consommateur d'origine reprend ultérieurement la propriété de la partition, les décalages qu'il considère toujours comme en attente pour cette partition seront périmés. Si cette contrainte est spécifiée et que le consommateur détecte des décalages périmés, il ne les valide pas et les rejette (les oublie).

Version du format de message d'erreur

Spécifie le format des messages envoyés au sujet d'erreur. La commande d'adaptateur correspondante est -EMFV version (ou -ERRORMESSAGEFORMATVERSION version).

Les valeurs prises en charge sont les suivantes :
  • 1 : Pour la version par défaut, chaque message est au format t:p-o où t, p et o sont le sujet, la partition et le décalage du message consommé pour lequel le traitement a échoué et pour lequel l'enregistrement d'erreur est produit dans le sujet d'erreur
  • 2 : Chaque message est au format JSON suivant : {"topic":"t","partition":"p","offset":"o","code":"c"} où t, p et o sont les valeurs de rubrique, de partition et de décalage du message consommé pour lequel le traitement a échoué, et c est le code d'erreur indiquant la raison de l'échec, et est l'une des valeurs suivantes :
  • DUPLICATE : Indique que les messages ont été ignorés, car ils ont déjà été consommés précédemment pour le même groupe de consommateurs dans le processus en cours, et que la commande d'adaptateur -SKIPDUPLICATES (-SD) a été spécifiée. COMMIT_FAILED - indique que les messages ont été correctement traités, mais que l'opération de validation de décalage pour ce dernier a échoué. ROLLBACK - indique qu'une erreur a été signalée lors du traitement du message spécifié, par exemple lors de l'opération d'écriture de base de données dans l'une des sorties de mappe dans la même portée de transaction dans laquelle le message a été consommé.

Extraction minimum d'octets

Indique la quantité minimale de données, en octets, qui doit s'accumuler avant que le serveur ne renvoie les données au consommateur. La taille de données par défaut est d'un octet, ce qui signifie que le serveur répond à une requête de données dès que toutes les données sont disponibles pour le renvoi. La commande d'adaptateur correspondante est -FMIB size (ou - FETCHMINBYTES size).

Configuration du consommateur Kafka associée : fetch.min.bytes

Extraction maximum d'octets

Indique la quantité maximale de données, en octets, que le serveur doit renvoyer pour une requête d'extraction. La commande d'adaptateur correspondante est -FMAB size (ou - FETCHMAXBYTES size).

Configuration du consommateur Kafka associée : fetch.max.bytes

Réinitialisation automatique du décalage

Position de décalage à utiliser automatiquement lorsqu'il n'existe aucun décalage précédent. La commande d'adaptateur correspondante est -AOR (-AUTOOFFSETRESET).

Le décalage est l'un des suivants :
  • Latest : Commence à consommer les nouveaux messages du décalage le plus récent. Il s'agit de la valeur par défaut.
  • Earliest : Commence à consommer à partir de l'enregistrement disponible le plus ancien en réinitialisant automatiquement le décalage par rapport au décalage le plus ancien.
  • Aucun : Signale une erreur.

Configuration du consommateur Kafka associée : auto.offset.reset

Synchronisée

Indique que l'unité d'exécution du programme d'écoute du moteur de flux doit fonctionner de manière synchrone. Le programme d'écoute attend de notifier un événement à une mappe (un message ajouté à un sujet) jusqu'à ce que la mappe reconnaisse qu'elle a traité l'événement précédent. La commande d'adaptateur correspondante est -SYNC (ou -SYNCHRONIZED).

Si la mappe échoue, le programme d'écoute ne signale pas les événements suivants, sauf si la commande -ETP est spécifiée. Avec la commande -ETP, lorsque le programme d'écoute du moteur de flux enregistre l'événement ayant échoué dans le sujet d'erreur, le programme d'écoute est débloqué et passe à la notification de nouveaux événements.

Sujet d'erreur

Indique le nom du sujet d'erreur dans lequel les messages qui entraînent une erreur sont enregistrés. La commande d'adaptateur correspondante est -ETP topic (ou -ERRORTOPIC topic).
  • Command Server enregistre l'erreur au moment de la restauration de la transaction. Dans une mappe, le paramètre Transaction > Scope de la carte d'entrée contrôle le moment où un échec de transaction est traité par l'adaptateur.
  • Le moteur de flux enregistre l'erreur lorsque l'unité d'exécution du programme d'écoute est bloquée, car elle attend le statut du traitement des événements, comme indiqué par la commande -SYNC.

Après avoir enregistré l'erreur, le programme d'écoute reprend le traitement des nouveaux événements.

Niveau d'isolement

Contrôle la visibilité des messages faisant partie d'une transaction. La commande d'adaptateur correspondante est -IL (ou -ISOLATIONLEVEL).
  • read_committed : Seuls les messages provenant de transactions qui sont validées (et les messages qui ne faisaient pas partie d'une transaction) sont visibles pour les consommateurs. Il s'agit de la valeur par défaut.
  • read_uncommitted : Tous les messages sont visibles par les consommateurs, même s'ils faisaient partie d'une transaction abandonnée.

Configuration du consommateur Kafka associée : isolation.level

Quantité

Indique le nombre de messages à consommer, ou S pour consommer tous les messages disponibles. La commande d'adaptateur correspondante est -QTY (ou -QUANTITY).

La valeur par défaut est 1. Si vous spécifiez une autre valeur que 1, vous devez définir le paramètre de carte d'entrée FetchAs sur Burst et le paramètre de carte d'entrée FetchUnit sur 1 dans la mappe.

Ecoute

Spécifie le temps d'attente des messages. La commande d'adaptateur correspondante est -LSN (-LISTEN).
  • Seconds : Nombre de secondes d'attente de l'arrivée des messages par le consommateur.
  • S : Attendez un délai illimité pour l'arrivée des messages. Il s'agit de la valeur par défaut.
  • 0 : Consommez tous les messages disponibles et n'attendez pas l'arrivée de nouveaux messages.

Nombre de messages logiques

Indique le nombre de messages logiques. Spécifie le nombre de messages Kafka à concaténer et à renvoyer en tant que message logique unique à partir de l'adaptateur. Par défaut, l'adaptateur renvoie chaque message Kafka en tant que message logique distinct. Pour concaténer tous les messages disponibles, spécifiez 0. La commande d'adaptateur correspondante est -LMC count (ou -LOGICALMESSAGECOUNT count).

Cette commande est valide uniquement en mode message logique (commande -LMM). Le mode de message logique n'est pas valide dans un scénario de moteur de flux.

Octets du message logique

Limite de taille de la mémoire tampon de message logique, en octets. L'adaptateur place les messages en mémoire tampon jusqu'à ce qu'ils dépassent cette limite, puis renvoie tous les messages en mémoire tampon sous la forme d'un seul message logique. La commande d'adaptateur correspondante est -LMS bytes (or -LOGICALMESSAGESIZE bytes)

Cette commande est valide uniquement en mode message logique (commande -LMM). Le mode de message logique n'est pas valide dans un scénario de moteur de flux.