草庐IT

sparking

全部标签

java - Spark flatMap/减少 : How to scale and avoid OutOfMemory?

我正在将一些map-reduce代码迁移到Spark中,并且在构造Iterable以在函数中返回时遇到问题。在MR代码中,我有一个按键分组的reduce函数,然后(使用multipleOutputs)将迭代值并使用write(在多个输出中,但这并不重要)像这样的代码(简化):reduce(Keykey,Iterablevalues){//...somecodefor(Textxml:values){multipleOutputs.write(key,val,directory);}}但是,在Spark中,我已经翻译了一个map,并将其归约为以下序列:mapToPair->groupBy

java - 方案 : hdfs when building fat jar in Spark; works fine in Eclipse mars 没有文件系统

当我用我的spark程序做一个fatjar然后我启动它时,我得到了这个错误:java-jar-myApp.jar[args]当我在Eclipse中运行我的应用程序时,它运行得非常好。这是我的POM:UTF-81.71.7org.apache.sparkspark-streaming-kafka_2.101.5.0org.apache.kafkakafka_2.100.9.0.1org.apache.sparkspark-streaming_2.101.6.1com.google.code.gsongson2.6.2org.apache.hadoophadoop-hdfs2.6.0org

hadoop - 启动 hive 和 spark 时未发现合适的驱动程序错误

当我尝试启动hive或spark时出现此错误。16/07/1316:55:12ERRORSchema:Failedinitialisingdatabase.Nosuitabledriverfoundforjdbc:;derby;databaseName=metastore_db;create=trueorg.datanucleus.exceptions.NucleusDataStoreException:Nosuitabledriverfoundforjdbc:;derby;databaseName=metastore_db;create=true我无法解决它。有人可以帮忙吗?

hadoop - Spark Avro 到 Parquet Writer

问题:对象不可序列化能否请您看看如何解决这个问题。能够像正确打印一样正确阅读它。但是在将记录写入Parquet时对象不可序列化causedby:java.io.NotSerializableException:parquet.avro.AvroParquetWriterSerializationstack:-objectnotserializable(class:parquet.avro.AvroParquetWriter,value:parquet.avro.AvroParquetWriter@658e7ead)请查看并告诉我最好的方法是什么。代码:将Avro记录转换为Parquet

python-2.7 - 如何从 Spark 的 id 列表中找到包含 id 的所有数据?

现在我有一个低效的方法:ids=[...]matched=[]foridinids:d=data.where(data.id==id)d=d.take(1)matched.append(d[0][3])我想知道如何才能更快地做到这一点?数据包含4列,其中第四列包含ID。-更新-大概是这样?sqlContext=SQLContext(sc)sqlContext.registerDataFrameAsTable(data,"data")s=','.join(str(e)foreinids)q="SELECT*FROMdataWHEREidIN("+s+")")sqlContext.sql(

hadoop - 在 spark 上执行 hive 查询 - java.lang.NoClassDefFoundError org/apache/hive/spark/client/Job

我试图让HiveonSpark正常工作,但它似乎没有加载hive-exec-2.0.1.jar。我可以让Hiveonmr工作得很好。我正在使用Hive2.0.1和Spark1.6.1。遵循了HiveonSpark教程。我在hive-site.xml上设置了所有必要的属性,将sparkassemblyjar链接到hivelib文件夹中,我已经设置了所有环境变量(SPARK_HOME等)。我启动了Sparkmaster和worker。还以DEBUG级别启动了hiveserver2。尝试运行一个简单的查询“selectcount(*)...”,据我在配置单元日志中看到的那样,它执行带有所有必

scala - Spark 多个数据帧保存

我有一个spark作业,它创建一个数据框,我将它保存到HDFS。我想做的是将该数据框的一个子集保存到另一个地方,但我想在这方面表现出色。我拥有的唯一转换是保存本身……spark作业的所有其他代码元素都是一个操作。我不缓存数据框。我担心从旧数据框创建新数据框的放置操作会再次经历所有原始数据框转换。例如,我有这样的东西:valdf=hiveContext.read.json("hdfs://HOSTNAME:PORT/user/spark/data/in/*")valdf2=df.withColumn("new_column",some_udf("old_column")).drop("o

hadoop - Spark 簇是什么意思?

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭6年前。Improvethisquestion我在我的本地机器上使用spark使用python进行分析。最近听到“sparkcluster”这个词,我想知道它到底是什么?它只是在某些机器集群上运行的Spark吗?没有Hadoop系统怎么在集群上使用呢?可能吗?你能描述一下吗?

java - spark中的spark调度模式和应用队列有什么区别?

当提交多个作业以同时运行或稍后提交较小的作业时测试spark作业的行为。我在sparkui中遇到了两个设置。一种是spark可用的调度模式,如下图所示一个在调度器下,如下所示我想了解两种设置和抢占的区别。我的要求是,在运行较大的作业时,中间提交的小作业必须获得资源而无需等待更长时间。 最佳答案 让我解释一下SparkOnYarn模式。当您向spark提交scala代码时,spark客户端将与yarn交互并启动yarn应用程序。此应用程序将负责您的Scala代码中的所有作业。在大多数情况下,每个作业都对应一个reduce()、coll

python - 来自 Spark 的 Parquet 文件被检测为 Linux 中的目录

我正在尝试使用Python的parquet模块来读取从本地MapR实例编写的一些Parquet文件。我用来输出这些parquet文件的命令是:df.sqlContext.sql("SQLHERE").write.format("parquet").option("mergeSchema","true").save("/path/to/parquet/test.parquet")这是文件在我的Linux主机上的样子:drwxr-xr-x2maprmapr403Oct513:56igayfvpwrs.parquet不幸的是,当我在这里使用Python(https://pypi.python