1. 学ぶ
  2. /
  3. コース
  4. /
  5. sparklyr を使った Spark 入門(R)

Connected

演習

Spark へのデータのコピー

Spark を使って実際の分析を行うには、まずデータを Spark に読み込む必要があります。sparklyr には、CSV ファイルを Spark に読み込む spark_read_csv() などの関数が用意されています。より一般的な方法として、R から Spark へデータをコピーする手段も有用です。これには dplyr の copy_to() 関数を使います。ただし注意が必要です。データのコピーは本質的に時間のかかる処理です。大規模データを扱う際のパフォーマンス最適化において、データを別の場所へコピーする操作をいかに避けるかが重要な戦略となります。

copy_to() は、Spark 接続(dest)とコピー先に渡すデータフレーム(df)の2つの引数を受け取ります。

データを Spark にコピーしたら、正しく転送されたかどうか確認したいところです。Spark に格納されているすべてのデータフレームの一覧は、src_tbls() を使って確認できます。この関数は Spark 接続(x)のみを引数として受け取ります。

このコースを通じて、Million Song Dataset の楽曲メタデータを探索していきます。Spark は100万行を超えるデータも難なく処理できますが、操作をシンプルにレスポンスよく保つために、1,000件の楽曲データのサブセットを使用します。用語を整理しておきましょう。トラックはデータセットの1行を指します。この1,000件のデータセットでは、トラックと曲は同じものを指します(ただし、100万行のフルデータセットには重複した曲が含まれていました)。

指示

100 XP

track_metadata は、1,000件の楽曲名、アーティスト名、その他のメタデータを含むデータフレームで、ワークスペースにあらかじめ定義されています。

  • str() を使って track_metadata データセットの構造を確認しましょう。
  • ローカルの Spark クラスターに接続し、接続オブジェクトを spark_conn に格納しましょう。
  • copy_to() を使って track_metadata を Spark クラスターにコピーしましょう。
  • src_tbls() を使って、Spark で利用可能なデータフレームを確認しましょう。
  • Spark との接続を切断しましょう。