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


    1、DataGen SQL 连接器

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

    官网链接:DataGen SQL 连接器


    2、随机数数据生成器

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

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

    1. -- TODO 随机数数据生成器 创建source表
    2. drop table random_datagen_source_table;
    3. CREATE TABLE random_datagen_source_table (
    4. user_name string,
    5. user_id int
    6. ) WITH (
    7. 'connector' = 'datagen',
    8. 'rows-per-second'='1', -- 指定生成速率:每秒生成的行数(默认值:10000)
    9. -- TODO 对表中的每个字段,进行配置
    10. -- 生成随机整数
    11. 'fields.user_id.kind'='random', -- 指定 数据生成器类型:random 随机数
    12. 'fields.user_id.min'='1', -- 指定 随机数的最小值
    13. 'fields.user_id.max'='1000', -- 指定 随机数的最大值
    14. -- 生成随机字符串(字段类型为string时,可以指定string长度)
    15. 'fields.user_name.kind'='random', -- 指定 数据生成器类型:random 随机数
    16. 'fields.user_name.length'='3' -- 指定 随机生成字符串的长度
    17. );
    18. -- 流式SQL
    19. select * from random_datagen_source_table;

    运行结果:


    3、序列生成器

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

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

    1. -- TODO 序列数据生成器 创建source表
    2. drop table sequence_datagen_source_table;
    3. CREATE TABLE sequence_datagen_source_table (
    4. user_id int
    5. ) WITH (
    6. 'connector' = 'datagen',
    7. 'rows-per-second'='1', -- 指定生成速率:每秒生成的行数(默认值:10000)
    8. -- TODO 对表中的每个字段,进行配置
    9. 'fields.user_id.kind'='sequence', -- 指定 数据生成器类型:sequence 序列
    10. 'fields.user_id.start'='1', -- 指定 序列的起始值
    11. 'fields.user_id.end'='120' -- 指定 序列的结束值
    12. );
    13. -- 批式SQL
    14. select * from sequence_datagen_source_table;

    运行结果:

  • 相关阅读:
    Python编写Word文档
    Vue跨域详解
    少儿编程C++画图之GOC编程 视频和资料集
    Python手册
    关于电脑使用的实用技巧
    vue3.0+vite+ts项目搭建报错问题的处理
    积分简明笔记-第一类曲线积分的类型
    cgroup driver: cgroupfs还是systemd
    1527. 患某种疾病的患者
    羚数智能入选 IDC关于中国制造执行系统(MES)的市场2021年度份额报告
  • 原文地址:https://blog.csdn.net/weixin_42845827/article/details/133912641