spark-sql jdbc连接参数优化

1,sparkSQK -jdbc

官方文档 https://spark.apache.org/docs/3.2.1/sql-data-sources-jdbc.html

  • 支持的数据库
    DB2
    MariaDB
    MS Sql
    Oracle
    PostgreSQL

  • 访问数据库可通过
    • spark.read().jdbc(driver,tableName,'分区规则(字符串数组)',properties)连接
    • spark.format("jdbc")
      .option('url','连接地址')
      .option('driver','驱动名称')
      .option('dbtable','表名称')
      .option('driver','xxx')
      ...

  • 可配置参数
    • partitionColumn, lowerBound, upperBound :分区字段,下界值,上界值,该三个值必须同时配置
    • numPartitions :分区数量,spark可以根据上界、下届以及数量自己平均分配分区
    • fetchsize :读一次读多少条,适合大数据量配置
    • batchSize : 写 一次写多少数据,适合大数据量配置
    • isolationLevel 数据库隔离级别

  • 代码实例
  Dataset<Row> ds= spark.read()
                .option("partitionColumn", "出生年月日").option("lowerBound", "1921-01-01").option("upperBound", "2032-01-01").option("numPartitions", 20)
                .option("fetchsize", "1000")
                .jdbc(dbUrl, "tableName", properties);

posted @ 2022-03-29 17:26  iullor  阅读(965)  评论(0编辑  收藏  举报