LoginSignup
0
2

More than 1 year has passed since last update.

【Databricks】基本的な使い方とCSVのインポート、SQLでの操作までのまとめ

Last updated at Posted at 2021-11-26

こんにちは!
今回、Databricksを利用することになったのですが、いろいろ機能があるので、自分が直近使う範囲でまとめてみようかと思います。

この記事では、基本的な機能やCSVをNotebookから操作する等を行います。
連投する記事ではモデルの作成等も行う予定です。

各タブの機能について

Databricksを開くとサイドバーにいくつかのタブがあります。
現行バージョンの上から順に説明します。

Databricks Data Science & Engineering

今回利用するDatabricks Data Science & Engineeringについてです。
こちらは、ApacheSparkに基づく分析プラットフォームとされています。
Notebookを利用した共同作業等が可能になっています。

Create

Notebook,Table,Cluster,Jobを作成することができます。
これらについては以降の項目で触れることになるので割愛します。

Workspace

workspaceではディレクトリ構造でNotebookなどの作業ファイルを管理することができます。
先ほどのCreateで作成するNotebookはこのWorkspaceのいずれかに配置することになります。

Repos

Gitからリポジトリを複製して持ってこれます。
sys.path.append("/Workspace/Repos/<user-name>/<repo-name>")
のようにすることで、Notebookから参照することもできるようです。

Recents

最新の変更点等が確認できます。

Seach

Workspace内を検索できます。

Data

CSVやDBなどのデータを保存する部分になります。
上述したTableを作成する際はこの中に作成することになります。
Data内ではDBとファイルで管理するタブが分かれています。
ファイルはディレクトリ構造で管理することができ、簡単にNoteBookから参照することができます。

Compute

少し前までClusterというタブだったものです。
Clusterの作成や管理を行えます。
上述したClusterを作成するとここに追加されることになります。

Job

定期実行したりする場合はこのJobを使うことになります。
上述したJobを作成するとここに追加されることになります。

基本的な操作については以上です。
では実際にCSVデータを用意して読み込んでみます。

CSVファイルのUpload

localに適当なCSVファイルを用意してください。
DataタブのDBFSからUploadを選択し、任意のディレクトリにファイルをUploadします。
今回は/FileStore/testdata/test.csvとします。
これでCSVは登録完了です。
では、このデータをNotebookから触ってみたいと思います。

Clusterの作成

まずはNotebookで利用するClusterを作成しましょう。
ComputeタブからCreate Clusterを選択し、あたらしくクラスターを作成します。
クラスター名はtestClusterにしました。
ClusterModeはSingleNode、Runtimeは9.1LSTです。
Terminate…の項目では、利用していない時間がxx分経過したときに自動で停止してくれる設定です。
今回は30分にしました。
WorkertypeはStanderd_F4にしています。

Notebookの作成

Worckspaceを開き、任意の階層で右クリックすることでCreateのメニューが出てきます。
そこからNotebookを選び、作成します。
名称はtestbookとし、デフォルト言語をPythonにしました。
Clusterには先ほど作成したものを選択しましょう。

CSVのインポート確認

それでは、CSVが取得できるか確認してみましょう。
pandasが標準で入っているのでこれを利用してデータを表示してみようと思います。
まず、Clusterを開始する必要があります。こちらはComputeタブから特定のClusterを開いて実行することで確認できます。

notebook
import pandas as pd

print(pd.read_csv("/dbfs/FileStore/testdata/test.csv"))

こちらを実行するとファイルの中身が表示されると思います。

今回はSQLで操作できるように、一旦Tableに保存したいと思います。

notebook
from pyspark.sql.types import *

inputDF = spark.read.format("csv")\
.options(header="true", inferSchema="true")\
.load("/FileStore/testdata/test.csv") # FileStoreからでいいので注意


inputDF.createOrReplaceTempView('csvloadtest')
csvloadtest = inputDF

inputDF =…の部分で先ほどのCSVを読込み、createOrReplaceTempViewによってcsvloadtestという名前で一時Viewを作成します。
これによりクエリでデータを確認することができます。
実際にSQL文でデータを見てみたいと思います。

notebook
%sql
SELECT * FROM csvloadtest

実行すると表が出てくると思います。
実行セル左下のグラフアイコンを押下することでグラフでの表示も可能です。
どの形式のグラフで表示するかも設定可能です。
PlotOptionではグラフで表示するデータを変更可能です。
Excelチックなので結構わかりやすいと思います。

まとめ

今回はDatabricksにCSVデータをアップロードし、SQLでの操作確認まで行ってみました。
目標としてはモデルの作成までを理解したいので、次回はそちらを行っていこうかと思います。

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2