通过spark-shell连接关系型数据库postgresql
1.拷贝postgresql的jdbc驱动
首先需要将postgresql的jdbc驱动拷贝至spark的jars文件夹下
2.启动spark-shell交互命令
执行如下命令,启动spark-shell交互命令
./spark-shell
或者通过显示指定jdbc驱动,启动spark-shell
./spark-shell --driver-class-path ../jars/postgresql-42.1.4.jar --jars ../jars/postgresql-42.1.4.jar
3.创建DataFrame
通过执行如下spark命令,创建DataFrame
val jdbcDF = spark.read.format("jdbc").option("url", "jdbc:postgresql://192.168.1.41:5432/testinfo").option("query", "select st_astext(geom) as geomout from public.xingzheng where gid=24").option("user", "postgres").option("password", "123456").load()
其中主要参数的含义如下
query:spark通过query对应的值查询出结果,或者通过指定表名方式.option("dbtable", "schema.tablename"),且两个参数query和dbtable只能出现一个
4.打印sql查询结果
jdbcDF.show()
具体执行过程与结果如下图所示:
参考:
spark JDBC To Other Databases
网友评论