草庐IT

spark-graphx

全部标签

scala - 用于 TB 级结构化数据的 Greenplum、Pivo​​tal HD + Spark 或 HAWQ?

我在Greenplum数据库中有数TB的结构化数据。我需要对我的数据运行本质上是MapReduce作业。我发现自己至少重新实现了MapReduce的功能,以便这些数据适合内存(以流方式)。然后我决定到别处寻找更完整的解决方案。我查看了PivotalHD+Spark,因为我使用的是Scala,而Spark基准测试是一个令人惊叹的因素。但我相信这背后的数据存储HDFS的效率将低于Greenplum。(注意“我相信”。我很高兴知道我错了,但请提供一些证据。)因此,为了与Greenplum存储层保持一致,我查看了Pivotal的HAWQ,它基本上是在Greenplum上使用SQL的Hadoop

hadoop - 具有 gzip 格式的大文本文件的 Spark 作业

我正在运行一个Spark作业,它花费了很长时间来处理输入文件。输入文件为6.8GBGzip格式,包含1.1亿行文本。我知道它是Gzip格式,所以它不可拆分,并且只有一个执行程序将用于读取该文件。作为调试过程的一部分,我决定只看看将gzip文件转换为parquet需要多长时间。我的想法是,一旦我转换为parquet文件,然后如果我在该文件上运行我的原始Spark作业,在这种情况下它将使用多个执行程序并且输入文件将被并行处理。但即使是小工作也比我预期的要花更长的时间。这是我的代码:valinput=sqlContext.read.text("input.gz")input.write.pa

scala - Spark : sc. WholeTextFiles 执行时间过长

我有一个集群,我执行了wholeTextFiles,它应该提取大约一百万个文本文件,总计大约10GB我有一个NameNode和两个DataNode,每个都有30GBRAM,每个有4个内核。数据存储在HDFS中。我没有运行任何特殊参数,作业仅读取数据就需要5个小时。这是预期的吗?是否有任何参数可以加快读取速度(spark配置或分区、执行程序数量?)我才刚刚起步,之前从未需要优化工作编辑:此外,有人可以准确解释wholeTextFiles函数的工作原理吗?(不是如何使用它,而是它是如何编程的)。我非常有兴趣了解分区参数等。编辑2:基准评估所以我尝试在wholeTextFile之后重新分区,

hadoop - Google Cloud Dataproc - Spark 和 Hadoop 版本

在GoogleCloudDataproc测试版中,Spark和Hadoop的版本是什么?Spark是为哪个版本的Scala编译的? 最佳答案 根据officialannouncement:Today,wearelaunchingwithclustersthathaveSpark1.5andHadoop2.7.1. 关于hadoop-GoogleCloudDataproc-Spark和Hadoop版本,我们在StackOverflow上找到一个类似的问题: ht

java - 使用带迭代器的 mapPartition 保存 spark RDD

我有一些中间数据需要存储在HDFS和本地。我正在使用Spark1.6。在作为中间形式的HDFS中,我在/output/testDummy/part-00000和/output/testDummy/part-00001中获取数据。我想使用Java/Scala将这些分区保存在本地,这样我就可以将它们保存为/users/home/indexes/index.nt(通过在本地合并)或/users/home/indexes/index-0000.nt和/home/indexes/index-0001.nt分开。这是我的代码:注意:testDummy与test相同,输出有两个分区。我想将它们单独存

java - Apache Spark : TaskResultLost (result lost from block manager) Error On cluster

我在Virtualbox上有一个带有3个从节点的Spark独立集群。我的代码在Java上,它可以很好地处理我的小输入数据集,它们的输入总共大约100MB。我将我的虚拟机RAM设置为16GB,但是当我在大输入文件(大约2GB)上运行我的代码时,在我的reduce部分处理数小时后出现此错误:Jobabortedduetostagefailure:Totalsizeofserializedresultsof4tasks(4.3GB)isbiggerthanspark.driver.maxResultSize`我编辑了spark-defaults.conf并为spark.driver.maxR

java - 无法在 Spark 中配置 ORC 属性

我正在使用Spark1.6(Cloudera5.8.2)并尝试了以下方法来配置ORC属性。但不影响输出。下面是我试过的代码片段。DataFramedataframe=hiveContext.createDataFrame(rowData,schema);dataframe.write().format("orc").options(newHashMap(){{put("orc.compress","SNAPPY");put("hive.exec.orc.default.compress","SNAPPY");put("orc.compress.size","524288");put("

scala - Spark 作业失败,退出状态为 15

我正在尝试在spark中运行简单的字数统计作业,但在运行作业时出现异常。Formoredetailedoutput,checkapplicationtrackingpage:http://quickstart.cloudera:8088/proxy/application_1446699275562_0006/Then,clickonlinkstologsofeachattempt.Diagnostics:Exceptionfromcontainer-launch.Containerid:container_1446699275562_0006_02_000001Exitcode:15

hadoop - Spark 将数据写入分区的 Hive 表非常慢

我想以普通可读文本格式将Spark数据帧存储到Hive表中。为此,我首先做了sqlContext.sql("SETspark.sql.hive.convertMetastoreParquet=false")我的DataFrame是这样的:final_data1_df=sqlContext.sql("selecta,bfromfinal_data")我正在尝试通过以下方式编写它:final_data1_df.write.partitionBy("b").mode("overwrite").saveAsTable("eefe_lstr3.final_data1")但这很慢,甚至比HIVE写

hadoop - Spark vs MapReduce,为什么Spark比MR快,原理?

据我所知,Spark将每个节点的磁盘(HDFS)中的数据预加载到每个节点的RDD中进行计算。但正如我猜测的那样,MapReduce必须还将数据从HDFS加载到内存,然后在内存中进行计算。那么..为什么Spark更快速?仅仅因为当MapReduce想要进行计算而Spark预加载数据时,MapReduce每次都将数据加载到内存中?非常感谢。 最佳答案 Spark使用弹性分布式数据集(RDD)的概念,它允许透明地将数据存储在内存中,并在需要时将其保存到磁盘。另一方面,在Mapreduce中,在Map和reduce任务之后数据将被洗牌和排序