マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

  • Apache Spark ベースのビッグデータ分析プラットフォーム
  • Azure HDInsightとの違いは、
    • Apache Sparkに特化している。
    • Hadoop テクノロジ スタックをドロップ
      HDFSではない、データ ソースを使用できる。
      • データ レイク(Azure Blob Storage or Azure Data Lake Storage)
      • その他(Azure Cosmos DB、Azure SQL Data Warehouseなど)。
  • ビッグデータ分析ワークロードで利用する。
    • ETLのようなバッチ処理
    • データ・パイプラインの過程
    • データ・サイエンティスト向けのフル稼働の計算資源
      には向かない(→ Data Science Virtual Machines)。

らしい。

レイクハウス

  • ただ、
  • ブロンズ
  • シルバー
  • ゴールド

データ領域とか、そう言う概念はあるらしい。

スタック

DELTA LAKE

ACIDトランザクションを実現するレイヤ

DELTA ENGINE

  • 高性能なクエリ・エンジン
  • Apache Spark 3.0で開発。

上モノ

  • Redash
  • Workspace
    生産性向上
  • MLflow
    標準化された機械学習ライフサイクル
    • モデルの構築とトラッキング
    • 再現可能なプロジェクト
    • モデルの管理
    • 柔軟なデプロイ方法

OSSとの違い

クラウド・サービスOSS
DELTA LAKEDELTA LAKE
DELTA ENGINE

詳細

取り敢えず、.NET for Apache Spark ガイドのコンテンツをやってみる。

開発

(Get started in 10 minutes)

デプロイ

※ 無料試用版サブスクリプションは利用不可との事。

ワークスペースを作成

ワークスペースの作成には数分かかる。

ツールのインストール

  • インストールの確認
    >python
    ...
  • Databricks CLIのインストール
    >pip3 install databricks-cli
  • インストールの確認
    >databricks
    ...

設定

  • 認証の詳細を設定
    >databricks configure --token
  • ホスト URLの入力
    Databricks Host (should begin with https://): https://<Location>.azuredatabricks.net
  • ワークスペース起動
  • ユーザー設定
  • トークンを生成
    • 取得
    • 入力
      Token: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

アプリの発行

  • ターゲットはubuntu
    >dotnet publish -c Release -f netcoreapp3.1 -r ubuntu.16.04-x64
  • publishしたものをpublish.zipにまとめる。

ワーカーの依存関係のダウンロード

次のファイルをダウンロードする。

  • Microsoft.Spark.Worker(ローカル実行で使用したものに対応するLinux版の*.tar.gz)
  • install-worker.sh
  • db-init.sh

※ *.shの行の終わりは Unix 形式 (LF) であることを確認
https://github.com/dotnet/spark/tree/master/deployment

ファイルのアップロード

次のファイルをアップロードする(Databricks CLI

  • 発行したアプリ
    • publish.zip
    • input.txt
    • microsoft-spark-2-4_2.11-1.0.0.jar(ローカル実行で使用したもの)
      databricks fs cp input.txt dbfs:/input.txt
      databricks fs cp publish.zip dbfs:/spark-dotnet/publish.zip
      databricks fs cp microsoft-spark-2-4_2.11-1.0.0.jar dbfs:/spark-dotnet/microsoft-spark-2-4_2.11-1.0.0.jar
  • 依存関係
    • Microsoft.Spark.Worker(ローカル実行で使用したものに対応するLinux版の*.tar.gz)
    • install-worker.sh
    • db-init.sh
      databricks fs cp Microsoft.Spark.Worker.netcoreapp3.1.linux-x64-1.0.0.tar.gz 
      dbfs:/spark-dotnet/Microsoft.Spark.Worker.netcoreapp3.1.linux-x64-1.0.0.tar.gz
      databricks fs cp install-worker.sh dbfs:/spark-dotnet/install-worker.sh
      databricks fs cp db-init.sh dbfs:/spark-dotnet/db-init.sh

クラスタの作成

  • Initスクリプトを db-init.sh に設定
  • db-init.sh 内で install-worker.sh が構成される($1-3をパラメタライズ)。

※ install-worker.sh は、.NET for Apache Spark 依存ファイルをクラスタのノードにコピーする。

ジョブの作成

WebのGUIを使用して、spark-submit を構成

["--class","org.apache.spark.deploy.dotnet.DotnetRunner","/dbfs/spark-dotnet/microsoft-spark-2-4_2.11-1.0.0.jar","/dbfs/spark-dotnet/publish.zip","mySparkApp"]

同様に、多分、引数にinput.txtを足す必要があるのではないか?と。

アプリの実行

  • ここで、Initスクリプトが実行される。
  • ジョブのクラスタが作成されるまで数分かかる。
  • 新しく構成した Spark クラスタでジョブが実行される。

リソースのクリーンアップ

リソース グループを削除する。

Azure HDInsightとの比較

クラスタの作成中のdb-init.sh 設定アプリの実行

スクリプト アクション実行

参考

gihyo.jp … 技術評論社

クリエーションライン株式会社

Microsoft Azure

Microsoft Docs

Azure Databricks のドキュメント

https://docs.microsoft.com/ja-jp/azure/databricks/

  • クイックスタート
    ワークスペースの作成
    • ポータル
    • Azure PowerShell
    • ARM テンプレート
    • 仮想ネットワーク
  • チュートリアル
    • Docker コンテナで稼働している SQL Server に対するクエリ
    • Azure Key Vault を使用したストレージへのアクセス
    • Cosmos DB サービス エンドポイントの使用
    • ETL 操作の実行
    • Event Hubs を使用したデータのストリーミング
    • Cognitive Services を使用した感情分析

.NET、C#

  • ...

.NET for Apache Spark ガイド

...

slideshare.net

開発基盤部会 Wiki


Tags: :クラウド, :Azure


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2020-11-25 (水) 20:09:17 (3h)