ClickHouse/docs/en/getting-started/example-datasets/reddit-comments.md

68 KiB

slug sidebar_label
/en/getting-started/example-datasets/reddit-comments Reddit comments

Reddit comments dataset

This dataset contains publicly-available comments on Reddit that go back to December, 2005, to March, 2023, and contains over 14B rows of data. The raw data is in JSON format in compressed files and the rows look like the following:

{"controversiality":0,"body":"A look at Vietnam and Mexico exposes the myth of market liberalisation.","subreddit_id":"t5_6","link_id":"t3_17863","stickied":false,"subreddit":"reddit.com","score":2,"ups":2,"author_flair_css_class":null,"created_utc":1134365188,"author_flair_text":null,"author":"frjo","id":"c13","edited":false,"parent_id":"t3_17863","gilded":0,"distinguished":null,"retrieved_on":1473738411}
{"created_utc":1134365725,"author_flair_css_class":null,"score":1,"ups":1,"subreddit":"reddit.com","stickied":false,"link_id":"t3_17866","subreddit_id":"t5_6","controversiality":0,"body":"The site states \"What can I use it for? Meeting notes, Reports, technical specs Sign-up sheets, proposals and much more...\", just like any other new breeed of sites that want us to store everything we have on the web. And they even guarantee multiple levels of security and encryption etc. But what prevents these web site operators fom accessing and/or stealing Meeting notes, Reports, technical specs Sign-up sheets, proposals and much more, for competitive or personal gains...? I am pretty sure that most of them are honest, but what's there to prevent me from setting up a good useful site and stealing all your data? Call me paranoid - I am.","retrieved_on":1473738411,"distinguished":null,"gilded":0,"id":"c14","edited":false,"parent_id":"t3_17866","author":"zse7zse","author_flair_text":null}
{"gilded":0,"distinguished":null,"retrieved_on":1473738411,"author":"[deleted]","author_flair_text":null,"edited":false,"id":"c15","parent_id":"t3_17869","subreddit":"reddit.com","score":0,"ups":0,"created_utc":1134366848,"author_flair_css_class":null,"body":"Jython related topics by Frank Wierzbicki","controversiality":0,"subreddit_id":"t5_6","stickied":false,"link_id":"t3_17869"}
{"gilded":0,"retrieved_on":1473738411,"distinguished":null,"author_flair_text":null,"author":"[deleted]","edited":false,"parent_id":"t3_17870","id":"c16","subreddit":"reddit.com","created_utc":1134367660,"author_flair_css_class":null,"score":1,"ups":1,"body":"[deleted]","controversiality":0,"stickied":false,"link_id":"t3_17870","subreddit_id":"t5_6"}
{"gilded":0,"retrieved_on":1473738411,"distinguished":null,"author_flair_text":null,"author":"rjoseph","edited":false,"id":"c17","parent_id":"t3_17817","subreddit":"reddit.com","author_flair_css_class":null,"created_utc":1134367754,"score":1,"ups":1,"body":"Saft is by far the best extension you could tak onto your Safari","controversiality":0,"link_id":"t3_17817","stickied":false,"subreddit_id":"t5_6"}

A shoutout to Percona for the motivation behind ingesting this dataset, which we have downloaded and stored in an S3 bucket.

:::note The following commands were executed on a Production instance of ClickHouse Cloud with the minimum memory set to 720GB. To run this on your own cluster, replace default in the s3Cluster function call with the name of your cluster. If you do not have a cluster, then replace the s3Cluster function with the s3 function. :::

  1. Let's create a table for the Reddit data:
CREATE TABLE reddit
(
    subreddit LowCardinality(String),
    subreddit_id LowCardinality(String),
    subreddit_type Enum('public' = 1, 'restricted' = 2, 'user' = 3, 'archived' = 4, 'gold_restricted' = 5, 'private' = 6),
    author LowCardinality(String),
    body String CODEC(ZSTD(6)),
    created_date Date DEFAULT toDate(created_utc),
    created_utc DateTime,
    retrieved_on DateTime,
    id String,
    parent_id String,
    link_id String,
    score Int32,
    total_awards_received UInt16,
    controversiality UInt8,
    gilded UInt8,
    collapsed_because_crowd_control UInt8,
    collapsed_reason Enum('' = 0, 'comment score below threshold' = 1, 'may be sensitive content' = 2, 'potentially toxic' = 3, 'potentially toxic content' = 4),
    distinguished Enum('' = 0, 'moderator' = 1, 'admin' = 2, 'special' = 3),
    removal_reason Enum('' = 0, 'legal' = 1),
    author_created_utc DateTime,
    author_fullname LowCardinality(String),
    author_patreon_flair UInt8,
    author_premium UInt8,
    can_gild UInt8,
    can_mod_post UInt8,
    collapsed UInt8,
    is_submitter UInt8,
    _edited String,
    locked UInt8,
    quarantined UInt8,
    no_follow UInt8,
    send_replies UInt8,
    stickied UInt8,
    author_flair_text LowCardinality(String)
)
ENGINE = MergeTree
ORDER BY (subreddit, created_date, author);

:::note The names of the files in S3 start with RC_YYYY-MM where YYYY-MM goes from 2005-12 to 2023-02. The compression changes a couple of times though, so the file extensions are not consistent. For example:

  • the file names are initially RC_2005-12.bz2 to RC_2017-11.bz2
  • then they look like RC_2017-12.xz to RC_2018-09.xz
  • and finally RC_2018-10.zst to RC_2023-02.zst :::
  1. We are going to start with one month of data, but if you want to simply insert every row - skip ahead to step 8 below. The following file has 86M records from December, 2017:
INSERT INTO reddit
    SELECT *
    FROM s3(
        'https://clickhouse-public-datasets.s3.eu-central-1.amazonaws.com/reddit/original/RC_2017-12.xz',
        'JSONEachRow'
    );

  1. It will take a while depending on your resources, but when it's done verify it worked:
SELECT formatReadableQuantity(count())
FROM reddit;
┌─formatReadableQuantity(count())─┐
│ 85.97 million                   │
└─────────────────────────────────┘
  1. Let's see how many unique subreddits were in December of 2017:
