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

MaxCompute:TPC-DS パフォーマンス テスト

最終更新日:Nov 10, 2025

MaxCompute は業界最高レベルのパフォーマンスを提供し、テラバイト、ペタバイト、さらにはエクサバイトのデータのクエリに適しています。このトピックでは、MaxCompute が提供するパブリック データセットとテストツールを使用してビッグデータベンチマーク TPC-DS テストを実行し、そのパフォーマンスを検証する方法について説明します。MaxCompute は 2 つの異なるパフォーマンステスト方法を提供します。方法 1 は新しい MaxQA クエリ高速化エンジンに基づく TPC-DS テスト、方法 2 は MCQA エンジンに基づく TPC-DS テストです。

準備

  1. 環境を構成します。

    • TPC-DS テストを実行する前に、MaxCompute をアクティブ化し、「プロジェクトを作成する」をご参照ください。

    • 方法 1:MaxQA(MaxCompute Query Acceleration 2.0)をアクティブ化します。現在パブリックプレビュー中です。パブリックプレビューリンクをクリックして参加し、各リージョンがパブリックプレビューを開始するスケジュールについては、パブリックプレビュープランを参照してください。

      • 詳細については、「MaxQA の概要」をご参照の上、サブスクリプション 仕様をアクティブ化し、インタラクティブクォータグループを作成します。

    • 方法 2:MaxQA パブリックプレビューが有効になっていないその他のリージョンでは、MCQA(MaxCompute Query Acceleration 1.0)をアクティブ化します。

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

    MaxCompute は、TPC-DS テストを迅速に完了し、テスト結果を自動的に生成するのに役立つ、TPC-DS 自動パフォーマンステストツールを提供します。

    重要

    テストツールは、Java 開発キット(JDK) 1.7 以降がインストールされている Linux でのみ使用できます。

    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 のデータセットに分割されます。次の表に、データセットを示します。

    カテゴリ

    概要

    データセット名

    スキーマ名

    TPC-DS

    TPC-DS は、クエリやデータメンテナンスなど、意思決定支援システムのいくつかの一般的に適用可能な側面をモデル化する意思決定支援ベンチマークであり、ビッグデータシステムなどの新しいテクノロジーがベンチマークテストを実行できるようにします。

    • TPC-DS 10 GB パフォーマンス テスト データセット

    • TPC-DS 100 GB パフォーマンス テスト データセット

    • TPC-DS 1 TB パフォーマンス テスト データセット

    • TPC-DS 10 TB パフォーマンス テスト データセット

    • tpcds_10g

    • tpcds_100g

    • tpcds_1t

    • tpcds_10t

テストプロセス

テストツールの構成ファイルを修正する

解凍したテストツールの mc_tpcds_benchmark ディレクトリに移動し、config ファイルを修正します。テストツールは MaxQA モードと MCQA モードの両方をサポートしているため、基本構成以外の構成に必要な変更に若干の違いがあります。

基本構成

構成項目

説明

ODPS_CLT_CMD

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

このツールキットで提供されるクライアントは、作業ディレクトリの odps_clt ディレクトリにあります。対応する構成を修正します。詳細については、「ローカル クライアント (odpscmd) を使用して MaxCompute に接続する」をご参照ください。

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

PROJECT

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

例:tpcds_test

SF

TPC-DS テストのデータサイズ。

単位:GB。1 は 1 GB を示します。1000 は 1 TB を示します。テスト要件に基づいて値を変更できます。

デフォルト値:1000

差分構成 - MCQA vs MaxQA モード

構成項目

説明

MCQA 値

MaxQA 値

ODPS_CLT_CMD

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

このツールキットで提供されるクライアントは、作業ディレクトリの odps_clt ディレクトリにあります。対応する構成を修正します。詳細については、「ローカル クライアント (odpscmd) を使用して MaxCompute に接続する」をご参照ください。

例:/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 パブリック データセットは 10 GB、100 GB、1 TB、および 10 TB の 4 つのサイズのデータを提供しています。したがって、SF は 10、100、1000、または 10000 に設定できます。

デフォルト値:1000。現在、MaxCompute パブリック データセットは 10 GB、100 GB、1 TB、および 10 TB の 4 つのサイズのデータを提供しています。したがって、SF は 10、100、1000、または 10000 に設定できます。

MODE

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

MCQA

MaxQA

MAXQA_QUOTA_NAME

テストに使用する MaxQA インタラクティブクォータグループの名前。これは、MaxCompute コンソールのクォータ管理ページにあります。クォータのエイリアス(自分で付けた名前)を入力する必要があることに注意してください。

該当なし

例:maxqa_test_quota

SQL_FLAGS

MaxCompute の組み込みフラグパラメーター。これらのパラメーターの構成を変更する必要はありません。

  • 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 &

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

tail -f pt.log

MaxCompute タスクの実行状況を表示する

MaxCompute コンソール にログインし、左上隅でリージョンを切り替え、左側のナビゲーションウィンドウで [ワークスペース] > [ジョブ] を選択します。[ジョブ管理] ページで、タスクの実行状況をクエリできます。ターゲットジョブの列の [アクション] をクリックし、[LogView] をクリックして、ジョブの詳細を表示することもできます。詳細については、「ジョブの管理」をご参照ください。

作业运维1

テスト結果を表示する

タスクが正常に実行されると、テスト結果ファイル console_test_result.csv が mc_tpcds_benchmark ディレクトリに自動的に生成されます。消費された合計時間、各クエリの実行時間、対応する Logview 情報など、テストの実行結果を表示できます。