Tous les produits
Search
Centre de documentation

E-MapReduce:Test de performance SSB

Dernière mise à jour :Aug 20, 2026

Le Star Schema Benchmark (SSB) est un outil standard de l'industrie pour évaluer les performances des requêtes OLAP dans les entrepôts de données. Cette rubrique explique comment exécuter un test de performance SSB sur EMR Serverless StarRocks.

Remarque

L'implémentation SSB présentée dans cette rubrique repose sur le benchmark SSB. Les résultats ne sont pas comparables aux résultats publiés du benchmark SSB.

Résultats de référence

Les résultats suivants ont été mesurés sur une instance de 8 CU (8 cœurs, 32 Go de mémoire). Chaque valeur représente le temps de réponse de la requête en millisecondes. Plus la valeur est faible, meilleures sont les performances.

Environnement de test

Composant Spécification
Unités de calcul (CU) 8 CU (8 cœurs, 32 Go de mémoire)
Facteur d'échelle 1 (1 Go de données brutes)

Requête de table large SSB (mode ssb-flat)

Requête Temps (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

Requête de table standard SSB (mode ssb)

Requête Temps (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

Présentation de SSB

SSB simule un modèle de données en étoile typique composé de cinq tables : Date, Customer, Supplier, Part et Lineorder. Il évalue les métriques de performance suivantes d'un entrepôt de données ou d'un système OLAP :

  • Temps de réponse des requêtes

  • Traitement simultané

  • Chargement des données

  • Optimisation des requêtes

SSB permet également de personnaliser le modèle de données, par exemple en aplatissant le schéma en étoile en une table large afin de réduire la surcharge liée aux jointures.

L'outil de génération SSB utilise un facteur d'échelle (SF) pour contrôler le volume de données : 1 SF correspond à 1 Go de données brutes. Le stockage des index n'est pas inclus ; prévoyez donc de l'espace disque supplémentaire lors de la configuration de votre environnement.

Prérequis

Avant de commencer, assurez-vous de disposer des éléments suivants :

  • Une instance Elastic Compute Service (ECS) pour générer les données, les charger dans StarRocks et exécuter les requêtes client

  • Une instance EMR Serverless StarRocks

Configuration requise pour l'instance ECS

Exigence Détails
Système d'exploitation CentOS ou Alibaba Cloud Linux
Disque de données SSD amélioré (ESSD) ; capacité adaptée au volume de données cible
Réseau Même région et même Virtual Private Cloud (VPC) que l'instance StarRocks
IP publique Requise

Pour obtenir des instructions sur la création d'une instance ECS, consultez Créer une instance.

Configuration requise pour l'instance StarRocks

Les résultats de référence présentés dans cette rubrique ont été obtenus avec 8 CU (8 cœurs, 32 Go de mémoire). Ajustez les ressources de calcul en fonction de vos besoins de test.

Pour créer une instance StarRocks, accédez à la console E-MapReduce, accédez à EMR Serverless StarRocks, puis cliquez sur Create Instance. Pour des instructions détaillées, consultez Créer une instance.

Important

Utilisez une instance nouvellement créée pour chaque exécution de test. Les instances ayant fait l'objet d'une mise à niveau ou d'une rétrogradation peuvent produire des résultats incohérents.

Exécuter le test de performance SSB

Étape 1 : Télécharger et configurer la boîte à outils de test

  1. Connectez-vous à l'instance ECS. Consultez Se connecter à une instance ECS.

  2. Téléchargez et extrayez la boîte à outils de test.

    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
  3. Accédez au répertoire de la boîte à outils.

    cd starrocks-ssb-benchmark-for-serverless
  4. Ouvrez le fichier de configuration.

    vim conf/starrocks.conf
  5. Mettez à jour les paramètres selon votre environnement.

    # 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
    Paramètre Description Valeur par défaut
    mysql_host Endpoint interne du frontend (FE). Vous le trouverez dans l'onglet Instance Details sous Gateway Information > Internal endpoint. —
    mysql_port Port de requête du FE. Vous le trouverez dans l'onglet Instance Details sous FE Details > Query Port. 9030
    mysql_user Utilisateur de l'instance StarRocks. admin
    mysql_password Mot de passe de l'utilisateur de l'instance StarRocks. —
    database Nom de la base de données à créer dans l'instance StarRocks. ssb_sf
    scale_factor Volume de données en Go. 1 = 1 Go de données brutes. Assurez-vous que votre disque dispose d'une capacité suffisante pour l'ensemble de données généré. 1
    dataset_generate_root_path Chemin local où l'ensemble de données de test généré est stocké. /mnt/disk1/starrocks-benchmark/datasets
    bitmap_index Indique s'il faut activer la fonctionnalité Index Bitmap. L'activation améliore les performances des requêtes pour certains modèles, en particulier Q2.2, Q2.3 et Q3.3. false
    http_port Port HTTP du FE. Vous le trouverez dans l'onglet Instance Details sous FE Details > HTTP Port. 8030
    Important

    Définissez mysql_host sur l'endpoint interne, et non sur l'endpoint public.

Étape 2 : Générer et charger les données de test

Exécutez la commande suivante pour créer la base de données, les tables et l'ensemble de données, puis charger les données dans StarRocks.

sh ssb_dataload.sh

Étape 3 : Exécuter les requêtes et consulter les résultats

Exécutez les requêtes en utilisant l'un des modes suivants. Un aperçu est affiché dans le terminal, et un fichier result.csv contenant tous les détails est enregistré dans le répertoire actuel.

  • Mode table large — interroge la table plate pré-jointe :

    sh ssb_query.sh ssb-flat
  • Mode standard — interroge les tables originales du schéma en étoile :

    sh ssb_query.sh ssb

Chaque valeur de la sortie représente le temps de réponse de la requête en millisecondes. Des valeurs plus faibles indiquent de meilleures performances.

Étapes suivantes

  • Ajustez scale_factor dans conf/starrocks.conf pour tester avec des volumes de données plus importants et observer l'évolution des performances.

  • Activez bitmap_index: true et relancez le benchmark pour mesurer l'impact de la fonctionnalité Index Bitmap sur Q2.2, Q2.3 et Q3.3.