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

MaxCompute:TPC-DS 性能テスト

最終更新日:Jun 25, 2026

MaxCompute は、テラバイト (TB) からペタバイト (PB)、エクサバイト (EB) スケールに至るデータクエリシナリオをサポートし、業界内で顕著なパフォーマンス上の優位性を提供しています。本トピックでは、MaxCompute のパブリックデータセットおよびテストツールを使用して、TPC-DS ビッグデータベンチマークを通じて MaxCompute の性能を検証します。MaxCompute には以下の 2 つの性能テスト方法があります。方法 1(推奨) では、新しい MaxQA Query Acceleration エンジンを使用して TPC-DS テストを実施します。方法 2 では、MCQA エンジンを使用して TPC-DS テストを実施します(MCQA は新規ユーザーへの提供を終了しており、既存ユーザーのみがこの方法を参照できます)。

事前準備

  1. 環境を準備します。

    • TPC-DS テストを実行する前に、MaxCompute を有効化し、プロジェクトを作成してください。詳細については、「付録:プロジェクト構成パラメーター」をご参照ください。

    • 方法 1(推奨):MaxQA(MaxCompute Query Acceleration 2.0)を有効化します。この機能は現在パブリックプレビュー中です(パブリックプレビューリンクをクリックして参加してください。リージョンごとの可用性については、パブリックプレビュースケジュールをご確認ください)。

      • MaxQA Query Acceleration の概要」を参照して、サブスクリプションインスタンスを有効化し、インタラクティブなクォータグループを作成してください。

    • 方法 2(新規ユーザーへの提供を終了):MCQA(MaxCompute Query Acceleration 1.0)を有効化します。これは既存の MCQA ユーザーのみが利用可能です。「MCQA Query Acceleration(新規ユーザーへの提供を終了)」を参照して、サブスクリプションインスタンスを有効化してください。

  2. テストツールを準備します。

    テストを簡略化するため、MaxCompute は自動化された TPC-DS 性能テストツールを提供しており、これにより TPC-DS テストを迅速に実行し、結果を自動的に生成できます。

    重要

    このテストツールは現在 Linux 環境でのみサポートされており、JDK バージョン 1.7 以降が必要です。

    mc_tpcds_benchmark」をクリックしてツールパッケージをダウンロードし、ご利用の Linux サーバーで次のコマンドを実行して展開してください。

    unzip mc_tpcds_benchmark.zip

    展開後のディレクトリ構造は次のとおりです。

    .
    |_t1c7039e3-2a1d-451b-bfda-d14c49016243-tpc-ds-tool.zip
    |_config
    |_init_tools.sh
    |_load_table.sh
    |_logs
    |_odps_clt
    |_patches
    |_pt.sh
    |_queries_1
    |_queries_1.quality
    |_queries_10
    |_queries_100
    |_queries_1000
    |_queries_10000
    |_queries_100000
    |_querygen.sh
    |_results
    |_run_stream.sh
    |_run_stream.sh.offline
    |_sqls
    |_start_session_only.sh
    |_start_session.sql
    |_start_session.sql_tmp
    |_tools_file
    |_tt.sh
    |_v2.10.1rc3
  3. テストデータセットについて理解します。

    MaxCompute はパブリックデータセットを提供しているため、テストデータを自分で準備する必要はありません。すべてのデータは MaxCompute のパブリックプロジェクト BIGDATA_PUBLIC_DATASET に格納されています。詳細については、「パブリックデータセットの概要」をご参照ください。

    TPC-DS テストデータセットは、10 GB、100 GB、1 TB、10 TB の 4 つのサイズで提供されています。テスト要件に応じて適切なサイズを選択してください。詳細は以下のとおりです。

    カテゴリ

    説明

    データセット名

    スキーマ名

    TPC-DS

    TPC-DS は意思決定支援システムの一般的な側面(クエリやデータメンテナンスなど)をモデル化した意思決定支援ベンチマークであり、ビッグデータシステムなどの新技術に対して標準化されたベンチマークを実施可能にします。

    • TPC-DS 10GB 性能テストセット

    • TPC-DS 100GB 性能テストセット

    • TPC-DS 1TB 性能テストセット

    • TPC-DS 10TB 性能テストセット

    • tpcds_10g

    • tpcds_100g

    • tpcds_1t

    • tpcds_10t

テスト手順

テストツールの設定ファイルを変更する

