Nie*_*Tax 6 azure hdinsight apache-spark
我非常高兴HDInsight切换到Hadoop版本2,它通过YARN支持Apache Spark.对于我想要执行的任务,Apache Spark是一个比MapReduce更好的并行编程范例.
我无法找到任何关于如何将Apache Spark作业提交到我的HDInsight群集的文档.对于标准MapReduce作业的远程作业提交,我知道有几个REST端点,如Templeton和Oozie.但至于我能够找到的,通过Templeton无法运行Spark工作.我确实发现将Spark作业纳入Oozie是可能的,但我已经读到这是一件非常繁琐的事情,而且我已经阅读了一些工作失败检测报告在这种情况下不起作用.
可能必须有一种更合适的方式来提交Spark作业.有谁知道如何将Apache Spark作业的远程作业提交到HDInsight?
提前谢谢了!
您可以在 hdinsight 集群上安装 Spark。您必须通过 创建自定义集群并添加一个操作脚本来完成此操作,该脚本将在为集群创建 VM 时在集群上安装 Spark。
要在集群安装上使用操作脚本进行安装非常简单,您可以在 C# 或 powershell 中通过向标准自定义创建集群脚本/程序添加几行代码来完成此操作。
电源外壳:
# ADD SCRIPT ACTION TO CLUSTER CONFIGURATION
$config = Add-AzureHDInsightScriptAction -Config $config -Name "Install Spark" -ClusterRoleCollection HeadNode -Urin https://hdiconfigactions.blob.core.windows.net/sparkconfigactionv02/spark-installer-v02.ps1
Run Code Online (Sandbox Code Playgroud)
C#:
// ADD THE SCRIPT ACTION TO INSTALL SPARK
clusterInfo.ConfigActions.Add(new ScriptAction(
"Install Spark", // Name of the config action
new ClusterNodeType[] { ClusterNodeType.HeadNode }, // List of nodes to install Spark on
new Uri("https://hdiconfigactions.blob.core.windows.net/sparkconfigactionv02/spark-installer-v02.ps1"), // Location of the script to install Spark
null //because the script used does not require any parameters.
));
Run Code Online (Sandbox Code Playgroud)
然后,您可以通过 RDP 进入头节点并使用 Spark-Shell 或使用 Spark-Submit 来运行作业。我不确定如何运行 Spark 作业而不是 rdp 到头节点,但这是另一个问题。
| 归档时间: |
|
| 查看次数: |
3746 次 |
| 最近记录: |