Ajout d'une extraction pour MongoDB
L'extraction est un processus qui s'exécute sur la connexion de la source de données source et extrait ou capture des données. Apprenez à ajouter une extraction pour MongoDB.
Ajout d'une extraction (26ai)
Avant de commencer, vérifiez que vous :
-
Configurez un ensemble de répliques MongoDB :
-
OCI GoldenGate for Big Data utilise le journal des opérations (oplog) pour lire les enregistrements de capture des données de modification (CDC). L'oplog est une collection plafonnée dans MongoDB qui conserve un enregistrement non simultané de toutes les opérations qui modifient la base de données. Les fichiers Oplog sont créés lorsqu'un jeu de répliques est activé dans MongoDB.
-
MongoDB Atlas est préconfiguré avec un ensemble de réplication. Pour les déploiements MongoDB sur site, vous devez configurer et déployer manuellement un ensemble de réplication pour activer les fonctionnalités oplog et CDC. Pour MongoDB on-premise, vous devez déployer un ensemble de répliques.
-
-
Utilisez MongoDB version 3.6 ou ultérieure.
-
Ayez la prise en charge d'OCI GoldenGate pour capturer les opérations suivantes :
INSERT,UPDATE,DELETE.
Afin d'ajouter une extraction pour MongoDB, procédez comme suit :
-
In the OCI GoldenGate deployment console navigation menu, select Extracts.
-
Sur la page Extractions, sélectionnez Ajouter une extraction.
-
Dans le panneau Ajouter une extraction, sur la page Informations sur l'extraction, renseignez les champs suivants selon vos besoins, puis sélectionnez Suivant :
-
Entrez un nom de processus de 8 caractères maximum.
-
Entrez une description (facultatif) pour vous aider à distinguer ce processus des autres.
-
Sélectionnez une source dans la liste déroulante.
-
-
Sur la page Options d'extraction, renseignez les champs suivants selon vos besoins, puis sélectionnez Suivant :
-
Pour Extract Trail :
-
Entrez un nom pour le processus d'extraction.
-
Entrez un nom de sous-répertoire pour définir un emplacement personnalisé pour le fichier trace généré.
-
Entrez Séquence de trace pour définir le numéro de début des fichiers de trace.
-
Entrez une taille de traces pour définir la taille maximale du fichier de traces généré.
-
Sélectionnez un profil de cryptage. Le profil Portefeuille local est sélectionné par défaut si aucun profil de cryptage n'a été créé.
-
Sélectionnez un algorithme de cryptage :
-
NONE
-
AES-256
-
AES-192
-
AES-128
-
-
-
Pour Informations d'identification source, sélectionnez les éléments suivants :
-
Domaine
-
Un alias
-
Quand et où commencer
-
-
-
Sur la page Options gérées, renseignez les champs facultatifs suivants selon vos besoins, puis sélectionnez Suivant :
-
Nom de profil
-
Critique pour l'état du déploiement
-
Démarrage automatique
-
Redémarrage automatique
Remarque : l'ajout d'un profil et la configuration des options de démarrage et de redémarrage automatiques permettent au déploiement de redémarrer automatiquement après une interruption du réseau. Pour en savoir plus, reportez-vous à Configuration de processus gérés.
-
-
Dans la page Parameter File, mettez à jour le mapping source avec
TABLE source.*;Remarque : Il s'agit du mapping base de données/collecte source.
TABLE *.*;permet d'extraire le processus de toutes les bases de données/collections. -
Sélectionnez Créer et exécuter pour créer et démarrer l'extraction. Si vous sélectionnez Créer, vous pouvez démarrer manuellement l'extraction ultérieurement à partir de la page Extractions.
Créer une extraction (21c)
-
Dans la console de déploiement d'OCI GoldenGate, vérifiez que vous êtes sur la page d'aperçu du service d'administration, puis sélectionnez Ajouter un processus Extract (icône Plus).
-
Sur la page Ajouter une extraction, sélectionnez l'une des valeurs suivantes dans le champ Type d'extraction, puis cliquez sur Suivant :
-
Chargement initial
-
Capture de données de modification
-
-
Sur la page Options d'extraction, renseignez les champs comme suit, puis sélectionnez Suivant :
-
Dans Nom de processus, entrez le nom de l'extraction.
-
Pour Alias de connexion, sélectionnez l'alias de connexion dans la liste déroulante.
-
Pour Source, sélectionnez Fichier.
-
Dans Nom de fichier, entrez au moins trois caractères pour le nom de fichier.
-
(Facultatif) Sous Options gérées, vous pouvez configurer les éléments suivants :
-
Nom de profil
-
Démarrage automatique
-
Redémarrage automatique
Remarque : l'ajout d'un profil et la configuration des options de démarrage et de redémarrage automatiques permettent au déploiement de redémarrer automatiquement après une interruption du réseau. Pour plus d'informations, reportez-vous à Configuration des processus gérés.
-
-
-
Dans la page Parameter File, mettez à jour le mapping source avec
TABLE source.*;Remarque : Il s'agit du mapping base de données/collecte source.
TABLE *.*;permet d'extraire le processus de toutes les bases de données/collections. -
Sélectionnez Créer et exécuter.
Vous revenez à la page de présentation des services d'administration. Sélectionnez le nom de l'extraction pour afficher les détails et les états de l'extraction.
Problèmes recensés
Echec des réplications lors de l'utilisation du fichier trace de l'extraction MongoDB avec BINARY_JSON_FORMAT
Lorsqu'une réplication utilise un fichier trace généré à partir d'une extraction MongoDB avec BINARY_JSON_FORMAT dans le fichier de paramètres d'extraction, la réplication échoue avec l'erreur suivante :
ERROR 2023-08-04 17:13:13.000421 [main] - Unable to decode column 0 : Input length = 1
java.nio.charset.MalformedInputException: Input length = 1 at
java.nio.charset.CoderResult.throwException(CoderResult.java:281) ~[?:1.8.0_311]at java.nio.charset.CharsetDecoder.decode(CharsetDecoder.java:816) ~[?:1.8.0_311] at
oracle.goldengate.datasource.UserExitDataSource.createColumnValue(UserExitDataSource.java:1106)
[ggdbutil-21.9.0.0.3.001.jar:21.9.0.0.3.001] Exception in thread "main"
oracle.goldengate.util.GGException: Unable to decode column 0 : Input length = 1 at
oracle.goldengate.datasource.UserExitDataSource.createColumnValue(UserExitDataSource.java:1203)
Solution de contournement : lorsque BINARY_JSON_FORMAT est enlevé des paramètres d'extraction, le processus Replicat s'exécute correctement et les documents sont représentés au format JSON étendu.