通过JDBC从RDBMS读取时分区为spark

dev*_*v ツ 9 partitioning jdbc apache-spark apache-spark-sql

我在集群模式下运行spark并通过JDBC从RDBMS读取数据.

根据Spark 文档,这些分区参数描述了在从多个worker并行读取时如何对表进行分区:

  • partitionColumn
  • lowerBound
  • upperBound
  • numPartitions

这些是可选参数.

如果我不指定这些,会发生什么:

  • 只有1名工人读取整个数据?
  • 如果它仍然并行读取,它如何分区数据?

use*_*411 15

如果没有指定{ partitionColumn,lowerBound,upperBound,numPartitions}或{ predicates}星火将使用一个执行者,并创建一个非空分区.所有数据都将使用单个事务处理,并且读取既不会分发也不会并行化.

也可以看看: