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. 最速で理解したい人のためのIT用語集

関連記事

  1. Amazon Web Services

    【初心者向け】AWSを学ぶ前に確認したい用語

    【初心者向け】AWSを学ぶ前に確認したい用語クラウド「インター…

  2. Databricks

    Databricks: Spark DataFramesをJDBCから作成する

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

  3. Adobe Analytics

    Adobe Mobile SDK 4.xからAEP SDKに移行する

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

  4. Amazon Web Services

    ELB (ALB・NLB・CLB) をサクッと学ぶ

    ELB(Elastic Load Balancing)とは3種類の…

  5. Adobe Analytics

    AA + GA : SafariのITP2.1に備えてphpでクッキーを永続化する

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

  6. Adobe Analytics

    AdobeAnalytics: s.Util.getQueryParam で複数パラメータ同時取得

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

最近の記事

  1. LangChainのソースコードから実装を見てみる(Chat…
  2. Tableau×Teams連携
  3. AIを使ったマーケティングゲームを作ってみた
  4. Snowflakeや最新データ基盤が広義のマーケティングにも…
  5. 回帰分析はかく語りき Part3 ロジスティック回帰
  1. Adobe Analytics

    続・SafariのITP2.x対策として別サーバー使ってクッキーを永続化する
  2. Data Clean Room

    忘年会シーズンに「DCRごっこ」のご提案
  3. Google Analytics

    【GA4】DebugViewの使い方
  4. Mouseflow

    【Tips】mouseflowで特定の流入経路からサイトを訪問した場合のみ計測さ…
  5. IT用語集

    OS(Operating System)って何?
PAGE TOP