SELECT uniqExact(subreddit)
FROM reddit;
┌─uniqExact(subreddit)─┐
│                91613 │
└──────────────────────┘

1 row in set. Elapsed: 1.572 sec. Processed 85.97 million rows, 367.43 MB (54.71 million rows/s., 233.80 MB/s.)
  1. This query returns the top 10 subreddits (in terms of number of comments):
SELECT
    subreddit,
    count() AS c
FROM reddit
GROUP BY subreddit
ORDER BY c DESC
LIMIT 20;
┌─subreddit───────┬───────c─┐
│ AskReddit       │ 5245881 │
│ politics        │ 1753120 │
│ nfl             │ 1220266 │
│ nba             │  960388 │
│ The_Donald      │  931857 │
│ news            │  796617 │
│ worldnews       │  765709 │
│ CFB             │  710360 │
│ gaming          │  602761 │
│ movies          │  601966 │
│ soccer          │  590628 │
│ Bitcoin         │  583783 │
│ pics            │  563408 │
│ StarWars        │  562514 │
│ funny           │  547563 │
│ leagueoflegends │  517213 │
│ teenagers       │  492020 │
│ DestinyTheGame  │  477377 │
│ todayilearned   │  472650 │
│ videos          │  450581 │
└─────────────────┴─────────┘

20 rows in set. Elapsed: 0.368 sec. Processed 85.97 million rows, 367.43 MB (233.34 million rows/s., 997.25 MB/s.)
  1. Here are the top 10 authors in December of 2017, in terms of number of comments posted:
SELECT
    author,
    count() AS c
FROM reddit
GROUP BY author
ORDER BY c DESC
LIMIT 10;
┌─author──────────┬───────c─┐
│ [deleted]       │ 5913324 │
│ AutoModerator   │  784886 │
│ ImagesOfNetwork │   83241 │
│ BitcoinAllBot   │   54484 │
│ imguralbumbot   │   45822 │
│ RPBot           │   29337 │
│ WikiTextBot     │   25982 │
│ Concise_AMA_Bot │   19974 │
│ MTGCardFetcher  │   19103 │
│ TotesMessenger  │   19057 │
└─────────────────┴─────────┘

10 rows in set. Elapsed: 8.143 sec. Processed 85.97 million rows, 711.05 MB (10.56 million rows/s., 87.32 MB/s.)
  1. We already inserted some data, but we will start over:
TRUNCATE TABLE reddit;
  1. This is a fun dataset and it looks like we can find some great information, so let's go ahead and insert the entire dataset from 2005 to 2023. For practical reasons, it works well to insert the data by years starting with...
INSERT INTO reddit
    SELECT *
    FROM s3Cluster(
        'default',
        'https://clickhouse-public-datasets.s3.eu-central-1.amazonaws.com/reddit/original/RC_2005*',
        'JSONEachRow'
    )
    SETTINGS zstd_window_log_max = 31;

...and ending with:

INSERT INTO reddit
SELECT *
FROM s3Cluster(
    'default',
    'https://clickhouse-public-datasets.s3.amazonaws.com/reddit/original/RC_2023*',
    'JSONEachRow'
    )
SETTINGS zstd_window_log_max = 31;

If you do not have a cluster, use s3 instead of s3Cluster:

INSERT INTO reddit
SELECT *
FROM s3(
    'https://clickhouse-public-datasets.s3.amazonaws.com/reddit/original/RC_2005*',
    'JSONEachRow'
    )
SETTINGS zstd_window_log_max = 31;
  1. To verify it worked, here are the number of rows per year (as of February, 2023):
SELECT
    toYear(created_utc) AS year,
    formatReadableQuantity(count())
FROM reddit
GROUP BY year;

┌─year─┬─formatReadableQuantity(count())─┐
│ 2005 │ 1.07 thousand                   │
│ 2006 │ 417.18 thousand                 │
│ 2007 │ 2.46 million                    │
│ 2008 │ 7.24 million                    │
│ 2009 │ 18.86 million                   │
│ 2010 │ 42.93 million                   │
│ 2011 │ 28.91 million                   │
│ 2012 │ 260.31 million                  │
│ 2013 │ 402.21 million                  │
│ 2014 │ 531.80 million                  │
│ 2015 │ 667.76 million                  │
│ 2016 │ 799.90 million                  │
│ 2017 │ 972.86 million                  │
│ 2018 │ 1.24 billion                    │
│ 2019 │ 1.66 billion                    │
│ 2020 │ 2.16 billion                    │
│ 2021 │ 2.59 billion                    │
│ 2022 │ 2.82 billion                    │
│ 2023 │ 474.86 million                  │
└──────┴─────────────────────────────────┘
  1. Let's see how many rows were inserted and how much disk space the table is using:
SELECT
    sum(rows) AS count,
    formatReadableQuantity(count),
    formatReadableSize(sum(bytes)) AS disk_size,
    formatReadableSize(sum(data_uncompressed_bytes)) AS uncompressed_size
FROM system.parts
WHERE (table = 'reddit') AND active;

Notice the compression of disk storage is about 1/3 of the uncompressed size:

┌───────count─┬─formatReadableQuantity(sum(rows))─┬─disk_size─┬─uncompressed_size─┐
│ 14688534662 │ 14.69 billion                     │ 1.03 TiB  │ 3.26 TiB          │
└─────────────┴───────────────────────────────────┴───────────┴───────────────────┘

1 row in set. Elapsed: 0.005 sec.
  1. The following query shows how many comments, authors and subreddits we have for each month:
SELECT
    toStartOfMonth(created_utc) AS firstOfMonth,
    count() AS c,
    bar(c, 0, 50000000, 25) AS bar_count,
    uniq(author) AS authors,
    bar(authors, 0, 5000000, 25) AS bar_authors,
    uniq(subreddit) AS subreddits,
    bar(subreddits, 0, 100000, 25) AS bar_subreddits
FROM reddit
GROUP BY firstOfMonth
ORDER BY firstOfMonth ASC;

