Importe a partir da base de dados Mongo de origem
Esta página descreve a primeira fase do processo de migração em que usa um fluxo do Datastream para capturar o conteúdo da sua base de dados de origem compatível com o MongoDB e transferi-lo para um contentor do Cloud Storage.
Crie ficheiros de configuração YAML para a stream
Além das flags de linha de comandos habituais, a criação de uma stream requer dois ficheiros de configuração no formato YAML:
O ficheiro
mongo_source_config.yaml
configura a seleção de recursos específicos para a migração, como o nome da base de dados. Os parâmetros de conetividade do Mongo, como o nome de anfitrião, o nome de utilizador e a palavra-passe, são todas propriedades do perfil de ligação. No entanto, a base de dados (e quaisquer coleções específicas nessa base de dados) são uma propriedade da stream.O ficheiro
gcs_dst_config.yaml
configura o posicionamento dos dados no Cloud Storage. O contentor do Cloud Storage e o caminho raiz no contentor são propriedades do perfil de associação. No entanto, o formato dos dados e o posicionamento dos dados na estrutura do contentor do Cloud Storage são uma propriedade da stream.
Os exemplos de comandos seguintes criam estes ficheiros e preenchem-nos com valores das variáveis de ambiente que definiu anteriormente. Em alternativa, pode criar estes ficheiros em qualquer editor de texto e substituir os valores 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
O exemplo anterior configura o conteúdo completo de $MONGODB_DATABASE_NAME para a migração. Também é possível limitar a migração a coleções específicas na base de dados. Por exemplo, para migrar apenas as coleções users
e chats
, use o seguinte:
includeObjects:
databases:
- database: ${MONGODB_DATABASE_NAME}
collections:
- collection: users
- collection: chats
Crie uma stream do Datastream
Em seguida, crie uma stream que associe a origem e o destino:
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
Para mais informações sobre a monitorização da criação do fluxo de dados, consulte a secção Resolução de problemas.
Ative a stream de dados
Por fim, ative a nova stream.
À medida que a stream começa a extrair dados e a transmitir alterações da origem do Mongo, pode observar novos diretórios e ficheiros criados no contentor do Cloud Storage, no caminho configurado no perfil de ligação e na stream.
Para ativar a stream, execute o seguinte comando:
gcloud datastream streams update "$DATASTREAM_NAME" \
--location="$LOCATION" \
--state=RUNNING \
--update-mask=state
O que se segue?
Prossiga para Escrever dados na base de dados de destino.