PythonによるDatabricks(Spark)利用に関するナレッジ共有の方針

公開:2021/01/30
更新:2021/02/17
3 min読了の目安(約3200字IDEAアイデア記事

はじめに

Databricksをベースに、Sparkの利用方法に関するナレッジ共有する方針を記載します。本記事は随時更新を行います。

下記記事に記載した"ソフトウェアにおける開発手法"のナレッジ共有の一環です。
データ分析におけるナレッジ体系化の計画書 (zenn.dev)

実施内容

  • PySparkによる基本的なデータフレーム操作
  • Koalaによる応用的なデータフレーム操作
  • Delta Lakeをベースにしたデータ連携処理
  • データサイエンス・機械学習におけるライフサイクル管理
  • Spark Streamingによるストリーミング処理

検証環境

Databricks Community Edtion、あるいは、商用Databricksにて実施する。
Databricks Community Edtionの仕様により3人までしか同一ワークスペースで作業できないため、環境構築が容易であるAzure Databricksを利用することとする。

Databricks Community Edtionについては下記より申し込みが可能です。

引用元:Try Databricks

申し込み方法については、下記に記載しております。
無償のSpark実行環境であるDatabricks Community Editionの申し込み方法 - Qiita

事前の学習方法

Databricksの学習コンテンツとして下記が無償で提供されております。

コンテンツは英語であるため、英語が苦手な方は躊躇することなくブラウザの翻訳機能を利用してください

日本語の学習コンテンツとしては、下記が参考になります。
ノートブックが提供されているため、自分で実践できます。

Databricksハンズオンで学ぶ実践Data & AI – Book of Architectures (jixjia.com)

参加要検討と参加メリット

参加要件

  • 成果物に対する著作権の放棄。その後、Github等でOSSとして公開する想定。
  • 1記事20分ぐらいの作業を実施していただくこと。

参加メリット

  • PySparkに対する網羅的な知識の獲得
  • PySparkに関する疑問の解消
  • PySparkの利用シーンを含めたデータ分析基盤に関する疑問の解消

主催者がデータ分析基盤に関するアーキテクトであるため、システムとしての開発・運用に関する相談への対応が可能です。

実施方法

クローズドなコミュニティにて、下記ステップを実施してメンバーに記事を作成していただく想定です。

  1. Sparkに関する基本的なトレーニングの実施
  2. 記事一覧の説明
  3. 記事の作成
  4. 記事の公開

実施内容の詳細

"1. Sparkに関する基本的なトレーニングの実施"について

下記のような内容で実施しました。

"2. 記事一覧の説明"について

下記のように記事一覧を作成します。

"3. 記事の作成"について

詳細内容に関して下記のように整理する想定です

https://databricks-prod-cloudfront.cloud.databricks.com/public/4027ec902e239c93eaaa8714f173bcfc/1013987395344837/1855231811031894/4735237568341061/latest.html

記事内容の目次は下記として、単一のノートブック内でコードを実行できる状態とする。

番号 項目 記載内容
1 はじめに 記載内容の概要を記載。
2 検証環境 利用しているソフトウェア・ライブラリのバージョンを記載。
3 事前準備 コードを実行する上でのデータフレーム作成等の事前に実行するコードを記載。
4 実施方法 コードを記載。実装する方法が複数ある場合にも、記載。
5 注記事項 実装する上での注意事項を記載。
6 参考リンク 公式ドキュメント、参考にしたウェブサイト、参考にした書籍を記載。

"4. 記事の公開"について

記事については、下記のように整理する予定。
Databricks(Azure Databricks)でGithub経由でノートブックを共有する方法 - Qiita

成果物

現時点でなし。