草庐IT

sparking

全部标签

hadoop - 启动 Apache Spark 集群

我已经在我的四节点集群上安装了Hadoop。我还在它们每个上安装了ApacheSpark。我可以在没有密码的情况下从主人ssh到每个奴隶。我也可以很好地启动我的主节点。但是,当我尝试使用/opt/spark/sbin/start-all.sh运行Spark时,出现以下错误:startingorg.apache.spark.deploy.master.Master,loggingto/opt/spark/logs/spark-hduser-org.apache.spark.deploy.master.Master-1-lebron.outdoublet:chown:changingown

hadoop - Spark SQL分区感知查询配置单元表

给定按some_field(int类型)Hive表分区,数据存储为Avro文件,我想使用SparkSQL查询表,返回的数据帧必须已经按some_field(用于分区)分区。查询看起来像SELECT*FROMsome_table默认情况下Spark不会这样做,返回的data_frame.rdd.partitioner是None。获得结果的一种方法是在查询后通过显式重新分区,但可能有更好的解决方案。HDP2.6、Spark2。谢谢。 最佳答案 首先,您必须区分Dataset的分区和转换后的RDD[Row]的分区。不管前者的执行计划是什么

apache-spark - Spark RDD : partitioning according to text file format

我有一个包含数十GB数据的文本文件,我需要从HDFS加载它并将其并行化为RDD。此文本文件使用以下格式描述项目。请注意,字母字符串不存在(每行的含义是隐含的)并且每行可以包含空格以分隔不同的值:0001(id)100010002000(dimensions)0100(weight)0030(amount)0002(id)111010005000(dimensions)0220(weight)3030(amount)我认为并行化此文件的最直接方法是将其从本地文件系统上传到HDFS,然后通过执行sc.textFile(filepath)创建一个RDD。但是,在这种情况下,分区将取决于与文件

apache-spark - 我可以将 pyspark 数据框另存为哪些文件格式?

我想将一个巨大的pyspark数据框保存为一个Hive表。我怎样才能有效地做到这一点?我希望使用pyspark.sql.DataFrameWriter.saveAsTable中的saveAsTable(name,format=None,mode=None,partitionBy=None,**options)。#Let'ssayIhavemydataframe,my_df#AmIabletodothefollowing?my_df.saveAsTable('my_table')我的问题是我可以使用哪些格式,我可以在哪里找到这些信息?OrcSerDe是一个选项吗?我还在学习这个。谢谢。

hadoop - 为什么 spark 抛出带有序列文件的 NotSerializableException org.apache.hadoop.io.NullWritable

为什么spark使用序列文件抛出NotSerializableExceptionorg.apache.hadoop.io.NullWritable?我的代码(非常简单):importorg.apache.hadoop.io.{BytesWritable,NullWritable}sc.sequenceFile[NullWritable,BytesWritable](in).repartition(1000).saveAsSequenceFile(out,None)异常org.apache.spark.SparkException:Jobaborted:Task1.0:66hadanot

java - 在spark java api中递归地从HDFS读取所有文件

我正在使用spark从目录及其子目录的单个RDD中读取HDFS中所有文件的数据。我找不到任何有效的方法来做到这一点。所以我尝试编写一些自定义代码,如下所示:publicObjectfetch(Stringsource,Stringsink){//readingdatabooleanisDir=newFile(source).isDirectory();System.out.println("isDir="+isDir);JavaRDDlines;if(isDir){lines=readFiles(newFile(source).listFiles(),null);}elselines=

java - Spark on yarn jar 上传问题

我正在尝试使用sparkoveryarn(CentOS上的ClouderaHadoop5.2)运行一个简单的Map/Reducejava程序。我已经尝试了这两种不同的方式。第一种方式如下:YARN_CONF_DIR=/usr/lib/hadoop-yarn/etc/hadoop/;/var/tmp/spark/spark-1.4.0-bin-hadoop2.4/bin/spark-submit--classMRContainer--masteryarn-cluster--jars/var/tmp/spark/spark-1.4.0-bin-hadoop2.4/lib/spark-ass

hadoop - 如何在使用 Google Cloud Dataproc 启动的 Spark 集群中启用 Snappy 编解码器支持?

尝试从使用GoogleCloudDataproc启动的Spark集群读取Snappy压缩序列文件时,我收到以下警告:java.lang.RuntimeException:nativesnappylibrarynotavailable:thisversionoflibhadoopwasbuiltwithoutsnappysupport.在此上下文中启用Snappy编解码器支持的最佳方法是什么? 最佳答案 遗憾的是,Dataproc的启动图像是在没有Snappy支持的情况下构建的。我已经打开了一个错误来为下一张图片修复这个问题。解决方法

hadoop - Spark 是否会在数据所在的相同节点上安排工作人员?

GoogleMapReduce论文称,workers被安排在与数据所在的同一节点上,或者如果可能的话,至少在同一机架上。我没有通读整个Hadoop文档,但我假设它会尽可能将计算移至数据,而不是将数据移至计算。(我刚开始接触Hadoop的时候,从HDFS到worker的所有数据都必须通过TCP连接,即使worker和数据在同一个节点上。现在还是这样吗?)无论如何,使用ApacheSpark时,worker会被安排在与数据相同的节点上,还是RDD概念会使其更难做到这一点? 最佳答案 一般来说,这取决于。Spark识别多个位置级别(包括P

hadoop - 为什么join和group by会影响spark中的数据shuffle量

我正在使用spark,我看到当一个查询有很多连接操作并且groupbyspark需要做很多洗牌操作。我一直在寻找信息为什么会发生这种情况,但我没有找到任何具体的信息。你能帮助理解这个吗? 最佳答案 Sparkshuffles只是在集群中移动数据。因此,任何需要分区中本地不存在的数据的转换都会执行洗牌。查看连接,每个分区都需要经过整个连接的df才能完成操作,因此完成了一个洗牌,基本上将连接的df移动到每个事件分区。groupbykey也会发生同样的事情,其中​​所有相同的键都需要在同一个分区中结束,以便随机播放将它们移到那里。如您所见