(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210365988.6
(22)申请日 2022.04.08
(71)申请人 河海大学
地址 211100 江苏省南京市江宁开发区佛
城西路8号
(72)发明人 盛新军 王志坚 高祥涛 叶枫
兰林 李凤生
(74)专利代理 机构 南京乐羽知行专利代理事务
所(普通合伙) 32326
专利代理师 李玉平
(51)Int.Cl.
G06F 16/27(2019.01)
G06F 16/2458(2019.01)
G06F 9/54(2006.01)
G06F 9/50(2006.01)
(54)发明名称
一种面向多模数据库的基准评测系统及其
构建方法
(57)摘要
本发明公开一种面向多模数据库的基准评
测系统及其构建方法, 系统包括: 分布式数据库
模块、 资源监控模块、 消息传输模块、 工作 负载执
行模块和评测记录管理模块。 方法包括如下步
骤: (1) 安装部署相关数据库集群; (2) 安装部署
Prometheus和Grafana资源监控软件; (3) 基于
Zookeeper和Kafka实现异步消息传输队列; (4)
基于Java语言实现负载执行程序, 用于连接异步
消息传输队列和分布式数据库集群; (5) 基于
Java语言和前端框架vue实现评测记录管理, 为
评测任务创建及评测结果 查看提供 可视化页面。
权利要求书2页 说明书6页 附图1页
CN 114676198 A
2022.06.28
CN 114676198 A
1.一种面向多模数据库的基准评测系统, 其特征在于, 包括: 分布式数据库模块、 资源
监控模块、 消息传输模块、 工作负载 执行模块和评测记录管理模块;
所述消息传输模块为工作负载执行模块提供源数据; 所述工作负载执行模块将从消息
传输模块读取到的数据存储到 分布式数据库模块; 所述资源监控模块在工作负载执行期间
采集资源数据; 所述评测记录管理模块负责管理工作负载 执行模块的执 行结果。
2.根据权利要求1所述的面向多模数据库的基准评测系统, 其特征在于, 所述分布式数
据库模块包括2种多模数据库: A rangoDB和OrientDB。
3.根据权利要求1所述的面向多模数据库的基准评测系统, 其特征在于, 所述资源监控
模块由分布式监控系统Pr ometheus和Grafana组成, 用于对数据库占用的资源进行评测, 包
括CPU和内存使用情况的监测。
4.根据权利要求1所述的面向多模数据库的基准评测系统, 其特征在于, 所述消息传输
模块由Zookeeper和Kafka实现异步消息传输队列; 在该异步消息传输队列中Zookeeper是
注册中心, 使得工作负载执行模块能从Kafka中异步获取数据; 所述Kafka是流数据处理平
台; 在评测开始前, 消息传输队列生产者通过Java程序将数据集中的数据存储到Kafka中,
为消费者 提供数据。
5.根据权利要求1所述的面向多模数据库的基准评测系统, 其特征在于, 所述工作负载
执行模块模拟负载, 包括三类负载: 单表增删改查工作负载、 多线程工作负载、 多表联合查
询工作负载; 单表增删改查工作负载每次仅对一个表进行增删改查操作, 从而模拟数据迁
移和数据实例化的操作; 多线程工作负载通过创建多个线程来执行任务, 从而模拟大数据
应用场景下数据库同时处理多个请求的高并发操作; 多表联合查询工作负载通过表与表之
间的联合 查询, 从而模拟大 数据场景中具有复杂业 务逻辑的操作。
6.根据权利要求1所述的面向多模数据库的基准评测系统, 其特征在于, 所述评测记录
管理模块 通过构建易交 互的Web页面降低数据库评测门槛, 增强数据库评测交 互性;
评测记录管理模块共分为两个部分: 任务 提交部分和评测记录查看部分;
在任务提交部分用户可以通过Web页面选择相关参数并提交评测任务;
在评测记录查看部分用户可以查看所有评测任务的状态及参数。
7.一种面向多模数据库的基准评测系统的构建方法, 其特 征在于, 包括如下步骤:
(1) 为涉及评测的数据库安装部署主从集群;
(2) 安装分布式资源监控软件Prometheus和Grafana, 用于统计服务器的资源占用情
况; Prometheus是一个时间序列数据库, 通过定时采样服务器的资源情况实现资源监控的
目的, 包括监控CPU和内存两类 资源; Grafana则是一个图形界面化工具, 能够将Prometheus
采集到的数据呈现到界面上;
(3)安装部署Zookeeper和Kafka组成的异步消息传输队列; 在该消息队列中,
Zookeeper作为注 册中心, 用于实现消息的负载均衡, Kafka作为 流数据处 理平台;
(4) 通过编码的方式将负载转换为可运行的程序, 得到工作负载执行模块, 该模块包
含, 三类工作负载: 单表增删改查工作负载、 多 线程工作负载、 多表联合 查询工作负载;
(5) 提供评测任务 提交功能和评测记录查看功能。
8.根据权利要求7所述的面向多模数据库的基准评测系统的构建方法, 其特征在于, 所
述步骤 (3) 中, 用Zookeeper和Kafka实现异步消息传输队列, 该消息传输队列的生产者在评权 利 要 求 书 1/2 页
2
CN 114676198 A
2测开始前通过J ava程序将多模 数据集中的数据写入到Kafka中, 评测开始后, 工作负载执行
模块作为异步消息传输队列的消费者从Kafka 中读取数据, 具体步骤为:
输入: 多模数据集;
输出: Kafka流数据;
首先, 输入阶段判断多模数据集文件下一行是否存在, 如果存在就读取下一行并发送
到Kafka中, 如果下一行不存在即读取到文件末尾, 则输入阶段结束; 其次, 在输出 阶段, 消
费者连接Kafka并通过对应的topic消费输入阶段发送到Kafka中的数据, 直到消费者主动
关闭连接 输出结束。
9.根据权利要求7所述的面向多模数据库的基准评测系统的构建方法, 其特征在于, 所
述步骤 (4) 中, 用Java语言实现的工作负载 执行模块, 具体算法步骤如下:
输入: 负载编号, 需要评测的数据库编号;
输出: 执行时间、 占用的CPU和内存;
在消息队列获取到数据后, 工作负载执行模块根据用户选择的负载编号和需要评测的
数据库编号开始运行程序; 首先系统会创建一条标记为待评测的记录, 该记录创建时仅包
含负载编号和数据库标号; 系统按照记录提交的先后顺序执行工作负载, 并将当前执行 的
记录标记为评测中; 程序运行期间会保存每条记录的运行时间, 同时调用由Prometheus和
Grafana组成的资源监控模块获取CPU和内存占用情况; 执行工作负载的程序运行结束后,
工作负载执行模块会将执行时间和资源占用情况保存到数据库中, 并将当前记录标记为已
评测。
10.根据权利要求7所述的面向多模数据库的基准评测系统的构建方法, 其特征在于,
所述步骤 (5) 中, 评测记录管理模块 为用户提供了易交 互的Web界面, 一共分为两个部分:
(a) 评测任务提交部分, 该部分将负载编号、 数据库编号参数以选项的形式呈现出来,
供用户选择; 同时对于每一个任务 都有描述信息; 用户通过选择相应的参数, 工作负载执行
模块会创建一条待评测任务并保存在数据库中;
(b) 评测记录查看部分, 该部分展示了所有的评测记录; 用户可以根据评测状态、 负载
类型、 数据库编号 来筛选想要查看的评测记录 。权 利 要 求 书 2/2 页
3
CN 114676198 A
3
专利 一种面向多模数据库的基准评测系统及其构建方法
文档预览
中文文档
10 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共10页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 07:14:12上传分享