创建云数据库(RDS/DRDS)结果表

本文涉及的产品
云数据库 PolarDB MySQL 版,列存表分析加速 8核16GB
RDS DuckDB + QuickBI 企业套餐,8核32GB + QuickBI 专业版
RDS Agent(兼容OpenClaw),2核4GB
简介:

关系型数据库(RDS)

阿里云关系型数据库(Relational Database Service)简称RDS是一种稳定可靠、可弹性伸缩的在线数据库服务。基于阿里云分布式文件系统和高性能存储,RDS支持MySQL、SQL Server、PostgreSQL和PPAS(Postgre Plus Advanced Server,一种高度兼容 Oracle 的数据库)引擎,并且提供了容灾、备份、恢复、监控、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。

注意:
关系型数据库(RDS/DRDS)插件中的WITH参数一致,可以通用。
在使用关系型数据库(RDS/DRDS)作为结果表时,RDS或DRDS中必须要有真实的表存在。

DDL定义

实时计算支持使用RDS/DRDS作为结果输出(目前仅支持MySql数据存储类型)。示例代码如下。

 
 
  1. create table rds_output(
  2. id int,
  3. len int,
  4. content VARCHAR,
  5. primary key(id,len)
  6. ) with (
  7. type='rds',
  8. url='jdbc:mysql:XXXXXXXXXX',
  9. tableName='test4',
  10. userName='test',
  11. password='XXXXXX'
  12. );

注意:

  • 实时计算写入RDS/DRDS数据库结果表原理:针对实时计算每行结果数据,拼接成一行SQL向目标端数据库进行执行。如果使用批量写,需要在url后面加上参数 ?rewriteBatchedStatements=true,否则性能较差。
  • RDS/MySQL支持自增主键。如果需要让实时计算写入数据支持自增主键,在DDL中不声明该自增字段即可。
    例如,ID是自增字段,实时计算DDL不写出该自增字段,则数据库在一行数据写入过程中会自动填补相关的自增字段。
  • 如果DRDS有分区表,拆分键必须在实时计算DDL里primary key()中声明,否则拆分的表无法写入。关于DRDS分库分表的概念可参见DRDS分库分表
  • 建议使用数据存储,参见数据存储云数据库(RDS)

WITH参数

参数 注释说明 备注
url 地址 RDS的URL地址, DRDS的URL地址
tableName 表名
userName 用户名
password 密码 无 
maxRetryTimes 最大尝试插入次数 可选,默认为3
batchSize 每次写的批次大小 可选,默认值50,表示每次写多少条。
bufferSize 去重的buffer大小,需要指定主键才生效 可选,默认值1(1.4.1默认值改为1000),表示输入的数据达到1条就开始输出。
flushIntervalMs 写超时时间 可选,单位毫秒,默认值5000,表示数据超过了5秒,还没有写过,就会将缓存的数据都写一次。
excludeUpdateColumns 对相同key的值更新时排除掉相应的column 可选,默认为空(primary keys 字段默认会排除)
ignoreDelete 是否忽略delete操作 默认为false
partitionBy 写入Sink节点前,会根据该值做hash。数据会流向相应的hash节点。 可选,默认为空。

类型映射

RDS字段类型 实时计算字段类型
text varchar
byte varchar
integer int
long bigint
double double
date varchar
datetime varchar
timestamp varchar
time varchar
year varchar
float float
decimal decimal
char varchar

JDBC 连接参数

参数名称 参数说明 缺省值 最低版本要求
useUnicode 是否使用Unicode字符集,如果参数characterEncoding设置为gb2312或gbk,本参数值必须设置为true。 false 1.1g
characterEncoding 当useUnicode设置为true时,指定字符编码。比如可设置为gb2312或gbk。 false 1.1g
autoReconnect 当数据库连接异常中断时,是否自动重新连接。 false 1.1
autoReconnectForPools 是否使用针对数据库连接池的重连策略。 false 3.1.3
failOverReadOnly 自动重连成功后,连接是否设置为只读。 true 3.0.12
maxReconnects autoReconnect设置为true时,重试连接的次数。 3 1.1
initialTimeout autoReconnect设置为true时,两次重连之间的时间间隔,单位:秒。 2 1.1
connectTimeout 和数据库服务器建立socket连接时的超时,单位:毫秒。 0表示永不超时,适用于JDK 1.4及更高版本。 0 3.0.1
socketTimeout socket操作(读写)超时,单位:毫秒。 0表示永不超时。 0 3.0.1

FAQ

