UK 不動産価格データセット
このデータには、イングランドおよびウェールズにおける不動産物件の支払い価格が含まれています。データは 1995 年以降のものが利用可能で、非圧縮形式のデータセットのサイズは約 4 GiB です(ClickHouse では約 278 MiB で済みます)。
- 出典: https://www.gov.uk/government/statistical-data-sets/price-paid-data-downloads
- 項目の説明: https://www.gov.uk/guidance/about-the-price-paid-data
- HM Land Registry のデータを含みます © Crown copyright and database right 2021。このデータは Open Government Licence v3.0 に基づきライセンスされています。
テーブルの作成
データの前処理と挿入
url 関数を使用してデータを ClickHouse にストリーミングします。その前に、受信データの一部を前処理する必要があります。内容は次のとおりです:
postcodeを 2 つの別々のカラムpostcode1とpostcode2に分割する(ストレージ効率およびクエリ性能の観点からその方が適しているため)timeフィールドには常に 00:00 の時刻しか含まれていないため、日付型に変換する- 分析には不要なため、UUid フィールドを無視する
- transform 関数を使用して、
typeとdurationを、より読みやすいEnumフィールドに変換する is_newフィールドを、1 文字の文字列 (Y/N) から、0 または 1 を持つ UInt8 フィールドに変換する- 最後の 2 つのカラムはすべて同じ値(0)であるため、削除する
url 関数は、Web サーバーから ClickHouse のテーブルへデータをストリーミングします。次のコマンドは、uk_price_paid テーブルに 500 万行を挿入します:
データの挿入が完了するまで待ちます。ネットワーク速度にもよりますが、1~2分ほどかかります。
データを検証する
何行挿入されたかを確認して、正しく動作したことを検証します。
このクエリを実行した時点で、データセットには 27,450,499 行が含まれていました。ClickHouse におけるこのテーブルのストレージサイズを確認してみましょう。
テーブルのサイズがわずか 221.43 MiB しかないことに注目してください!
いくつかクエリを実行する
データを分析するために、いくつかクエリを実行します。
クエリ 1: 年ごとの平均価格
クエリ 2. ロンドンの1年あたりの平均価格
2020年に住宅価格に異変が起きました!もっとも、それはおそらく驚くことではないでしょうが……
クエリ3. 最も高価なエリア
プロジェクションによるクエリの高速化
これらのクエリはプロジェクションを使用することで高速化できます。このデータセットを使った例については、「Projections」を参照してください。
プレイグラウンドで試してみる
このデータセットは、Online Playground でも利用できます。