Перейти к основному содержанию
Этот набор данных содержит более 150 млн отзывов покупателей о товарах Amazon. Данные хранятся в сжатых алгоритмом snappy файлах Parquet в AWS S3; их общий размер составляет 49 ГБ (в сжатом виде). Давайте по шагам разберем, как вставить эти данные в ClickHouse.
Приведенные ниже запросы были выполнены на инстансе Production в ClickHouse Cloud. Подробнее см. в разделе “Характеристики Песочницы ClickHouse”.

Загрузка набора данных

  1. Не выполняя вставку данных в ClickHouse, мы можем выполнять запросы к ним напрямую. Давайте выберем несколько строк, чтобы посмотреть, как они выглядят:
Строки выглядят так:
  1. Давайте создадим новую таблицу MergeTree с именем amazon_reviews для хранения этих данных в ClickHouse:
  1. Следующая команда INSERT использует табличную функцию s3Cluster, которая позволяет параллельно обрабатывать несколько файлов S3, задействуя все узлы вашего кластера. Мы также используем подстановочный знак, чтобы выполнить вставку всех файлов, имена которых начинаются с https://datasets-documentation.s3.eu-west-3.amazonaws.com/amazon_reviews/amazon_reviews_*.snappy.parquet:
В ClickHouse Cloud имя кластера — default. Замените default на имя вашего кластера…или используйте табличную функцию s3 (вместо s3Cluster), если у вас нет кластера.
  1. Этот запрос выполняется быстро — в среднем около 300 000 строк в секунду. Примерно через 5 минут вы должны увидеть, что все строки вставлены:
  1. Давайте посмотрим, сколько места занимают наши данные:
Исходные данные занимали около 70G, но в ClickHouse в сжатом виде они занимают примерно 30G.

Примеры запросов

  1. Выполним несколько запросов. Вот 10 самых полезных отзывов в наборе данных:
В этом запросе используется проекция для повышения производительности.
  1. Вот 10 товаров на Amazon с наибольшим числом отзывов:
  1. Вот средние оценки отзывов по месяцам для каждого товара (реальный вопрос с собеседования в Amazon!):
  1. Вот общее число голосов по каждой категории товаров. Этот запрос работает быстро, потому что product_category входит в primary key:
  1. Найдём товары, в отзывах к которым слово “awful” встречается чаще всего. Это ресурсоёмкая задача: нужно разобрать более 151 млн строк в поисках одного слова:
runnable
Обратите внимание на время выполнения запроса при таком большом объёме данных. И результаты тоже довольно занятные!
  1. Мы можем снова выполнить тот же запрос, но на этот раз будем искать awesome в отзывах:
runnable
Последнее изменение 25 июня 2026 г.