Q:Flink的结果数据写入RDS表,是按主键更新的,还是新生成一条记录?
A:如果在DDL中定义了主键,会采用insert into on duplicate key update的方式更新记录,也就意味着对于不存在的主键字段会直接插入,存在的主键字段则更新相应的值。
如果DDL中没有声明primary key,则会用insert into 方式插入记录,追加数据。

Q:使用RDS表中的唯一索引做GROUP BY需要注意什么?
A:RDS中只有一个自增主键,实时计算作业中不能声明为Primary Key;如果需要使用RDS表中的唯一索引做GROUP BY,需要在作业中的Primary Key中声明这些唯一索引。


本文转自实时计算—— 创建云数据库(RDS/DRDS)结果表
相关文章
|
9月前
|
缓存 关系型数据库 BI
使用MYSQL Report分析数据库性能(下)
使用MYSQL Report分析数据库性能
575 158
|
8月前
|
SQL 关系型数据库 MySQL
阿里云RDS云数据库全解析:产品功能、收费标准与活动参考
与云服务器ECS一样,关系型数据库RDS也是很多用户上云必买的热门云产品之一,阿里云的云数据库RDS主要包含RDS MySQL、RDS SQL Server、RDS PostgreSQL、RDS MariaDB等几个关系型数据库,并且提供了容灾、备份、恢复、监控、迁移等方面的全套解决方案,帮助您解决数据库运维的烦恼。本文为大家介绍阿里云的云数据库 RDS主要产品及计费方式、收费标准以及活动等相关情况,以供参考。
|
9月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS费用价格:MySQL、SQL Server、PostgreSQL和MariaDB引擎收费标准
阿里云RDS数据库支持MySQL、SQL Server、PostgreSQL、MariaDB,多种引擎优惠上线!MySQL倚天版88元/年,SQL Server 2核4G仅299元/年,PostgreSQL 227元/年起。高可用、可弹性伸缩,安全稳定。详情见官网活动页。
1489 152
|
9月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎,提供高性价比、稳定安全的云数据库服务,适用于多种行业与业务场景。
1073 156
|
9月前
|
缓存 监控 关系型数据库
使用MYSQL Report分析数据库性能(中)
使用MYSQL Report分析数据库性能
620 156
|
9月前
|
缓存 监控 关系型数据库
使用MYSQL Report分析数据库性能(上)
最终建议:当前系统是完美的读密集型负载模型,优化重点应放在减少行读取量和提高数据定位效率。通过索引优化、分区策略和内存缓存,预期可降低30%的CPU负载,同时保持100%的缓冲池命中率。建议每百万次查询后刷新统计信息以持续优化
725 161
|
9月前
|
Cloud Native 关系型数据库 MySQL
免费体验!高效实现自建 MySQL 数据库平滑迁移至 PolarDB-X
PolarDB-X 是阿里云推出的云原生分布式数据库,支持PB级存储扩展、高并发访问与数据强一致,助力企业实现MySQL平滑迁移。现已开放免费体验,点击即享高效、稳定的数据库升级方案。
免费体验!高效实现自建 MySQL 数据库平滑迁移至 PolarDB-X
|
9月前
|
关系型数据库 MySQL 分布式数据库
阿里云PolarDB云原生数据库收费价格:MySQL和PostgreSQL详细介绍
阿里云PolarDB兼容MySQL、PostgreSQL及Oracle语法,支持集中式与分布式架构。标准版2核4G年费1116元起,企业版最高性能达4核16G,支持HTAP与多级高可用,广泛应用于金融、政务、互联网等领域,TCO成本降低50%。
|
9月前
|
关系型数据库 分布式数据库 数据库
阿里云数据库收费价格:MySQL、PostgreSQL、SQL Server和MariaDB引擎费用整理
阿里云数据库提供多种类型,包括关系型与NoSQL,主流如PolarDB、RDS MySQL/PostgreSQL、Redis等。价格低至21元/月起,支持按需付费与优惠套餐,适用于各类应用场景。
|
9月前
|
SQL 关系型数据库 MySQL
Mysql数据恢复—Mysql数据库delete删除后数据恢复案例
本地服务器,操作系统为windows server。服务器上部署mysql单实例,innodb引擎,独立表空间。未进行数据库备份,未开启binlog。 人为误操作使用Delete命令删除数据时未添加where子句,导致全表数据被删除。删除后未对该表进行任何操作。需要恢复误删除的数据。 在本案例中的mysql数据库未进行备份,也未开启binlog日志,无法直接还原数据库。

推荐镜像

更多