Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 如何从本地提交spark作业并连接到Cassandra群集_Apache Spark_Cassandra_Spark Cassandra Connector - Fatal编程技术网

Apache spark 如何从本地提交spark作业并连接到Cassandra群集

Apache spark 如何从本地提交spark作业并连接到Cassandra群集,apache-spark,cassandra,spark-cassandra-connector,Apache Spark,Cassandra,Spark Cassandra Connector,请任何人告诉我如何从本地提交spark作业并连接到Cassandra群集 目前,我在通过putty登录Cassandra节点并提交以下dse Spark submit job命令后提交Spark作业 命令: dse spark submit--class*****--total executor cores 6--executor memory 2G**/**/**.jar--config file build/job.conf--args 通过上面的命令,我的spark作业能够连接到集群并执行

请任何人告诉我如何从本地提交spark作业并连接到Cassandra群集

目前,我在通过putty登录Cassandra节点并提交以下dse Spark submit job命令后提交Spark作业

命令:
dse spark submit--class*****--total executor cores 6--executor memory 2G**/**/**.jar--config file build/job.conf--args

通过上面的命令,我的spark作业能够连接到集群并执行它,但有时会遇到问题


所以我想从我的本地机器提交spark作业。谁能告诉我怎么做。

你说的“在本地运行我的作业”有几个意思

以下是我的一些解释

在本地计算机上运行Spark驱动程序,但访问远程群集的资源 出于几个原因,我不建议这样做,最大的原因是您的所有作业管理仍将在远程机器和集群中的执行者之间处理。这相当于让Hadoop作业跟踪器在不同于Hadoop发行版其余部分的集群中运行

要实现这一点,您需要使用特定的主uri运行spark submit。此外,您还需要通过
spark.Cassandra.connection.host

dse spark-submit --master spark://sparkmasterip:7077 --conf spark.cassandra.connection.host aCassandraNode --flags jar
把罐子放在最后是很重要的。jar之后的所有参数都被解释为应用程序的参数,而不是spark submit参数

在本地计算机上运行Spark Submit,但让驱动程序在集群中运行(集群模式) 集群模式意味着您的本地计算机将jar和环境字符串发送到Spark主机。Spark Master然后选择一个辅助进程来实际运行驱动程序,该驱动程序由辅助进程作为单独的JVM启动。这是使用
--deploy mode cluster
标志触发的。除了指定主机和Cassandra连接主机之外

dse spark-submit --master spark://sparkmasterip:7077 --deploy-mode cluster --conf spark.cassandra.connection.host aCassandraNode --flags jar
Local
模式下运行火花驱动程序 最后,Spark存在一个
Local
模式,它在单个JVM中启动整个Spark框架。这主要用于测试。本地模式通过传递“---master Local”激活``

有关更多信息,请查看Spark提交申请的文档


您所说的“在本地运行我的作业”有几种含义

以下是我的一些解释

在本地计算机上运行Spark驱动程序,但访问远程群集的资源 出于几个原因,我不建议这样做,最大的原因是您的所有作业管理仍将在远程机器和集群中的执行者之间处理。这相当于让Hadoop作业跟踪器在不同于Hadoop发行版其余部分的集群中运行

要实现这一点,您需要使用特定的主uri运行spark submit。此外,您还需要通过
spark.Cassandra.connection.host

dse spark-submit --master spark://sparkmasterip:7077 --conf spark.cassandra.connection.host aCassandraNode --flags jar
把罐子放在最后是很重要的。jar之后的所有参数都被解释为应用程序的参数,而不是spark submit参数

在本地计算机上运行Spark Submit,但让驱动程序在集群中运行(集群模式) 集群模式意味着您的本地计算机将jar和环境字符串发送到Spark主机。Spark Master然后选择一个辅助进程来实际运行驱动程序,该驱动程序由辅助进程作为单独的JVM启动。这是使用
--deploy mode cluster
标志触发的。除了指定主机和Cassandra连接主机之外

dse spark-submit --master spark://sparkmasterip:7077 --deploy-mode cluster --conf spark.cassandra.connection.host aCassandraNode --flags jar
Local
模式下运行火花驱动程序 最后,Spark存在一个
Local
模式,它在单个JVM中启动整个Spark框架。这主要用于测试。本地模式通过传递“---master Local”激活``

有关更多信息,请查看Spark提交申请的文档


我试图编辑答案,但不允许编辑1个字符。但是
--conf spark.cassandra.connection.host aCassandraNode
应该是
--conf spark.cassandra.connection.host=aCassandraNode
我试图编辑答案,但不允许编辑1个字符。但是
--conf spark.cassandra.connection.host aCassandraNode
应该是
--conf spark.cassandra.connection.host=aCassandraNode