Google Cloud PlatformのツールのひとつであるBigQuery。これを活用することで、大容量のデータから必要な情報を簡単に抽出・集計できます。この記事では実際にBigQueryにデータをアップロードし、SQLコマンドで集計してみました。
①データをダウンロード
今回は、Kaggleのオープンデータから、iOSアプリの価格や評価などをまとめたデータセットをダウンロードしました。
Mobile App Store ( 7200 apps)
https://www.kaggle.com/ramamet4/app-store-apple-data-set-10k-apps/downloads/app-store-apple-data-set-10k-apps.zip/7
②BigQueryにデータを格納
上記のサイトからCSV形式でデータをダウンロード、BigQueryにアップロードします。BigQueryにアクセス後、プロジェクト配下にデータセットを作成、さらにその配下にテーブルを作成し、データをアップロードします。
アップロードする際、「自動検出 スキーマと入力パラメータ」にチェックを入れると、CSVファイルの一行目が自動的にカラム名に変換され、データ型も識別してくれます。
アップロードしたデータを確認します。
③SQLコマンドで抽出・集計
SQLコマンドを使い、アップロードしたデータを分析します。
アプリのタイプについて、何種類あるのかdistinctコマンドで調べてみます。ニュースやゲームなど23種類あることが分かります。
select distinct
prime_genre
from
`argon-bulwark-240602.da00002.table2`;
項目について、アプリ名、通貨、価格、ユーザー評価、ジャンルの5つに絞り込んで表示しました。
select
track_name,
currency,
price,
user_rating,
prime_genre
from
`argon-bulwark-240602.da00002.table2`;
さらに、無料のものを選び、評価の高い順に並べてみます。
select
track_name,
currency,
price,
user_rating,
prime_genre
from
`argon-bulwark-240602.da00002.table2`
where
price = 0
order by
user_rating desc;
標準的なSQLのクエリは一通り作成できます。グラフ化も簡単なので便利なツールですね。