草庐IT

sparking

全部标签

hadoop - 如何从 Beeline 或任何 JDBC 客户端运行 Hive on Spark 作业?

我正在尝试运行HiveonSpark查询(使用Spark作为执行引擎的Hive查询)。我已经在hive-site.xml中进行了设置我已经启动了一个hiveserver2,并尝试使用Beeline在同一台机器上连接到它,如下所示:$hiveserver2&$$HIVE_HOME/bin/beeline-ujdbc:hive2://myIP:10000-e"selectcount(*)fromitem;"但作业没有提交,我得到以下错误Error:Errorwhileprocessingstatement:FAILED:ExecutionError,returncode1fromorg.a

hadoop - 在 yarn 集群上设置 spark 时需要哪些守护进程?

我了解以下是spark集群所需的守护进程硕士worker(奴隶)驱动程序(提交申请时启动)执行器(提交申请时启动)在yarn集群上设置Spark时,我有一些非常基本的问题是否有单独为spark启动的主守护进程或工作守护进程?我了解yarn集群本身的资源管理器和节点管理器将充当Spark作业的主人和worker。来自这篇文章http://blog.cloudera.com/blog/2014/05/apache-spark-resource-management-and-yarn-app-models/,似乎没有单独用于sparkonyarn的主/从守护进程。如果以上问题的答案是否定的。

apache-spark - dataFrameWriter partitionBy 是否打乱数据?

我以一种方式对数据进行了分区,我只想以另一种方式对其进行分区。所以它基本上是这样的:sqlContext.read().parquet("...").write().partitionBy("...").parquet("...")我想知道这是否会触发随机播放或所有数据都将在本地重新分区,因为在这种情况下,分区意味着只是HDFS中的一个目录,来自同一分区的数据不必位于同一节点上写在HDFS的同一个目录中。 最佳答案 parititionBy和bucketBy都不会打乱数据。但在某些情况下,首先重新分区数据可能是个好主意:df.rep

hadoop - 无法使用 Oozie 部署 Spark 作业

我需要让Spark作业全天候运行24/7,为此我正在使用Oozie。为此,我编写了一个workflow.xml和job.properties文件,其中包含调用它所需的信息。然而,当我尝试使用此发送oozie作业时:ooziejob–config/home/oozie/tst/job.properties-run我收到以下错误消息,非常清楚:java.io.IOException:configurationisnotspecifiedatorg.apache.oozie.cli.OozieCLI.getConfiguration(OozieCLI.java:816)atorg.apach

hadoop - 无法在 CDH 5.7.5 中安装 Spark 2.0

我正在尝试在我的CDH5.7.5集群中安装SPARK2.0。这样做时我遇到了以下错误CDH(lowerthan5.12)parcelrequiredforSPARK2(2.0.0.cloudera1-1.cdh5.7.0.p0.113931)isnotavailableP.S:已关注documentation 最佳答案 取消选中Parcel配置中的ValidateParcelRelations 关于hadoop-无法在CDH5.7.5中安装Spark2.0,我们在StackOverflo

scala - 如何从spark写入文件到cassandra

我是spark和Cassandra的新手。我使用此代码,但它给我错误。valdfprev=df.select(col="se","hu")vala=dfprev.select("se")valb=dfprev.select("hu")valcollection=sc.parallelize(Seq(a,b))collection.saveToCassandra("keyspace","table",SomeColumns("se","hu"))当我在savetocassandra上输入这段代码时,出现错误,错误是:java.lang.IllegalArgumentException:M

apache-spark - Airflow and Spark/Hadoop - 独特的集群或一个用于 Airflow,另一个用于 Spark/Hadoop

我正在尝试弄清楚哪种方式是使用Airflow和Spark/Hadoop的最佳方式。我已经有一个Spark/Hadoop集群,我正在考虑为Airflow创建另一个集群,它将远程提交作业到Spark/Hadoop集群。有什么建议吗?看起来从另一个集群远程部署spark有点复杂,并且会创建一些文件配置重复。 最佳答案 你真的只需要配置一个yarn-site.xml文件,我相信,为了spark-submit--masteryarn--deploy-modeclient上类。(您可以尝试集群部署模式,但我认为让Airflow管理驱动程序并不是

scala - Spark 作业未在本地并行化(使用本地文件系统中的 Parquet + Avro)

编辑2通过将RDD重新分区为8个分区间接解决了问题。遇到avro对象不是“javaserialisable”的障碍,找到了一个片段heretodelegateavroserialisationtokryo.原来的问题依然存在。编辑1:删除了map函数中的局部变量引用我正在编写一个驱动程序,使用parquet和avroforio/schema在spark上运行计算繁重的作业。我似乎无法得到Spark来使用我所有的核心。我究竟做错了什么?是因为我已将键设置为null吗?我刚刚开始了解hadoop如何组织文件。据我所知,因为我的文件有1GB的原始数据,我应该期望看到与默认block和页面大小

hadoop - 来自集群未知主机名的主机的 Spark YARN 客户端作业?

我有一些私有(private)主机可以从YARN集群中通过IP而不是通过主机名可见。当他们尝试以YARN客户端模式提交任何Spark作业时,会尝试从集群连接驱动程序主机。由于默认情况下spark.driver.host配置为本地主机名,因此失败。那么有什么好的选择来处理这个问题吗?诸如自动将``spark.driver.host`设置为用于连接到集群的客户端IP接口(interface)地址之类的东西?正确的DNS解析不是选项。不可能。 最佳答案 基于此http://spark.apache.org/docs/latest/conf

hadoop - 使用 Spark 多次写入 hadoop 分布式文件系统

我创建了一个spark作业,它每天从我的hdfs中读取一个文本文件,并从文本文件的每一行中提取唯一的键。每个文本文件中大约有50000个键。然后通过提取的key过滤相同的数据并保存到hdfs。我想在我的hdfs中创建一个目录,其结构为:hdfs://.../date/key,其中包含过滤后的数据。问题是写入hdfs需要非常非常很长时间,因为有太多的键。现在的写法:valinputData=sparkContext.textFile(""hdfs://...",2)valkeys=extractKey(inputData)//keysisanarrayofapprox50000uniqu