ご利用のローカルマシンに MaxFrame SDK をインストールし、分散データ処理のために MaxCompute と連携できます。
前提条件
作業を開始する前に、以下の要件が満たされていることを確認してください。
-
ご利用のローカルシステムに Python 3.7 または 3.11 がインストールされていること。その他のバージョンではエラーが発生する可能性があります。
-
ご利用のローカルシステムに pip がインストールされていること。インストールされていない場合は、Python 公式サイトをご参照ください。
-
MaxCompute プロジェクトが作成済みであること。詳細については、「MaxCompute プロジェクトの作成」をご参照ください。
MaxFrame のインストール
-
コマンドラインウィンドウ(例:Windows CMD)で、次の pip コマンドを実行して MaxFrame クライアントをインストールします。
pip install --upgrade maxframe -
次のコマンドを実行してインストールを検証します。出力やエラーが表示されない場合は、インストールが成功しています。
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 の使用
-
.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 プロジェクトが存在するリージョンのエンドポイント。詳細については、「エンドポイント」をご参照ください。
-
-
test.pyを含むディレクトリに移動し、スクリプトを実行します。例:python test.py
結果の検証
Python コードを実行した後、結果テーブルのデータをクエリします。期待通りの結果が得られた場合、MaxFrame は正しくインストールされ、MaxCompute クラスターに接続されています。
-
Python コードの実行により、次の結果が返されます。
b a 0 prefix_value1 1 prefix_value2 -
対象の MaxCompute プロジェクトで、次の SQL を実行して
test_prefix_source_tableテーブルのデータをクエリします。SELECT * FROM test_prefix_source_table;返される結果は次のとおりです。
+------------+------------+ | b | a | +------------+------------+ | 0 | prefix_value1 | | 1 | prefix_value2 | +------------+------------+