Este tópico descreve os limites de uso do MaxCompute.
Antes de utilizar o MaxCompute, familiarize-se com os limites de uso para garantir o funcionamento adequado do seu negócio. Os limites são os seguintes:
Cota de recursos computacionais por assinatura
A cota padrão de compra de recursos computacionais por assinatura do MaxCompute é de 2.000 CUs.
Para adquirir mais de 2.000 CUs, use sua conta Alibaba Cloud para envie um ticket. A equipe analisará sua solicitação em até três dias úteis e notificará o resultado por mensagem de texto.
Limites de recursos da edição Standard com pagamento conforme o uso
O MaxCompute limita os recursos computacionais (CUs) da edição Standard com pagamento conforme o uso que um único usuário pode consumir por região. Esse limite impede que um único usuário monopolize os recursos do cluster e bloqueie o envio de jobs por outros usuários.
País ou área | Região | Limite de CUs |
Regiões na China | China (Hangzhou), China (Shanghai), China (Beijing), China (Zhangjiakou), China (Ulanqab), China (Shenzhen), China (Shanghai) Finance, China (Beijing) Gov, China (Shenzhen) Finance | 2.000 |
China (Chengdu), China (Hong Kong) | 500 | |
Outros países ou áreas | Singapore (Singapore), Malaysia (Kuala Lumpur), Indonesia (Jakarta), Japan (Tokyo), Germany (Frankfurt), US (Silicon Valley), US (Virginia), UK (London), UAE (Dubai) | 500 |
Esses limites de CUs representam valores máximos, não garantias. O MaxCompute pode ultrapassar esses limites para acelerar consultas.
Limites de compra de slots do serviço Tunnel por assinatura
O limite padrão de compra de slots do serviço Tunnel por assinatura no MaxCompute é de 500. Para adquirir mais de 500 slots, envie um ticket.
Tunnel: limites de upload e download
Para conhecer os limites de upload e baixe de dados no MaxCompute, consulte Tunnel overview.
Para mais informações sobre upload e baixe de dados, consulte Data upload scenarios and tools.
Informações sobre grupos de recursos compartilhados do Data Transmission Service
A tabela a seguir lista o número máximo de slots disponíveis por projeto para recursos compartilhados gratuitos em diferentes regiões. Os valores são medidos em slots.
|
Site |
Região |
Slots (número) |
|
China |
China (Hangzhou) |
300 |
|
China |
China East 1 Finance (Hangzhou) |
50 |
|
China |
China (Shanghai) |
600 |
|
China |
China East 2 Finance (Shanghai) |
50 |
|
China |
China (Beijing) |
300 |
|
China |
China (Beijing) Gov Cloud |
100 |
|
China |
China (Zhangjiakou) |
300 |
|
China |
China (Ulanqab) |
300 |
|
China |
China (Shenzhen) |
150 |
|
China |
China South 1 Finance (Shenzhen) |
50 |
|
China |
China (Chengdu) |
150 |
|
China |
China (Hong Kong) |
50 |
|
Ásia-Pacífico |
Singapore (Singapore) |
100 |
|
Ásia-Pacífico |
Malaysia (Kuala Lumpur) |
50 |
|
Ásia-Pacífico |
Indonesia (Jakarta) |
50 |
|
Ásia-Pacífico |
Japan (Tokyo) |
50 |
|
Europa e Américas |
Germany (Frankfurt) |
50 |
|
Europa e Américas |
US (Silicon Valley) |
100 |
|
Europa e Américas |
US (Virginia) |
50 |
|
Europa e Américas |
UK (London) |
50 |
|
Oriente Médio e Índia |
UAE (Dubai) |
50 |
Cada operação no serviço de tunelamento de dados (como gravação de um bloco, criação de uma sessão de baixe ou flush) ocupa um slot. Quando uma conexão permanece ociosa sem transferência de dados por um período prolongado, o servidor a desconecta automaticamente e libera o slot ocupado. Portanto, mesmo que o número de slots concorrentes atinja o limite, as conexões ociosas são recuperadas automaticamente após determinado período, sem necessidade de intervenção manual.
Limites de SQL
Estes limites se aplicam a jobs SQL no MaxCompute.
Item | Limite | Categoria | Descrição |
Comprimento do nome da tabela | 128 bytes | Limite de comprimento | O nome da tabela não pode conter caracteres especiais, deve começar com uma letra e pode incluir apenas letras (a-z, A-Z), dígitos e underscores (_). |
Comprimento do nome da coluna | 128 bytes | Limite de comprimento |
|
Comprimento do comentário | 1.024 bytes | Limite de comprimento | O comentário deve ser uma string válida com no máximo 1.024 bytes. |
Colunas por tabela | 1.200 | Limite de quantidade | Cada tabela suporta no máximo 1.200 colunas. |
Partições por tabela | 60.000 | Limite de quantidade | Cada tabela suporta no máximo 60.000 partições. |
Níveis de partição por tabela | 6 | Limite de quantidade | Cada tabela suporta no máximo seis níveis de partição. |
Exibição em tela | 10.000 linhas | Limite de quantidade | Uma instrução SELECT exibe no máximo 10.000 linhas na tela. |
Tabelas de destino para | 256 | Limite de quantidade | Uma instrução |
| 256 | Limite de quantidade | Uma instrução |
| 128 | Limite de quantidade | Em uma operação |
Limite de memória do | 512 MB | Limite de quantidade | Em uma operação |
| 1.000 linhas | Limite de quantidade | Se uma subconsulta contiver uma coluna de partição, ela poderá retornar no máximo 1.000 linhas. |
Comprimento da instrução SQL | 2 MB | Limite de comprimento | Uma instrução SQL não pode exceder 2 MB. Esse limite também se aplica a instruções SQL executadas por meio de um SDK. Se uma instrução SQL contiver comandos PAI e exceder 2 MB, não é possível contornar o limite de comprimento migrando para um nó ODPS Script. Os nós ODPS Script são executados no mecanismo SQL em modo script, que suporta apenas instruções SET, DDL e DML — sem suporte a comandos PAI. Recomenda-se continuar usando o nó ODPS SQL e dividir a instrução SQL em vários fragmentos menores que 2 MB, executando-os separadamente. |
Tamanho da célula | 8 MB | Limite de quantidade | Os dados em uma única célula de tabela não podem exceder 8 MB. |
Número de parâmetros em uma cláusula IN | 1.024 | Limite de quantidade | O número máximo recomendado de parâmetros em uma cláusula |
Tamanho do | 1 MB | Limite de comprimento | O tamanho do |
Views | Somente leitura | Limite de operação | Views são somente leitura e não suportam operações |
Tipo de dados da coluna | Não pode ser modificado | Limite de operação | Não é possível modifique o tipo de dados nem a posição de uma coluna existente. |
Função definida pelo usuário (UDF) Java | Não pode ser | Limite de operação | Uma UDF Java não pode ser definida como |
Número máximo de partições por consulta | 10.000 | Limite de quantidade | Uma consulta pode varrer no máximo 10.000 partições. |
Tamanho do plano de execução SQL | 1 MB | Limite de comprimento | O plano de execução gerado pelo MaxCompute SQL não pode exceder 1 MB. Caso exceda, o job falha e retorna o seguinte erro: |
Duração máxima de execução do job | 72 horas | Limite de tempo de execução | Por padrão, a duração máxima de execução de um job SQL individual é de 24 horas. Esse limite pode ser estendido para 72 horas com o comando a seguir. O sistema encerra automaticamente qualquer job que ultrapasse 72 horas de execução. |
Frequência de criação de partições | 120 vezes/15 segundos | Limite de frequência | A operação |
Para mais informações sobre SQL, consulte SQL.
Limites do MapReduce
A tabela a seguir lista os limites para o desenvolvimento de jobs MapReduce no MaxCompute.
|
Limite |
Valor |
Categoria |
Parâmetro de configuração |
Padrão |
Configurável |
|
Memória por instância |
256 MB–12 GB |
Memória |
|
2.048 MB + 1.024 MB |
Sim |
|
Recursos por job |
256 |
Quantidade |
— |
— |
Não |
|
Entradas por job |
1.024 |
Quantidade |
— |
— |
Não |
|
Saídas por job |
256 |
Quantidade |
— |
— |
Não |
|
Tabelas distintas em todas as entradas |
64 |
Quantidade |
— |
— |
Não |
|
Contadores personalizados por job |
64 |
Quantidade |
— |
— |
Não |
|
Instâncias de map por job |
1–100.000 |
Quantidade |
|
Calculado a partir do tamanho do split |
Sim |
|
Instâncias de reduce por job |
0–2.000 |
Quantidade |
|
1/4 das instâncias de map |
Sim |
|
Tentativas por instância com falha |
3 |
Quantidade |
— |
— |
Não |
|
Debug local: instâncias de map |
2 (padrão), máx. 100 |
Quantidade |
— |
2 |
Não |
|
Debug local: instâncias de reduce |
1 (padrão), máx. 100 |
Quantidade |
— |
1 |
Não |
|
Debug local: registros baixados por entrada |
100 (padrão), máx. 10.000 |
Quantidade |
— |
100 |
Não |
|
Leituras repetidas de um recurso por instância |
64 |
Quantidade |
— |
— |
Não |
|
Tamanho total de recursos por job |
2 GB |
Comprimento |
— |
— |
Não |
|
Tamanho do split |
≥ 1 |
Comprimento |
|
256 MB |
Sim |
|
Comprimento do conteúdo de coluna STRING |
8 MB |
Comprimento |
— |
— |
Não |
|
Timeout de execução do worker |
1–3.600 segundos |
Tempo |
|
600 segundos |
Sim |
|
Tipos de campo suportados em recursos de tabela |
BIGINT, DOUBLE, STRING, DATETIME, BOOLEAN |
Tipo de dados |
— |
— |
Não |
Para mais informações sobre MapReduce, consulte MapReduce.
Limitações do PyODPS
As limitações a seguir se aplicam ao desenvolvimento de jobs PyODPS no MaxCompute por meio do DataWorks:
Um nó PyODPS pode processar no máximo 50 MB de dados locais e consumir até 1 GB de memória. Se um nó exceder esses limites, o sistema encerra o job. Para evitar isso, não adicione código Python desnecessário de processamento de dados aos seus jobs PyODPS.
Para uma experiência de desenvolvimento e depuração mais eficiente, recomenda-se escrever o código em um IDE local em vez de diretamente na interface do DataWorks.
Para evitar carga excessiva no gateway do DataWorks, o DataWorks limita o uso de memória e CPU para PyODPS. O erro
Got killedindica que o processo foi encerrado por exceder o limite de memória. Para prevenir isso, evite realizar operações de dados localmente. Esses limites não se aplicam a jobs SQL ou DataFrame (excetoto_pandas) iniciados pelo PyODPS.-
Os seguintes recursos são limitados porque pacotes como
matplotlibnão estão disponíveis:A função
plotdo DataFrame não está disponível.Funções definidas pelo usuário (UDFs) do DataFrame devem ser enviadas ao MaxCompute para execução. Devido às restrições do sandbox Python, as únicas bibliotecas de terceiros suportadas são bibliotecas Python puras e NumPy. Não é possível usar pandas diretamente em UDFs.
Para código fora de UDFs, é possível utilizar os pacotes NumPy e pandas pré-instalados no DataWorks. Pacotes de terceiros que contenham código binário não são suportados.
Por motivos de compatibilidade, o DataWorks defina options.tunnel.use_instance_tunnel como
Falsepor padrão. Para ativar o InstanceTunnel globalmente, defina manualmente esse valor comoTrue.Devido a questões de implementação, o pacote Python atexit não é suportado. Use um bloco try-finally como alternativa.
Para mais informações sobre PyODPS, consulte PyODPS.
Limites de jobs concorrentes
A tabela a seguir lista o número máximo de jobs concorrentes em um único projeto MaxCompute para cada região.
|
Região |
Máximo de jobs concorrentes |
|
China (Hangzhou), China (Shanghai), China (Beijing), China (Zhangjiakou), China (Ulanqab), China (Shenzhen), and China (Chengdu) |
2.500 |
|
China (Hong Kong), Singapore, Malaysia (Kuala Lumpur), Indonesia (Jakarta), Japan (Tokyo), Germany (Frankfurt), US (Silicon Valley), US (Virginia), UK (London), and UAE (Dubai) |
1.000 |
Ao envie um job que exceda o limite de concorrência de um projeto MaxCompute, o sistema retorna um erro. Por exemplo: com.aliyun.odps.OdpsException: Request rejected by flow control. You have exceeded the limit for the number of tasks you can run concurrently in this project. Please try later.
Limites de segurança e permissões
│ │ 500 │
│ │ │
│ │ 10.000 │
│ │ │
│ │ 512 KB │
│ │ │
│ │ 32 KB │
│ │ │
|
Descrição |
Limite |
|
Comprimento em caracteres do nome de um pacote. |
128 Byte |
|
Número de projetos nos quais um pacote pode ser instalado. |
100.000 |
|
Número máximo de recursos que um pacote pode conter. |
1.000 |
|
Número de pacotes que um projeto pode crie. |
100.000 |
|
Número máximo de pacotes que um projeto MaxCompute pode instale. |
100.000 |
|
Número máximo de pacotes que um projeto MaxCompute pode instale de outro projeto MaxCompute. |
100 |
|
Comprimento em caracteres de um comentário. |
1 KB |
|
Limites para nomes de funções. |
Não pode exceder 64 bytes. Aceita apenas letras minúsculas (a-z), letras maiúsculas (A-Z), dígitos e underscores (_), e deve começar com uma letra. |
|
Número de funções em um único projeto. |
500 |
|
Número de usuários em um único projeto. |
10.000 |
|
Limite de tamanho do texto de uma política vinculada a uma função. |
512 KB |
|
Limite de tamanho do texto de uma única instrução em uma política. |
32 KB |