Todos os produtos
Search
Central de documentação

:Migrar dados do OSS

Última atualização: Jun 28, 2026

Use o Hadoop DistCp para copiar dados de um bucket do Object Storage Service (OSS) para um banco de dados de arquivos Lindorm em um único job MapReduce.

Pré-requisitos

Antes de começar, verifique se você tem:

Instale o JindoFS SDK

Instale o JindoFS SDK em cada nó do cluster Hadoop antes de executar a migração.

  1. Baixe o arquivo jindofs-sdk.jar no repositório do JindoFS SDK e copie-o para o diretório de bibliotecas do Hadoop:

    cp ./jindofs-sdk-*.jar ${HADOOP_HOME}/share/hadoop/hdfs/lib/
  2. Adicione a seguinte variável de ambiente ao arquivo /etc/profile em cada nó:

    export B2SDK_CONF_DIR=/etc/jindofs-sdk-conf
  3. Crie o arquivo de configuração do JindoFS SDK em /etc/jindofs-sdk-conf/bigboot.cfg:

    [bigboot]
    logger.dir=/tmp/bigboot-log
    
    [bigboot-client]
    client.oss.retry=5
    client.oss.upload.threads=4
    client.oss.upload.queue.size=5
    client.oss.upload.max.parallelism=16
    client.oss.timeout.millisecond=30000
    client.oss.connection.timeout.millisecond=4000
  4. Carregue a variável de ambiente:

    source /etc/profile
  5. Verifique se o bucket OSS está acessível pelo cluster Hadoop:

    ${HADOOP_HOME}/bin/hadoop fs -ls oss://<accessKeyId>:<accessKeySecret>@<bucket-name>.<endpoint>/

    Se o comando retornar o conteúdo do bucket sem erros, o SDK estará configurado corretamente.

Migrar dados do bucket OSS

  1. Verifique o tamanho dos dados a migrar:

    ${HADOOP_HOME}/bin/hadoop du -h oss://<accessKeyId>:<accessKeySecret>@<bucket-name>.<endpoint>/test_data
  2. Execute o DistCp para iniciar um job MapReduce que copia os dados para o banco de dados de arquivos Lindorm:

    ${HADOOP_HOME}/bin/hadoop distcp \
      oss://<accessKeyId>:<accessKeySecret>@<bucket-name>.<endpoint>/test_data.txt \
      hdfs://<instance-id>/

    Substitua <instance-id> pelo ID da sua instância Lindorm.

    A tabela a seguir descreve os parâmetros:

    Parâmetro

    Descrição

    Obrigatório

    accessKeyId

    AccessKey ID usado para autenticar chamadas à API do OSS. Para obter seu par de AccessKey, consulte Crie um par de AccessKey.

    Sim

    accessKeySecret

    AccessKey Secret usado para autenticar chamadas à API do OSS.

    Sim

    bucket-name.endpoint

    Endereço de acesso ao bucket OSS, composto pelo nome do bucket e pelo endpoint da região onde ele está implantado.

    Sim

  3. Verifique a saída do job. A migração estará concluída quando a saída exibir:

    • map 100% reduce 0%

    • Job job_xxx completed successfully

    • BYTESCOPIED igual a BYTESEXPECTED

    Exemplo de saída:

    20/09/29 12:23:59 INFO mapreduce.Job:  map 100% reduce 0%
    20/09/29 12:23:59 INFO mapreduce.Job: Job job_1601195105349_0015 completed successfully
    20/09/29 12:23:59 INFO mapreduce.Job: Counters: 38
     File System Counters
      FILE: Number of bytes read=0
      FILE: Number of bytes written=122343
      FILE: Number of read operations=0
      FILE: Number of large read operations=0
      FILE: Number of write operations=0
      HDFS: Number of bytes read=470
      HDFS: Number of bytes written=47047709
      HDFS: Number of read operations=15
      HDFS: Number of large read operations=0
      HDFS: Number of write operations=4
      OSS: Number of bytes read=0
      OSS: Number of bytes written=0
      OSS: Number of read operations=0
      OSS: Number of large read operations=0
      OSS: Number of write operations=0
     Job Counters
      Launched map tasks=1
      Other local map tasks=1
      Total time spent by all maps in occupied slots (ms)=5194
      Total time spent by all reduces in occupied slots (ms)=0
      Total time spent by all map tasks (ms)=5194
      Total vcore-milliseconds taken by all map tasks=5194
      Total megabyte-milliseconds taken by all map tasks=5318656
     Map-Reduce Framework
      Map input records=1
      Map output records=0
      Input split bytes=132
      Spilled Records=0
      Failed Shuffles=0
      Merged Map outputs=0
      GC time elapsed (ms)=64
      CPU time spent (ms)=2210
      Physical memory (bytes) snapshot=222294016
      Virtual memory (bytes) snapshot=2672074752
      Total committed heap usage (bytes)=110100480
     File Input Format Counters
      Bytes Read=338
     File Output Format Counters
      Bytes Written=0
     org.apache.hadoop.tools.mapred.CopyMapper$Counter
      BYTESCOPIED=47047709
      BYTESEXPECTED=47047709
      COPY=1
    20/09/29 12:23:59 INFO common.AbstractJindoFileSystem: Read total statistics: oss read average -1 us, cache read average -1 us, read oss percent 0%

Verifique a migração

Verifique o tamanho dos dados migrados para o banco de dados de arquivos Lindorm:

${HADOOP_HOME}/bin/hadoop fs -du -s -h hdfs://<instance-id>/