PiflowX组件-DataGen

DataGen组件

组件说明

按数据生成规则模拟数据。在开发和演示场景下使用比较方便。具体可以查看Flink官方DataGen connector。

计算引擎

flink

有界性

字段的数据全部生成完成后,source 就结束了。 因此,有界性取决于字段的有界性。

组件分组

common

端口

Inport:默认端口

outport:默认端口

组件属性

名称 展示名称 默认值 允许值 是否必填 描述 例子
schema Schema “” 数据生成规则,字段规则见字段规则描述。 [{“filedName”:“id”,“filedType”:“INT”,“kind”:“sequence”,“start”:1,“end”:10000},{“filedName”:“name”,“filedType”:“STRING”,“kind”:“random”,“length”:15},{“filedName”:“age”,“filedType”:“INT”,“kind”:“random”,“max”:100,“min”:1}]
count Count 10 测试数据的数量。 10
ratio Ratio 1 数据每秒生成速率。 10

字段规则描述

参数 是否必须 描述
filedName 指定字段名称。
filedType 指定字段类型。
kind 指定字段的生成器。可以是 ‘sequence’ 或 ‘random’。随机生成器(random)是默认的生成器,您可以指定随机生成的最大和最小值。char、varchar、binary、varbinary, string (类型)可以指定长度。它是无界的生成器。序列生成器(sequence),您可以指定序列的起始和结束值。它是有界的生成器,当序列数字达到结束值,读取结束。
min 随机生成器的最小值,适用于数字类型。
max 随机生成器的最大值,适用于数字类型。
maxPast 随机生成器生成相对当前时间向过去偏移的最大值,适用于 timestamp 类型。
length 随机生成器生成字符的长度,适用于 char、varchar、binary、varbinary、string。
start 序列生成器的起始值。
end 序列生成器的结束值。

DataGen示例配置

{
   
  "flow": {
   
    "name": "DataGenTest",
    "uuid": "1234",
    "stops": [
      {
   
        "uuid": "0000",
        "name": "DataGen1",
        "bundle": "cn.piflow.bundle.flink.common.DataGen",
        "properties": {
   
          "schema": "[{\"filedName\":\"id\",\"filedType\":\"INT\",\"kind\":\"sequence\",\"start\":1,\"end\":10000},{\"filedName\":\"name\",\"filedType\":\"STRING\",\"kind\":\"random\",\"length\":15},{\"filedName\":\"age\",\"filedType\":\"INT\",\"kind\":\"random\",\"max\":100,\"min\":1},{\"filedName\":\"timeField\",\"filedType\":\"AS PROCTIME()\"}]",
          "count": "500",
          "ratio": "5"
        }
      },
      {
   
        "uuid": "2222",
        "name": "ShowData1",
        "bundle": "cn.piflow.bundle.flink.common.ShowData",
        "properties": {
   
          "showNumber": "500"
        }
      }
    ],
    "paths": [
      {
   
        "from": "DataGen1",
        "outport": "",
        "inport": "",
        "to": "ShowData1"
      }
    ]
  }
}
示例说明

本示例演示了通过DataGen组件生成id,name,age,timeField4个字段500条数据,每秒生成5条数据,并使用ShowData组件将数据打印在控制台。

字段描述
[
    {
          
        "filedName": "id",
        "filedType": "INT",
        "kind": "sequence",
        "start": 1,
        "end": 10000
    },
        {
          
        "filedName": "name",
        "filedType": "STRING",
        "kind": "random",
        "length": 15
    },
        {
          
        "filedName": "age",
        "filedType": "INT",
        "kind": "random",
        "max": 100,
        "min": 1
    },
            {
          
        "filedName": "timeField",
        "filedType": "AS PROCTIME()"
    }
]

1.id字段

id字段类型为INT,使用sequence生成器,序列生成器的起始值为1,结束值为10000.

2.name字段

name字段类型为STRING,使用random生成器,生成字符长度为15。

3.age字段

age字段类型为INT,使用random生成器,随机生成器的最小值为1,最大值为100。

4.timeField字段

timeField字段为PROCTIME。
在这里插入图片描述

相关推荐

  1. PiflowX-OracleCdc

    2023-12-29 18:22:03       33 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-29 18:22:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-29 18:22:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-29 18:22:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-29 18:22:03       20 阅读

热门阅读

  1. Pthon Request库源码解读之__init__.py

    2023-12-29 18:22:03       31 阅读
  2. 华为鸿蒙应用--Toast工具(鸿蒙工具)-ArkTs

    2023-12-29 18:22:03       40 阅读
  3. 7天玩转 Golang 标准库之 os

    2023-12-29 18:22:03       41 阅读
  4. COMM394 Coding Literacy for Managers

    2023-12-29 18:22:03       40 阅读
  5. 算法系统学习(持续更新)

    2023-12-29 18:22:03       38 阅读
  6. 深入理解Dockerfile —— 筑梦之路

    2023-12-29 18:22:03       34 阅读
  7. GPT翻译水平探究:人工智能的语言艺术

    2023-12-29 18:22:03       38 阅读
  8. 23种设计模式学习

    2023-12-29 18:22:03       35 阅读
  9. go语言面试一逃逸分析

    2023-12-29 18:22:03       38 阅读