草庐IT

spark-ml

全部标签

performance - Apache Spark 分布式环境调优

我会在分布式环境中最大限度地提高Hadoop性能(使用ApacheSpark和Yarn)并且我正在遵循blogpostofCloudera上的提示使用此配置:6nodes,16core/node,ram64G/node建议的解决方案是:--num-executors17--executor-cores5--executor-memory19G但我不明白为什么他们使用17个num执行器(换句话说每个节点3个执行器)。我们的配置是:8nodes,8core/node,ram8G/node什么是最好的解决方案? 最佳答案 你的内存很低。我

hadoop - 当 spark-shell 启动时,它有 SimpleUserGroupsMapping 的 RuntimeException

我通过Ambari安装HDFS、YARN并尝试在yarn上部署spark。但是当我执行follow脚本时,Spark出现错误如何在yarn上部署spark。您介意解释一下如何逐步在yarn上部署spark吗?我在spark-env.sh中设置了HADOOP_CONF_DIR、YARN_CONF_DIR,在spark-defaults.conf中设置了spark.master。执行脚本./bin/spark-shell--masteryarn-client错误Exceptioninthread"main"java.lang.RuntimeException:java.lang.Runti

hadoop - 如何在 Cloudera 中安装自定义 Spark 版本

我是Spark、Hadoop和Cloudera的新手。我们需要使用特定版本(1.5.2)的Spark,并且还需要使用Cloudera进行集群管理,也需要使用Spark。但是,CDH5.5是随Spark1.5.0一起提供的,不能轻易更改。人们提到“只需手动下载”自定义版本的spark。但是如何通过Cloudera管理这个“自定义”spark版本,以便我可以在集群中分发它?或者,它是否需要完全独立于Cloudera进行操作和配置?感谢您的帮助和解释。 最佳答案 是的,可以运行任何ApacheSpark版本。!!在做之前我们需要确定的步骤

scala - 使用 Apache Spark 写入 HDFS 时的输出序列

我正在使用apacheSpark开发一个项目,要求将经过处理的spark输出写入特定格式,例如Header->Data->Trailer。为了写入HDFS,我使用.saveAsHadoopFile方法并使用key作为文件名将数据写入多个文件。但问题是数据的顺序未维护,文件写入Data->Header->Trailer或三者的不同组合。RDD转换有什么我遗漏的吗? 最佳答案 好的,在阅读了来自Google的StackOverflow问题、博客和邮件存档之后。我发现了.union()和其他转换的工作原理以及分区的管理方式。当我们使用.u

hadoop - 用于分布式数据存储的 Hadoop 或 Spark 连接器如何运作?

Spark具有用于各种数据库和数据存储的连接器。但是,为您自己的自定义分布式数据库创建连接器需要什么。据我了解,Spark使用Hadoop连接器从分布式数据存储中获取数据。我找不到很好的资源来了解Hadoop连接器的工作原理和制作方法。我想了解Hadoop连接器的语义,以便能够为我的自定义数据库创建一个连接器。 最佳答案 您必须使用带有HadoopAPI的Java实现记录读取器然后Spark就可以使用了我的建议是从阅读TomWhite的书开始 关于hadoop-用于分布式数据存储的Had

java - 从目录中读取 HTML 文件并分别发送每个文件的内容以在 java spark 中的方法中进行处理

我是spark的新手,我试图将所有HTML文件放在一个目录中,然后将每个文件的内容分别(如果可能的话还有确切的路径)传递给另一个将处理HTML的方法(我们将使用这从该HTML中提取信息)将只能在Java中执行此操作。提前致谢。 最佳答案 您可以使用sc.wholeTextFiles方法创建您的RDD,并在RDD上使用映射转换应用您的处理逻辑。示例代码在这里>JavaSparkContextjsc=newJavaSparkContext(sc);>JavaPairRDDrdd=jsc.wholeTextFiles(path);>for

hadoop - Spark 1.6.1 横幅显示

Spark版本:1.6.1forhadoop2.6当我启动pysparkREPL(bin/pyspark)时,会显示SPARKLogo,我看到版本1.6.0而不是1.6.1。我想不通。请注意,spark主文件夹中的RELEASE文件确实显示版本为1.6.1,因此我没有意外下载1.6.0版本。 最佳答案 那里打印的版本似乎来自Java方面。您确定Java库是最新的而不仅仅是PySpark?这是打印横幅的地方:https://github.com/apache/spark/blob/v1.6.1/python/pyspark/shell

Hadoop 容量调度程序和 Spark

如果我按照此处的说明在yarn中定义CapacityScheduler队列http://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/CapacityScheduler.html如何让spark使用它?我想运行spark作业...但它们不应占用所有集群,而是在分配了一组固定资源的CapacityScheduler上执行。这可能......特别是在cloudera平台上(考虑到cloudera上的Spark在yarn上运行?)。 最佳答案 您应该根据需要通过编辑

hadoop - 为什么cloudera建议选择他们在Spark中做的executors、cores和RAM的数量

在博文中:http://blog.cloudera.com/blog/2015/03/how-to-tune-your-apache-spark-jobs-part-2/我用天真的方式来解决它:给定16个内核、64个RAM、8个线程-使用15个内核、63个RAM、6个执行程序。相反,他们推荐17个执行程序、5个内核和19个RAM。我看到他们有一个RAM方程式,但我不知道发生了什么。如果您只在一台机器上运行它(而不是通过HDFS),这是否仍然适用?感谢帮助 最佳答案 我认为他们很好地解释了为什么here:(查看从幻灯片5开始的幻灯片)

hadoop - Spark 流是否适用于 "cp"和 "mv"

我正在使用Spark流我的程序不断从hadoop文件夹中读取流。问题是如果我复制到我的hadoop文件夹(hadoopfs-copyFromLocal)spark作业开始但如果我移动(hadoopfs-mv/hadoopsourcePath/*/destinationPath/)它不起作用。它是Spark流的限制吗?我还有一个与sparkstreaming相关的问题:Cansparkstreamingpickspecificfiles 最佳答案 知道了..它适用于spark1.5但它只选择那些时间戳等于当前时间戳的文件。例如临时文件