This is a substantial query that has to process all 14.69 billion rows, but we still get an impressive response time (about 48 seconds):

┌─firstOfMonth─┬─────────c─┬─bar_count─────────────────┬──authors─┬─bar_authors───────────────┬─subreddits─┬─bar_subreddits────────────┐
│   2005-12-01 │      1075 │                           │      394 │                           │          1 │                           │
│   2006-01-01 │      3666 │                           │      791 │                           │          2 │                           │
│   2006-02-01 │      9095 │                           │     1464 │                           │         18 │                           │
│   2006-03-01 │     13859 │                           │     1958 │                           │         15 │                           │
│   2006-04-01 │     19090 │                           │     2334 │                           │         21 │                           │
│   2006-05-01 │     26859 │                           │     2698 │                           │         21 │                           │
│   2006-06-01 │     29163 │                           │     3043 │                           │         19 │                           │
│   2006-07-01 │     37031 │                           │     3532 │                           │         22 │                           │
│   2006-08-01 │     50559 │                           │     4750 │                           │         24 │                           │
│   2006-09-01 │     50675 │                           │     4908 │                           │         21 │                           │
│   2006-10-01 │     54148 │                           │     5654 │                           │         31 │                           │
│   2006-11-01 │     62021 │                           │     6490 │                           │         23 │                           │
│   2006-12-01 │     61018 │                           │     6707 │                           │         24 │                           │
│   2007-01-01 │     81341 │                           │     7931 │                           │         23 │                           │
│   2007-02-01 │     95634 │                           │     9020 │                           │         21 │                           │
│   2007-03-01 │    112444 │                           │    10842 │                           │         23 │                           │
│   2007-04-01 │    126773 │                           │    10701 │                           │         26 │                           │
│   2007-05-01 │    170097 │                           │    11365 │                           │         25 │                           │
│   2007-06-01 │    178800 │                           │    11267 │                           │         22 │                           │
│   2007-07-01 │    203319 │                           │    12482 │                           │         25 │                           │
│   2007-08-01 │    225111 │                           │    14124 │                           │         30 │                           │
│   2007-09-01 │    259497 │ ▏                         │    15416 │                           │         33 │                           │
│   2007-10-01 │    274170 │ ▏                         │    15302 │                           │         36 │                           │
│   2007-11-01 │    372983 │ ▏                         │    15134 │                           │         43 │                           │
│   2007-12-01 │    363390 │ ▏                         │    15915 │                           │         31 │                           │
│   2008-01-01 │    452990 │ ▏                         │    18857 │                           │        126 │                           │
│   2008-02-01 │    441768 │ ▏                         │    18266 │                           │        173 │                           │
│   2008-03-01 │    463728 │ ▏                         │    18947 │                           │        292 │                           │
│   2008-04-01 │    468317 │ ▏                         │    18590 │                           │        323 │                           │
│   2008-05-01 │    536380 │ ▎                         │    20861 │                           │        375 │                           │
│   2008-06-01 │    577684 │ ▎                         │    22557 │                           │        575 │ ▏                         │
│   2008-07-01 │    592610 │ ▎                         │    23123 │                           │        657 │ ▏                         │
│   2008-08-01 │    595959 │ ▎                         │    23729 │                           │        707 │ ▏                         │
│   2008-09-01 │    680892 │ ▎                         │    26374 │ ▏                         │        801 │ ▏                         │
│   2008-10-01 │    789874 │ ▍                         │    28970 │ ▏                         │        893 │ ▏                         │
│   2008-11-01 │    792310 │ ▍                         │    30272 │ ▏                         │       1024 │ ▎                         │
│   2008-12-01 │    850359 │ ▍                         │    34073 │ ▏                         │       1103 │ ▎                         │
│   2009-01-01 │   1051649 │ ▌                         │    38978 │ ▏                         │       1316 │ ▎                         │
│   2009-02-01 │    944711 │ ▍                         │    43390 │ ▏                         │       1132 │ ▎                         │
│   2009-03-01 │   1048643 │ ▌                         │    46516 │ ▏                         │       1203 │ ▎                         │
│   2009-04-01 │   1094599 │ ▌                         │    48284 │ ▏                         │       1334 │ ▎                         │
│   2009-05-01 │   1201257 │ ▌                         │    52512 │ ▎                         │       1395 │ ▎                         │
│   2009-06-01 │   1258750 │ ▋                         │    57728 │ ▎                         │       1473 │ ▎                         │
│   2009-07-01 │   1470290 │ ▋                         │    60098 │ ▎                         │       1686 │ ▍                         │
│   2009-08-01 │   1750688 │ ▉                         │    67347 │ ▎                         │       1777 │ ▍                         │
│   2009-09-01 │   2032276 │ █                         │    78051 │ ▍                         │       1784 │ ▍                         │
│   2009-10-01 │   2242017 │ █                         │    93409 │ ▍                         │       2071 │ ▌                         │
│   2009-11-01 │   2207444 │ █                         │    95940 │ ▍                         │       2141 │ ▌                         │
│   2009-12-01 │   2560510 │ █▎                        │   104239 │ ▌                         │       2141 │ ▌                         │
│   2010-01-01 │   2884096 │ █▍                        │   114314 │ ▌                         │       2313 │ ▌                         │
│   2010-02-01 │   2687779 │ █▎                        │   115683 │ ▌                         │       2522 │ ▋                         │
│   2010-03-01 │   3228254 │ █▌                        │   125775 │ ▋                         │       2890 │ ▋                         │
│   2010-04-01 │   3209898 │ █▌                        │   128936 │ ▋                         │       3170 │ ▊                         │
│   2010-05-01 │   3267363 │ █▋                        │   131851 │ ▋                         │       3166 │ ▊                         │
│   2010-06-01 │   3532867 │ █▊                        │   139522 │ ▋                         │       3301 │ ▊                         │
│   2010-07-01 │    806612 │ ▍                         │    76486 │ ▍                         │       1955 │ ▍                         │
│   2010-08-01 │   4247982 │ ██                        │   164071 │ ▊                         │       3653 │ ▉                         │
│   2010-09-01 │   4704069 │ ██▎                       │   186613 │ ▉                         │       4009 │ █                         │
│   2010-10-01 │   5032368 │ ██▌                       │   203800 │ █                         │       4154 │ █                         │
│   2010-11-01 │   5689002 │ ██▊                       │   226134 │ █▏                        │       4383 │ █                         │
│   2010-12-01 │   3642690 │ █▊                        │   196847 │ ▉                         │       3914 │ ▉                         │
│   2011-01-01 │   3924540 │ █▉                        │   215057 │ █                         │       4240 │ █                         │
│   2011-02-01 │   3859131 │ █▉                        │   223485 │ █                         │       4371 │ █                         │
│   2011-03-01 │   2877996 │ █▍                        │   208607 │ █                         │       3870 │ ▉                         │
│   2011-04-01 │   3859131 │ █▉                        │   248931 │ █▏                        │       4881 │ █▏                        │
│   2011-06-01 │   3859131 │ █▉                        │   267197 │ █▎                        │       5255 │ █▎                        │
│   2011-08-01 │   2943405 │ █▍                        │   259428 │ █▎                        │       5806 │ █▍                        │
│   2011-10-01 │   3859131 │ █▉                        │   327342 │ █▋                        │       6958 │ █▋                        │
│   2011-12-01 │   3728313 │ █▊                        │   354817 │ █▊                        │       7713 │ █▉                        │
│   2012-01-01 │  16350205 │ ████████▏                 │   696110 │ ███▍                      │      14281 │ ███▌                      │
│   2012-02-01 │  16015695 │ ████████                  │   722892 │ ███▌                      │      14949 │ ███▋                      │
│   2012-03-01 │  17881943 │ ████████▉                 │   789664 │ ███▉                      │      15795 │ ███▉                      │
│   2012-04-01 │  19044534 │ █████████▌                │   842491 │ ████▏                     │      16440 │ ████                      │
│   2012-05-01 │  20388260 │ ██████████▏               │   886176 │ ████▍                     │      16974 │ ████▏                     │
│   2012-06-01 │  21897913 │ ██████████▉               │   946798 │ ████▋                     │      17952 │ ████▍                     │
│   2012-07-01 │  24087517 │ ████████████              │  1018636 │ █████                     │      19069 │ ████▊                     │
│   2012-08-01 │  25703326 │ ████████████▊             │  1094445 │ █████▍                    │      20553 │ █████▏                    │
│   2012-09-01 │  23419524 │ ███████████▋              │  1088491 │ █████▍                    │      20831 │ █████▏                    │
│   2012-10-01 │  24788236 │ ████████████▍             │  1131885 │ █████▋                    │      21868 │ █████▍                    │
│   2012-11-01 │  24648302 │ ████████████▎             │  1167608 │ █████▊                    │      21791 │ █████▍                    │
│   2012-12-01 │  26080276 │ █████████████             │  1218402 │ ██████                    │      22622 │ █████▋                    │
│   2013-01-01 │  30365867 │ ███████████████▏          │  1341703 │ ██████▋                   │      24696 │ ██████▏                   │
│   2013-02-01 │  27213960 │ █████████████▌            │  1304756 │ ██████▌                   │      24514 │ ██████▏                   │
│   2013-03-01 │  30771274 │ ███████████████▍          │  1391703 │ ██████▉                   │      25730 │ ██████▍                   │
│   2013-04-01 │  33259557 │ ████████████████▋         │  1485971 │ ███████▍                  │      27294 │ ██████▊                   │
│   2013-05-01 │  33126225 │ ████████████████▌         │  1506473 │ ███████▌                  │      27299 │ ██████▊                   │
│   2013-06-01 │  32648247 │ ████████████████▎         │  1506650 │ ███████▌                  │      27450 │ ██████▊                   │
│   2013-07-01 │  34922133 │ █████████████████▍        │  1561771 │ ███████▊                  │      28294 │ ███████                   │
│   2013-08-01 │  34766579 │ █████████████████▍        │  1589781 │ ███████▉                  │      28943 │ ███████▏                  │
│   2013-09-01 │  31990369 │ ███████████████▉          │  1570342 │ ███████▊                  │      29408 │ ███████▎                  │
│   2013-10-01 │  35940040 │ █████████████████▉        │  1683770 │ ████████▍                 │      30273 │ ███████▌                  │
│   2013-11-01 │  37396497 │ ██████████████████▋       │  1757467 │ ████████▊                 │      31173 │ ███████▊                  │
│   2013-12-01 │  39810216 │ ███████████████████▉      │  1846204 │ █████████▏                │      32326 │ ████████                  │
│   2014-01-01 │  42420655 │ █████████████████████▏    │  1927229 │ █████████▋                │      35603 │ ████████▉                 │
│   2014-02-01 │  38703362 │ ███████████████████▎      │  1874067 │ █████████▎                │      37007 │ █████████▎                │
│   2014-03-01 │  42459956 │ █████████████████████▏    │  1959888 │ █████████▊                │      37948 │ █████████▍                │
│   2014-04-01 │  42440735 │ █████████████████████▏    │  1951369 │ █████████▊                │      38362 │ █████████▌                │
│   2014-05-01 │  42514094 │ █████████████████████▎    │  1970197 │ █████████▊                │      39078 │ █████████▊                │
│   2014-06-01 │  41990650 │ ████████████████████▉     │  1943850 │ █████████▋                │      38268 │ █████████▌                │
│   2014-07-01 │  46868899 │ ███████████████████████▍  │  2059346 │ ██████████▎               │      40634 │ ██████████▏               │
│   2014-08-01 │  46990813 │ ███████████████████████▍  │  2117335 │ ██████████▌               │      41764 │ ██████████▍               │
│   2014-09-01 │  44992201 │ ██████████████████████▍   │  2124708 │ ██████████▌               │      41890 │ ██████████▍               │
│   2014-10-01 │  47497520 │ ███████████████████████▋  │  2206535 │ ███████████               │      43109 │ ██████████▊               │
│   2014-11-01 │  46118074 │ ███████████████████████   │  2239747 │ ███████████▏              │      43718 │ ██████████▉               │
│   2014-12-01 │  48807699 │ ████████████████████████▍ │  2372945 │ ███████████▊              │      43823 │ ██████████▉               │
│   2015-01-01 │  53851542 │ █████████████████████████ │  2499536 │ ████████████▍             │      47172 │ ███████████▊              │
│   2015-02-01 │  48342747 │ ████████████████████████▏ │  2448496 │ ████████████▏             │      47229 │ ███████████▊              │
│   2015-03-01 │  54564441 │ █████████████████████████ │  2550534 │ ████████████▊             │      48156 │ ████████████              │
│   2015-04-01 │  55005780 │ █████████████████████████ │  2609443 │ █████████████             │      49865 │ ████████████▍             │
│   2015-05-01 │  54504410 │ █████████████████████████ │  2585535 │ ████████████▉             │      50137 │ ████████████▌             │
│   2015-06-01 │  54258492 │ █████████████████████████ │  2595129 │ ████████████▉             │      49598 │ ████████████▍             │
│   2015-07-01 │  58451788 │ █████████████████████████ │  2720026 │ █████████████▌            │      55022 │ █████████████▊            │
│   2015-08-01 │  58075327 │ █████████████████████████ │  2743994 │ █████████████▋            │      55302 │ █████████████▊            │
│   2015-09-01 │  55574825 │ █████████████████████████ │  2672793 │ █████████████▎            │      53960 │ █████████████▍            │
│   2015-10-01 │  59494045 │ █████████████████████████ │  2816426 │ ██████████████            │      70210 │ █████████████████▌        │
│   2015-11-01 │  57117500 │ █████████████████████████ │  2847146 │ ██████████████▏           │      71363 │ █████████████████▊        │
│   2015-12-01 │  58523312 │ █████████████████████████ │  2854840 │ ██████████████▎           │      94559 │ ███████████████████████▋  │
│   2016-01-01 │  61991732 │ █████████████████████████ │  2920366 │ ██████████████▌           │     108438 │ █████████████████████████ │
│   2016-02-01 │  59189875 │ █████████████████████████ │  2854683 │ ██████████████▎           │     109916 │ █████████████████████████ │
│   2016-03-01 │  63918864 │ █████████████████████████ │  2969542 │ ██████████████▊           │      84787 │ █████████████████████▏    │
│   2016-04-01 │  64271256 │ █████████████████████████ │  2999086 │ ██████████████▉           │      61647 │ ███████████████▍          │
│   2016-05-01 │  65212004 │ █████████████████████████ │  3034674 │ ███████████████▏          │      67465 │ ████████████████▊         │
│   2016-06-01 │  65867743 │ █████████████████████████ │  3057604 │ ███████████████▎          │      75170 │ ██████████████████▊       │
│   2016-07-01 │  66974735 │ █████████████████████████ │  3199374 │ ███████████████▉          │      77732 │ ███████████████████▍      │
│   2016-08-01 │  69654819 │ █████████████████████████ │  3239957 │ ████████████████▏         │      63080 │ ███████████████▊          │
│   2016-09-01 │  67024973 │ █████████████████████████ │  3190864 │ ███████████████▉          │      62324 │ ███████████████▌          │
│   2016-10-01 │  71826553 │ █████████████████████████ │  3284340 │ ████████████████▍         │      62549 │ ███████████████▋          │
│   2016-11-01 │  71022319 │ █████████████████████████ │  3300822 │ ████████████████▌         │      69718 │ █████████████████▍        │
│   2016-12-01 │  72942967 │ █████████████████████████ │  3430324 │ █████████████████▏        │      71705 │ █████████████████▉        │
│   2017-01-01 │  78946585 │ █████████████████████████ │  3572093 │ █████████████████▊        │      78198 │ ███████████████████▌      │
│   2017-02-01 │  70609487 │ █████████████████████████ │  3421115 │ █████████████████         │      69823 │ █████████████████▍        │
│   2017-03-01 │  79723106 │ █████████████████████████ │  3638122 │ ██████████████████▏       │      73865 │ ██████████████████▍       │
│   2017-04-01 │  77478009 │ █████████████████████████ │  3620591 │ ██████████████████        │      74387 │ ██████████████████▌       │
│   2017-05-01 │  79810360 │ █████████████████████████ │  3650820 │ ██████████████████▎       │      74356 │ ██████████████████▌       │
│   2017-06-01 │  79901711 │ █████████████████████████ │  3737614 │ ██████████████████▋       │      72114 │ ██████████████████        │
│   2017-07-01 │  81798725 │ █████████████████████████ │  3872330 │ ███████████████████▎      │      76052 │ ███████████████████       │
│   2017-08-01 │  84658503 │ █████████████████████████ │  3960093 │ ███████████████████▊      │      77798 │ ███████████████████▍      │
│   2017-09-01 │  83165192 │ █████████████████████████ │  3880501 │ ███████████████████▍      │      78402 │ ███████████████████▌      │
│   2017-10-01 │  85828912 │ █████████████████████████ │  3980335 │ ███████████████████▉      │      80685 │ ████████████████████▏     │
│   2017-11-01 │  84965681 │ █████████████████████████ │  4026749 │ ████████████████████▏     │      82659 │ ████████████████████▋     │
│   2017-12-01 │  85973810 │ █████████████████████████ │  4196354 │ ████████████████████▉     │      91984 │ ██████████████████████▉   │
│   2018-01-01 │  91558594 │ █████████████████████████ │  4364443 │ █████████████████████▊    │     102577 │ █████████████████████████ │
│   2018-02-01 │  86467179 │ █████████████████████████ │  4277899 │ █████████████████████▍    │     104610 │ █████████████████████████ │
│   2018-03-01 │  96490262 │ █████████████████████████ │  4422470 │ ██████████████████████    │     112559 │ █████████████████████████ │
│   2018-04-01 │  98101232 │ █████████████████████████ │  4572434 │ ██████████████████████▊   │     105284 │ █████████████████████████ │
│   2018-05-01 │ 100109100 │ █████████████████████████ │  4698908 │ ███████████████████████▍  │     103910 │ █████████████████████████ │
│   2018-06-01 │ 100009462 │ █████████████████████████ │  4697426 │ ███████████████████████▍  │     101107 │ █████████████████████████ │
│   2018-07-01 │ 108151359 │ █████████████████████████ │  5099492 │ █████████████████████████ │     106184 │ █████████████████████████ │
│   2018-08-01 │ 107330940 │ █████████████████████████ │  5084082 │ █████████████████████████ │     109985 │ █████████████████████████ │
│   2018-09-01 │ 104473929 │ █████████████████████████ │  5011953 │ █████████████████████████ │     109710 │ █████████████████████████ │
│   2018-10-01 │ 112346556 │ █████████████████████████ │  5320405 │ █████████████████████████ │     112533 │ █████████████████████████ │
│   2018-11-01 │ 112573001 │ █████████████████████████ │  5353282 │ █████████████████████████ │     112211 │ █████████████████████████ │
│   2018-12-01 │ 121953600 │ █████████████████████████ │  5611543 │ █████████████████████████ │     118291 │ █████████████████████████ │
│   2019-01-01 │ 129386587 │ █████████████████████████ │  6016687 │ █████████████████████████ │     125725 │ █████████████████████████ │
│   2019-02-01 │ 120645639 │ █████████████████████████ │  5974488 │ █████████████████████████ │     125420 │ █████████████████████████ │
│   2019-03-01 │ 137650471 │ █████████████████████████ │  6410197 │ █████████████████████████ │     135924 │ █████████████████████████ │
│   2019-04-01 │ 138473643 │ █████████████████████████ │  6416384 │ █████████████████████████ │     139844 │ █████████████████████████ │
│   2019-05-01 │ 142463421 │ █████████████████████████ │  6574836 │ █████████████████████████ │     142012 │ █████████████████████████ │
│   2019-06-01 │ 134172939 │ █████████████████████████ │  6601267 │ █████████████████████████ │     140997 │ █████████████████████████ │
│   2019-07-01 │ 145965083 │ █████████████████████████ │  6901822 │ █████████████████████████ │     147802 │ █████████████████████████ │
│   2019-08-01 │ 146854393 │ █████████████████████████ │  6993882 │ █████████████████████████ │     151888 │ █████████████████████████ │
│   2019-09-01 │ 137540219 │ █████████████████████████ │  7001362 │ █████████████████████████ │     148839 │ █████████████████████████ │
│   2019-10-01 │ 145909884 │ █████████████████████████ │  7160126 │ █████████████████████████ │     152075 │ █████████████████████████ │
│   2019-11-01 │ 138512489 │ █████████████████████████ │  7098723 │ █████████████████████████ │     164597 │ █████████████████████████ │
│   2019-12-01 │ 146012313 │ █████████████████████████ │  7438261 │ █████████████████████████ │     166966 │ █████████████████████████ │
│   2020-01-01 │ 153498208 │ █████████████████████████ │  7703548 │ █████████████████████████ │     174390 │ █████████████████████████ │
│   2020-02-01 │ 148386817 │ █████████████████████████ │  7582031 │ █████████████████████████ │     170257 │ █████████████████████████ │
│   2020-03-01 │ 166266315 │ █████████████████████████ │  8339049 │ █████████████████████████ │     192460 │ █████████████████████████ │
│   2020-04-01 │ 178511581 │ █████████████████████████ │  8991649 │ █████████████████████████ │     202334 │ █████████████████████████ │
│   2020-05-01 │ 189993779 │ █████████████████████████ │  9331358 │ █████████████████████████ │     217357 │ █████████████████████████ │
│   2020-06-01 │ 187914434 │ █████████████████████████ │  9085003 │ █████████████████████████ │     223362 │ █████████████████████████ │
│   2020-07-01 │ 194244994 │ █████████████████████████ │  9321706 │ █████████████████████████ │     228222 │ █████████████████████████ │
│   2020-08-01 │ 196099301 │ █████████████████████████ │  9368408 │ █████████████████████████ │     230251 │ █████████████████████████ │
│   2020-09-01 │ 182549761 │ █████████████████████████ │  9271571 │ █████████████████████████ │     227889 │ █████████████████████████ │
│   2020-10-01 │ 186583890 │ █████████████████████████ │  9396112 │ █████████████████████████ │     233715 │ █████████████████████████ │
│   2020-11-01 │ 186083723 │ █████████████████████████ │  9623053 │ █████████████████████████ │     234963 │ █████████████████████████ │
│   2020-12-01 │ 191317162 │ █████████████████████████ │  9898168 │ █████████████████████████ │     249115 │ █████████████████████████ │
│   2021-01-01 │ 210496207 │ █████████████████████████ │ 10503943 │ █████████████████████████ │     259805 │ █████████████████████████ │
│   2021-02-01 │ 193510365 │ █████████████████████████ │ 10215033 │ █████████████████████████ │     253656 │ █████████████████████████ │
│   2021-03-01 │ 207454415 │ █████████████████████████ │ 10365629 │ █████████████████████████ │     267263 │ █████████████████████████ │
│   2021-04-01 │ 204573086 │ █████████████████████████ │ 10391984 │ █████████████████████████ │     270543 │ █████████████████████████ │
│   2021-05-01 │ 217655366 │ █████████████████████████ │ 10648130 │ █████████████████████████ │     288555 │ █████████████████████████ │
│   2021-06-01 │ 208027069 │ █████████████████████████ │ 10397311 │ █████████████████████████ │     291520 │ █████████████████████████ │
│   2021-07-01 │ 210955954 │ █████████████████████████ │ 10063967 │ █████████████████████████ │     252061 │ █████████████████████████ │
│   2021-08-01 │ 225681244 │ █████████████████████████ │ 10383556 │ █████████████████████████ │     254569 │ █████████████████████████ │
│   2021-09-01 │ 220086513 │ █████████████████████████ │ 10298344 │ █████████████████████████ │     256826 │ █████████████████████████ │
│   2021-10-01 │ 227527379 │ █████████████████████████ │ 10729882 │ █████████████████████████ │     283328 │ █████████████████████████ │
│   2021-11-01 │ 228289963 │ █████████████████████████ │ 10995197 │ █████████████████████████ │     302386 │ █████████████████████████ │
│   2021-12-01 │ 235807471 │ █████████████████████████ │ 11312798 │ █████████████████████████ │     313876 │ █████████████████████████ │
│   2022-01-01 │ 256766679 │ █████████████████████████ │ 12074520 │ █████████████████████████ │     340407 │ █████████████████████████ │
│   2022-02-01 │ 219927645 │ █████████████████████████ │ 10846045 │ █████████████████████████ │     293236 │ █████████████████████████ │
│   2022-03-01 │ 236554668 │ █████████████████████████ │ 11330285 │ █████████████████████████ │     302387 │ █████████████████████████ │
│   2022-04-01 │ 231188077 │ █████████████████████████ │ 11697995 │ █████████████████████████ │     316303 │ █████████████████████████ │
│   2022-05-01 │ 230492108 │ █████████████████████████ │ 11448584 │ █████████████████████████ │     323725 │ █████████████████████████ │
│   2022-06-01 │ 218842949 │ █████████████████████████ │ 11400399 │ █████████████████████████ │     324846 │ █████████████████████████ │
│   2022-07-01 │ 242504279 │ █████████████████████████ │ 12049204 │ █████████████████████████ │     335621 │ █████████████████████████ │
│   2022-08-01 │ 247215325 │ █████████████████████████ │ 12189276 │ █████████████████████████ │     337873 │ █████████████████████████ │
│   2022-09-01 │ 234131223 │ █████████████████████████ │ 11674079 │ █████████████████████████ │     326325 │ █████████████████████████ │
│   2022-10-01 │ 237365072 │ █████████████████████████ │ 11804508 │ █████████████████████████ │     336063 │ █████████████████████████ │
│   2022-11-01 │ 229478878 │ █████████████████████████ │ 11543020 │ █████████████████████████ │     323122 │ █████████████████████████ │
│   2022-12-01 │ 238862690 │ █████████████████████████ │ 11967451 │ █████████████████████████ │     331668 │ █████████████████████████ │
│   2023-01-01 │ 253577512 │ █████████████████████████ │ 12264087 │ █████████████████████████ │     332711 │ █████████████████████████ │
│   2023-02-01 │ 221285501 │ █████████████████████████ │ 11537091 │ █████████████████████████ │     317879 │ █████████████████████████ │
└──────────────┴───────────┴───────────────────────────┴──────────┴───────────────────────────┴────────────┴───────────────────────────┘

