# 模拟数据生成
# 概述
模拟数据生成是根据元数据管理中表结构信息和表字段信息,依据填充类型对表数据进行填充。 模拟数据生成用于软件开发和测试阶段,以便于开发者在没有真实数据的情况下进行程序的编写、调试和性能测试。
使用模拟数据生成功能之前,请先保障需要生成数据的表已经解析到元数据管理的应用中。可以生成的数据场景如下:
- 单表数据生成:常见字符、数字、日期、中文、姓名等字段数据填充
- 关联表数据生成:使用关联填充实现外键字段填充
- HOS字典填充:可以填充选字符的编码或名称
- 字符序列:如生成A0001、A0002等字符序列,可以使用格式化序列填充
- 填充计算值:使用Js表达式计算类型,可以填充js表达式计算值,一行数据的所有填充值为表达式可用变量,变量名为表字段编码
说明
生成数据时采用批量插入方式,默认批量插入大小为1000,即每次批量插入1000条数据。
如果需要修改每次批量插入的大小可以在【系统管理】-【系统参数】中修改`mock-batch-size`的值。
# 模拟数据生成方案管理
模拟数据生成方案管理是通过元数据中表信息和字段信息,配置各个字段填充类型和填充规则,设置填充数据量, 从而生成模拟数据方案。模拟数据生成方案管理可以帮助开发者快速生成模拟数据,并根据需要进行调整。
# 新增模拟数据生成方案
点击菜单【系统配置化平台】-【模拟数据生成】进入模拟数据生成管理页面,点击新增按钮弹出【新增数据生成方案】弹窗, 输入相应信息即可。
1.填写基础信息 输入方案名称,选择对应的应用,然后点击查询按钮,选择需要生成模拟数据的表。然后点击【保存并下一步】。
2.填写生成配置 选择左侧要配置的表,配置该表生成数据量和是否需要清空表数据。然后点击字段列表中配置按钮,依次配置需要填充的字段。
【填充类型配置】弹窗中需要配置数据填充类型,填充比例。以及各个填充类型详细的配置信息。配置好后点击【保存并下一步】。
填充类型说明
填充类型 | 说明 | 详细配置说明 |
---|---|---|
字符串 | 填充字符串类型数据 | 长度类型:可以配置定长字符串或边长字符串 生成类型:配置字符串生成规则 |
布尔 | 填充布尔类型数据 | |
整型 | 填充整型数据 | 最小值:配置生成数据的最小值(最小值不能小于0) 最大值:配置生成数据的最大值 |
Long | 填充Long型数据 | 最小值:配置生成数据的最小值(最小值不能小于0) 最大值:配置生成数据的最大值 |
双精度浮点 | 填充双精度浮点类型数据 | 最小值:配置生成数据的最小值(最小值不能小于0) 最大值:配置生成数据的最大值 |
浮点 | 填充浮点类型数据 | 最小值:配置生成数据的最小值(最小值不能小于0) 最大值:配置生成数据的最大值 |
日期 | 填充日期类型数据 | 最小值:配置生成数据的开始日期 最大值:配置生成数据的截止日期 |
时间 | 填充时间类型数据 | 最小值:配置生成数据的开始时间 最大值:配置生成数据的截止时间 |
日期时间 | 填充日期时间类型数据 | 最小值:配置生成数据的开始日期时间 最大值:配置生成数据的截止日期时间 |
UUID | 填充UUID类型数据 | 生成类型:选择生成UUID的长度 |
填充邮件地址类型数据 | ||
中国身份证 | 填充身份增类型数据 | |
HOS字典 | 填充系统配置菜单下的数据字典中的数据 | 数据字段:选择数据字典中的字段 |
关联填充 | 填充其他表中某个字段的数据 | 关联表:选择关联的表 关联字段:选择关联的字段 |
格式化序列 | 生成一个整数序列用字符串模板格式化后填充 | 如生成A0001、A0002等字符序列,字符串模板为java的String.format()方法的模板参数 |
Js表达式计算 | 用配置的Js表达式计算结果再用字符串模板格式化后填充 | 使用Java引擎执行Js表达式生成填充数据,用其他字段名为变量可以引用其他字段的填充值 |
密码 | 填充密码格式的数据 | 生成类型:配置生成密码的强度 |
英文名字 | 填充英文人名的数据 | |
中文名字 | 填充中国人名的数据 | |
中文字符串 | 填充中文字符串类型数据 | 长度类型:配置定长字符或是变长字符 生成类型:配置字符串生成规则 |
ipv4 | 填充ipv4类型数据 | |
ipv6 | 填充ipv6类型数据 | |
MAC地址 | 填充MAC地址类型数据 |
补充说明
1、数值类型的最小值必须大于等于0
2、数值类型的最大值必须大于最小值。且生成的填充数值的区间为[min,max),即包括最大值,不包括最小值
3、关联填充:若某个表的字段填充类型为关联填充,则此表必须有主键,若没有,此字段将不会被填充任何值
4、格式化序列:常用模板如`code_%5d`会生成`code_00001`格式填充值
5、Js表达式计算:如ct_code字段的填充为`code_%5d`,可以用表达式`("0000" + (parseInt(ct_code.substring(5))%10)).slice(-4)`生成ct_code中数字除10的余数的数字。
3.确认信息 在确认信息页面可以看到配置的模拟数据生成方案的信息,包括表的信息和生成数据量等。如果确认无误,点击【生成数据】可以按照配置的方案生成相应的数据。 如果不想生成也可以点击【关闭】。如果信息有误,可以点击【上一步】,返回修改。
点击【生成数据】可以看到生成数据的进度。点击【关闭并跳转任务管理查看】也可以跳转到任务管理中查看详细信息。
# 删除模拟数据生成方案
在模拟数据生成列表中操作列中点击【删除】按钮,弹出确认框,点击【确定】即可删除该模拟数据生成方案。
# 修改模拟数据生成方案
在模拟数据生成列表中操作列中点击【修改】按钮,弹出修改模拟数据生成方案弹窗,修改相应信息即可。
# 执行模拟数据生成方案
在模拟数据生成列表中操作列中点击【执行】按钮,就可以生成相应的数据。
# 模拟数据生成任务管理
在模拟数据生成任务管理中可以查看任务执行的状态,以及错误原因等。
点击菜单【系统配置化平台】-【数据生成任务管理】即可进入模拟数据生成任务管理页面。
点击操作栏中【查看】按钮即可查看任务详情