跳到主要内容

生成测试数据

NineData 支持在数据库中自动生成符合特定业务场景的随机数据,用于模拟实际生产环境中的数据情况,帮助用户在不使用真实数据的情况下,进行功能测试、压力测试以及其他验证工作。

功能说明

  • 自定义数据生成:支持根据具体业务需求,自由定义每个字段数据的生成规则和算法,确保生成数据符合实际业务逻辑。例如,姓名字段可以生成特定格式的姓名,日期字段可以生成特定范围内的日期。

  • 数据量控制:可以控制生成数据的数量,支持小规模数据到千万级数据的生成,满足不同的测试需求。

  • 字段关联与依赖:数据可以基于字段之间的关联关系自动生成,确保表与表之间、字段与字段之间的数据一致性,例如外键关系的维护。

  • 数据分布设置:用户可以设置生成数据的分布比例,包括 NULL 值比例、唯一值、重复值等,帮助模拟生产环境中的数据分布特征。

使用场景

  • 功能测试:在开发过程中,生成测试数据用于验证系统的功能是否按预期运行。例如,在用户注册功能测试中,可以生成一批模拟用户数据,用来验证用户注册、登录和数据存储的操作过程。
  • 性能测试:通过生成大量数据,模拟系统在高负载下的运行情况,测试系统的响应速度、资源消耗和扩展能力。例如,生成百万级别的订单数据进行性能测试,检查数据库的查询和插入性能。
  • 迁移功能测试:在进行数据迁移或版本升级时,可以通过生成测试数据对数据迁移的过程进行验证,确保在迁移或升级后的环境中数据保持完整和一致。

前提条件

  • 已将需要生成测试数据的数据源添加到 NineData。如何添加,请参见添加数据源
  • 支持的数据源类型为 MySQL、Oracle、OceanBase for Oracle、OceanBase for MySQL、TiDB、GreatSQL、ClickHouse、Doris、StarRocks、TDSQL MySQL 版。

创建数据生成任务

  1. 登录 NineData 控制台

  2. 在左侧导航栏单击 >
  1. 页签下,单击右上角的,然后根据下表配置各项参数,单击

    参数说明
    输入数据生成任务的名称。
    选择数据生成任务的目标数据源和库(Schema)。
    单击,选择数据生成任务的目标表。在右侧,可以单击仿真模板的名称,更换仿真模板。仿真模板支持自定义配置,请参见管理仿真模板
    表添加完成后,页面中将自动列出该表以及其中所有字段。
    • :在左侧表名区域中的文本框中,可以配置生成的数据量。该数据量受规则影响,最大为 1000 万条。规则配置方法请参见编辑规范
    • :在右侧字段名区域,可以手动为每个字段配置仿真规则,单击各字段右侧列下的可以为每个列配置仿真算法。
    选择生成数据时遇到重复对象的处理策略,支持三种策略。
    【个人模式下不显示】当前数据生成任务审批通过后的任务执行人。
    说明下拉列表中的可选项取决于如下两种情况:
    • 当前数据源配置了开发规范:列表中的选项基于当前规范中配置的规则。该规则位于页签,如何配置开发规范,请参见编辑规范
    • 当前数据源未配置开发规范:列表中的可选项为对当前数据源有权限的用户。更多关于授权的说明,请参见配置用户权限
    (可选)【个人模式下不显示】用于记录和说明创建数据生成任务的目的和背景,尤其在团队合作、任务审计和审批流程中,生成原因的记录有助于任务合理性的验证和任务流的推进。
  2. 进入节点,系统将基于当前数据源关联的 SQL 开发规范对任务进行预审,会有如下几个结果:

    • 预审通过:根据审批流程的配置情况,任务状态会更改为,如果是前者,请继续下一步,如果是后者,本流程结束。
    • 预审不通过:任务状态会更改为,您可以撤回数据生成任务重新编辑并提交。

撤回数据生成任务

任务的状态处于时,您可以撤回该任务的申请,撤回后,任务不再执行,您可以重新编辑该任务单再次提交。

前提条件

  • 任务的状态为
  • 您是目标任务的

操作步骤

  1. 登录 NineData 控制台

  2. 在左侧导航栏单击 >
  1. 页签,找到目标任务,单击任务 ID 或任务右侧列的。在页右上角单击

  2. 在弹出的确认窗口中,单击

    • :任务状态变更为。如需重新编辑任务,可以在 列表找到该任务,单击右侧列下的,重新提交任务单。
    • :任务状态变更为并自动跳转至任务的编辑页面。

审批数据生成任务

前提条件

  • 任务的状态为
  • 您是目标任务的

操作步骤

  1. 登录 NineData 控制台

  2. 在左侧导航栏单击 >
  1. 页签,找到目标任务,单击任务 ID 或任务右侧列的

  2. 页面,审批任务,根据实际情况选择

    操作
    说明
    将任务单转交给其他用户审批。
    批准申请,单击后,您可以按需输入,并单击
    驳回申请,不执行该任务。单击后,您还需要输入,并单击

执行数据生成任务

任务的状态处于时,您可以执行该任务。

前提条件

  • 任务的状态为
  • 您是目标任务的

操作步骤

  1. 登录 NineData 控制台

  2. 在左侧导航栏单击 >
  1. 页签,单击目标状态为的任务 ID。

  2. 页面,单击右上角的

  3. 在弹出的窗口中,选择,单击,然后等待任务状态变更为即可。

    • :马上执行 SQL 语句。
    • :选择一个时间执行 SQL 语句。

    执行成功后,您可以打开 SQL 窗口验证生成的数据。