203 rows in set. Elapsed: 48.492 sec. Processed 14.69 billion rows, 213.35 GB (302.91 million rows/s., 4.40 GB/s.)
  1. Here are the top 10 subreddits of 2022:
SELECT
    subreddit,
    count() AS count
FROM reddit
WHERE toYear(created_utc) = 2022
GROUP BY subreddit
ORDER BY count DESC
LIMIT 10;
┌─subreddit──────┬────count─┐
│ AskReddit      │ 72312060 │
│ AmItheAsshole  │ 25323210 │
│ teenagers      │ 22355960 │
│ worldnews      │ 17797707 │
│ FreeKarma4U    │ 15652274 │
│ FreeKarma4You  │ 14929055 │
│ wallstreetbets │ 14235271 │
│ politics       │ 12511136 │
│ memes          │ 11610792 │
│ nba            │ 11586571 │
└────────────────┴──────────┘

10 rows in set. Elapsed: 5.956 sec. Processed 14.69 billion rows, 126.19 GB (2.47 billion rows/s., 21.19 GB/s.)
  1. Let's see which subreddits had the biggest increase in comments from 2018 to 2019:
SELECT
    subreddit,
    newcount - oldcount AS diff
FROM
(
    SELECT
        subreddit,
        count(*) AS newcount
    FROM reddit
    WHERE toYear(created_utc) = 2019
    GROUP BY subreddit
)
ALL INNER JOIN
(
    SELECT
        subreddit,
        count(*) AS oldcount
    FROM reddit
    WHERE toYear(created_utc) = 2018
    GROUP BY subreddit
) USING (subreddit)
ORDER BY diff DESC
LIMIT 50
SETTINGS joined_subquery_requires_alias = 0;

