2.4 如何在FlinkSQL使用DataGen(数据生成器)

1、DataGen SQL 连接器

FLinkSQL中可以使用内置的DataGen SQL 连接器来生成测试数据

官网链接:DataGen SQL 连接器


2、随机数数据生成器

随机数数据生成器支持随机生成 char、varchar、binary、varbinary、string 类型的数据

它是一个无界流的数据生成器

sql 复制代码
-- TODO 随机数数据生成器 创建source表
drop table random_datagen_source_table;
CREATE TABLE random_datagen_source_table (
    user_name string,
    user_id int

) WITH (
    'connector' = 'datagen',
    'rows-per-second'='1',                 -- 指定生成速率:每秒生成的行数(默认值:10000)

    -- TODO 对表中的每个字段,进行配置
    -- 生成随机整数
    'fields.user_id.kind'='random',        -- 指定 数据生成器类型:random 随机数
    'fields.user_id.min'='1',              -- 指定 随机数的最小值 
    'fields.user_id.max'='1000',           -- 指定 随机数的最大值 

    -- 生成随机字符串(字段类型为string时,可以指定string长度)
    'fields.user_name.kind'='random',      -- 指定 数据生成器类型:random 随机数
    'fields.user_name.length'='3'          -- 指定 随机生成字符串的长度
);

-- 流式SQL
select * from random_datagen_source_table;

运行结果:


3、序列生成器

序列数据生成器,可以根据指定的起始值和结束值生成连续的整数数据

当序列数字达到结束值,读取结束,所以它是有界的生成器

sql 复制代码
-- TODO 序列数据生成器 创建source表
drop table sequence_datagen_source_table;
CREATE TABLE sequence_datagen_source_table (
    user_id int
) WITH (
    'connector' = 'datagen',
    'rows-per-second'='1',                 -- 指定生成速率:每秒生成的行数(默认值:10000)

    -- TODO 对表中的每个字段,进行配置
    'fields.user_id.kind'='sequence',        -- 指定 数据生成器类型:sequence 序列
    'fields.user_id.start'='1',              -- 指定 序列的起始值
    'fields.user_id.end'='120'               -- 指定 序列的结束值
);

-- 批式SQL
select * from sequence_datagen_source_table;

运行结果:

相关推荐
Databend12 小时前
在 AWS 中国峰会逛了一天,我在 Databend 展台看到了 Agent 数据基础设施的新思路
数据库·人工智能·agent
ClouGence2 天前
Oracle 数据同步为什么会出现数据不一致?长事务是常被忽略的原因
数据库·后端·oracle
飞将2 天前
从零实现数据库(2)——HashIndex + IndexManager
数据库
Nturmoils3 天前
订单列表慢查询,先看 WHERE、ORDER BY 和 LIMIT
数据库
渣波3 天前
拒绝 SQL 焦虑!手把手带你用 NestJS + Prisma + DTO 写出“防弹”级后端代码
javascript·数据库·后端
倔强的石头_4 天前
KingbaseES 新版MySQL 兼容版体验:旧版迁移 + 功能实测
数据库
倔强的石头_7 天前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库
冬奇Lab7 天前
每日一个开源项目(第134篇):Zvec - 阿里开源的嵌入式向量数据库,向量搜索界的 SQLite
数据库·人工智能·llm
ClouGence8 天前
Oracle CDC 架构优化:从主库直连到 DataGuard 备库同步
数据库·后端·oracle
无响应de神8 天前
三、用户与权限管理
数据库·mysql