Todos os produtos
Search
Central de documentação

MaxCompute:Visão geral

Última atualização: Aug 21, 2026

O driver MaxCompute Java Database Connectivity (JDBC) oferece uma API JDBC padrão. Use a API JDBC para executar computação distribuída e consultas em grandes volumes de dados no MaxCompute. O driver JDBC também permite conectar ferramentas compatíveis com JDBC ao MaxCompute.

Notas de uso

Precauções

  • Para execute instruções SQL e obter resultados com o driver MaxCompute JDBC, atenda aos seguintes requisitos:

    • Seja membro de um projeto.

    • Possua a permissão CREATE INSTANCE no projeto.

    • Tenha as permissões SELECT e DOWNLOAD na tabela de destino.

      Nota
      • No MaxCompute JDBC V1.9 ou anterior, o sistema cria automaticamente uma tabela temporária para cada consulta. Use comandos Tunnel para recuperar os resultados dessa tabela. O uso dessas versões exige a permissão CREATE TABLE.

      • A partir do MaxCompute JDBC V2.2, não há criação automática de tabela temporária por consulta. Chame a interface InstanceTunnel para obter os resultados, independentemente da permissão CREATE TABLE.

      Para mais detalhes sobre permissões do MaxCompute, consulte MaxCompute permissions.

  • O MaxCompute oferece um recurso de proteção de dados. Se esse recurso estiver ativado em um projeto, a transferência de dados para fora dele será bloqueada. No MaxCompute JDBC anterior à V2.4, não é possível obter result sets. Na versão V2.4 ou posterior, a quantidade de linhas retornadas respeita o limite definido pelo parâmetro READ_TABLE_MAX_ROW. Para saber mais sobre esse parâmetro, consulte Project operations. Para obter detalhes adicionais sobre o recurso de proteção de dados, consulte Project data protection.

    • A edição de tipos de dados MaxCompute V2.0 suporta novos tipos, como TINYINT, SMALLINT, DATETIME, TIMESTAMP, ARRAY, MAP e STRUCT. Para habilitá-los, execute o comando abaixo e ative a edição de tipos de dados MaxCompute V2.0. Para mais informações, consulte Data type version guide.

      set odps.sql.type.system.odps2=true
    • No JDBC V3.4.1 e posteriores, controle rigorosamente a concorrência em consultas SQL longas (acima de 1 KB). Por exemplo, em uma instância ECS com 8 vCPUs e 16,0 GiB de memória, mantenha a concorrência abaixo de 100. Se não for possível gerencie adequadamente a concorrência, atualize o JDBC para a versão V3.8.8 ou V3.9.3 e defina skipCheckIfSelect=true para desativar o recurso de parsing de SQL. Para mais informações sobre essa funcionalidade, consulte Version updates.

    Perguntas frequentes

    • Como visualize o arquivo de log do driver MaxCompute JDBC?

      • Por padrão, o arquivo de log do driver MaxCompute JDBC fica no mesmo diretório do pacote JAR correspondente, com o nome jdbc.log.

      • Se o código e o driver MaxCompute JDBC estiverem empacotados juntos em um uber JAR, o arquivo de log ficará localizado no mesmo diretório desse uber JAR.

      Os logs do driver MaxCompute JDBC detalham as chamadas à API JDBC, incluindo nomes de classes, métodos, parâmetros, valores de retorno e contagem de linhas. Essas informações são úteis para depuração.

    • Como obter uma URL do Logview do MaxCompute?

      O driver MaxCompute JDBC foi desenvolvido com base no MaxCompute SDK for Java. URLs do Logview são geradas durante a execução de instruções SQL no cliente MaxCompute, no MaxCompute Studio e no DataWorks. O driver MaxCompute JDBC também gera essas URLs ao executar comandos SQL. Use-as para visualize o status do job, acompanhar o progresso e acessar os resultados da execução. Configure a URL do Logview por meio do parâmetro properties.log4j. Por padrão, os logs aparecem como erros padrão.

    • O MaxCompute suporta pools de conexões e modo auto-commit?

      O MaxCompute opera com services REST, diferentemente das conexões persistentes típicas de bancos de dados tradicionais. Estabelecer uma conexão com o driver MaxCompute JDBC é uma tarefa leve. Embora o driver funcione em cenários com pools de conexões, eles não são necessários.

      Como o MaxCompute não suporta transações, cada consulta é processada imediatamente no servidor. O modo auto-commit vem ativado por padrão no driver MaxCompute JDBC e não pode ser desativado.

    • Como recuperar campos de partição e tipos de dados?

      Use o método Connection.getMetadata() para acessar objetos DatabaseMetaData e chame o método getColumns() para obter os metadados de todas as colunas.