当前位置: 首页 > news >正文

Spark jdbc写入崖山等国产数据库失败问题

随着互联网、信息产业的大发展、以及地缘政治的变化,网络安全风险日益增长,网络安全关乎国家安全。因此很多的企业,开始了国产替代的脚步,从服务器芯片,操作系统,到数据库,中间件,逐步实现信息技术自主可控,规避外部技术制裁和风险。

就数据库而言,目前很多的国产数据库,比如瀚高、人大金仓、崖山、南大通用、虚谷等,都可以逐步的取代Oracle、MySQL、PostgreSQL等。在大数据时代,我们通常通过Spark对数据进行计算,并直接输出到数据库中。但是不同的数据库中,数据类型的定义存在着一定的差异,如果直接使用Spark jdbc导入,可能会发生异常。

1.1 Spark导入数据库常见的导入方式如下:

# Saving data to a JDBC source
jdbcDF.write \.format("jdbc") \.option("url", "jdbc:postgresql:dbserver") \.option("dbtable", "schema.tablename") \.option("user", "username") \.option("password", "password") \.save()

1.2 部分数据类型不匹配或数据库不支持

  • 数据库特性:

······崖山数据库中,对于变长字符串,没有TEXT这个字段类型,与之相同含义的字段类型为CLOB。

  • sqlType和Saprk dataType不匹配:

······Spark导入geometry类型的数据,会将其识别为StringType,但是在导入虚谷数据库中,会导入失败,因为Spark未能正确的将sqlType和DataType匹配

  • 其他情况…

1.3 JdbcDialects
在spark3.5的源码中可以看到,有这么一段代码。</

相关文章:

  • 数据可视化:php+echarts实现数据可视化
  • 16.状态模式:思考与解读
  • 明远智睿SD2351核心板:工业AIoT时代的创新引擎
  • MapReduce中的分区器
  • 【HTTP】《HTTP 全原理解析:从请求到响应的奇妙之旅》
  • NX二次开发——BlockUI 弹出另一个BlockUI对话框
  • 说说es配置项的动态静态之分和集群配置更新API
  • JAVA中ArrayList的解析
  • C语言初阶:数组
  • Webug4.0靶场通关笔记20- 第25关越权查看admin
  • Webug4.0靶场通关笔记19- 第24关邮箱轰炸
  • 限流算法学习笔记(一)Go Rate Limiter
  • 数据实验分析
  • RabbitMQ-springboot开发-应用通信
  • 精益数据分析(48/126):UGC商业模式的指标剖析与运营策略
  • JVM中类加载过程是什么?
  • node.js 实战——餐厅静态主页编写(express+node+ejs+bootstrap)
  • css识别\n换行
  • 安卓工程build.gradle中的Groovy的常见知识点
  • 【神经网络与深度学习】VAE 中的先验分布指的是什么
  • 巴基斯坦称未违反停火协议
  • 2025上海十大动漫IP评选活动启动
  • 2025柯桥时尚周启幕:国际纺都越来越时尚
  • 印巴战火LIVE丨印巴互相发动无人机袭击,巴官员称两国已在国安层面接触
  • 105岁八路军老战士、抗美援朝老战士谭克煜逝世
  • 水利部:山西、陕西等地旱情将持续