Lors de la configuration d'une tâche de synchronisation de données vers Kafka, ajustez la stratégie de répartition des partitions Kafka pour optimiser les performances. Par exemple, synchronisez les données vers différentes partitions en fonction des résultats de hachage.
Algorithme de hachage
DTS utilise l'algorithme hashCode par défaut de Java pour calculer les valeurs de hachage.
Méthode de configuration
Configurez l'option Policy for Shipping Data to Kafka Partitions à l'étape Configure Objects de votre tâche de synchronisation de données.
Une fois la tâche de synchronisation de données démarrée, ne modifiez pas le nombre de partitions dans la rubrique (topic) de destination. Sinon, la tâche de synchronisation risque d'échouer ou d'entraîner une incohérence des données pour les consommateurs en aval.
Détails de la stratégie
La base de données source est Kafka
| Stratégie | Description | Avantages et inconvénients |
| Ship All Data to Partition 0 | Migre toutes les données et les instructions DDL vers la partition 0 de la rubrique de destination. |
|
| Ship Data to Separate Partitions Based on Hash Values of Database and Table Names | Utilise les noms de base de données et de table comme clé de partition pour calculer la valeur de hachage, puis migre les données et les instructions DDL de chaque table vers la partition correspondante de la rubrique de destination. Remarque
|
|
| Ship Data to Separate Partitions Based on Hash Values of Primary Keys | Utilise une colonne de table comme clé de partition pour calculer la valeur de hachage. Par défaut, la clé primaire est utilisée. Si une table ne possède pas de clé primaire, la clé unique est utilisée. Chaque ligne est migrée vers la partition correspondante de la rubrique de destination. Vous pouvez également spécifier une ou plusieurs colonnes comme clés de partition. Remarque
|
|
La base de données source est Tair/Redis
|
Nom de la stratégie |
Description |
Avantages et inconvénients |
|
Ship All Data to Partition 0 |
Transmet toutes les données et les informations DDL à la partition 0 de la rubrique de destination. |
|
|
Ship the full data and incremental data of an ApsaraDB for Redis instance to separate partitions |
Transmet les données complètes et incrémentielles de l'instance Redis vers différentes partitions de la rubrique de destination. |
|
|
Ship data to separate partitions based on hash values of Redis Keys |
Utilise la clé Redis comme clé de partition pour calculer une valeur de hachage, puis transmet les données complètes et incrémentielles vers différentes partitions de la rubrique de destination. |
|
La base de données source est une autre base de données
|
Nom de la stratégie |
Description |
Avantages et inconvénients |
|
Ship All Data to Partition 0 |
Transmet toutes les données et les informations DDL à la partition 0 de la rubrique de destination. |
|
|
Ship Data to Separate Partitions Based on Hash Values of Database and Table Names |
Combine le nom de la base de données et le nom de la table comme clé de partition pour calculer une valeur de hachage, puis transmet les données et les informations DDL de chaque table vers différentes partitions de la rubrique de destination. Remarque
|
|
|
Ship Data to Separate Partitions Based on Hash Values of Primary Keys |
Utilise les colonnes de table (par défaut, la clé primaire ; si aucune clé primaire n'existe, une clé unique) comme clé de partition pour calculer une valeur de hachage, puis transmet les différentes lignes vers différentes partitions de la rubrique de destination. Vous pouvez également spécifier une ou plusieurs colonnes comme clé de partition. Remarque
|
|