当前位置: 首页 > 专利查询>贵州大学专利>正文

一种基于阵列模型的数据库系统技术方案

技术编号:14863620 阅读:90 留言:0更新日期:2017-03-19 17:31
本发明专利技术公开了一种基于阵列模型的数据库系统,包括数据处理子系统(1),数据处理子系统(1)分配任务给数据存储子系统(2),系统监控子系统(3)对数据存储子系统(2)进行收集监控数据后,反馈给数据处理子系统(1),系统监控子系统(3)通过分配方法对数据处理子系统(1)的分配任务进行调节;数据处理子系统(1)用于数据处理、分析和转换;数据存储子系统(2)用于支持数据到阵列数据库引擎的无缝存储;系统监控子系统(3)用于实时监控所有数据库节点,并且获得系统监控日志。本发明专利技术通过设立系统监控子系统和采用科学的分配方法,满足了科学数据的分析存储需求,适应了系统调优和优化分析的需要,还无需人工的干预。

【技术实现步骤摘要】

本专利技术涉及一种系统,特别是一种基于阵列模型的数据库系统
技术介绍
计算机模拟和科学设备每年都会产生海量的科学数据,大部分科学数据都是以阵列形式存在的,传统基于关系型的数据库并不能很好的满足在数据密集型科学领域的存储和分析需求。现如今基于关系型的传统数据库如SQLServer被广泛应用于各种领域,但是,针对科学数据的高噪声,密集计算和复杂的非关系模式的特征,传统关系数据库并不能很好的支持大规模科学数据的存储和分析。基于关系模型的数据库系统(如SQLServer,MySQL,Oracle)目前广泛应用于商业领域。然而,科学数据的高噪音,复杂计算分析的特征并不适合传统关系型数据库。在科学研究的过程中,很多科学家希望花费更多的时间在与科学数据和科学分析结果上,而非在科学数据的分析处理工具的学习中,而目前的商业的数据管理系统已经不能满足科学数据的存储和分析需求了。SciDB是一个针对科学数据管理和分析的开放源代码的科学数据库系统,它主要是由Stonebraker领导开发并且获得Paradigm4公司的赞助。其设计初衷旨在解决科学研究中数据量大、数据世袭等科学问题。与传统DBMS不同的是,SciDB能够为科学应用领域提供大规模的复杂分析支持,用以满足其日益增长的需求。它采用阵列数据模型,因此能够较好的支持多维科学数据分析。SciDB主要的特征如下。首先是无覆盖特性,SciDB能够存储不同版本的数据,通过时间维度作为区别不同历史阵列的标志。此外,还采用压缩算法以节省空间。其次是引入了原位数据的特性,SciDB定义自己的数据格式,并为常用的外部数据格式提供适配器编写接口。通过适配器,用户就可以不通过加载数据到SciDB引擎直接进行数据分析处理。第三是命名版本特性:用户对阵列的一部分执行特定的变更,而保留其余部分不变。第四个特征是可以满足数据推导可重复性的要求的特征。科学领域的数据收集过程中经常会收集到不准确的数据信息,为了解决这个问题,SciDB也支持数据具有误差。现有的SciDB系统,无法与KVM虚拟化技术的应用接口对接,需要人工的干预,且当数据过多时,数据库无法有效地对任务进行分配,造成了等待时间长,加载时间慢等缺点。因此,现有的SciDB系统的分配方法不能满足科学数据的分析存储需求,难以适应进行系统调优和优化分析的需要。
技术实现思路
本专利技术的目的在于,提供一种基于阵列模型的数据库系统。本发明通过设立系统监控子系统和采用科学的分配方法,满足了科学数据的分析存储需求,进而适应了系统调优和优化分析的进一步需要;还增加了KVM虚拟化技术的应用接口,无需过多人工的干预。本专利技术的技术方案:一种基于阵列模型的数据库系统,包括数据处理子系统,数据处理子系统分配任务给数据存储子系统,系统监控子系统对数据存储子系统进行收集监控数据后,反馈给数据处理子系统,系统监控子系统通过分配方法对数据处理子系统的分配任务进行调节;数据处理子系统用于数据处理、分析和转换;数据存储子系统用于支持数据到阵列数据库引擎的无缝存储;系统监控子系统用于实时监控所有数据库节点,并且获得系统监控日志。前述的基于阵列模型的数据库系统中,所述系统监控子系统,包括监控客户端,监控客户端收集监控数据传送到监控代理端,监控代理端再将监控数据反馈到监控服务端,监控服务端按分配方法对数据处理子系统的分配任务进行调节。前述的基于阵列模型的数据库系统中,所述的数据处理子系统,包括协调者引擎,协调者引擎内设有第一执行引擎,协调者引擎负责将用户要加载进本数据库系统的数据加载到各数据库节点的本地存储中,并在元数据库中更新各数据库节点的本地数据的统计信息。前述的基于阵列模型的数据库系统中,所述的数据存储子系统,设有1个以上数据库节点,每个数据库节点对应安装有监控客户端,数据库节点内还设有第二执行引擎。前述的基于阵列模型的数据库系统中,所述系统监控子系统收集的监控数据,包括:CPU利用率、内存量、磁盘读写速率、网络带宽利用率、过去t秒内任务的平均等待时间、任务数量和数据库节点负载,其中,600≤t≤7200。前述的基于阵列模型的数据库系统中,进行任务分配时,根据系统监控子系统收集的监控数据按照如下的分配方法分配任务:如果某数据库节点上的CPU利用率超过a%,则不让该数据库节点参与任务T及其子任务的执行,其中,65%≤a%≤1;前述的基于阵列模型的数据库系统中,进行任务分配时,根据系统监控子系统收集的监控数据按照如下的分配方法分配任务:如果任务T及其子任务在某数据库节点上运行时所需要的内存量,超过该数据库节点的可用内存量的b%,则不让该数据库节点参与任务T及其子任务的执行,其中60%≤b%≤1;前述的基于阵列模型的数据库系统中,进行任务分配时,根据系统监控子系统收集的监控数据按照如下的分配方法分配任务:如果某数据库节点上的磁盘读写速率超过了最高速度的c%,则不让该数据库节点参与任务T及其子任务的执行,其中60%≤c%≤1;前述的基于阵列模型的数据库系统中,进行任务分配时,根据系统监控子系统收集的监控数据按照如下的分配方法分配任务:如果某数据库节点上的网络带宽利用率超过了最高带宽的d%,则不让该数据库节点参与任务T及其子任务的执行,其中60%≤d%≤1;前述的基于阵列模型的数据库系统中,进行任务分配时,根据系统监控子系统收集的监控数据按照如下的分配方法分配任务:如果某数据库节点上当前正在等待执行的任务队列中的任务,其预估的平均等待时间超过了t1秒,则不让该数据库节点参与任务T及其子任务的执行,其中,300≤t1≤7200;前述的基于阵列模型的数据库系统中,进行任务分配时,根据系统监控子系统收集的监控数据按照如下的分配方法分配任务:如果某数据库节点上的等待执行的任务数量超过了n1,则不让该数据库节点参与任务T及其子任务的执行,其中10≤n1。前述的基于阵列模型的数据库系统中,进行任务分配时,根据系统监控子系统收集的监控数据按照如下的分配方法分配任务:如果某数据库节点在过去的时间t2秒内,其CPU平均利用率超过了e%,且CPU当前的利用率已经超过了r×e%,则不让该数据库节点参与任务T及其子任务的执行,其中,0.6≤r≤1,300≤t2≤7200,65%≤e%≤1;前述的基于阵列模型的数据库系统中,进行任务分配时,根据本文档来自技高网
...

