Escribir datos en la base de datos de Firestore

En esta página se describe la segunda fase del proceso de migración, en la que se configura una canalización de Dataflow y se inicia una transferencia de datos simultánea desde el segmento de Cloud Storage a la base de datos de destino de Firestore con compatibilidad con MongoDB. Esta operación se ejecutará simultáneamente con el flujo de Datastream.

Iniciar el flujo de procesamiento de Dataflow

El siguiente comando inicia una nueva canalización de Dataflow con un nombre único.

DATAFLOW_START_TIME="$(date +'%Y%m%d%H%M%S')"

gcloud dataflow flex-template run "dataflow-mongodb-to-firestore-$DATAFLOW_START_TIME" \
--template-file-gcs-location gs://dataflow-templates-us-central1/latest/flex/Cloud_Datastream_MongoDB_to_Firestore \
--region $LOCATION \
--num-workers $NUM_WORKERS \
--temp-location $TEMP_OUTPUT_LOCATION \
--additional-user-labels "" \
--parameters inputFilePattern=$INPUT_FILE_LOCATION,\
inputFileFormat=avro,\
fileReadConcurrency=10,\
connectionUri=$FIRESTORE_CONNECTION_URI,\
databaseName=$FIRESTORE_DATABASE_NAME,\
shadowCollectionPrefix=shadow_,\
batchSize=500,\
deadLetterQueueDirectory=$DLQ_LOCATION,\
dlqRetryMinutes=10,\
dlqMaxRetryCount=500,\
processBackfillFirst=false,\
useShadowTablesForBackfill=true,\
runMode=regular,\
directoryWatchDurationInMinutes=20,\
streamName=$DATASTREAM_NAME,\
stagingLocation=$STAGING_LOCATION,\
autoscalingAlgorithm=THROUGHPUT_BASED,\
maxNumWorkers=$MAX_WORKERS,\
workerMachineType=$WORKER_TYPE

Para obtener más información sobre cómo monitorizar la canalización de Dataflow, consulta Solución de problemas.

Siguientes pasos

Consulta el artículo sobre cómo migrar el tráfico a Firestore.