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

Pourquoi mongodump ne sauvegarde pas les index ?

mongodump crée un export binaire des données d'une base de données MongoDB (au format BSON). L'index des définitions sont sauvegardés dans <dbname>.metadata.json fichiers, donc mongorestore peut recréer les données et les index d'origine.

Il y a deux raisons principales pour lesquelles les index réels ne peuvent pas être sauvegardés avec mongodump :

  • Les index pointent vers des emplacements dans les fichiers de données. Les fichiers de données n'existent pas si vous exportez uniquement les documents dans les fichiers de données (plutôt que de prendre une copie complète des fichiers de données).

  • Le format des index sur le disque est spécifique au moteur de stockage, alors que mongodump est conçu pour être indépendant du moteur de stockage.

Si vous souhaitez une sauvegarde complète des données et des index, vous devez sauvegarde en copiant les fichiers de données sous-jacents (généralement en utilisant le système de fichiers ou des instantanés EBS). Il s'agit d'une option plus courante pour les déploiements plus importants, comme mongodump nécessite la lecture de toutes les données dans le mongod processus (qui expulsera une partie de votre ensemble de travail si votre base de données est plus grande que la mémoire).