Importar do banco de dados Mongo de origem
Nesta página, descrevemos a primeira etapa do processo de migração, em que você usa um stream do Datastream para capturar o conteúdo do banco de dados de origem compatível com o MongoDB e transferi-lo para um bucket do Cloud Storage.
Criar arquivos de configuração YAML para o stream
Além das flags de linha de comando comuns, a criação de um fluxo exige dois arquivos de configuração no formato YAML:
O arquivo
mongo_source_config.yaml
configura a seleção de recursos específicos para migração, como o nome do banco de dados. Os parâmetros de conectividade do Mongo, como nome do host, nome de usuário e senha, são todas propriedades do perfil de conexão. No entanto, o banco de dados (e qualquer coleção específica dentro dele) é uma propriedade do fluxo.O arquivo
gcs_dst_config.yaml
configura o posicionamento dos dados no Cloud Storage. O bucket do Cloud Storage e o caminho raiz dentro do bucket são propriedades do perfil de conexão. No entanto, o formato e o posicionamento dos dados na estrutura do bucket do Cloud Storage são uma propriedade do fluxo.
Os exemplos de comando a seguir criam esses arquivos e os preenchem com valores das variáveis de ambiente que você definiu anteriormente. Como alternativa, crie esses arquivos em qualquer editor de texto e substitua 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 todo o conteúdo de $MONGODB_DATABASE_NAME para
migração. Também é possível limitar a migração a coleções específicas no banco 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
Criar um stream do Datastream
Em seguida, crie um stream que conecte 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 como monitorar a criação de streams do Datastream, consulte Solução de problemas.
Ativar o stream do Datastream
Por fim, ative o novo stream.
À medida que o stream começa a extrair dados e transmitir mudanças da fonte do Mongo, é possível observar novos diretórios e arquivos criados no bucket do Cloud Storage, no caminho configurado no perfil de conexão e no stream.
Para ativar o stream, execute o seguinte comando:
gcloud datastream streams update "$DATASTREAM_NAME" \
--location="$LOCATION" \
--state=RUNNING \
--update-mask=state
A seguir
Acesse Gravar dados no banco de dados de destino.