说明:
可以使用以下按范围重新分区的选项:
1. 将由给定列划分的新 SparkDataFrame 范围返回到
numPartitions
。2. 返回由给定列分区的新 SparkDataFrame 范围,使用
spark.sql.shuffle.partitions
作为分区数。
必须至少指定一个partition-by 表达式。如果未指定明确的排序顺序,则假定“先升序空值”。
用法:
repartitionByRange(x, ...)
## S4 method for signature 'SparkDataFrame'
repartitionByRange(x, numPartitions = NULL, col = NULL, ...)
参数:
x
一个 SparkDataFrame。...
要在范围分区中使用的附加列。numPartitions
要使用的分区数。col
将执行范围分区的列。
细节:
请注意,由于性能原因,此方法使用抽样来估计范围。因此,输出可能不一致,因为采样可以返回不同的值。样本大小可以由配置控制spark.sql.execution.rangeExchange.sampleSizePerPartition
.
注意:
repartitionByRange 自 2.4.0 起
例子:
sparkR.session()
path <- "path/to/file.json"
df <- read.json(path)
newDF <- repartitionByRange(df, col = df$col1, df$col2)
newDF <- repartitionByRange(df, 3L, col = df$col1, df$col2)
相关用法
- R SparkR repartition用法及代码示例
- R SparkR read.stream用法及代码示例
- R SparkR refreshTable用法及代码示例
- R SparkR read.jdbc用法及代码示例
- R SparkR registerTempTable用法及代码示例
- R SparkR read.text用法及代码示例
- R SparkR read.ml用法及代码示例
- R SparkR rename用法及代码示例
- R SparkR recoverPartitions用法及代码示例
- R SparkR read.df用法及代码示例
- R SparkR read.json用法及代码示例
- R SparkR refreshByPath用法及代码示例
- R SparkR randomSplit用法及代码示例
- R SparkR rbind用法及代码示例
- R SparkR rollup用法及代码示例
- R SparkR rangeBetween用法及代码示例
- R SparkR rowsBetween用法及代码示例
- R matrix转list用法及代码示例
- R SparkR freqItems用法及代码示例
- R SparkR intersectAll用法及代码示例
注:本文由纯净天空筛选整理自spark.apache.org大神的英文原创作品 Repartition by range。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。