Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark Spark WindowExec:没有为窗口操作定义分区—将所有数据移动到单个分区—这可能会导致严重的性能下降_Apache Spark_Apache Spark Sql - Fatal编程技术网

Apache spark Spark WindowExec:没有为窗口操作定义分区—将所有数据移动到单个分区—这可能会导致严重的性能下降

Apache spark Spark WindowExec:没有为窗口操作定义分区—将所有数据移动到单个分区—这可能会导致严重的性能下降,apache-spark,apache-spark-sql,Apache Spark,Apache Spark Sql,在使用以下SQL Spark转换时,获取上述警告消息和性能问题 val sqlstr = """SELECT * FROM ( SELECT AC.*, ROW_NUMBER OVER (PARTITION BY ACCOUNT_TYPE, CATEGORY_CODE, PROCESS_CAT ORDER BY GEO_LOC DESC) AS RowNum FROM Account AC) WHERE RowNum = 1""" val acct_sel_df = sqlContext.sq

在使用以下SQL Spark转换时,获取上述警告消息和性能问题

val sqlstr = """SELECT * FROM (
SELECT AC.*, ROW_NUMBER OVER (PARTITION BY ACCOUNT_TYPE, CATEGORY_CODE, PROCESS_CAT ORDER BY GEO_LOC DESC) AS RowNum FROM Account AC)
WHERE RowNum = 1"""

val acct_sel_df = sqlContext.sql(sqlstr)
运行Spark 2.1、Scala和Spark sql

上述语句将导致数据帧acct_sel_df。这 从帐户数据框(注册为 使用
Account.createOrReplaceTempView(“Account”)
的临时视图

有没有办法在源数据框或结果数据框中指定分区?这样可以避免将数据移动到单个分区吗


通过查询源数据帧可以提前找到分区的数量。如果不这样做,会严重影响性能。

您知道为什么按帐户类型、类别代码、进程类别划分的分区只不过是单个分区,它们之间是否有单个值?