Amazon Web Services

Databricks Community Editionを使ってApache Sparkを無料で学ぶ

こんにちは、エクスチュアの権泳東(コン・ヨンドン)です。
今回は、無料で使えるDatabricks Community Editionについて紹介します。

DatabricksのSpark実行環境として現在AWSまたはAzureを選ぶ事が出来ます。
AWS・Azure両方ともに14日間のフリートライアルが用意されます。

しかし、「14日間では学びきれないから無料でもっとSparkを勉強したい!」という方向けにCommunity Editionが用意されてます。

Sign Up for Databricks Community Edition

Community Editionでは商用版と比較して以下の制限があります。

・6GBメモリのインスタンス1台のみ作成可能(ワーカーノードは作れない)
・ノートブックの基本機能のみ利用可能(コラボレーション機能はない)
・ログインIDは3個まで作成可能
・選べるリージョンはus-west-2のみ

サインアップフォームに記入する

下記ページから申し込みます。
Sign Up for Databricks Community Edition

申し込み画面

必須入力項目は下記のものです。

First Name … 名
Last Name … 姓
Company Name … 会社名
Work Email … 会社のEメール. ここにメールアドレス確認用のリンクが記載されてメールが来る
What is your intended use case? … コミュニティエディションの利用目的
How would you describe your role? … 職種

以上を入力して、reCAPTCHAの「私はロボットではありません」をチェックしたら、「Sign Up」ボタンを押して送信します。

メールアドレスを確認する

しばらくすると、「Welcome to Databricks! Please verify your email address」という件名のメールが届きます。

メールアドレス確認のためのメールが届く

メール内のリンクをクリックするとユーザー登録完了です。

Databricks Community Editionにログインする

以下のログイン画面から入ります。
https://community.cloud.databricks.com/login.html

Databricks Community Editionのホーム画面

クラスターを作る

まずはSparkを実行するためのクラスタ(VM)を作成します。

左のメニューから[Clusters] > [Create Clusters]を開き、クラスター作成画面を開きます。

クラスターの作成

下記の情報を入力します。
選べる項目は少ないので、適当にクラスタの名前をつけて、クラスタをデプロイするAZをus-west-2リージョンの中から選んで作成します。

しばらくするとクラスタの状態が「Running」になるので、これで利用可能になりました。
※Community Editionでは、2時間操作がないクラスタは自動で停止します。

データセットをアップロードする

次に、今回テストで使うデータファイルをアップロードします。
今回はSparkのチュートリアルでよく使われるデータセットを利用します。

grouplensというサイトで公開されている、映画のレビュースコアのデータを使います。

MovieLens 100K Dataset
約1,000人のユーザーによる、およそ1,700作品の映画のレビュースコアが10万件格納されてるというCSVファイルを使います。
上記リンク先から「ml-100k.zip」というファイルをダウンロードして解凍します。

ml-100k.zipをダウンロード

zipファイルの解凍して、その中の「u.data」というファイルをDatabricksにアップロードします。

左のメニューから [Data] > [Add Data]を開きます。
下記のような画面が開くので、[File]のボックスに先程の「u.data」ファイルをドラッグ&ドロップします。

u.dataファイルをアップロード

「File uploaded to /FileStore/tables/u.data」というメッセージが出ればアップロード完了です。
※ここからテーブルを作る事も出来ますが、今回は作りません。

レビュースコアをカウントする

それではノートブックを開いて先程のデータセットを分析します。

左のメニューから[Workspace] > [Create] > [Notebook]を選びます。
下記のダイアログが出るので、ノートブックの名前をつけて、[Create]をクリックします。

これでノートブックが開きます。
ここのテキストエリアにScalaコードを入力してSparkを実行していきます。

ここでは簡単に先程の「u.data」の集計を行います。
ファイルの中身はこのようになってます。

データセットの中身

user id | item id | rating | timestamp

という順番でデータが並んでるのですが、今回は3番目のスコア(1〜5の5段階)だけを使います。
ササっと、「各スコア毎の件数」をカウントします。

このようなScalaコードを書いて実行します。

//ファイル読み込んでSparkのRDD形式にする
val lines = sc.textFile("/FileStore/tables/u.data")

//タブでsplitして3番目のカラム(ゼロベースで2番目)を取得
val rates = lines.map(x => x.toString().split("\t")(2))

//各スコア別にカウント
val results = rates.countByValue()

//多い順でソート
val sorted = results.toSeq.sortBy(_._2).reverse

//出力
sorted.foreach(println)

これの実行結果はこうなります。

(4,34174)
(3,27145)
(5,21201)
(2,11370)
(1,6110)

Scalaコードを実行

4点が34,174件で一番多いという結果になりました。

というわけで、こんなに簡単に無料Sparkを実行出来る環境が手に入った訳です。

ぜひ、Databricks Community Editionを使って気軽にSparkを始めましょう!

弊社はデジタルマーケティングからビッグデータ分析まで幅広くこなすデータ分析のプロ集団です。
お問合わせはこちらからどうぞ。

ブログへの記事リクエストはこちらまでどうぞ。

関連記事

  1. Adobe Analytics

    Adobe Analyticsに入り切らないデータをBigQueryに投入する

    こんにちは、エクスチュアの権泳東(コン・ヨンドン)です。Ado…

  2. プログラミング

    Node.jsでCSVファイル内のダブルクオートで囲まれたカラム内のカンマを除去する

    こんにちは、エクスチュアCTOの権です。いろんなデータを扱う業…

  3. Google Cloud Platform

    Node.js+GAE: 日本語自然文を形態素解析してネガポジ判定をする

    こんにちは、エクスチュアの権泳東(コン・ヨンドン)です。今回は…

  4. Google BigQuery

    Google Apps Scriptを使ってスプレッドシートからBigQueryのテーブルを更新する…

    こんにちは、エクスチュアの権泳東(コン・ヨンドン)です。今回はAp…

  5. Adobe Analytics

    Adobe Analytics: DWHレポートをAWSのS3バケットに配信する

    こんにちは、エクスチュアの権泳東(コン・ヨンドン)です。今回は、A…

  6. Adobe Analytics

    Azure DatabricksでAdobe AnalyticsのDatafeedを分析する

    こんにちは、エクスチュアの権泳東(コン・ヨンドン)です。今回はAz…

最近の記事

  1. ObservePoint TagDebuggerでページに…
  2. Databricks Community Editionを使…
  3. ObservePoint:タグ管理の救世主!サイト監査ツール…
  4. Zapier(ザピエル)経由でSansanで取り込んだ名刺を…
  5. Databricksを始める前に覚えておきたいScalaプロ…
  1. Firebase Analytics

    Firebase Analyticsの新しいBigQueryスキーマを試す
  2. Adobe Dynamic Tag Manager

    Tag Manager: Adobe DTM で Google Analytic…
  3. Adobe Analytics

    Adobe Analytics:セグメントの落とし穴:滞在時間がおかしくなる
  4. Salesforce

    Zapier(ザピエル)経由でSansanで取り込んだ名刺をSalesforce…
  5. Adobe Analytics

    Adobe Analytics: DWHレポートの日付列をBigQueryのDa…
PAGE TOP