我的以下代码是使用spark从hive表中读取数据。该表中有1亿条记录。当我在Rdd中选择这么多记录并尝试执行result.show()时,它给出了严重的问题异常。
我基本上是想通过从这个表中选择几列来插入其他表中的记录,以获得1亿条记录集。
下面是我的代码:
import org.apache.spark.sql.functions._
import org.apache.spark.sql._
val sqlContext = new org.apache.spark.sql.SQLContext(sc)
val hiveContext = new org.apache.spark.sql
我正在尝试运行对EMR/EMR笔记本的查询()-
SELECT max(version), max(timestamp) FROM (DESCRIBE HISTORY delta.`s3://a/b/c/d`)
但我得到了以下错误-
同样的查询在Databricks上运行得很好。
我的另一个疑问是-为什么s3位置的颜色会改变post //。
因此,我尝试打破上面的查询,只运行描述历史查询。出于某种原因上面写着-
错误日志-
An error was encountered:
org.apache.spark.sql.AnalysisException: Table or
当我试图查看从拼图文件创建的dataframe中的数据时,我遇到了下面的错误。 Expected: decimal(16,2), Found: BINARY
at org.apache.spark.sql.execution.datasources.FileScanRDD$$anon$1.nextIterator(FileScanRDD.scala:221)
at org.apache.spark.sql.execution.datasources.FileScanRDD$$anon$1.hasNext(FileScanRDD.scala:130)
我正在编写一个单元测试,测试数据需要一些空值。我试着在元组中直接放置空,我也尝试使用选项。没能成功。
这是我的代码:
import sparkSession.implicits._
// Data set with null for even values
val sampleData = sparkSession.createDataset(Seq(
(1, Some("Yes"), None),
(2, None, None),
(3, Some("Okay"), None),
(4, None, None)))
.toDF("i
我正在开发一个Spark程序,并收到以下异常:
16/11/07 15:58:25 ERROR yarn.ApplicationMaster: User class threw exception: java.util.concurrent.TimeoutException: Futures timed out after [3000 seconds]
java.util.concurrent.TimeoutException: Futures timed out after [3000 seconds]
at scala.concurrent.impl.Promise$Default
我们有很多在一年/月/日/小时内划分的拼花数据集。
其中有几个小时是空的,只有一个_SUCCESS文件。
我们实现了遍历所有分区并执行工作的作业。我们在打开空数据集时遇到了问题。与org.apache.spark.sql.AnalysisException: Unable to infer schema for Parquet. It must be specified manually.相撞
(使用EMR5.3.0 -我们正在努力摆脱依赖,以便升级到更高版本)
火花壳例子:
Welcome to
____ __
/ __/__ ___ ____
我正在尝试从蜂箱中的db.abc中选择*,这个蜂窝表是使用spark加载的。
它不能工作,显示了一个错误:
错误: java.io.IOException: java.lang.IllegalArgumentException:超出范围的bucketId:-1 (state=,code=0)
当我使用以下属性时,我能够查询hive:
set hive.mapred.mode=nonstrict;
set hive.optimize.ppd=true;
set hive.optimize.index.filter=true;
set hive.tez.bucket.pruning=tru
我正在尝试在Spark独立集群上运行一个相对简单的Spark SQL命令
select a.name, b.name, s.score
from score s
inner join A a on a.id = s.a_id
inner join B b on b.id = s.b_id
where pmod(a.id, 3) != 3 and pmod(b.id, 3) != 0
表的大小如下
A: 25,000
B: 2,500,000
score: 25,000,000
因此,我希望得到的结果是25,000,000行。我想用Spark SQL运行这个查询,然后处理每一行。下面是相关的sp
当我从s3桶将数据加载到pyspark中时,进行一些操作(连接、联合),然后尝试覆盖前面读取的相同路径(' data /csv/')。我得到了一个错误:
py4j.protocol.Py4JJavaError: An error occurred while calling o4635.save.
: org.apache.spark.SparkException: Job aborted.
at org.apache.spark.sql.execution.datasources.FileFormatWriter$.write(FileFormatWriter.sca
我正在尝试在spark-shell中启用对spark对象的Hive支持,但它不起作用。我使用的是Hortonworks HDP。以下是我尝试启用配置单元支持时得到的结果:
scala> val spark3 = SparkSession.builder.enableHiveSupport.getOrCreate
17/10/24 21:30:28 WARN SparkSession$Builder: Using an existing SparkSession; some configuration may not take effect.
spark3: org.apache.spar
我正在读取Spark 2.0中的CSV文件,并使用以下内容计算列中的非空值:
val df = spark.read.option("header", "true").csv(dir)
df.filter("IncidntNum is not null").count()
当我使用spark-shell测试它时,它工作得很好。当我创建一个包含代码的jar文件并将其提交给spark-submit时,我在上面的第二行得到一个异常:
Exception in thread "main" org.apache.spark.sql.cat
在使用SQL databricks时,我尝试从增量表创建一个新表,并添加一个新的空列。Databricks不能生成空列,如果我填充新生成的列,它可以正常工作。如何在现有增量表的基础上向新表中添加空列? Does not work when NULL 当我填充该列时,它起作用了。 It Works when filled with 1 它返回以下错误: com.databricks.backend.common.rpc.DatabricksExceptions$SQLExecutionException: org.apache.spark.sql.catalyst.errors.packa
当我尝试使用卡夫卡集成进行结构化流时,我遇到了一个NoSuchMethodError。当有第一个可用记录时,堆栈跟踪如下所示:由:java.lang.NoSuchMethodError引起:
org.apache.kafka.clients.consumer.KafkaConsumer.assign(Ljava/util/Collection;)V
at org.apache.spark.sql.kafka010.CachedKafkaConsumer.createConsumer(CachedKafkaConsumer.scala:56)
at org.apa