草庐IT

sparking

全部标签

hadoop - 使用 HDFS 而不是 spark.local.dir

试图理解为什么Spark需要本地机器上的空间!有办法解决吗?我一直遇到“设备上没有剩余空间”。我知道我可以将“spark.local.dir”设置为以逗号分隔的列表,但有没有办法改用HDFS?我正在尝试合并两个巨大的数据集。在较小的数据集上,Spark是MapReduce的对手,但在我用这些巨大的数据集证明之前,我不能宣布胜利。我没有使用yarn。此外,我们的网关节点(又名边缘节点)不会有很多可用空间。有解决办法吗? 最佳答案 当groupByKey操作时,Spark只是写入tmpDir序列化分区。它是普通文件(请参阅Shuffle

xml - Spark master 不调用 Custom InputFormat

我正在尝试探索ApacheSpark,作为其中的一部分,我想自定义InputFormat。就我而言,我想阅读xml文件并转换每次出现的到新记录。我确实写了定制TextInputFormat(XMLRecordInputFormat.java)返回自定义**XMLRecordReaderextendsorg.apache.hadoop.mapreduce.RecordReader**但我不明白为什么Sparkmaster不调用自定义输入格式(XMLRecordInputFormat.class)?由于某种原因,它继续表现得像普通的分线器。代码如下:importjava.util.Iter

java - web项目中如何使用spark mllib

我正在尝试在Web项目中使用sparkmllib.jar。我下载了spark-1.1.0-bin-hadoop2.4并解压。找到如下jar:datanucleus-api-jdi-3.2.1.jardatanucleus-core-3.2.2.jardatanucleus-rdbms-3.2.1.jarspark-assembly-1.1.0-hadoop2.4.0.jarspark-examples-1.1.0-hadoop2.4.0.jar然后我使用spark-assembly-1.1.0-hadoop2.4.0.jar导入分类方法。在java项目中可以成功运行。但是,当我将jar

java - Apache Spark Streaming 中的非关联聚合

我正在尝试通过apachesparkstreaming在Java中构建一个实用层,用户可以在一段时间内聚合数据(在spark中使用窗口函数),但似乎所有可用的选项都需要关联函数(采用两个参数).然而,对于一些相当常见的用例,例如在一小时内平均温度传感器值等,sparkAPI似乎是不可能的。有没有其他方法可以实现这种功能?我正在考虑实现重复的交互式查询来实现这一点,但它会太慢。 最佳答案 统计聚合(平均值、方差)实际上是关联的,可以在线计算。参见here一个很好的数字方法来做到这一点。就参数数量而言,请记住您放入参数的类型是您的选择。

hadoop - 如何在 spark newAPIHadoopRDD 中获取 hbase 单元的所有版本?

我知道当您使用GetAPI时,您可以设置MAX_VERSION_COUNT以获取单元格的所有版本。但是我没有找到任何关于如何使用sparknewAPIHadoopRDD的映射操作获取所有版本的cell的文档。我尝试了一个天真的result.getColumnCells()并且它只返回1个结果。如何在spark中设置MAX_VERSION_COUNT? 最佳答案 查看TableInputFormat的源代码后,我发现它从hbase.mapreduce.scan.maxversions读取配置。所以像这样设置它是可行的:valconf=

scala - 找不到 Apache Spark Mongo-Hadoop 连接器类

所以我正在尝试运行这个示例https://github.com/plaa/mongo-spark/blob/master/src/main/scala/ScalaWordCount.scala但我一直收到这个错误Exceptioninthread"main"java.lang.NoClassDefFoundError:com/mongodb/hadoop/MongoInputFormatatScalaWordCount$.main(ScalaWordCount.scala:27)我不确定为什么很难找到类(class)。我用Maven构建了这个项目,它似乎构建得很好。/usr/local

java - 使用 maven 构建的 spark 1.2 包 com.google.common 有错误

中央操作系统6.2Hadoop2.6.0scala2.10.5java版“1.7.0_75”OpenJDK运行时环境(rhel-2.5.4.0.el6_6-x86_64u75-b13)OpenJDK64位服务器VM(构建24.75-b04,混合模式)mvn版本ApacheMaven3.3.1(cab6659f9874fa96462afef40fcf6bc033d58c1c;2015-03-13T21:10:27+01:00)Maven主页:/opt/mavenJava版本:1.7.0_75,供应商:OracleCorporationJava主页:/usr/lib/jvm/java-1.

hadoop - 使用 Apache Spark 的 YARN 压缩编解码器

我在YARN上运行ApacheSpark(1.3.0)。YARN_CONF_DIR指向YARN配置。core-site.xml从该目录加载。它包括io.compression.codecs的设置,此列表包括com.hadoop.compression.lzo.LzoCodec,它不包含在预构建的Spark中。这会在启动时导致ClassNotFoundException。作为解决方法,我们可以使用修改后的core-site.xml运行,或者我们可以使用--jars包含所需的Jar文件。这些解决方法都不是很可靠。我不是YARN集群的管理员。集群管理员可以在我不知情的情况下对core-sit

java - 以编程方式向 yarn 提交 spark 应用程序

我觉得能够以编程方式向yarn提交spark应用程序正在成为一个非常普遍的需求。但是在apachespark文档中没有关于它的引用。是否有可能,如果有,是否有直接的方法来实现它。请指教。 最佳答案 正确的做法是将您的驱动程序应用程序变成一个RPC服务器。这样,您只启动一个SparkContext。您传入的RPC请求全部重新使用您现有的SparkContext。我相信文档顺便提到了这个策略,但除此之外这确实超出了Spark文档的范围。我最近使用http4s做了这个,一个可嵌入的功能性HTTP服务器。这是微不足道的。但是选择您选择的RP

Java Spark 溢出内存映射 OutOfMemoryError 错误

我正在运行以下代码(a包含大约10000行):IndexedRowMatrixqTmp=newIndexedRowMatrix(a.rows());IndexedRowMatrixqTmpT=qTmp.toCoordinateMatrix().transpose().toIndexedRowMatrix();我收到以下错误:15/06/1910:08:52INFOExternalAppendOnlyMap:Thread66spillingin-memorymapof24.8MBtodisk(1timesofar)15/06/1910:08:54INFOExternalAppendOnl