.NET küldése Apache Spark-feladathoz az Azure HDInsightba

A .NET for Apache Spark-feladat kétféleképpen helyezhető üzembe a HDInsightban: spark-submit és az Apache Livyben.

Üzembe helyezés spark-submit használatával

A spark-submit paranccsal elküldheti az Apache Spark-feladatokhoz készült .NET-et az Azure HDInsightnak.

  1. Navigáljon a HDInsight Spark-fürthöz a Azure Portal, majd válassza az SSH + Fürtbe való bejelentkezés lehetőséget.

  2. Másolja ki az ssh bejelentkezési adatokat, és illessze be a bejelentkezést egy terminálba. Jelentkezzen be a fürtbe a fürt létrehozásakor beállított jelszóval. Látnia kell az Ubuntu és a Spark felé üdvözlő üzeneteket.

  3. A spark-submit paranccsal futtassa az alkalmazást a HDInsight-fürtön. Ne felejtse el lecserélni a példaszkript mycontainer és mystorageaccount értékét a blobtároló és a tárfiók tényleges nevére. Ne felejtse el lecserélni a microsoft-spark jar-t a Spark és az Apache Sparkhoz készült .NET verziójára.

    $SPARK_HOME/bin/spark-submit \
    --master yarn \
    --class org.apache.spark.deploy.dotnet.DotnetRunner \
    wasbs://mycontainer@mystorageaccount.blob.core.windows.net/microsoft-spark-<spark_majorversion-spark_minorversion>_<scala_majorversion.scala_minorversion>-<spark_dotnet_version>.jar \
    wasbs://mycontainer@mystorageaccount.blob.core.windows.net/publish.zip mySparkApp
    

Üzembe helyezés az Apache Livy használatával

Az Apache Livy, az Apache Spark REST API használatával .NET-et küldhet az Apache Spark-feladatokhoz egy Azure HDInsight Spark-fürtbe. További információ: Távoli feladatok az Apache Livyvel.

Linux rendszeren a következő parancsot futtathatja a következő paranccsal curl:

curl -k -v -X POST "https://<your spark cluster>.azurehdinsight.net/livy/batches" \
-u "<hdinsight username>:<hdinsight password>" \
-H "Content-Type: application/json" \
-H "X-Requested-By: <hdinsight username>" \
-d @- << EOF
{
    "file":"abfss://<your-file-system-name>@<your-storage-account-name>.dfs.core.windows.net/<some dir>/microsoft-spark-<spark_majorversion-spark_minorversion>_<scala_majorversion.scala_minorversion>-<spark_dotnet_version>.jar",
    "className":"org.apache.spark.deploy.dotnet.DotnetRunner",
    "files":["abfss://<your-file-system-name>@<your-storage-account-name>.dfs.core.windows.net/<some dir>/<udf assembly>", "abfss://<your-file-system-name>@<your-storage-account-name>.dfs.core.windows.net/<some dir>/<file>"],
    "args":["abfss://<your-file-system-name>@<your-storage-account-name>.dfs.core.windows.net/<some dir>/<your app>.zip","<your app>","<app arg 1>","<app arg 2>,"...","<app arg n>"]
}
EOF

Következő lépések