Spark + 神通数据库连接

先上资源:

链接:https://pan.baidu.com/s/1bsB4dx7bE7kjbeFQ2eToqA 
提取码:21p0

上面的驱动推荐jdk1.8使用。如果是jdk1.8往前的,1.7或者其他的早版本,可以用更早点的驱动,如果需要,留言。

1. 网上找了很多神通数据库的驱动,都不可用。(其实在神通数据库安装目录下就有jdbc驱动)路径:shentong/jdbc/oscarJDBC16.jar。直接从服务器上面拉下来,本地maven打包一下。

mvn install:install-file -DgroupId=com.oscar -DartifactId=oscarJDBC16 -Dversion=1.0 -Dpackaging=jar -Dfile=D:\software\oscarJDBC16.jar

-Dfile:刚才从服务器上下载的jar包在硬盘上的位置

-DgroupId, -DartifactId, -Dversion:三个参数,指定存放maven仓库中的位置(与引入依赖时的属性相对应,自定义);

-Dpackaging :打包类型;

2. maven pom文件引入依赖:

     <dependency>
            <groupId>com.oscar</groupId>
            <artifactId>oscarJDBC16</artifactId>
            <version>1.0</version>
     </dependency>

3.使用:(主要代码基于spark连接mysql改动)

    //打印dataFrame当中的数据
    val personDFShow: Unit = personDF.show()

    //将DataFrame注册成为一张表模型
    val personView: Unit = personDF.createTempView("person_view")

    //获取表当中的数据
    val result: DataFrame = sparkSession.sql("select * from person_view")
    sparkSession.sql("select count(1) as person_view_count from person_view").show()
    
    val url = "jdbc:oscar://192.168.000.000:2003/osrdb?useUnicode=true&amp;characterEncoding=utf-8;useOldAliasMetadataBehavior=true"
    val tableName = "TEST.person"
    val properties = new Properties()
    properties.setProperty("driver","com.oscar.Driver")
    properties.setProperty("user", "root")
    properties.setProperty("password", "root")

    result.write.mode(SaveMode.Append).jdbc(url, tableName, properties)
    sparkContext.stop()
    sparkSession.close()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Python中使用Spark SQL连接数据库主要有两个步骤:首先,需要使用适当的JDBC驱动程序连接到数据库。其次,将数据库表加载为Spark DataFrame进行查询和分析。 以下是一些示例代码: 1. 安装所需软件包: ```python !pip install pyspark !pip install findspark ``` 2. 导入所需的库并设置SparkSession: ```python import findspark findspark.init() from pyspark.sql import SparkSession spark = SparkSession.builder \ .appName("Database Connection") \ .config("spark.driver.extraClassPath", "/path/to/jdbc-driver.jar") \ .getOrCreate() ``` 请注意,上面的`/path/to/jdbc-driver.jar`应该替换为您实际的JDBC驱动程序路径。 3. 连接到数据库: ```python url = "jdbc:postgresql://localhost:5432/dbname" properties = { "user": "username", "password": "password", "driver": "org.postgresql.Driver" } df = spark.read.jdbc(url=url, table="table_name", properties=properties) ``` 请将`"jdbc:postgresql://localhost:5432/dbname"`替换为您的数据库URL,以及`"username"`和`"password"`替换为您的数据库凭据。 4. 进行数据查询和分析: ```python df.show() # 其他Spark SQL操作... ``` 您可以使用`df.show()`显示DataFrame中的数据,并使用其他Spark SQL操作来查询和分析数据。 请注意,上述示例使用PostgreSQL数据库和对应的JDBC驱动程序。如果您使用不同的数据库,您需要相应地更改`url`和`properties`变量。 希望以上代码可以帮助您在Python中使用Spark SQL连接数据库。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值