如何解决Spark SQL中的fetchSize,PartitionColumn,LowerBound,upperBound
嗨,我是Spark sql的新手,并得到了一份编写Spark作业的任务,以使用Spark sql从jdbc加载数据并将其加载到cassandra中。
我试图从现有项目中引用一些旧的Spark代码。 这是提到的配置e:
Total Record Count in JDBC table :233400
以下是火花代码中提到的配置:
LowerBound:0
Upper bound:100000
numPatrition:20
fetchSize:100
根据文章:How to operate numPartitions,lowerBound,upperBound in the spark-jdbc connection?
numPatrition:一次可以与数据库建立的并发连接数。
SELECT * FROM table WHERE partitionColumn < 5000 or partitionColumn is null
SELECT * FROM table WHERE partitionColumn >= 5000 AND <10000
SELECT * FROM table WHERE partitionColumn >= 10000 AND <15000
SELECT * FROM table WHERE partitionColumn >= 15000 AND <20000
...
SELECT * FROM table WHERE partitionColumn >= 95000
但是在参考代码中,我无法理解获取大小将在这里扮演什么角色。我的数据将如何分区(考虑到记录数与上述记录相同:233400) 同样,一旦达到上限,是否意味着最后一个分区将具有: (totalRecord-upperBound)记录数?
请帮助我理解这个概念
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。