Passer au contenu principal
Ce jeu de données contient plus de 150 M d’avis clients sur des produits Amazon. Les données se trouvent dans des fichiers Parquet compressés avec Snappy dans AWS S3, pour une taille totale de 49 GB (compressés). Voyons les étapes pour l’insérer dans ClickHouse.
Les requêtes ci-dessous ont été exécutées sur une instance de production de ClickHouse Cloud. Pour plus d’informations, consultez “Spécifications du Playground”.

Chargement du jeu de données

  1. Sans insérer les données dans ClickHouse, nous pouvons les interroger directement. Récupérons quelques lignes pour voir à quoi elles ressemblent :
Les lignes se présentent ainsi :
  1. Définissons une nouvelle table MergeTree nommée amazon_reviews pour stocker ces données dans ClickHouse :
  1. La commande INSERT suivante utilise la fonction de table s3Cluster, qui permet de traiter plusieurs fichiers S3 en parallèle à l’aide de tous les nœuds de votre cluster. Nous utilisons également un caractère générique pour insérer tous les fichiers dont le nom commence par https://datasets-documentation.s3.eu-west-3.amazonaws.com/amazon_reviews/amazon_reviews_*.snappy.parquet :
Dans ClickHouse Cloud, le nom du cluster est default. Remplacez default par le nom de votre cluster… ou utilisez la fonction de table s3 (au lieu de s3Cluster) si vous n’avez pas de cluster.
  1. Cette requête est assez rapide : en moyenne, environ 300 000 lignes par seconde. En 5 minutes environ, vous devriez voir toutes les lignes insérées :
  1. Voyons combien d’espace occupent nos données :
Les données d’origine représentaient environ 70G, mais une fois compressées dans ClickHouse, elles n’occupent plus qu’environ 30G.

Exemples de requêtes

  1. Exécutons quelques requêtes. Voici les 10 avis les plus utiles du jeu de données :
Cette requête utilise une projection pour améliorer les performances.
  1. Voici les 10 produits Amazon qui ont le plus d’avis :
  1. Voici la note moyenne des avis par mois pour chaque produit (une vraie question d’entretien chez Amazon !) :
  1. Voici le nombre total de votes par catégorie de produit. Cette requête est rapide, car product_category fait partie de la clé primaire :
  1. Cherchons les produits pour lesquels le mot “awful” apparaît le plus souvent dans l’avis. C’est un travail considérable : il faut analyser plus de 151 M de chaînes à la recherche d’un seul mot :
runnable
Notez le temps d’exécution de la requête pour un volume de données aussi important. Les résultats sont aussi assez amusants à lire !
  1. Nous pouvons relancer la même requête, mais cette fois en recherchant awesome dans les avis :
runnable
Dernière modification le 3 juillet 2026