Todos os produtos
Search
Central de documentação

Lindorm:Importar dados do MongoDB

Última atualização: Jul 29, 2026

O DataWorks é uma plataforma como service (PaaS) da Alibaba Cloud compatível com diversos mecanismos de computação e armazenamento. Este tópico descreve como usar o DataWorks para migrar dados offline do ApsaraDB for MongoDB para o LindormTable.

Informações básicas

Para obter mais informações sobre o DataWorks, consulte What is DataWorks?.

Observações de uso

Ao migrar dados offline do ApsaraDB for MongoDB para o LindormTable, achate os dados JSON aninhados do MongoDB em uma estrutura horizontal. Esse processo não envolve transformação de dados.

Nota

Se precisar transformar dados durante a migração, como aplicar um hash MD5 a uma chave primária nos dados do MongoDB, siga estas etapas:

  1. Use o DataWorks para migrar os dados do ApsaraDB for MongoDB para o MaxCompute.

  2. Execute instruções SQL no MaxCompute para processar os dados.

  3. Use o DataWorks para migrar os dados processados do MaxCompute para o LindormTable.

Pré-requisitos

Antes de migrar dados offline do ApsaraDB for MongoDB para o LindormTable, conclua as etapas preparatórias a seguir.

  • Prepare os dados no ApsaraDB for MongoDB. O código a seguir mostra um documento de exemplo:

    {
       "id" : ObjectId("624573dd7c0e2eea4cc8****"),
       "title" : "MongoDB Tutorial",
       "description" : "MongoDB is a NoSQL database",
       "by" : "Beginner's Guide",
       "url" : "http://www.runoob.com",
       "map" : {
            "a" : "mapa",
            "b" : "mapb"
        },
       "likes" : 100
    }
  • Prepare o esquema da tabela no LindormTable. O código a seguir apresenta um esquema de exemplo:

    CREATE TABLE t1(title varchar, desc varchar, by1 varchar, url varchar, a varchar, b varchar, likes int, primary key(title));
  • Configure uma tarefa do DataX usando o service Data Integration do DataWorks. Para mais informações, consulte Configure a DataX task by using DataWorks.

Procedimento

  1. Configure uma source de dados do ApsaraDB for MongoDB no console do DataWorks. Para mais informações, consulte Configure an ApsaraDB for MongoDB data source.

  2. Configure uma tarefa de sincronização em lote usando o editor de código. Para mais informações, consulte Configure a batch synchronization task in the code editor.

    1. Crie um workflow.

      1. Acesse o console do DataWorks.

      2. No painel de navegação à esquerda, clique em Workspaces.

      3. Selecione a região onde seu workspace está localizado. Na coluna Actions do workspace desejado, escolha Shortcuts > Data Development.

      4. Na página Data Development, passe o mouse sobre o ícone 新建 e clique em Create Workflow.

      5. Na caixa de diálogo Create Workflow, insira um Workflow Name e uma Description.

        Nota

        O nome do workflow deve ter no máximo 128 caracteres e conter apenas letras maiúsculas, letras minúsculas, dígitos, sublinhados (_) e pontos (.).

      6. Clique em Create.

    2. Crie um nó de sincronização em lote.

      1. Expanda o workflow e clique com o botão direito em Data Integration.

      2. Escolha Create Node > Batch Synchronization.

      3. Na caixa de diálogo Create Node, insira um Name para o nó.

        Nota

        O nome do nó deve ter no máximo 128 caracteres e conter apenas letras maiúsculas, letras minúsculas, dígitos, sublinhados (_) e pontos (.).

      4. Clique em Submit.

    3. Configure o reader e o writer.

      1. Após criar o nó de sincronização em lote, clique no ícone Script Conversion (</>) na barra de ferramentas da página de configuração da tarefa de sincronização em lote.

      2. Na caixa de diálogo exibida, clique em Confirm para acessar o editor de código.

      3. O editor de código gera automaticamente uma configuração básica de reader. Configure manualmente as sources de dados do reader e do writer e especifique as tabelas a sincronizar. O código a seguir apresenta uma configuração de exemplo:

        Nota
        • Para obter mais informações sobre os parâmetros do MongoDB Reader, consulte MongoDB Reader.

        • Para obter mais informações sobre os parâmetros do Lindorm Writer, consulte Lindorm Writer.

        {
            "type": "job",
            "version": "2.0",
            "steps": [
                {
                    "stepType": "mongodb",
                    "parameter": {
                        "datasource": "test_mongo",   // The name of the ApsaraDB for MongoDB data source.
                        "column": [
                            {
                                "name": "title",
                                "type": "string"
                            },
                            {
                                "name": "description",
                                "type": "string"
                            },
                            {
                                "name": "by",
                                "type": "string"
                            },
                            {
                                "name": "url",
                                "type": "string"
                            },
                            {
                                "name": "map.a",
                                "type": "document.string"
                            },
                            {
                                "name": "map.b",
                                "type": "document.string"
                            },
                            {
                                "name": "likes",
                                "type": "int"
                            }
                        ],
                        "collectionName": "testdatax"
                    },
                    "name": "Reader",
                    "category": "reader"
                },
                {
                    "stepType": "lindorm",
                    "parameter": {
                        "configuration":  {
                            "lindorm.client.seedserver": "ld-xxxx-proxy-lindorm.lindorm.rds.aliyuncs.com:30020",
                            "lindorm.client.username": "root",
                            "lindorm.client.namespace": "test",
                            "lindorm.client.password": "root"
                        },
                        "nullMode": "skip",
                        "datasource": "",
                        "writeMode": "api",
                        "envType": 1,
                        "columns": [
                            "title",
                            "desc",
                            "by",
                            "url",
                            "a",
                            "b",
                            "likes"
                        ],
                        "dynamicColumn": "false",
                        "table": "t1",
                        "encoding": "utf8"
                    },
                    "name": "Writer",
                    "category": "writer"
                }
            ],
            "setting": {
                "executeMode": null,
                "errorLimit": {
                    "record": ""
                },
                "speed": {
                    "concurrent": 2,
                    "throttle": false
                }
            },
            "order": {
                "hops": [
                    {
                        "from": "Reader",
                        "to": "Writer"
                    }
                ]
            }
        }
      4. Salve a configuração e clique no ícone 运行按钮 no canto superior esquerdo do editor de código. Visualize o progresso da migração de dados na aba Runtime Log.