À l’instar du Star Schema Benchmark (SSB), TPC-DS repose sur TPC-H, mais suit l’approche inverse : il augmente le nombre de jointures nécessaires en stockant les données dans un schéma en flocon complexe (24 tables au lieu de 8).
La distribution des données est déséquilibrée (par ex. distributions normale et de Poisson).
Il comprend 99 requêtes de reporting et ad hoc avec des substitutions aléatoires.
Références
Génération et importation des données
Commencez par cloner le dépôt TPC-DS, puis compilez le générateur de données :
Ensuite, générez les données. Le paramètre -scale définit le facteur d’échelle.
Créez maintenant des tables dans ClickHouse. Les définitions des tables sont disponibles dans init.sql dans le dépôt ClickHouse.
Les données peuvent être importées comme suit :
Ensuite, exécutez les requêtes générées.
Les 99 requêtes TPC-DS sont disponibles ici, dans le dépôt de ClickHouse.
Pour obtenir un comportement compatible avec la norme SQL et les résultats attendus, appliquez les paramètres définis dans settings.json.
Consultez le README pour connaître les problèmes connus et les remarques concernant certaines requêtes.
Conformité
Les résultats des requêtes correspondent aux résultats officiels, sauf mention contraire. De légères différences de précision peuvent exister ; elles sont autorisées par la spécification TPC-DS. Dernière modification le 2 juillet 2026