「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。

-[[戻る>Azure]]
--[[ビッグデータ処理テクノロジ>Azureのビッグデータ処理テクノロジ]]
---Azure HDInsight
---[[Azure Databricks]]
---[[Azure Data Factory]]
---[[Elastic on Azure]]

--[[ストリーム処理テクノロジ>Azureのストリーム処理テクノロジ]]
---[[Azure Stream Analytics]]
---Azure HDInsightのHadoop、Spark、Storm
---[[Azure Databricks]]のApache Spark
---[[Azure Data Factory]]
---[[Azure Data Explorer]]

* 目次 [#b8b18407]
#contents

*概要 [#z091fb68]
-[[Hadoop>#v38c7e35]]テクノロジ スタックを使用した~
エンタープライズ向けデータ分析マネージド・サービス

-[[Hadoop>#v38c7e35]]テクノロジ スタック
--Hadoop
--Apache Spark
--Apache Hive
--LLAP
--Apache Kafka
--Apache Storm
--R

※ 今後、メイン・ストリームは、[[Azure Databricks]]に移って行く。

*詳細 [#u6a22044]

*[[開発>#k7cea0d0]] → [[デプロイ>#g5c4a9f0]] → [[実行>#j84b5403]] [#f5646322]
取り敢えず、[[.NET for Apache Spark ガイド>#w086a731]]のコンテンツをやってみる。

**[[開発>.NET for Apache Sparkチュートリアル#s680c185]] [#k7cea0d0]
(Get started in 10 minutes)

**[[デプロイ>.NET for Apache Sparkチュートリアル#b151a3cc]] [#g5c4a9f0]

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

***[[ストレージ・アカウント>Azureのストレージ#t36c3007]]にアクセスする [#efe8ac11]
-[[Azure Storage Explorer>Azureのストレージ#mfc2b935]]を使用しアクセス。
-後述の「[[クラスタの作成>#ib9fc041]]」で必要になるため(≒前提)。

***HDInsight クラスタの作成 [#y688e06c]
-[+ リソースの作成] を選択
-次に、 [分析] カテゴリから [HDInsight] を選択
-[基本] の値を指定
-[ストレージ] で値を指定してBLOBコンテナをマウント

***アプリの発行 [#qfeddf79]
-ターゲットはubuntu
 >dotnet publish -c Release -f netcoreapp3.1 -r ubuntu.16.04-x64

-publishしたものをpublish.zipにまとめる。

***[[依存関係のダウンロード>Azure Databricks#n418b549]] [#a936fd33]

***ファイルのアップロード [#d25e1bdc]
次のファイルをアップロードする。

-発行したアプリ
--publish.zip
--input.txt
--microsoft-spark-2-4_2.11-1.0.0.jar(ローカル実行で使用したもの)

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

-ポイント
--詳細は[[コチラ(Azure Databricks)>Azure Databricks#uee92a05]]
--クラスタのストレージ用に選択した BLOBコンテナにアップロード。
---[[Azure Storage Explorer>#efe8ac11]]を開いて、
---左側のメニューからストレージ アカウントに移動、
---ストレージ アカウント内の [BLOB コンテナー] で、
---クラスターの BLOB コンテナーをドリルダウンする。

**実行 [#j84b5403]

***スクリプト アクションを実行 [#y790895b]
-クラスタで install-worker.sh スクリプトを実行($1-3をパラメタライズ)
-約 20 分で、Linux(ubuntu)ベースのHDInsight Spark クラスタが作成される。

***アプリの実行 [#z4b8527c]
-SSHでターミナルにログインする。

-&color(red){マウントされたストレージにinput.txtをアップロード};~
--BLOB コンテナー内の user/sshuser ディレクトリ
--エラーログを確認して、/user/sshuser/input.txtにアップロードとか...

-spark-submit コマンドを使用して、~
HDInsight クラスタでアプリケーションを実行する。
 $SPARK_HOME/bin/spark-submit \
 --master yarn \
 --class org.apache.spark.deploy.dotnet.DotnetRunner \
 wasbs://<container_name>@<storage_account_name>.blob.core.windows.net/microsoft-spark-2-4_2.11-1.0.0.jar \
 wasbs://<container_name>@<storage_account_name>.blob.core.windows.net/publish.zip mySparkApp

>※ wasbs://~は、
-WASB(Windows Azure Storage Blob)を参照するためのURI。
-実際の <container_name>@<storage_account_name>に置き換える。

>※ [[実行に必要となる引数>.NET for Apache Sparkチュートリアル#s680c185]]が存在する場合、Azure Databricksでは[[コチラ>Azure Databricks#m624da04]]の方法で指定可能だった。

***リソースのクリーンアップ [#lbbc8829]
リソース グループを削除する。

***[[Azure Databricksとの比較>Azure Databricksチュートリアル#h06a7649]] [#n2b1fb3a]
[[スクリプト アクション実行>#y790895b]]
>≒ Azure Databricksの[[クラスタの作成中のdb-init.sh 設定>Azure Databricks#idf9ae6f]]+[[アプリの実行>Azure Databricks#dc744d5b]]

**[[チュートリアル>Azure HDInsightチュートリアル]] [#cd340382]

*参考 [#vf22db69]
-Microsoft Azure / Azure HDInsightとは~
https://www.ossnews.jp/oss_info/Azure_HDInsight

**gihyo.jp … 技術評論社 [#ta4ad084]
-HDInsightを知る~ビッグデータ×クラウド:連載~
https://gihyo.jp/dev/serial/01/hdinsight
--第1回 HDInsightとは何か?~
https://gihyo.jp/dev/serial/01/hdinsight/0001
--第2回 HDInsightを体験する~
https://gihyo.jp/dev/serial/01/hdinsight/0002

**クリエーションライン株式会社 [#tbe30f78]
-HadoopをMicrosoft Azure上で動かしてみる!
--(1/4)https://www.creationline.com/lab/12905
--(2/4)https://www.creationline.com/lab/12984
--(3/4)https://www.creationline.com/lab/13093
--(4/4)https://www.creationline.com/lab/13161

**Microsoft Azurez [#u2469fa4]
-Azure HDInsight - Hadoop、Spark、および Kafka サービス~
https://azure.microsoft.com/ja-jp/services/hdinsight/

-Azure でオープンソース分析を実行~
https://azure.microsoft.com/ja-jp/free/hdinsight/

**Microsoft Docs [#d9fcd3d4]

***Azure HDInsight [#u06c139d]
https://docs.microsoft.com/ja-jp/azure/hdinsight/

-概要~
https://docs.microsoft.com/ja-jp/azure/hdinsight/hdinsight-overview

-チュートリアル

--HDInsight クラスターの作成

--HDInsight クラスターの管理
---ポータル
---CLI
---.NET SDK
---PowerShell

--その他
---Runbook を使用してクラスターを作成する
---Apache Ambari のメール通知
---ETL パイプラインの作成

-サンプル
--Azure CLI のサンプル
--[[.NET のサンプル>#b4841c1d]]
--Java のサンプル
--Python のサンプル
--Azure サンプル ブラウザ

***.NET、C# [#b4841c1d]
-Microsoft Docs
--Azure HDInsight SDK for .NET - Azure for .NET Developers~
https://docs.microsoft.com/ja-jp/dotnet/api/overview/azure/hdinsight

-[[Microsoft Docs > Azure HDInsight>#u06c139d]]

--.NET サンプル~
https://docs.microsoft.com/ja-jp/azure/hdinsight/hdinsight-sdk-dotnet-samples
--非対話型認証 .NET アプリケーション~
https://docs.microsoft.com/ja-jp/azure/hdinsight/hdinsight-create-non-interactive-authentication-dotnet-applications

--Apache Hadoop

---HDInsight .NET SDK を使用して MapReduce ジョブを送信する~
https://docs.microsoft.com/ja-jp/azure/hdinsight/hadoop/apache-hadoop-use-mapreduce-dotnet-sdk
---HDInsight の Hadoop において MapReduce で C# を使用する~
https://docs.microsoft.com/ja-jp/azure/hdinsight/hadoop/apache-hadoop-dotnet-csharp-mapreduce-streaming

--Apache HBase
---HBase .NET SDK の使用~
https://docs.microsoft.com/ja-jp/azure/hdinsight/hbase/apache-hbase-rest-sdk

--Interactive Query

---Apache Hadoop 上での C#、Apache Hive、Apache Pig~
https://docs.microsoft.com/ja-jp/azure/hdinsight/hadoop/apache-hadoop-hive-pig-udf-dotnet-csharp

---HDInsight .NET SDK を使用して Apache Hive クエリを実行する~
https://docs.microsoft.com/ja-jp/azure/hdinsight/hadoop/apache-hadoop-use-hive-dotnet-sdk

---Apache Hive と Data Lake Tools for Visual Studio~
https://docs.microsoft.com/ja-jp/azure/hdinsight/hadoop/apache-hadoop-use-hive-visual-studio

--Apache Storm

---Visual Studio と C# を使った Apache Storm トポロジ~
https://docs.microsoft.com/ja-jp/azure/hdinsight/storm/apache-storm-develop-csharp-visual-studio-topology

---Storm を使用して Event Hubs のイベントを処理する~
https://docs.microsoft.com/ja-jp/azure/hdinsight/storm/apache-storm-develop-csharp-event-hub-topology

-Apache Spark
--[[.NET for Apache Spark>#w086a731]]

***[[.NET for Apache Spark ガイド>.NET for Apache Spark#w086a731]] [#w086a731]
...

-使い方ガイド
--[[データーへの接続>.NET for Apache Sparkチュートリアル#zd2d65ee]]
--リモート ジョブを送信する
---HDInsight にジョブを送信する~
https://docs.microsoft.com/ja-jp/dotnet/spark/how-to-guides/hdinsight-deploy-methods

-[[チュートリアル>.NET for Apache Sparkチュートリアル#zd2d65ee]]
--.NET for Apache Spark アプリケーションをデプロイする~
---Azure HDInsight~
https://docs.microsoft.com/ja-jp/dotnet/spark/tutorials/hdinsight-deployment

-Channel 9 > .NET for Apache Spark 101~
Deploy .NET for Apache Spark App to
--Azure HDInsight [8 of 8]~
https://channel9.msdn.com/Series/NET-for-Apache-Spark-101/Deploy-NET-for-Apache-Spark-App-to-Azure-HDInsight

**[[開発基盤部会 Wiki & Blog>.NET for Apache Spark#zf579f45]] [#v38c7e35]

----
Tags: [[:インフラストラクチャ]], [[:クラウド]], [[:ビッグデータ]], [[:Azure]]

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS