Réplication de données avec un abonnement Standard, Premium ou Enterprise
Pour configurer une tâche de réplication :
-
Dans Intégration des données > Projets, cliquez sur Créer un projet.
-
Dans la boîte de dialogue Nouveau projet, procédez comme suit :
- Donnez un Nom à votre projet.
- Sélectionnez l'Espace dans lequel vous souhaitez créer le projet.
- Vous pouvez éventuellement saisir une Description.
- Sélectionnez Réplication comme Cas d'utilisation.
- Vous pouvez décocher la case Ouvrir si vous souhaitez créer un projet vide sans configurer aucun paramètre.
-
Cliquez sur Créer.
Il se produit une des choses suivantes :
- Si la case Ouvrir de la boîte de dialogue Nouveau projet était cochée (par défaut), le projet s'ouvre.
- Si vous avez décochez la case Ouvrir de la boîte de dialogue Nouveau projet, le projet est ajouté à votre liste de projets. Vous pourrez ouvrir le projet ultérieurement en sélectionnant Ouvrir dans le menu du projet.
-
Une fois le projet ouvert, cliquez sur Appliquer l'opération Replicate aux données.
L'assistant Appliquer l'opération Replicate aux données s'ouvre.
-
Dans l'onglet Général, spécifiez un nom et une description pour la tâche de réplication. Cliquez ensuite sur Suivant.
-
Dans l'onglet Sélectionner une connexion source, sélectionnez une connexion aux données sources. Vous pouvez éventuellement modifier les paramètres de connexion en sélectionnant Modifier dans le menu dans la colonne Actions.
Si vous n'avez pas encore créé de connexion à votre source de données, vous devez en créer une en cliquant sur Créer une connexion dans le coin supérieur droit de l'onglet.
Vous pouvez filtrer la liste de connexions via les filtres à gauche. Il est possible de filtrer les connexions en fonction du type de source, de la passerelle, de l'espace et du propriétaire. Le bouton Tous les filtres au-dessus de la liste de connexions affiche le nombre de filtres en cours. Vous pouvez utiliser ce bouton pour fermer ou ouvrir le panneau Filtres à gauche. Les filtres actuellement actifs sont également indiqués au-dessus de la liste de connexions disponibles.
Vous pouvez également trier la liste en sélectionnant Dernière modification, Dernière création ou Alphabétiquedans la liste déroulante à droite. Cliquez sur la flèche à droite de la liste pour modifier l'ordre de tri.
Une fois que vous avez sélectionnez une connexion de source de données, vous pouvez cliquer sur Tester la connexion dans le coin supérieur droit de l'onglet (recommandé), puis cliquez sur Suivant.
-
Dans l'onglet Sélectionner des jeux de données, sélectionnez des tables et/ou des vues à inclure dans la tâche de réplication. Vous pouvez également utiliser des caractères génériques et créer des règles de sélection, comme décrit à la section Sélection de données à partir d'une base de données.
-
Dans l'onglet Sélectionner une connexion cible, sélectionnez la cible dans la liste de connexions disponibles, puis cliquez sur Suivant. En termes de fonctionnalités, l'onglet est identique à l'onglet Sélectionner une connexion source décrit précédemment.
-
Dans l'onglet Paramètres, vous pouvez modifier les paramètres suivants, puis cliquez sur Suivant.
Mode de réplication
Note InformationsLors de la réplication à partir de sources d'applications SaaS, le mode de réplication Chargement complet est activé par défaut et ne peut pas être désactivé.- Chargement complet : Charge les données des tables sources sélectionnées dans la plateforme cible et crée les tables cibles, si nécessaire. Le chargement complet s'effectue automatiquement lorsque la tâche démarre, mais il peut également être effectué manuellement, si nécessaire.
-
Appliquer les modifications : Maintient les tables cibles à jour en y ajoutant toutes les modifications apportées aux tables sources.
-
Stocker les modifications : Stocke les modifications apportées aux tables sources dans les tables de modifications (une par table source).
Pour plus d'informations, consultez Stocker les modifications.
Lors de l'utilisation de Data Movement gateway, les modifications sont capturées auprès de la source quasiment en temps réel. Si vous travaillez sans Data Movement gateway (en définissant Passerelle de données sur Aucune dans les paramètres de connecteur), les modifications sont capturées en fonction des paramètres du planificateur. Par défaut, la capture des modifications s'effectue toutes les 6 heures. Pour plus d'informations, consultez Planification de tâches sans utiliser Data Movement gateway.
Mode d'application des modifications
Note InformationsLors de la réplication dans des cibles de type entrepôt de données, vous ne pouvez pas sélectionner le mode Appliquer les modifications à utiliser. Pour une efficacité maximale, les modifications seront toujours appliquées en mode Optimisation par lots.Les modifications sont appliquées aux tables cibles via l'une des méthodes suivantes :
- Lot optimisé : Il s'agit de la valeur par défaut. Lorsque cette option est sélectionnée, les modifications sont appliquées par lots. Une action de prétraitement s'effectue pour regrouper les transactions par lots de la manière la plus efficace.
- Transactionnel : Sélectionnez cette option pour appliquer chaque transaction individuellement, dans leur ordre de validation. Dans ce cas, une stricte intégrité référentielle est garantie pour toutes les tables.
Connexion à la zone intermédiaire
Lors de la réplication dans les entrepôts de données répertoriés ci-dessous, vous devez définir une zone intermédiaire. Les données sont traitées et préparées dans la zone intermédiaire avant d'être transférées à l'entrepôt.
Sélectionnez une zone intermédiaire existante ou cliquez sur Créer nouveau pour définir une nouvelle zone intermédiaire et suivez les instructions à la section Connexion au stockage cloud.
Pour modifier les paramètres de connexion, cliquez sur Modifier. Pour tester la connexion (recommandé), cliquez sur Tester la connexion.
Pour des informations sur les zones intermédiaires supportées avec tel ou tel entrepôt de données, consultez la colonne Supporté comme zone intermédiaire à la section Cas d'utilisation des plateformes cibles et versions supportées.
Planification de la réplication
Note InformationsCe paramètre s'applique uniquement lors de l'accès à des sources de données sans Data Movement gateway. Pour des informations sur les avantages de Data Movement gateway et les cas d'utilisation qui la nécessitent, consultez Qlik Data Gateway - Data Movement.-
Répliquer les données tous les : Vous pouvez planifier la fréquence à laquelle capturer les modifications apportées à la source de données et définir une Heure de début et une Date de début. Si les ensembles de données sources supportent CDC (Change Data Capture), seules les modifications apportées aux données sources seront répliquées et appliquées aux tables cibles correspondantes. Si les ensembles de données sources ne supportent pas CDC (par exemple, les Vues), les modifications seront appliquées via l'actualisation de l'ensemble des données sources dans les tables cibles correspondantes. Si certains des ensembles de données sources supportent CDC et d'autres non, deux sous-tâches distinctes seront créées (en supposant que l'option de réplication Appliquer les modifications ou Stocker les modifications soit sélectionnée) : l'une pour actualiser les ensembles de données qui ne supportent pas CDC et l'autre pour capturer les modifications apportées aux ensembles de données qui supportent CDC.
L'assistant de configuration des tâches vous permet de planifier un intervalle basique d'une heure. Après avoir terminé la configuration de la tâche, vous pouvez explorer différentes options de planification, comme décrit dans Planification de tâches sans utiliser Data Movement gateway.
Pour des informations sur les intervalles de planification minimaux en fonction du type de source de données et du niveau d'abonnement, consultez Intervalles de planification minimaux autorisés.
-
L'onglet Récapitulatif affiche visuellement le pipeline de données. Si certains des jeux de données sélectionnés ne supportent pas CDC, deux pipelines apparaîtront : l'un pour la tâche CDC et l'autre pour la tâche Charger. Décidez si vous souhaitez Ouvrir la tâche de données <nom> ou Ne rien faire, puis cliquez sur Créer.
Suivant votre sélection, la tâche s'ouvre ou une liste de projets apparaît.
-
Si vous avez décidé d'ouvrir la tâche, l'onglet Jeux de données indique la structure et les métadonnées des tables sources sélectionnées. Sont concernées toutes les tables répertoriées de manière explicite ainsi que les tables correspondant aux règles de sélection.
Si vous souhaitez ajouter d'autres tables provenant de la source de données, cliquez sur Sélectionner des données sources.
-
Vous pouvez éventuellement modifier les paramètres de tâche comme décrit à la section Paramètres des tâches de réplication de données.
-
Vous pouvez effectuer des transformations sur les jeux de données, filtrer des données ou ajouter des colonnes.
Pour plus d'informations, consultez Gestion des jeux de données.
-
Lorsque vous avez ajouté les transformations souhaitées, vous pouvez valider les jeux de données en cliquant sur Valider les jeux de données. Si la validation échoue, corrigez les erreurs avant de poursuivre.
Pour plus d'informations, consultez Validation et ajustement des jeux de données.
-
Lorsque vous êtes prêt, cliquez sur Préparer pour cataloguer la tâche de données et la préparer pour l'exécution.
-
Lorsque la tâche de données a été préparée, cliquez sur Exécuter.
Pour des informations sur la récupération des tâches et d'autres méthodes d'exécution des tâches, voir Options d'exécution avancées.
-
La tâche de réplication doit maintenant démarrer. Vous pouvez voir sa progression dans Surveiller. Pour plus d'informations, consultez Surveillance d'une tâche de données individuelle
Définition de la priorité de chargement des ensembles de données
Vous pouvez contrôler l'ordre de chargement des ensembles de données de votre tâche de données en attribuant une priorité de chargement à chaque ensemble de données. Cela peut être utile, par exemple, si vous souhaitez charger les ensembles de données plus petits avant les grands.
-
Cliquez sur Priorité de chargement.
-
Sélectionnez une priorité de chargement pour chaque ensemble de données.
La priorité de chargement par défaut est Normale. Les ensembles de données seront chargés dans l'ordre de priorité suivant :
-
La plus élevée
-
Plus élevée
-
Élevée
-
Normale
-
Faible
-
Plus faible
-
La plus faible
Les ensembles de données ayant la même priorité ne sont pas chargés dans un ordre particulier.
-
-
Cliquez sur OK.
Actualisation des métadonnées
Vous pouvez actualiser les métadonnées de la tâche pour les aligner sur les modifications apportées aux métadonnées de la source dans la vue Conception d'une tâche. Pour les applications SaaS qui utilisent Metadata manager, il convient d'actualiser Metadata manager avant de pouvoir actualiser les métadonnées de la tâche de données.
-
Vous pouvez effectuer l'une des opérations suivantes :
-
Cliquez sur ..., puis sur Actualiser les métadonnées pour actualiser les métadonnées de la totalité des jeux de données de la tâche.
-
Cliquez sur ... sur un jeu de données dans Jeux de données, puis sur Actualiser les métadonnées pour actualiser les métadonnées d'un seul jeu de données.
Vous pouvez afficher le statut de l'actualisation des métadonnées sous Actualiser les métadonnées dans la partie inférieure de l'écran. Vous pouvez voir à quel moment les métadonnées ont été actualisées pour la dernière fois en survolant à l'aide du curseur.
-
-
Préparez la tâche de données de sorte à appliquer les modifications.
Une fois la tâche de données préparée et les modifications appliquées, les modifications sont supprimées de Actualiser les métadonnées.
Pour pouvoir propager les modifications, vous devez préparer des tâches de stockage qui consomment cette tâche.
Si une colonne est retirée, une transformation avec des valeurs Null est ajoutée pour garantir que le stockage ne perdra pas de données historiques.
Limitations de l'actualisation des métadonnées
-
Un renommage avec une colonne abandonnée avant cela, dans le même laps de temps, sera traduit en renommage de la colonne abandonnée si elles ont le même type de données et la même longueur de données.
Avant : a b c d
Après : a c1 d
Dans cet exemple, la colonne b a été abandonnée et la colonne c a été renommée c1, et b et c ont le même type de données et la même longueur de données.
Cela sera identifié comme le renommage de la colonne b en c1 et un abandon de la colonne c.
-
Le renommage de la dernière colonne n'est pas reconnu, même si la dernière colonne a été abandonnée et celle d'avant a été renommée.
Avant : a b c d
Après : a b c1
Dans cet exemple, la colonne d a été abandonnée et la colonne c a été renommée c1.
Cela sera identifié comme un abandon de la colonne c et de la colonne d et un ajout de la colonne c1.
-
Les nouvelles colonnes sont supposées être ajoutées à la fin. Si les colonnes sont ajoutées au milieu avec le même type de données que celui de la colonne suivante, elles peuvent être interprétées comme un abandon et un renommage.
Évolution du schéma
L'évolution du schéma vous permet de détecter facilement les modifications structurelles apportées à différentes sources de données, puis de contrôler la manière dont ces modifications seront appliquées à votre tâche. L'évolution du schéma peut être utilisée pour détecter les modifications des DDL qui ont été apportées au schéma des données sources. Vous pouvez également appliquer certaines modifications automatiquement.
Pour chaque type de modification, vous pouvez sélectionner le mode de traitement des modifications dans la section Évolution du schéma des paramètres de tâche. Vous pouvez appliquer la modification, l'ignorer, suspendre la table ou arrêter le traitement de la tâche.
Vous pouvez définir l'action à utiliser pour traiter la modification de DDL pour chaque type de modification. Certaines actions ne sont pas disponibles pour tous les types de modification.
-
Appliquer à la cible
Appliquez les modifications automatiquement.
-
Ignoré
Ignorez les modifications.
-
Suspendre la table
Suspendez la table. La table sera affichée comme en état d'erreur dans Surveiller.
-
Arrêter la tâche
Arrêtez le traitement de la tâche. Cela s'avère utile si vous souhaitez traiter manuellement toutes les modifications du schéma. Cela entraînera également l'arrêt de la planification, à savoir, les exécutions planifiées ne seront pas effectuées.
Les modifications suivantes sont supportées :
-
Ajouter une colonne
-
Renommer la colonne
-
Modifier le type de données de la colonne
-
Abandonner la table
-
Supprimer la colonne
-
Ajouter une table correspondant au modèle de sélection
Si vous avez utilisé une Règle de sélection pour ajouter des jeux de données correspondant à un pattern, les nouvelles tables répondant au pattern seront détectées et ajoutées.
Pour plus d'informations sur les paramètres de tâche, consultez Évolution du schéma.
Vous pouvez également recevoir des notifications sur les modifications gérées par l'évolution du schéma. Pour plus d'informations, consultez Définition de notifications en cas de modifications du fonctionnement.
Limitations de l'évolution du schéma
Les limitations suivantes s'appliquent à l'évolution du schéma :
-
L'évolution du schéma est supportée uniquement si vous utilisez l'opération CDC comme méthode de mise à jour.
-
Si vous avez modifié les paramètres d'évolution du schéma, vous devez préparer de nouveau la tâche.
-
Si vous renommez des tables, l'évolution du schéma n'est pas supportée. Dans ce cas, vous devez actualiser les métadonnées avant de préparer la tâche.
-
Si vous concevez une tâche, vous devez actualiser le navigateur pour recevoir les modifications de l'évolution du schéma. Vous pouvez définir des notifications pour être alerté des modifications.
-
Dans les tâches de dépôt temporaire, l'abandon d'une colonne n'est pas supporté. Si vous abandonnez une colonne et que vous l'ajoutez, cela entraînera une erreur de table.
-
Dans les tâches de dépôt temporaire, une opération d'abandon de table n'entraîne pas l'abandon de la table. Le fait d'abandonner une table, puis d'ajouter une table, ne fera que tronquer l'ancienne table, et il ne sera pas ajouté de nouvelle table.
-
La modification de la longueur d'une colonne n'est pas possible pour toutes les cibles suivant le support dans la base de données cible.
-
Si le nom d'une colonne est modifié, les transformations explicites définies à l'aide de cette colonne ne seront pas prises en compte, car elles sont basées sur le nom de la colonne.
-
Les limitations liées à l'actualisation des métadonnées s'appliquent également à l'évolution du schéma.
Lors de la capture des modifications apportées aux DDL, les limitations suivantes s'appliquent :
-
Lorsqu'une séquence rapide d'opérations se produit dans la base de données source (par exemple, DDL>DML>DDL), Qlik Talend Data Integration peut analyser le journal dans le mauvais ordre, ce qui entraîne des données manquantes ou un comportement imprévisible. Pour minimiser ce risque, le mieux est d'attendre que les modifications soient appliquées à la cible avant d'effectuer l'opération suivante.
Par exemple, lors de la capture des modifications, si une table source est renommée à plusieurs reprises proches l'une de l'autre (et si la deuxième opération réattribue à la table son nom d'origine), il risque de se produire une erreur indiquant que la table existe déjà dans la base de données cible.
- Si vous modifiez le nom d'une table utilisée dans une tâche et que vous arrêtez ensuite la tâche, Qlik Talend Data Integration ne capturera pas les modifications apportées à cette table après la reprise de la tâche.
-
Il n'est pas possible de renommer une table source lorsqu'une tâche est arrêtée.
- La réaffectation des colonnes de clé primaire d'une table n'est pas supportée (et ne sera donc pas écrite dans la table de contrôle de l'historique DDL).
- Lorsque le type de données d'une colonne est modifié et que la (même) colonne est ensuite renommée alors que la tâche est arrêtée, la modification de la DDL apparaîtra dans la table de contrôle Historique DDL sous la forme « Supprimer la colonne, puis « Ajouter une colonne » lors de la reprise de la tâche. Notez que le même comportement peut également se produire en raison d'une latence prolongée.
- Les opérations CREATE TABLE effectuées sur la source alors qu'une tâche est arrêtée seront appliquées à la cible lorsque la tâche reprendra, mais ne seront pas enregistrées sous forme de DDL dans la table de contrôle Historique DDL.
-
Les opérations associées aux modifications des métadonnées (telles que ALTER TABLE (modifier la table), reorg (réorganiser), la reconstruction d'un index en cluster, etc.) peuvent entraîner un comportement imprévisible si elles sont effectuées :
-
Lors d'une opération Chargement complet
-OU-
-
Entre l'horodatage Démarrer le traitement des modifications depuis et l'heure actuelle (c'est-à-dire le moment où l'utilisateur clique sur OK dans la boîte de dialogue Options d'exécution avancées).
Exemple :
SI :
L'heure spécifiée pour Démarrer le traitement des modifications depuis est 10h00
ET :
Une colonne nommée Âge a été ajoutée à la table Employés à 10h10
ET :
L'utilisateur clique sur OK dans la boîte de dialogue Options d'exécution avancées à 10h15
ALORS :
Les modifications qui se sont produites entre 10h00 et 10h10 peuvent entraîner des erreurs d'opération CDC.
Note InformationsDans l'un des cas ci-dessus, la ou les tables concernées doivent être actualisées pour que les données puissent être correctement envoyées (déplacé) à la cible.
-
- L'instruction DDL
ALTER TABLE ADD/MODIFY <column> <data_type> DEFAULT <>
ne réplique pas la valeur par défaut sur la cible et la colonne nouvelle/modifiée est définie sur NULL. Notez que cela peut se produire même si la DDL qui a ajouté/modifié la colonne a été exécutée dans le passé. Si la colonne nouvelle/modifiée est nullable, le point de terminaison source met à jour toutes les lignes de la table avant d'enregistrer la DDL à proprement parler. Par conséquent, Qlik Talend Data Integration capture les modifications, mais ne met pas la cible à jour. Comme la colonne nouvelle/modifiée est définie sur NULL, si la table cible n'a pas de clé primaire/d'index unique, les mises à jour ultérieures généreront un message « zéro ligne affectée ». -
Les modifications apportées aux colonnes de précision TIMESTAMP et DATE ne seront pas capturées.
Gestion des modifications qui ne sont pas automatiquement appliquées
Cette section explique comment gérer les modifications qui ne peuvent pas être appliquées à la cible, c'est-à-dire lorsque l'action est Ignorer, Suspendre ou Arrêter la tâche.
Modification de DDL | Pour appliquer la modification | Pour préserver l'état actuel |
---|---|---|
Ajouter une colonne | Actualisez les métadonnées, préparez la tâche, puis exécutez-la. | Aucune action requise |
Créer une table | Actualisez les métadonnées, préparez la tâche, puis exécutez-la. | Aucune action requise |
Modifier le type de données de la colonne |
Vérifiez les limitations. Si aucune limitation ne s'applique : Actualisez les métadonnées, préparez la tâche, puis exécutez-la. |
La conservation de l'état actuel n'est pas toujours supportée. Solutions de contournement possibles :
|
Renommer la table |
Vérifiez les limitations. Si aucune limitation ne s'applique : Préparez la tâche, puis exécutez-la. |
Définissez une règle de renommage explicite de l'ancien nom. |
Renommer la colonne |
Vérifiez les limitations. Si aucune limitation ne s'applique : Actualisez les métadonnées, préparez la tâche, puis exécutez-la. |
Actualisez les métadonnées, puis définissez une règle de renommage explicite de l'ancien nom. |
Limitations et considérations générales lors de la réplication de données
Les transformations sont soumises aux limitations suivantes :
- Les transformations ne sont pas supportées pour les colonnes dont les langues s'écrivent de droite à gauche.
-
Aucune transformation ne peut être effectuée sur des colonnes dont le nom contient des caractères spéciaux (par ex. #, \, /, -).
- La seule transformation supportée pour les types de données LOB/CLOB est le dépôt de la colonne sur la cible.
- L'utilisation d'une transformation pour renommer une colonne, puis l'ajout d'une nouvelle colonne portant le même nom ne sont pas supportés.
La modification de la nullabilité n'est pas supportée sur les colonnes déplacées, soit en la modifiant directement, soit en utilisant une règle de transformation. En revanche, les nouvelles colonnes créées dans la tâche sont nullables par défaut.