Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Dumping, ripristino, importazione ed esportazione dei dati
Puoi utilizzare le mongoimport utilitàmongodump, mongorestoremongoexport, e per spostare i dati in entrata e in uscita dal tuo cluster Amazon DocumentDB. In questa sezione viene descritto lo scopo di ognuno di questi strumenti e configurazioni per migliorare le prestazioni.
Requisiti di versione di MongoDB Database Tools
Usa MongoDB Database Tools fino alla versione 100.11.0 inclusa per Amazon DocumentDB. Per scaricarlo, consulta le versioni di MongoDB Database Tools sul sito Web di MongoDB.
mongodump
L'utilità mongodump crea un backup binario (BSON) di un database MongoDB. Lo mongodump strumento è il metodo preferito per scaricare i dati dalla distribuzione MongoDB di origine quando si cerca di ripristinarli nel cluster Amazon DocumentDB, grazie all'efficienza delle dimensioni ottenuta archiviando i dati in formato binario.
A seconda delle risorse disponibili sull'istanza o sulla macchina che stai utilizzando per eseguire il comando, puoi velocizzare il processo aumentando il numero di raccolte parallele scaricate rispetto a quella mongodump predefinita 1 utilizzando l'opzione. --numParallelCollections Una buona regola empirica è iniziare con un lavoratore per vCPU sull'istanza principale del cluster Amazon DocumentDB.
Esempio di utilizzo
Di seguito è riportato un esempio di utilizzo dell'mongodumputilità nel cluster Amazon DocumentDB,. sample-cluster
mongodump --ssl \ --host="sample-cluster.node.us-east-1.docdb.amazonaws.com:27017" \ --collection=sample-collection \ --db=sample-database \ --out=sample-output-file \ --numParallelCollections 4 \ --username=sample-user \ --password=abc0123 \ --sslCAFile global-bundle.pem
mongorestore
L'utilità mongorestore consente di ripristinare un backup binario (BSON) di un database creato con l'utilità mongodump. Puoi utilizzare l'opzione --numInsertionWorkersPerCollection per migliorare le prestazioni di ripristino aumentando il numero di worker per ogni raccolta durante il ripristino (il valore predefinito è 1). Una buona regola empirica è iniziare con un lavoratore per vCPU sull'istanza principale del cluster Amazon DocumentDB.
Esempio di utilizzo
Di seguito è riportato un esempio di utilizzo dell'mongorestoreutilità nel cluster Amazon DocumentDB,. sample-cluster
mongorestore --ssl \ --host="sample-cluster.node.us-east-1.docdb.amazonaws.com:27017" \ --username=sample-user \ --password=abc0123 \ --sslCAFile global-bundle.pem <fileToBeRestored>
mongoexport
Lo mongoexport strumento esporta i dati in Amazon DocumentDB in formati di file JSON, CSV o TSV. Lo strumento mongoexport è il metodo preferito per esportare i dati che devono essere leggibili dall'uomo o dal computer.
Nota
mongoexport non supporta direttamente le esportazioni parallele. Tuttavia, è possibile aumentare le prestazioni eseguendo più attività mongoexport contemporaneamente per raccolte diverse.
Esempio di utilizzo
Di seguito è riportato un esempio di utilizzo dello mongoexport strumento nel cluster Amazon DocumentDB,. sample-cluster
mongoexport --ssl \ --host="sample-cluster.node.us-east-1.docdb.amazonaws.com:27017" \ --collection=sample-collection \ --db=sample-database \ --out=sample-output-file \ --username=sample-user \ --password=abc0123 \ --sslCAFile global-bundle.pem
mongoimport
Lo mongoimport strumento importa il contenuto dei file JSON, CSV o TSV in un cluster Amazon DocumentDB. È possibile utilizzare il parametro -–numInsertionWorkers per parallelizzare e velocizzare l'importazione (il valore predefinito è 1).
Esempio di utilizzo
Di seguito è riportato un esempio di utilizzo dello mongoimport strumento nel cluster Amazon DocumentDB,. sample-cluster
mongoimport --ssl \ --host="sample-cluster.node.us-east-1.docdb.amazonaws.com:27017" \ --collection=sample-collection \ --db=sample-database \ --file=<yourFile> \ --numInsertionWorkers 4 \ --username=sample-user \ --password=abc0123 \ --sslCAFile global-bundle.pem
Tutorial
Il seguente tutorial descrive come utilizzare le mongoimport utilitàmongodump, mongorestoremongoexport, e per spostare i dati in entrata e in uscita da un cluster Amazon DocumentDB.
-
Prerequisiti: prima di iniziare, assicurati che il cluster Amazon DocumentDB sia predisposto e di avere accesso a un'istanza Amazon EC2 nello stesso VPC del cluster. Per ulteriori informazioni, consulta Connettiti tramite Amazon EC2.
Per poter utilizzare gli strumenti di utilità Mongo, è necessario disporre del pacchetto mongodb-org-tools installato nell'istanza EC2, come indicato di seguito.
sudo yum install mongodb-org-tools-4.0.18Poiché Amazon DocumentDB utilizza la crittografia Transport Layer Security (TLS) per impostazione predefinita, devi anche scaricare il file dell'autorità di certificazione (CA) di Amazon RDS per utilizzare mongo shell per la connessione, come segue.
wget https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem -
Scarica dati di esempio: per questo tutorial, scaricherai alcuni dati di esempio che contengono informazioni sui ristoranti.
wget https://raw.githubusercontent.com/ozlerhakan/mongodb-json-files/master/datasets/restaurant.json -
Importa i dati di esempio in Amazon DocumentDB: poiché i dati sono in un formato JSON logico, utilizzerai l'
mongoimportutilità per importare i dati nel tuo cluster Amazon DocumentDB.mongoimport --ssl \ --host="tutorialCluster.amazonaws.com:27017" \ --collection=restaurants \ --db=business \ --file=restaurant.json \ --numInsertionWorkers 4 \ --username=<yourUsername> \ --password=<yourPassword> \ --sslCAFile global-bundle.pem -
Scarica i dati con
mongodump: ora che hai dei dati nel tuo cluster Amazon DocumentDB, puoi eseguire un dump binario di tali dati utilizzando l'utilità.mongodumpmongodump --ssl \ --host="tutorialCluster.us-east-1.docdb.amazonaws.com:27017"\ --collection=restaurants \ --db=business \ --out=restaurantDump.bson \ --numParallelCollections 4 \ --username=<yourUsername> \ --password=<yourPassword> \ --sslCAFile global-bundle.pem -
Elimina la
restaurantsraccolta: prima di ripristinare larestaurantsraccolta nelbusinessdatabase, devi prima eliminare la raccolta già esistente in quel database, come segue.use businessdb.restaurants.drop() -
Ripristina i dati con
mongorestore: con il dump binario dei dati di Step 3, ora puoi utilizzare l'mongorestoreutilità per ripristinare i tuoi dati nel tuo cluster Amazon DocumentDB.mongorestore --ssl \ --host="tutorialCluster.us-east-1.docdb.amazonaws.com:27017" \ --numParallelCollections 4 \ --username=<yourUsername> \ --password=<yourPassword> \ --sslCAFile global-bundle.pem restaurantDump.bson -
Esporta i dati utilizzando
mongoexport: per completare il tutorial, esporta i dati dal tuo cluster nel formato di un file JSON, non diverso dal file che hai importato nel passaggio 1.mongoexport --ssl \ --host="tutorialCluster.node.us-east-1.docdb.amazonaws.com:27017" \ --collection=restaurants \ --db=business \ --out=restaurant2.json \ --username=<yourUsername> \ --password=<yourPassword> \ --sslCAFile global-bundle.pem -
Convalida: puoi verificare che l'output della Fase 5 produca lo stesso risultato della Fase 1 con i seguenti comandi.
wc -l restaurant.jsonOutput da questo comando:
2548 restaurant.jsonwc -l restaurant2.jsonOutput da questo comando:
2548 restaurant2.json