[发明专利]面向分析型数据库的大规模随机负载生成及验证方法及系统有效
| 申请号: | 202010632285.6 | 申请日: | 2020-07-03 |
| 公开(公告)号: | CN112241363B | 公开(公告)日: | 2021-10-12 |
| 发明(设计)人: | 张蓉;米凯铭 | 申请(专利权)人: | 华东师范大学 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36 |
| 代理公司: | 上海德禾翰通律师事务所 31319 | 代理人: | 陈艳娟 |
| 地址: | 200241 *** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 面向 分析 数据库 大规模 随机 负载 生成 验证 方法 系统 | ||
1.一种面向分析型数据库的大规模随机负载生成及验证方法,其特征在于,包括以下步骤:
步骤一,随机数据库schema生成:根据自定义的随机schema生成配置文件,其中包括常用的schema配置项,包括数据表的个数、数据表的大小、属性数目、每张数据表外键的数量、数据类型出现的比例、字符串长度、索引概率生成随机的数据库schema;
步骤二,数据生成:采用确定性随机数据生成机制,即为数据表中的属性确定随机生成函数,使其属性值与主键值保持某种关联关系,根据属性生成函数,采用分布式控制器将数据生成任务均匀划分到所有的数据生成器上,实现完全并行的数据生成,生成的数据先以文本格式存储在生成节点,之后再批量导入数据库中;
所述确定性随机数据生成机制如下:根据属性本身的数据类型,为其确定多个随机生成函数,为每个属性值选择相应的生成函数使用数值计算器计算出一个值,之后使用数值转换器,根据数值计算器的值生成实际的属性值;针对不同的数据类型,数值转换器使用不同的方式;针对数值型数据类型,数值转换器根据数值计算器得出的值进行精度调整;而针对字符型数据类型,根据字符串长度限制,先生成一组种子字符串,然后根据数值计算器得出的值通过取余确定使用的种子字符串,再通过连接数值计算器得出的值和种子字符串作为输出;
步骤三,查询生成:采用数据感知的查询生成机制,基于支持的sql语法,首先生成符和语法和语义的具有参数化谓词的查询,之后,在查询参数实例化过程中,受益于确定性数据生成机制,高效实例化满足特定约束的查询参数;
所述数据感知的查询生成机制如下:首先根据支持的sql语法,生成满足语法和语义的具有参数化谓词的查询,根据谓词形式的不同,采用随机计算或者蒙特卡洛算法进行参数实例化;
步骤四,结果集生成:根据数据之间的依赖关系,通过自计算的方式,得出在测试数据库上执行测试查询的正确结果,然后用于查询执行结果正确性验证;
所述结果集生成机制如下:受益于确定性数据生成机制以及数据确定性的依赖关系,通过主键约束链的形式表示当前查询操作下表中满足约束的元组的主键信息,不断地进行约束传递,最终表示出每张表中满足查询的所有元组;之后按照连接序,构建连接结果,进行选择、聚合运算后得出最终查询结果。
2.一种面向分析型数据库的大规模随机负载生成及验证系统,其特征在于,所述系统采用如权利要求1所述的方法,所述系统包括以下模块:
随机数据库schema生成模块,根据自定义的随机schema生成配置文件,其中包括常用的schema配置项,生成随机的数据库schema;
数据生成模块,采用确定性随机数据生成机制,即为数据表中的属性确定随机生成函数,使其属性值与主键值保持某种关联关系,根据属性生成函数,采用分布式控制器将数据生成任务均匀划分到所有的数据生成器上,实现完全并行的数据生成,生成的数据先以文本格式存储在生成节点,之后再批量导入数据库中;
查询生成模块,采用数据感知的查询生成机制,基于支持的sql语法,首先生成符和语法和语义的具有参数化谓词的查询,之后,在查询参数实例化过程中,受益于确定性数据生成机制,高效实例化满足特定约束的查询参数;
结果集生成模块,根据数据之间的依赖关系,通过自计算的方式,得出在测试数据库上执行测试查询的正确结果,然后用于查询执行结果正确性验证。
3.如权利要求2所述的面向分析型数据库的大规模随机负载生成及验证系统,其特征在于,所述数据生成主要包含两个模块:数值计算器和数值转换器:
所述数值计算器会使用每个属性对应的生成函数为其计算出一个数值,之后,数值转换器针对不同的数据类型使用不同的方式进行转换;针对数值型数据类型,所述数值转换器根据数值计算器得出的值进行精度调整;而针对字符型数据类型,根据字符串长度限制,先生成一组种子字符串,然后根据数值计算器得出的值通过取余确定使用的种子字符串,再通过连接数值计算器得出的值和种子字符串作为输出。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华东师范大学,未经华东师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010632285.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:用于自主驾驶平台的开放和安全监视系统
- 下一篇:一种船用抗摇摆安全配电箱结构





