Importa dal database Mongo di origine
Questa pagina descrive la prima fase del processo di migrazione in cui utilizzi uno stream Datastream per acquisire i contenuti del database di origine compatibile con MongoDB e trasferirli in un bucket Cloud Storage.
Crea file di configurazione YAML per lo stream
Oltre ai normali flag della riga di comando, la creazione di uno stream richiede due file di configurazione in formato YAML:
Il file
mongo_source_config.yaml
configura la selezione di risorse specifiche per la migrazione, ad esempio il nome del database. I parametri di connettività Mongo, come nome host, nome utente e password, sono tutte proprietà del profilo di connessione. Tuttavia, il database (e qualsiasi raccolta specifica al suo interno) è una proprietà dello stream.Il file
gcs_dst_config.yaml
configura il posizionamento dei dati all'interno di Cloud Storage. Il bucket Cloud Storage e il percorso radice all'interno del bucket sono proprietà del profilo di connessione. Tuttavia, il formato e il posizionamento dei dati all'interno della struttura del bucket Cloud Storage sono una proprietà dello stream.
I seguenti esempi di comandi creano questi file e li compilano con i valori delle variabili di ambiente che hai impostato in precedenza. In alternativa, puoi creare questi file in qualsiasi editor di testo e sostituire i valori manualmente.
echo "$(cat <<EOF
includeObjects:
databases:
- database: ${MONGODB_DATABASE_NAME}
EOF
)" > mongo_source_config.yaml
echo "$(cat <<EOF
path: "/${GCS_BUCKET_SUB_PATH}"
avroFileFormat: {}
EOF
)" > gcs_dst_config.yaml
L'esempio precedente configura l'intero contenuto di $MONGODB_DATABASE_NAME per la
migrazione. È anche possibile limitare la migrazione a raccolte specifiche
all'interno del database. Ad esempio, per eseguire la migrazione solo delle raccolte users
e
chats
, utilizza quanto segue:
includeObjects:
databases:
- database: ${MONGODB_DATABASE_NAME}
collections:
- collection: users
- collection: chats
Crea uno stream Datastream
Successivamente, crea un flusso che colleghi l'origine e la destinazione:
gcloud datastream streams create "$DATASTREAM_NAME" \
--display-name="$DATASTREAM_NAME" \
--location="$LOCATION" \
--source="$SRC_CONNECTION_PROFILE_NAME" \
--destination="$DST_CONNECTION_PROFILE_NAME" \
--mongodb-source-config=./mongo_source_config.yaml \
--gcs-destination-config=./gcs_dst_config.yaml \
--backfill-all
Per ulteriori informazioni sul monitoraggio della creazione dello stream Datastream, consulta la sezione Risoluzione dei problemi.
Attiva lo stream Datastream
Infine, attiva il nuovo stream.
Quando il flusso inizia a estrarre i dati e a trasmettere in streaming le modifiche dall'origine MongoDB, puoi osservare le nuove directory e i nuovi file creati nel bucket Cloud Storage, nel percorso configurato nel profilo di connessione e nel flusso.
Per attivare lo stream, esegui questo comando:
gcloud datastream streams update "$DATASTREAM_NAME" \
--location="$LOCATION" \
--state=RUNNING \
--update-mask=state
Passaggi successivi
Vai a Scrivere i dati nel database di destinazione.