MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Exportez les données JSON et chargez-les dans une base de données relationnelle

nous avons notre base de données mongo qui stocke les données JSON. Nous voulions migrer les données vers Redshift à des fins d'interrogation.

Nous avons utilisé mongoexport csv pour créer un csv à partir de la table mongo et l'avons téléchargé sur S3. Nous avons créé le schéma relationnel correspondant dans Redshift et utilisé des commandes de copie pour charger ces données csv de s3 vers redshift.

Nous pouvons utiliser java apis pour interroger mongo et créer et télécharger csv sur s3. La même chose peut être chargée en redshift.

Le vrai problème est que puisque nous utilisons mongo (json) ou NoSQL, nous pouvons avoir un nombre différent de colonnes pour un objet donné qui appartient à la même table (comme nous JSON), mais dans Redshift, nous avons un nombre fixe de colonnes par table. Dans de tels cas, vous besoin de créer toutes les colonnes possibles et de charger des données. Pour les objets qui n'ont pas toutes les colonnes, nous pouvons leur attribuer des valeurs nulles.