すべてのプロダクト
Search
ドキュメントセンター

MaxCompute:ローカル環境での MaxFrame の使用

最終更新日:Jul 18, 2026

ご利用のローカルマシンに MaxFrame SDK をインストールし、分散データ処理のために MaxCompute と連携できます。

前提条件

作業を開始する前に、以下の要件が満たされていることを確認してください。

  • ご利用のローカルシステムに Python 3.7 または 3.11 がインストールされていること。その他のバージョンではエラーが発生する可能性があります。

  • ご利用のローカルシステムに pip がインストールされていること。インストールされていない場合は、Python 公式サイトをご参照ください。

  • MaxCompute プロジェクトが作成済みであること。詳細については、「MaxCompute プロジェクトの作成」をご参照ください。

MaxFrame のインストール

  1. コマンドラインウィンドウ(例:Windows CMD)で、次の pip コマンドを実行して MaxFrame クライアントをインストールします。

    pip install --upgrade maxframe
  2. 次のコマンドを実行してインストールを検証します。出力やエラーが表示されない場合は、インストールが成功しています。

    python -c "import maxframe.dataframe as md"

    エラーが発生した場合は、デフォルトの Python バージョンを確認し、Python 3.7 または 3.11 に切り替えてください。例:

    # システムのデフォルトバージョンを確認
    python --version 
    
    # システムのデフォルトバージョンを Python 3.7 に切り替えます($path/python3.7 はインストール済みの Python パス)
    $path/python3.7 -m pip install setuptools>=3.0

MaxFrame の使用

  1. .py 拡張子を持つローカルファイル(例:test.py)を作成します。test.py に以下のサンプルコードをコピーして保存してください。

    import os
    import maxframe.dataframe as md
    from odps import ODPS
    from maxframe import new_session
    
    # MaxCompute エントリポイントを作成
    o = ODPS(
        # ALIBABA_CLOUD_ACCESS_KEY_ID 環境変数に AccessKey ID を、
        # ALIBABA_CLOUD_ACCESS_KEY_SECRET に AccessKey Secret を設定します。
        # AccessKey ID および AccessKey Secret の文字列を直接コード内に記述しないでください。
        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],
        ])
    
    # MaxFrame セッションを作成
    session = new_session(o)
    
    df = md.read_odps_table("test_source_table",index_col="b")
    df["a"] = "prefix_" + df["a"]
    
    # DataFrame のデータを表示
    print(df.execute().fetch())
    
    # MaxFrame DataFrame のデータを MaxCompute テーブルに書き込み
    md.to_odps_table(df, "test_prefix_source_table").execute()
    
    # MaxFrame セッションを削除
    session.destroy()

    パラメーターの説明:

    • ALIBABA_CLOUD_ACCESS_KEY_ID および ALIBABA_CLOUD_ACCESS_KEY_SECRET:対象の MaxCompute プロジェクトに対する必要な権限を持つ AccessKey ID および AccessKey Secret をこれらの環境変数に設定します。AccessKey ID はAccessKey 管理ページから取得できます。

    • your-default-project:ご利用の MaxCompute プロジェクト名。MaxCompute コンソールにログインし、左側のワークスペース > プロジェクト管理で確認できます。

    • your-end-point:ご利用の MaxCompute プロジェクトが存在するリージョンのエンドポイント。詳細については、「エンドポイント」をご参照ください。

  2. test.py を含むディレクトリに移動し、スクリプトを実行します。例:

    python test.py

結果の検証

Python コードを実行した後、結果テーブルのデータをクエリします。期待通りの結果が得られた場合、MaxFrame は正しくインストールされ、MaxCompute クラスターに接続されています。

  1. Python コードの実行により、次の結果が返されます。

    b           a
    0  prefix_value1
    1  prefix_value2
  2. 対象の MaxCompute プロジェクトで、次の SQL を実行して test_prefix_source_table テーブルのデータをクエリします。

    SELECT * FROM test_prefix_source_table;

    返される結果は次のとおりです。

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