Todos os produtos
Search
Central de documentação

Object Storage Service:Usar o Realtime Compute for Apache Flink para ler ou gravar dados no OSS ou OSS-HDFS

Última atualização: Jul 03, 2026

O Realtime Compute for Apache Flink permite ler e gravar dados no Object Storage Service (OSS) e no Hadoop Distributed File System (HDFS) implantado no OSS (OSS-HDFS). Após a configuração das propriedades do conector OSS ou OSS-HDFS, o Realtime Compute for Apache Flink lê automaticamente os dados do caminho especificado para uso como fluxo de entrada. Em seguida, o serviço grava os resultados da computação no formato e caminho definidos no OSS ou OSS-HDFS.

Pré-requisitos

  • Ative o Flink totalmente gerenciado. Para mais informações, consulte Ativar o Realtime Compute for Apache Flink.

    Após ativar o Flink totalmente gerenciado, o workspace criado aparece na aba Fully Managed Flink em 5 a 10 minutos.

  • Crie o job SQL.

    Ao criar o job SQL, selecione um mecanismo de computação Flink com Ververica Runtime (VVR) 8.0.1 ou posterior. Para mais informações, consulte Criar um job.

Limites

  • É possível ler e gravar dados apenas em serviços OSS ou OSS-HDFS pertencentes à mesma conta Alibaba Cloud.

  • Não é possível gravar dados no OSS em formatos de armazenamento de linhas, como Avro, CSV, JSON e Raw. Para mais detalhes, consulte FLINK-30635.

Procedimento

  1. Acesse a página de criação de rascunho SQL.

    1. Faça login no console do Realtime Compute.

    2. Localize o workspace Flink desejado e clique em Console na coluna Actions.

    3. No painel de navegação, clique em Development > ETL.

  2. No editor SQL, escreva o código de Data Definition Language (DDL) e Data Manipulation Language (DML).

    Este exemplo grava dados de uma tabela de origem no caminho dir do bucket srcbucket para uma tabela de destino no caminho test do bucket destbucket.

    Nota

    Para usar o código abaixo na leitura de dados do OSS-HDFS, certifique-se de que o serviço OSS-HDFS esteja habilitado nos buckets srcbucket e destbucket.

    CREATE TEMPORARY TABLE source_table (
     `file.name` STRING NOT NULL,
     `file.path` STRING NOT NULL METADATA
    ) WITH (
      'connector'='filesystem',
      'path'='oss://srcbucket/dir/',
      'format'='parquet'
    );
    
    CREATE TEMPORARY TABLE target_table(
     `name` STRING,
     `path` STRING 
    ) with (
      'connector'='filesystem',
      'path'='oss://destbucket/test/',
      'format'='parquet'
    );
    
    INSERT INTO target_table SELECT * FROM source_table ;

    Para obter mais detalhes sobre as colunas de metadados compatíveis com a tabela de origem, como file.path e file.name, além do uso dos parâmetros WITH, consulte Conector do Object Storage Service (OSS).

  3. Clique em Save.

  4. Clique em Advanced Check.

    O recurso de verificação avançada analisa a semântica SQL do job, a conectividade de rede e os metadados das tabelas utilizadas. Você também pode clicar em SQL Optimization na área de resultados para visualizar possíveis riscos no SQL e as sugestões de otimização correspondentes.

  5. Clique em Deploy.

    Após desenvolver o job e concluir a verificação avançada, implante-o no ambiente de produção.

  6. (Opcional) Esta etapa é necessária apenas para leitura de dados de um serviço OSS-HDFS.

    Clique no job. Na aba Deployment Details, na seção Running Parameter Configuration, configure o par de AccessKey, o Endpoint e outras informações do serviço OSS-HDFS conforme descrito abaixo. Em seguida, clique em Save.

    fs.oss.jindo.buckets: srcbucket;destbucket
    fs.oss.jindo.accessKeyId: LTAI**************** 
    fs.oss.jindo.accessKeySecret: yourAccessKeySecret
    fs.oss.jindo.endpoint: cn-hangzhou.oss-dls.aliyuncs.com

    A tabela a seguir descreve os itens de configuração.

    Item de Configuração

    Descrição

    fs.oss.jindo.buckets

    Nome do bucket onde os dados da tabela de origem estão localizados e do bucket onde os dados da tabela de destino serão gravados. Separe os nomes dos buckets com ponto e vírgula (;). Exemplo: srcbucket;destbucket.

    fs.oss.jindo.accessKeyId

    AccessKey ID da sua conta Alibaba Cloud ou de um usuário do Resource Access Management (RAM). Para saber como obter um AccessKey ID, consulte Visualizar as informações de AccessKey de um usuário RAM.

    fs.oss.jindo.accessKeySecret

    Utilize um AccessKey existente ou crie um novo. Para mais informações, consulte Criar um par de AccessKey. Nota: Para reduzir o risco de vazamento, o AccessKey secret é exibido apenas no momento da criação. Não é possível visualizá-lo posteriormente. Armazene-o com segurança.

    fs.oss.jindo.endpoint

    Endpoint do serviço OSS-HDFS. Exemplo: cn-hangzhou.oss-dls.aliyuncs.com.

  7. Na página Job O&M, clique em Start e aguarde até que o job entre no estado Running.

  8. Verifique os dados gravados no caminho de armazenamento especificado da tabela de destino no OSS ou OSS-HDFS.

    Se os dados forem gravados no OSS, visualize-os na aba OSS da lista de arquivos no console do OSS. Caso a gravação seja no OSS-HDFS, visualize-os na aba HDFS da lista de arquivos no mesmo console.