It looks like memes and teenagers were busy on Reddit in 2019:

┌─subreddit────────────┬─────diff─┐
│ AskReddit            │ 18765909 │
│ memes                │ 16496996 │
│ teenagers            │ 13071715 │
│ AmItheAsshole        │ 12312663 │
│ dankmemes            │ 12016716 │
│ unpopularopinion     │  6809935 │
│ PewdiepieSubmissions │  6330844 │
│ Market76             │  5213690 │
│ relationship_advice  │  4060717 │
│ Minecraft            │  3328659 │
│ freefolk             │  3227970 │
│ classicwow           │  3063133 │
│ Animemes             │  2866876 │
│ gonewild             │  2457680 │
│ PublicFreakout       │  2452288 │
│ gameofthrones        │  2411661 │
│ RoastMe              │  2378781 │
│ ShitPostCrusaders    │  2345414 │
│ AnthemTheGame        │  1813152 │
│ nfl                  │  1804407 │
│ Showerthoughts       │  1797968 │
│ Cringetopia          │  1764034 │
│ pokemon              │  1763269 │
│ entitledparents      │  1744852 │
│ HistoryMemes         │  1721645 │
│ MortalKombat         │  1718184 │
│ trashy               │  1684357 │
│ ChapoTrapHouse       │  1675363 │
│ Brawlstars           │  1663763 │
│ iamatotalpieceofshit │  1647381 │
│ ukpolitics           │  1599204 │
│ cursedcomments       │  1590781 │
│ Pikabu               │  1578597 │
│ wallstreetbets       │  1535225 │
│ AskOuija             │  1533214 │
│ interestingasfuck    │  1528910 │
│ aww                  │  1439008 │
│ wholesomememes       │  1436566 │
│ SquaredCircle        │  1432172 │
│ insanepeoplefacebook │  1290686 │
│ borderlands3         │  1274462 │
│ FreeKarma4U          │  1217769 │
│ YangForPresidentHQ   │  1186918 │
│ FortniteCompetitive  │  1184508 │
│ AskMen               │  1180820 │
│ EpicSeven            │  1172061 │
│ MurderedByWords      │  1112476 │
│ politics             │  1084087 │
│ barstoolsports       │  1068020 │
│ BattlefieldV         │  1053878 │
└──────────────────────┴──────────┘

