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

E-MapReduce:SSB パフォーマンス テスト ガイド

最終更新日:Dec 06, 2025

このトピックでは、Star Schema Benchmark (SSB) を使用してオンライン分析処理 (OLAP) クエリシナリオのパフォーマンス テストを実行する方法について説明します。

SSB の概要

SSB は、データウェアハウスおよび OLAP システムのパフォーマンスを評価するために使用されるベンチマークです。Date、Customer、Supplier、Part、Lineorder の 5 つのテーブルで構成される典型的なスタースキーマのデータモデルをシミュレートします。さらに、SSB では必要に応じてデータモデルをカスタマイズできます。たとえば、スタースキーマをワイドテーブルスキーマに変換できます。

SSB ベンチマークは、事前定義された一連のクエリパターンを実行することで、データウェアハウスまたは OLAP システムのパフォーマンスメトリックを評価します。これらのメトリックには、クエリ応答時間、同時処理能力、データロード、クエリ最適化などが含まれます。

説明

このトピックにおける SSB の実装は SSB ベンチマークに基づいています。したがって、この結果は、公開されている SSB ベンチマークの結果とは比較できません。

シナリオの説明

このテストシナリオでは、SSB 生成ツールはスケールファクター (SF) を使用して生成するデータ量を制御します。1 SF は 1 GB のデータに相当します。

説明

このデータ量は生データのみを指し、インデックス用のスペースは含まれません。環境を準備する際は、追加のスペースを確保してください。

事前準備

OLAP クエリシナリオに必要な基本環境を準備します。

説明

テスト結果に影響を与える可能性のある変数を減らすため、各テストには新しく作成したインスタンスを使用してください。スペックアップまたはスペックダウンされたインスタンスは使用しないでください。

手順

手順

  1. ECS インスタンスの作成

Alibaba Cloud コンソールにログインし、Elastic Compute Service (ECS) インスタンスを作成します。このインスタンスは、データの生成、StarRocks へのデータのインポート、クライアントテストの実行に使用されます。推奨される仕様は次のとおりです:

  • オペレーティング システム:CentOS または Alibaba Cloud Linux。

  • データディスク:Enhanced SSD (ESSD) を使用します。ディスク容量は、テストのデータ量によって決まります。

  • リージョンと VPC:ECS インスタンスと StarRocks インスタンスが同じリージョンにあり、同じ Virtual Private Cloud (VPC) を使用して接続されていることを確認してください。

  • パブリック IP:パブリック IP アドレスを割り当てます。

ECS インスタンスの作成方法の詳細については、「インスタンスの作成」をご参照ください。

  1. StarRocks インスタンスの作成

このテストでは、バックエンド (BE) の計算リソースは 8 コンピューティングユニット (CU) (8 コア、32 GB メモリ) に設定されています。必要に応じて計算リソースを設定してください。

Alibaba Cloud にログインし、E-MapReduce コンソール の EMR Serverless StarRocks ページに移動し、[インスタンスの作成] をクリックします。

StarRocks インスタンスの作成方法の詳細については、「インスタンスの作成」をご参照ください。

  1. starrocks-benchmark テストツールキットのダウンロードと解凍

ステップ 1 で作成した ECS インスタンスにログインします。ノードで次のコマンドを実行して、テストツールキットをダウンロードします。

sudo wget https://starrocks-oss.oss-cn-beijing.aliyuncs.com/public-access/starrocks-ssb-benchmark-for-serverless.tar.gz
tar xzvf starrocks-ssb-benchmark-for-serverless.tar.gz

手順

ステップ 1:テストツールキットの設定

  1. 作成した ECS インスタンスにログインします。詳細については、「ECS インスタンスへの接続」をご参照ください。

  2. 次のコマンドを実行して、starrocks-ssb-benchmark-for-serverless ディレクトリに移動します。

    cd starrocks-ssb-benchmark-for-serverless
  3. vim conf/starrocks.conf コマンドを実行し、必要に応じて次のパラメーターを変更します。

    # for mysql cmd
    mysql_host: fe-c-7b6f92276******-internal.starrocks.aliyuncs.com
    mysql_port: 9030
    mysql_user: admin
    mysql_password: 1****
    database: ssb_sf
    
    # cluster ports
    http_port: 8030
    
    # Specifies whether to enable the bitmap index.
    bitmap_index: false
    
    # benchmark config
    scale_factor: 1
    dataset_generate_root_path: /mnt/disk1/starrocks-benchmark/datasets

    次の表に、パラメーターを示します。

    パラメーター

    説明

    mysql_host

    StarRocks インスタンスのフロントエンド (FE) のプライベートエンドポイント。

    StarRocks インスタンスの インスタンス詳細 タブの FE 詳細 セクションで プライベートエンドポイント を確認します。

    重要

    パブリックエンドポイントは使用しないでください。

    mysql_port

    StarRocks インスタンスの FE のクエリポート。デフォルト値は 9030 です。

    StarRocks インスタンスの インスタンス詳細 タブの FE 詳細 セクションで クエリポート を確認します。

    mysql_user

    StarRocks インスタンスのユーザー。デフォルト値は admin です。

    mysql_password

    StarRocks インスタンスのユーザーのパスワード。

    database

    StarRocks インスタンスに作成されたデータベースの名前。デフォルト値を使用できます。

    scale_factor

    データセットのスケールファクター。生成するデータ量を制御します。デフォルト値は 1 で、単位は GB です。

    重要

    インスタンスを作成する際は、生成されるデータセットに対してディスクに十分な容量があることを確認してください。

    dataset_generate_root_path

    生成されたテストデータセットを格納するパス。デフォルト値は /mnt/disk1/starrocks-benchmark/datasets です。

    bitmap_index

    ビットマップインデックス機能を有効にするかどうかを指定します。有効な値は true と false です。

    ビットマップインデックス機能を有効にすると、特に Q2.2、Q2.3、Q3.3 などの特定のクエリパターンに対して、より効率的なクエリパフォーマンスを提供できます。

    http_port

    StarRocks インスタンスの FE の HTTP ポート。デフォルト値は 8030 です。

    StarRocks インスタンスの インスタンス詳細 タブの FE 詳細 セクションで HTTP ポート を確認します。

ステップ 2:テストデータの生成

次のコマンドを実行して、SSB データを自動的にロードします。

sh ssb_dataload.sh

このコマンドは、SSB データロードプロセスを自動化します。このプロセスには、データベース、テーブル、データセットの作成、およびデータのロードが含まれます。

ステップ 3:クエリの実行とテスト結果の表示

次のコマンドを実行して、SSB テスト結果の概要を表示します。現在のディレクトリには result.csv ファイルも生成されます。このファイルを表示して、テスト結果の詳細を確認できます。

  • SSB ワイドテーブルクエリ。

    sh ssb_query.sh ssb-flat

    次の情報が返されます。

    SQL     Time(ms)
    Q1.1    26
    Q1.2    13
    Q1.3    20
    Q2.1    46
    Q2.2    40
    Q2.3    26
    Q3.1    40
    Q3.2    33
    Q3.3    30
    Q3.4    23
    Q4.1    26
    Q4.2    30
    Q4.3    20
    Total   373
  • SSB 標準テーブルクエリ。

    sh ssb_query.sh ssb

    次の情報が返されます。

    SQL     Time(ms)
    Q1.1    26
    Q1.2    20
    Q1.3    23
    Q2.1    103
    Q2.2    53
    Q2.3    50
    Q3.1    86
    Q3.2    46
    Q3.3    46
    Q3.4    36
    Q4.1    83
    Q4.2    63
    Q4.3    53
    Total   688