YouTubeデータセットを使ったHiveの実践

HadoopベースのデータウェアハウスインフラストラクチャであるApache Hiveでは、大規模な構造化データを処理できます。Hiveでは、SQLライクな問い合わせ言語を使用してデータを処理するため、ユーザーは簡単にデータ分析やクエリを行うことができます。

この実習では、Hiveを使用してYouTubeデータセットを処理します。YouTubeデータセットは、YouTubeビデオの情報を格納したデータセットで、そこにはビデオのID、タイトル、公開日、再生数、高評価数、低評価などが含まれています。このデータセットをHiveにロードし、簡単なデータ分析を行います。

まず、YouTubeデータセットをダウンロードする必要があります。このデータセットは以下のリンクから入手できます。https://archive.org/download/yt8m_pca/yt8m_pca_train.csv

ダウンロードが完了したら、データセットを Hive に読み込む必要があります。次のコマンドを使用して、データテーブルを作成し、データを読み込むことができます。

CREATE TABLE youtube_data (
video_id STRING,
title STRING,
published_at STRING,
view_count BIGINT,
like_count BIGINT,
dislike_count BIGINT
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS TEXTFILE;
LOAD DATA LOCAL INPATH '/path/to/yt8m_pca_train.csv' OVERWRITE INTO TABLE youtube_data;

在上述命令中,我们首先创建了一个名为youtube_data的表,定义了各个字段的类型。然后,通过LOAD DATA命令将数据加载到表中。

読み込みが完了すると、HiveのSQLを使用してデータの照会や分析を実行できるようになります。以下にサンプルクエリを示します。

  1. 動画本数の統計
SELECT COUNT(*) FROM youtube_data;
  1. 視聴数順にソート
SELECT * FROM youtube_data ORDER BY view_count DESC;
  1. 再生数10万件以上の動画数:
SELECT COUNT(*) FROM youtube_data WHERE view_count > 100000;

Hiveを利用することで、大規模な構造化データの検索や分析を容易に行うことができます。Youtubeのデータセットのような大規模なデータセットを扱う場合に威力を発揮します。

bannerAds