【技术保护点】
一种基于阵列模型的数据库系统,其特征在于:包括数据处理子系统(1),数据处理子系统(1)分配任务给数据存储子系统(2),系统监控子系统(3)对数据存储子系统(2)进行收集监控数据后,反馈给数据处理子系统(1),系统监控子系统(3)通过分配方法对数据处理子系统(1)的分配任务进行调节;数据处理子系统(1)用于数据处理、分析和转换;数据存储子系统(2)用于支持数据到阵列数据库引擎的无缝存储;系统监控子系统(3)用于实时监控所有数据库节点,并且获得系统监控日志。

【技术特征摘要】
1.一种基于阵列模型的数据库系统,其特征在于:包括数据处理子系统(1),数据处理子系统(1)分配任务给数据存储子系统(2),系统监控子系统(3)对数据存储子系统(2)进行收集监控数据后,反馈给数据处理子系统(1),系统监控子系统(3)通过分配方法对数据处理子系统(1)的分配任务进行调节;
数据处理子系统(1)用于数据处理、分析和转换;
数据存储子系统(2)用于支持数据到阵列数据库引擎的无缝存储;
系统监控子系统(3)用于实时监控所有数据库节点,并且获得系统监控日志。
2.根据权利要求1所述的基于阵列模型的数据库系统,其特征在于:所述系统监控子系统(3),包括监控客户端(6),监控客户端(6)收集监控数据传送到监控代理端(7),监控代理端(7)再将监控数据反馈到监控服务端(8),监控服务端(8)按分配方法对数据处理子系统(1)的分配任务进行调节。
3.根据权利要求1所述的基于阵列模型的数据库系统,其特征在于:所述的数据处理子系统(1),包括协调者引擎(4),协调者引擎(4)内设有第一执行引擎(12),协调者引擎(4)负责将用户要加载进本数据库系统的数据加载到各数据库节点(9)的本地存储(13)中,并在元数据库(5)中更新各数据库节点(9)的本地数据的统计信息。
4.根据权利要求1所述的基于阵列模型的数据库系统,其特征在于:所述的数据存储子系统(2),设有1个以上数据库节点(9),每个数据库节点(9)对应安装有监控客户端(6),数据库节点(9)内还设有第二执行引擎(15)。
5.根据权利要求1所述的基于阵列模型的数据库系统,其特征在于:所述系统监控子系统(3)收集的监控数据,包括:CPU利用率、内存量、磁盘读写速率、网络带宽利用率、过去t秒内任务的平均等待时间、任务数量和数据库节点负载,其中,600≤t≤7200。
6.根据权利要求1至5任一权利要求所述的基于阵列模型的数据库系统,其特征在于:进行任务分配时,根据系统监控子系统(3)收集的监控数据按照如下的分配方法分配任务:
如果某数据库节点(9)上的CPU利用率超过a%,则不让该数据库节点(9)参与任务T及其子任务的执行,其中,65%≤a%≤1。
7.根据权利要求6所述的基于阵列模型的数据库系统,其特征在于:进行任务分配时,根据系统监控子系统(3)收集的监控数据按照如下的分配方法分配任务:
如果任务T及其子任务在某数据库节点(9)上运行时所需要的内存量,超过该数据库节点(9)的可用内存量的b%,则不让该数据库节点(9)参与任务T及其子任务的执行,其中60%≤b%≤1。
8.根据权利要求7所述的基于阵列模型的数据库系统,其特征在于:进行任务分配时,根据系统监控子系统(3)收集的监控数据按照如下的分配方法分配任务:
如果某数据库节点(9)上的磁盘读写速率超过了最高速度的c%,则不让该数据库节点(9)参与任务T及其子任务的执行,其中60%≤c%≤1。
9.根据权利要求8所述的基于阵列模型的数据库系统,其特征在于:进行任务分配时,根据系统监控子系统(3)收集的监控数据按照如下的分配方法分配任务:
如果某数据库节点(9)上的网络带宽利用率超过了最高带宽的d%,则不让该数据库节点(9)参与任务T及其子任务的执行,其中60%≤d%≤1。
10.根据权利要求9所述的基于阵列模型的数据库系统,其特征在于:进行任务分配时,根据系统监控子系统(3)收集的监控数据按照如下的分配方法分配任务:
如果某数据库节点(9)上当前正在等待执行的任务队列中的任务,其预估的平均等待时间超过了t1秒,则不让该数据库节点(9)参与任务T及其子任务的执行,其中,300≤t1≤7200。
11.根据权利要求10所述的基于阵列模型的数据库系统,其特征在于:进行任务分配时,根据系统监控子系统(3)收集的监控数据按照如下的分配方法分配任务:
如果某数据库节点(9)上的等待执行的任务数量超过了n1,则不让该数据库节点(9)参与任务T及其子任务的执行,其中10≤n1。
12.根据权利要求11所述的基于阵列模型的数据库系统,其特征在于:进行任务分配时,根据系统监控子系统(3)收集的监控数据按照如下的分配方法分配任务:
如果某数据库节点(9)在...

【专利技术属性】
技术研发人员:李晖陈梅邱能俊李宏源
申请(专利权)人:贵州大学贵州优联博睿科技有限公司
类型:发明
国别省市:贵州;52

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1