Este tópico descreve como fazer upload e baixe de dados no MaxCompute. O conteúdo abrange conexões de service, kits de desenvolvimento de software (SDKs), ferramentas e operações comuns, como importação e exportação de dados.
Informações básicas
O MaxCompute oferece vários canais para upload e baixe de dados, permitindo que você selecione a solução técnica mais adequada ao seu cenário.
Batch data channel: Compatível com uploads e baixe de dados em lote.
Streaming Tunnel: Permite transmitir dados em streaming para o MaxCompute.
Real-time data tunnel: O DataHub é uma plataforma de processamento de dados em streaming que permite publicar, assinar e distribuir dados em streaming, além de arquivá-los no MaxCompute.
Introdução aos recursos
-
Upload de dados pelo canal de dados em lote
Utilize o canal de dados em lote para enviar dados ao MaxCompute em lotes. As fontes de dados compatíveis incluem arquivos externos, bancos de dados externos, Object Storage Service e arquivos de log. As soluções a seguir estão disponíveis para uploads de dados em lote.
Tunnel SDK: Faça upload de dados para o MaxCompute por meio do Tunnel.
Service de sincronização de dados: Utilize tarefas do Data Integration (DataWorks) para extrair, transformar e carregar (ETL) dados no MaxCompute.
Ferramentas e plugins open source: Envie dados ao MaxCompute utilizando Sqoop, Kettle, Flume, o Fluentd plugin ou OGG .
Ferramentas do product: O cliente MaxCompute fornece comandos Tunnel integrados, baseados no SDK do batch data channel. Use esses comandos para realizar uploads de dados. Para obter mais informações sobre como usar os comandos Tunnel, consulte Tunnel commands.
NotaPara sincronização de dados offline, utilize o Data Integration. Para mais detalhes, consulte Data Integration.
-
Gravação de dados pelo canal de dados em streaming
O service de canal de dados em streaming do MaxCompute permite gravar dados na plataforma em modo streaming. Ele utiliza um novo conjunto de APIs e services de backend, diferentes daqueles usados pelo canal de dados em lote. As soluções abaixo estão disponíveis para gravar dados em streaming no MaxCompute.
Service de sincronização de dados: Utilize o real-time sync tasks no Data Integration para gravar dados em streaming (StreamX).
Envio de dados: Empregue modos de envio que integram as APIs de gravação em streaming para escrever dados nesse formato. Este método é compatível com SLS e Message Queue para Kafka.
Gravação em tempo real com Flink: Utilize a plataforma Flink para gravar dados em streaming em tempo real.
Confiabilidade das soluções
O MaxCompute oferece um Acordo de Nível de Service (SLA). No entanto, os canais de dados em lote e em streaming utilizam recursos compartilhados gratuitos por padrão. Por isso, é fundamental avaliar a confiabilidade da sua solução específica. O service Tunnel aloca recursos disponíveis (slots) conforme a ordem de recebimento das solicitações de acesso.
Caso não haja recursos disponíveis, novas solicitações de acesso serão rejeitadas até que os recursos sejam liberados.
Se o número de solicitações válidas não atingir 100 em 5 minutos, o service não será considerado indisponível. Para mais informações sobre solicitações válidas, consulte Valid status codes for Data Transmission Service.
Latência de solicitações e requisições limitadas não são cobertas pelo SLA. Para saber mais sobre os limites do service, consulte Limits on Data Transmission Service.
Observações
As condições de rede impactam significativamente as velocidades de upload e baixe do Tunnel. A velocidade geralmente varia entre 1 MB/s e 10 MB/s. Ao fazer upload de grandes volumes de dados, defina o Tunnel Endpoint como o endpoint da rede interna ou de uma VPC. A conexão à rede interna ou à VPC deve ser feita por meio de uma instância ECS da Alibaba Cloud ou de uma linha dedicada. Se a velocidade de upload estiver muito baixa, adote um método de upload multithread.
Para obter mais informações sobre Tunnel Endpoints, consulte Endpoint.