展開したテストツールの mc_tpcds_benchmark ディレクトリに移動し、config ファイルを編集します。このツールは MaxQA モードと MCQA モードの両方をサポートしているため、基本設定以外にも、両モード間で若干異なる設定項目があります。

基本設定

設定項目

説明

ODPS_CLT_CMD

MaxCompute クライアントの実行可能ファイルへの絶対パス。

このツールキットに含まれるクライアントは作業ディレクトリ内の odps_clt 配下にあります。この設定を適宜更新してください。詳細については、「ローカルクライアント (odpscmd) を使用した接続」をご参照ください。

例:/xxxxx/mc_tpcds_benchmark/odps_clt/bin/odpscmd

PROJECT

テストに使用する MaxCompute プロジェクト。

例:tpcds_test

SF

TPC-DS テストのデータスケール。

単位は GB です。1 は 1 GB、1000 は 1 TB を意味します。必要に応じてこの値を調整してください。

デフォルト:1000

MCQA モードと MaxQA モードの違い

設定項目

説明

MCQA 値

MaxQA 値

ODPS_CLT_CMD

MaxCompute クライアントの実行可能ファイルへの絶対パス。

このツールキットに含まれるクライアントは作業ディレクトリ内の odps_clt 配下にあります。この設定を適宜更新してください。詳細については、「ローカルクライアント (odpscmd) を使用した接続」をご参照ください。

例:/xxxxx/mc_tpcds_benchmark/odps_clt/bin/odpscmd

例:/xxxxx/mc_tpcds_benchmark/odps_clt/bin/odpscmd

PROJECT

テストに使用する MaxCompute プロジェクト。

例:tpcds_test

例:tpcds_test

SF

TPC-DS テストのデータスケール。

単位は GB です。1 は 1 GB、1000 は 1 TB を意味します。必要に応じてこの値を調整してください。

デフォルト:1000。MaxCompute のパブリックデータセットは現在、10G、100G、1T、10T の 4 サイズを提供しています。そのため、SF は 10、100、1000、または 10000 に設定してください。

デフォルト:1000。MaxCompute のパブリックデータセットは現在、10G、100G、1T、10T の 4 サイズを提供しています。そのため、SF は 10、100、1000、または 10000 に設定してください。

MODE

このベンチマーク実行のモードを設定します。

MCQA

MaxQA

MAXQA_QUOTA_NAME

テストに使用する MaxQA インタラクティブクォータグループの名前。MaxCompute コンソールのクォータ管理ページで確認できます。必ずクォータエイリアス(割り当てた名前)を入力してください。

N/A

例:maxqa_test_quota

SQL_FLAGS

MaxCompute SQL の組み込みフラグ。変更しないでください。

  • set odps.sql.session.result.cache.enable=false:MCQA モードで結果キャッシュを無効化し、各クエリが独立して実行されるようにします。

  • set odps.sql.allow.cartesian=true:SQL でデカルト積の計算を有効化します。

  • set odps.sql.session.query.timeout=600:MCQA モードで Fuxi ジョブのタイムアウトを設定します。

  • set odps.sql.mcqa2.result.cache.enable=false:MaxQA モードで結果キャッシュを無効化し、各クエリが独立して実行されるようにします。

  • set odps.sql.allow.cartesian=true:SQL でデカルト積の計算を有効化します。

テストの実行

mc_tpcds_benchmark ディレクトリで、次のコマンドを実行して TPC-DS テストを開始します。

nohup sh pt.sh > pt.log 2>&1 &

正常に実行されると、ツールは mc_tpcds_benchmark ディレクトリに pt.log ログファイルを自動生成します。次のコマンドを実行して、詳細なタスクログを表示できます。

tail -f pt.log

MaxCompute タスク実行のモニタリング

  1. MaxCompute コンソールにログインし、左上隅でリージョンを選択します。

  2. 左側のナビゲーションウィンドウで、観察操作とメンテナンス > 操作とメンテナンス を選択します。

  3. ジョブ O&M ページでタスク実行ステータスを確認します。対象ジョブの 操作 列にある LogView をクリックして、詳細情報を表示します。詳細については、「ジョブ O&M」をご参照ください。

テスト結果の確認

タスクが正常に実行されると、ツールは mc_tpcds_benchmark ディレクトリに console_test_result.csv という名前のテスト結果ファイルを自動生成します。このファイルには、テスト全体の所要時間、各クエリの実行時間、および対応する Logview リンクが含まれています。