小编Sha*_*kar的帖子

Spark SQL - df.repartition和DataFrameWriter partitionBy之间的区别?

DataFrame repartition()和DataFrameWriter partitionBy()方法有什么区别?

我希望两者都习惯于"基于数据帧列分区数据"?或者有什么区别?

data-partitioning apache-spark-sql

42
推荐指数
3
解决办法
3万
查看次数

如何在DataFrame中将时间戳转换为日期格式?

我有一个DataFrameTimestamp列,我需要为转换Date格式.

是否有可用的Spark SQL函数?

apache-spark apache-spark-sql

24
推荐指数
3
解决办法
4万
查看次数

使用withColumn将两列添加到现有DataFrame

我有DataFrame一些列.现在我想在现有的DataFrame中再添加两列.

目前我正在使用withColumnDataFrame中的方法.

例如:

df.withColumn("newColumn1", udf(col("somecolumn")))
  .withColumn("newColumn2", udf(col("somecolumn")))
Run Code Online (Sandbox Code Playgroud)

实际上我可以使用Array [String]在单个UDF方法中返回两个newcoOlumn值.但目前这就是我的做法.

无论如何,我能有效地做到这一点吗?使用explode是不错的选择?

即使我必须使用explode,我必须使用withColumn一次,然后返回列值Array[String],然后使用explode,再创建两列.

哪一个有效?还是有其他选择吗?

scala dataframe apache-spark-sql

23
推荐指数
2
解决办法
5万
查看次数

Kafka - 日志结束偏移(LEO)与高水位(HW)之间的差异

LEO and HWReplica(Leader Replica)有什么区别?

它们会包含相同的数字吗?我能理解HW就是last committed message offset.

当LEO将更新时如何?

apache-kafka kafka-consumer-api kafka-producer-api

14
推荐指数
2
解决办法
8820
查看次数

Spark Transformation - 为什么它的懒惰和优势是什么?

Spark Transformations 懒惰地评估 - 当我们调用动作时,它会根据沿袭图执行所有变换.

Lazilyy转换评估的优势是什么?

它是否会改进performancememory consumption急切评估的比较数量?

对转换进行懒惰评估是否有任何不利之处?

transformation lazy-evaluation apache-spark

12
推荐指数
3
解决办法
1万
查看次数

Spark SQL - gzip vs snappy vs lzo压缩格式之间的区别

我正在尝试使用Spark SQL来编写parquet文件.

默认情况下,Spark SQL支持gzip,但它也支持其他压缩格式,如snappylzo.

这些压缩格式之间有什么区别,哪种格式最适合Hive加载.

gzip lzo snappy parquet apache-spark-sql

11
推荐指数
4
解决办法
2万
查看次数

Spark SQL - 如何将DataFrame写入文本文件?

我正在Spark SQL用于阅读镶木地板和书写镶木地板文件.

但有些情况下,我需要编写DataFrameas文本文件而不是Json或Parquet.

是否支持任何默认方法或我必须将该DataFrame转换为RDD然后使用saveAsTextFile()方法?

java apache-spark-sql

11
推荐指数
1
解决办法
3万
查看次数

如何使用linux或hdfs命令将多个镶木地板文件合并到单个镶木地板文件?

我有多个小parquet文件作为hive ql作业的输出生成,我想将输出文件合并到单个镶木地板文件?

用一些方法做到最好的方法是什么hdfs or linux commands

我们曾经使用cat命令合并文本文件,但这对于镶木地板也适用吗?我们可以HiveQL在编写输出文件时自己使用它,比如我们如何使用repartition或使用coalesc方法spark吗?

hdfs parquet

11
推荐指数
3
解决办法
2万
查看次数

Spark SQL - IN子句

我想在DataFrame中添加具有多个值的列的where条件.

例如,它为单值工作.

df.where($"type".==="type1" && $"status"==="completed").
Run Code Online (Sandbox Code Playgroud)

如何为同一列添加多个值,如下所示.

df.where($"type" IN ("type1","type2") && $"status" IN ("completed","inprogress")
Run Code Online (Sandbox Code Playgroud)

scala dataframe apache-spark-sql

10
推荐指数
1
解决办法
1万
查看次数

使用Apache Spark将RDD写为文本文件

我正在探索Spark进行批处理.我使用独立模式在本地计算机上运行spark.

我试图使用saveTextFile()方法将Spark RDD转换为单个文件[最终输出],但它不起作用.

例如,如果我有多个分区,我们可以将一个文件作为最终输出.

更新:

我尝试了以下方法,但我得到空指针异常.

person.coalesce(1).toJavaRDD().saveAsTextFile("C://Java_All//output");
person.repartition(1).toJavaRDD().saveAsTextFile("C://Java_All//output");
Run Code Online (Sandbox Code Playgroud)

例外是:

    15/06/23 18:25:27 INFO Executor: Running task 0.0 in stage 1.0 (TID 1)
15/06/23 18:25:27 INFO deprecation: mapred.output.dir is deprecated. Instead, use mapreduce.output.fileoutputformat.outputdir
15/06/23 18:25:27 INFO deprecation: mapred.output.key.class is deprecated. Instead, use mapreduce.job.output.key.class
15/06/23 18:25:27 INFO deprecation: mapred.output.value.class is deprecated. Instead, use mapreduce.job.output.value.class
15/06/23 18:25:27 INFO deprecation: mapred.working.dir is deprecated. Instead, use mapreduce.job.working.dir
15/06/23 18:25:27 ERROR Executor: Exception in task 0.0 in stage 1.0 (TID 1)
java.lang.NullPointerException
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1012)
    at org.apache.hadoop.util.Shell.runCommand(Shell.java:404)
    at …
Run Code Online (Sandbox Code Playgroud)

java apache-spark apache-spark-sql

9
推荐指数
2
解决办法
3万
查看次数