Todos os produtos
Search
Central de documentação

MaxCompute:Use o MaxFrame em um ambiente local

Última atualização: Jul 20, 2026

Instale o SDK do MaxFrame na sua máquina local e use-o para interagir com o MaxCompute no processamento distribuído de dados.

Pré-requisitos

Antes de começar, verifique se os seguintes requisitos foram atendidos:

  • Python 3.7 ou 3.11 instalado no sistema local. Outras versões podem causar erros.

  • pip instalado no sistema local. Caso contrário, visite o site oficial do Python para obter instruções de instalação.

  • Projeto do MaxCompute criado. Para mais informações, consulte Crie um projeto do MaxCompute.

Instale o MaxFrame

  1. Em uma janela de linha de comando (como o CMD do Windows), execute o seguinte comando pip para instalar o cliente MaxFrame:

    pip install --upgrade maxframe
  2. Execute o comando abaixo para verificar a instalação. Se nenhuma saída ou erro for exibido, a instalação foi bem-sucedida.

    python -c "import maxframe.dataframe as md"

    Se ocorrer um erro, verifique a versão padrão do Python e alterne para o Python 3.7 ou 3.11. Por exemplo:

    # Check the system default version
    python --version 
    
    # Switch the system default version to Python 3.7, where $path/python3.7 is the installed Python path
    $path/python3.7 -m pip install setuptools>=3.0

Use o MaxFrame

  1. Crie um arquivo local com a extensão .py (por exemplo, test.py). Copie o código de exemplo a seguir para test.py e salve o arquivo.

    import os
    import maxframe.dataframe as md
    from odps import ODPS
    from maxframe import new_session
    
    # Create a MaxCompute entry point
    o = ODPS(
        # Set the ALIBABA_CLOUD_ACCESS_KEY_ID environment variable to your AccessKey ID,
        # and ALIBABA_CLOUD_ACCESS_KEY_SECRET to your AccessKey secret.
        # Do not use AccessKey ID and AccessKey secret strings directly.
        os.getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'),
        os.getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),
        project='your-default-project',
        endpoint='your-end-point',
    )
    table = o.create_table("test_source_table", "a string, b bigint", if_not_exists=True)
    with table.open_writer() as writer:
        writer.write([
            ["value1", 0],
            ["value2", 1],
        ])
    
    # Create a MaxFrame session
    session = new_session(o)
    
    df = md.read_odps_table("test_source_table",index_col="b")
    df["a"] = "prefix_" + df["a"]
    
    # Print dataframe data
    print(df.execute().fetch())
    
    # Write MaxFrame DataFrame data to a MaxCompute table
    md.to_odps_table(df, "test_prefix_source_table").execute()
    
    # Destroy the MaxFrame session
    session.destroy()

    Descrição dos parâmetros:

    • ALIBABA_CLOUD_ACCESS_KEY_ID e ALIBABA_CLOUD_ACCESS_KEY_SECRET: defina essas variáveis de ambiente com o AccessKey ID e o AccessKey secret que possuem as permissions necessárias para o projeto MaxCompute de destino. Obtenha seu AccessKey ID na página de Gerenciamento de AccessKey.

    • your-default-project: nome do seu projeto MaxCompute. Faça login no console do MaxCompute e, no painel de navegação à esquerda, escolha Workspace > Projects para visualizá-lo.

    • your-end-point: endpoint da região onde reside o projeto MaxCompute. Para mais informações, consulte Endpoint.

  2. Acesse o diretório que contém o arquivo test.py e execute-o. Por exemplo:

    python test.py

Verifique o resultado

Após executar o código Python, consulte os dados da tabela de destino. Se o resultado corresponder ao esperado, o MaxFrame está instalado corretamente e conectado ao cluster do MaxCompute.

  1. A execução do código Python retorna o seguinte resultado:

    b           a
    0  prefix_value1
    1  prefix_value2
  2. No projeto MaxCompute de destino, execute a instrução SQL a seguir para consultar os dados na tabela test_prefix_source_table.

    SELECT * FROM test_prefix_source_table;

    O resultado retornado é:

    +------------+------------+
    | b          | a          |
    +------------+------------+
    | 0          | prefix_value1 |
    | 1          | prefix_value2 |
    +------------+------------+