【发布时间】:2015-12-11 20:47:09
【问题描述】:
我无法找到有关此主题的太多信息,但假设我们使用数据框读取 10 块的镶木地板文件,火花自然会创建 10 个分区。但是当数据帧读入文件来处理它时,它不会处理大数据与分区的比率吗,因为如果它正在处理未压缩的文件,块大小会大得多,这意味着分区也会更大。
所以让我澄清一下,实木复合地板压缩(这些数字并不完全准确)。 1GB Par = 5 Blocks = 5 个分区,可以解压缩到 5GB,使其成为 25 个块/25 个分区。但是除非你对 1GB 的 par 文件重新分区,否则你会被困在只有 5 个分区的情况下,最好是 25 个分区?还是我的逻辑错了。
重新分区以提高速度是否有意义?还是我想错了。任何人都可以对此有所了解吗?
假设:
- 1 个块 = 1 个 Spark 分区
- 1 个核心在 1 个分区上运行
【问题讨论】:
-
“正在处理更多信息”与什么?
-
我的意思是我们读取了一个包含 10 个块的 parquet 文件,但是当它未压缩时,您仍在 Spark 中使用 10 个分区。由于未压缩的文件自然较大,您是否应该重新分区?
-
添加了额外的说明
标签: apache-spark apache-spark-sql parquet