50 rows in set. Elapsed: 10.680 sec. Processed 29.38 billion rows, 198.67 GB (2.75 billion rows/s., 18.60 GB/s.)
  1. One more query: let's compare ClickHouse mentions to other technologies like Snowflake and Postgres. This query is a big one because it has to search all 14.69 billion comments three times for a substring, but the performance is actually quite impressive. (Unfortunately ClickHouse users are not very active on Reddit yet):
SELECT
    toStartOfQuarter(created_utc) AS quarter,
    sum(if(positionCaseInsensitive(body, 'clickhouse') > 0, 1, 0)) AS clickhouse,
    sum(if(positionCaseInsensitive(body, 'snowflake') > 0, 1, 0)) AS snowflake,
    sum(if(positionCaseInsensitive(body, 'postgres') > 0, 1, 0)) AS postgres
FROM reddit
GROUP BY quarter
ORDER BY quarter ASC;
┌────quarter─┬─clickhouse─┬─snowflake─┬─postgres─┐
│ 2005-10-01 │          0 │         0 │        0 │
│ 2006-01-01 │          0 │         2 │       23 │
│ 2006-04-01 │          0 │         2 │       24 │
│ 2006-07-01 │          0 │         4 │       13 │
│ 2006-10-01 │          0 │        23 │       73 │
│ 2007-01-01 │          0 │        14 │       91 │
│ 2007-04-01 │          0 │        10 │       59 │
│ 2007-07-01 │          0 │        39 │      116 │
│ 2007-10-01 │          0 │        45 │      125 │
│ 2008-01-01 │          0 │        53 │      234 │
│ 2008-04-01 │          0 │        79 │      303 │
│ 2008-07-01 │          0 │       102 │      174 │
│ 2008-10-01 │          0 │       156 │      323 │
│ 2009-01-01 │          0 │       206 │      208 │
│ 2009-04-01 │          0 │       178 │      417 │
│ 2009-07-01 │          0 │       300 │      295 │
│ 2009-10-01 │          0 │       633 │      589 │
│ 2010-01-01 │          0 │       555 │      501 │
│ 2010-04-01 │          0 │       587 │      469 │
│ 2010-07-01 │          0 │       601 │      696 │
│ 2010-10-01 │          0 │      1246 │      505 │
│ 2011-01-01 │          0 │       758 │      247 │
│ 2011-04-01 │          0 │       537 │      113 │
│ 2011-07-01 │          0 │       173 │       64 │
│ 2011-10-01 │          0 │       649 │       96 │
│ 2012-01-01 │          0 │      4621 │      662 │
│ 2012-04-01 │          0 │      5737 │      785 │
│ 2012-07-01 │          0 │      6097 │     1127 │
│ 2012-10-01 │          0 │      7986 │      600 │
│ 2013-01-01 │          0 │      9704 │      839 │
│ 2013-04-01 │          0 │      8161 │      853 │
│ 2013-07-01 │          0 │      9704 │     1028 │
│ 2013-10-01 │          0 │     12879 │     1404 │
│ 2014-01-01 │          0 │     12317 │     1548 │
│ 2014-04-01 │          0 │     13181 │     1577 │
│ 2014-07-01 │          0 │     15640 │     1710 │
│ 2014-10-01 │          0 │     19479 │     1959 │
│ 2015-01-01 │          0 │     20411 │     2104 │
│ 2015-04-01 │          1 │     20309 │     9112 │
│ 2015-07-01 │          0 │     20325 │     4771 │
│ 2015-10-01 │          0 │     25087 │     3030 │
│ 2016-01-01 │          0 │     23462 │     3126 │
│ 2016-04-01 │          3 │     25496 │     2757 │
│ 2016-07-01 │          4 │     28233 │     2928 │
│ 2016-10-01 │          2 │     45445 │     2449 │
│ 2017-01-01 │          9 │     76019 │     2808 │
│ 2017-04-01 │          9 │     67919 │     2803 │
│ 2017-07-01 │         13 │     68974 │     2771 │
│ 2017-10-01 │         12 │     69730 │     2906 │
│ 2018-01-01 │         17 │     67476 │     3152 │
│ 2018-04-01 │          3 │     67139 │     3986 │
│ 2018-07-01 │         14 │     67979 │     3609 │
│ 2018-10-01 │         28 │     74147 │     3850 │
│ 2019-01-01 │         14 │     80250 │     4305 │
│ 2019-04-01 │         30 │     70307 │     3872 │
│ 2019-07-01 │         33 │     77149 │     4164 │
│ 2019-10-01 │         22 │    113011 │     4369 │
│ 2020-01-01 │         34 │    238273 │     5133 │
│ 2020-04-01 │         52 │    454467 │     6100 │
│ 2020-07-01 │         37 │    406623 │     5507 │
│ 2020-10-01 │         49 │    212143 │     5385 │
│ 2021-01-01 │         56 │    151262 │     5749 │
│ 2021-04-01 │         71 │    119928 │     6039 │
│ 2021-07-01 │         53 │    110342 │     5765 │
│ 2021-10-01 │         92 │    121144 │     6401 │
│ 2022-01-01 │         93 │    107512 │     6772 │
│ 2022-04-01 │        120 │     91560 │     6687 │
│ 2022-07-01 │        183 │     99764 │     7377 │
│ 2022-10-01 │        123 │     99447 │     7052 │
│ 2023-01-01 │        126 │     58733 │     4891 │
└────────────┴────────────┴───────────┴──────────┘

70 rows in set. Elapsed: 325.835 sec. Processed 14.69 billion rows, 2.57 TB (45.08 million rows/s., 7.87 GB/s.)