买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种创建可靠数据库的方法_中科星图股份有限公司_201611111431.0 

申请/专利权人:中科星图股份有限公司

申请日:2016-12-02

公开(公告)日:2019-11-26

公开(公告)号:CN108154045B

主分类号:G06F21/62(20130101)

分类号:G06F21/62(20130101);G06F16/22(20190101);G06F16/21(20190101);G06F16/27(20190101);G06F11/20(20060101);G06F11/14(20060101)

优先权:

专利状态码:有效-授权

法律状态:2019.11.26#授权;2019.01.29#实质审查的生效;2018.06.12#公开

摘要:本发明涉及一种创建可靠数据库的方法,该方法包括:通过计算可靠度,在n台数据库服务器中选出可靠度最大的一组数据库服务器作为一个可靠组,一组数据库服务器中的服务器个数为预先设置的数值t;反复执行步骤1,获取互不相同的m个可靠组,m是预先定义的数值;将数据库分割成m个小库,每个可靠组分别存储一个小库,同一可靠组中的服务器都存储相应小库的一份拷贝。

主权项:1.一种创建可靠数据库的方法,其特征在于,该方法包括以下步骤:步骤1:通过计算可靠度,在n台数据库服务器中选出可靠度最大的一组数据库服务器作为一个可靠组,一组数据库服务器中的服务器个数为预先设置的数值t;在n台数据库服务器中任取t台,组成一个服务器组,通过排列组合,一共可以得到个服务器组,记这些服务器组为S1,S2,……,SK,所述服务器组所构成的一个集合S={Si,1≤i≤K};对于集合S中的每个服务器组,计算服务器组的可靠度,所述服务器组的可靠度是该服务器组中所有数据库服务器的可靠度之和;对集合S中的服务器组,按照服务器组的可靠度进行排序,将可靠度最大的服务器组作为一个可靠组,并从集合S中删除;步骤2:反复执行步骤1,获取互不相同的m个可靠组,m是预先定义的数值;步骤3:将数据库分割成m个小库,每个可靠组分别存储一个小库,同一可靠组中的服务器都存储相应小库的一份拷贝;还具有一个主服务器,该主服务器用于管理和调度各个数据库服务器;各个数据库服务器之间通过局域网连接;或各个数据库服务器之间通过广域网连接;或各个数据库服务器之间通过互联网连接。

全文数据:一种创建可靠数据库的方法【技术领域】[0001]本发明属于计算机和数据安全领域,尤其涉及一种创建可靠数据库的方法。【背景技术】[0002]近年来,信息安全已经成为人们最关心的问题之一,而随着计算机网络应用的普及和提高,数据库在各个领域的应用越来越广泛,数据库安全成为计算机领域的一个核心研究内容,数据库安全已经成为计算机信息安全的一个重要方面,其重要性体现在:1数据库是各个重要系统的基础,大多数企业、组织以及政府部门的重要数据都保存在各种数据库中,这些数据一旦丢失将给企业、组织和政府部门带来不可估量的损失。2数据库保存着敏感数据,在安全性方面却没有得到相应的重视,人们普遍认为只要加强网络和操作系统安全就可以了,从而忽视了数据库的安全。3有些数据库的安全漏洞在危害数据库安全的同时也威胁操作系统及其它可信系统,有些数据库提供的机制能够影响到操作系统和网络安全的底层,即便数据库运行在非常安全的操作系统上,入侵者只需执行一些数据库中内置的扩展存储过程,依然可以通过数据库获得操作系统权限。[0003]数据库安全包括存储在数据库中的信息的机密性!完整性和可用性,现有技术中,数据库安全研究强调的是如何将攻击者拒之门外,通过加密和严格的存取控制保护信息的机密性!完整性和可用性,多级分类安全系统、边界控制、入侵检测以及物理安全措施能够满足部分用户的保密需求,这些安全技术的主要目的是防御攻击或入侵,但事实上这些防御措施有时对于一些恶意攻击是无效的,特别是内部攻击,因此,在防御失败的情况下,必须寻找一种方案增强现有数据库系统的安全,使它们在面临攻击的时候具有自动恢复的能力,提供数据库系统的可生存能力。【发明内容】[0004]为了解决现有技术中的上述问题,本发明提出了一种创建可靠数据库的方法。[0005]本发明采用的技术方案如下:[0006]—种创建可靠数据库的方法,该方法包括以下步骤:[0007]步骤1:通过计算可靠度,在η台数据库服务器中选出可靠度最大的一组数据库服务器作为一个可靠组,一组数据库服务器中的服务器个数为预先设置的数值t;[0008]步骤2:反复执行步骤1,获取互不相同的m个可靠组,m是预先定义的数值。[0009]步骤3:将数据库分割成m个小库,每个可靠组分别存储一个小库,同一可靠组中的服务器都存储相应小库的一份拷贝。[0010]进一步地,还具有一个主服务器,该主服务器用于管理和调度各个数据库服务器。[0011]进一步地,所述主服务器向外部提供数据库服务。[0012]进一步地,各个数据库服务器之间通过局域网连接。[0013]进一步地,各个数据库服务器之间通过广域网连接。[0014]进一步地,各个数据库服务器之间通过互联网连接。[0015]本发明的有益效果包括:根据可靠度分配数据库的数据存储,大大提高了数据库的可靠性和安全性。【附图说明】[0016]此处所说明的附图是用来提供对本发明的进一步理解,构成本申请的一部分,但并不构成对本发明的不当限定,在附图中:[0017]图1是本发明方法所应用的系统结构图。[0018]图2是本发明方法的基本步骤图。【具体实施方式】[0019]下面将结合附图以及具体实施例来详细说明本发明,其中的示意性实施例以及说明仅用来解释本发明,但并不作为对本发明的限定。[0020]参见附图1,其示出了本发明创建可靠数据库方法所适用的系统结构,该系统包括多台数据库服务器,用于分布式存储一个数据库。所有的数据库服务器都通过网络互相连接,相互之间可以互相传输数据,同时各数据库服务器接受主服务器的管理和调度,并通过主服务器向外部提供数据库服务。所述网络可以是一个内部的局域网,使用局域网的优点是相互之间传输数据快;但是,考虑到异地容灾,该网络也可以是广域网、互联网。[0021]参见图2,基于上述系统结构,本发明的创建可靠数据库的方法包括如下基本步骤:[0022]步骤1:通过计算可靠度,在η台数据库服务器中选出可靠度最大的一组数据库服务器作为一个可靠组,一组数据库服务器中的服务器个数为预先设置的数值t;[0023]步骤2:反复执行步骤1,获取互不相同的m个可靠组,m是预先定义的数值。[0024]步骤3:将数据库分割成m个小库,每个可靠组分别存储一个小库,同一可靠组中的服务器都存储相应小库的一份拷贝。[0025]基于上述基本步骤,下面详细说明本发明的创建可靠数据库的方法:[0026]1将整个数据库分割成m个小库。[0027]具体的分割方式取决于数据库内所存储的数据,以及数据库的组织形式。例如,可以基于数据表进行分割,即将多个数据表构成一个小库;也可以根据存储的数据量进去分害J,使得每个小库所存储的数据量基本相同。考虑到分布式存储,小库的数量m是预先定义的数值,可以根据具体情况所确定,但是一般不少于3个。[0028]⑵设置冗余服务器的数量t。[0029]所述冗余服务器的数量,指的是存储同一个小库的数据库服务器的数量,假设共有η台数据库服务器,则每一个小库都同时存储于其中的t台数据库服务器中,这意味着即使其中有t-i台数据库服务器故障,凭借剩余的1台数据库服务器,该小库也能够得到恢复。为了保证冗余度,一般要求t多3。另外,优选的,为了使得分布式存储的优势更好地发挥,数据分布平均,应当满足nmt2,其中m是小库的数量。[0030]3在η台数据库服务器中任取t台,组成一个服务器组,通过排列组合,一共可以得到个服务器组,记这些服务器组为。那么可以获得由这些服务器组所构成的一个集合S={Si,彡K}。[0031]例如,如果t=3,一共有5台数据库服务器,则通过排列组合,服务器组一共有个,S卩|S|=10。这一步骤实际上给出了同一小库的t个冗余服务器的所有可能的组合。[0032]⑷计算每一台数据库服务器当前的可靠度,具体的计算方法在后面说明。[0033]所述可靠度实际上是数据库服务器存储数据小库所要耗费的代价,其反应了该数据库服务器存储数据的效率。[0034]5对于集合S中的每个服务器组,计算服务器组的可靠度,所述服务器组的可靠度是该服务器组中所有数据库服务器的可靠度之和。[0035]所述可靠度之和反映了一个小库要存储到该服务器所要花费的总的可靠度,通过该可靠度和,可以衡量不同服务器组的优劣。[0036]6对集合S中的服务器组,按照服务器组的可靠度进行排序,将可靠度最大的服务器组作为一个可靠组,并从集合S中删除。[0037]⑺重复步骤4-6,一直到获取了m个可靠组。[0038]通过步骤4-6,选出了一个相对最优解,即将m个小库在冗余度t下存储于η台数据库服务器的相对最优解,通过这一相对最优解,整个数据库的分布式存储效率得到了保证。[0039]8每个可靠组分别存储一个小库,即将可靠组中的每一台数据库服务器都存储相应小库的一个复制。[0040]m个可靠组与m个小库一一对应,因此上述步骤实质上将m个小库分别存储在m个可靠度最大的服务器组中,并且每个小库都有t个冗余,即使其中的t-Ι台服务器故障,也能够继续提供服务,并在故障修复后提供恢复数据。一方面达到了分布式存储的目的,另一方面也达到了冗余备份的目的。[0041]9对于不在任何一个可靠组中的数据库服务器,使用该数据库服务器存储所有的小库。[0042]可能由于某些数据库服务器可靠度过大,或者由于数据库服务器数量很大,导致有一些数据库服务器没有在前面的步骤中被选择存储小库,为了不浪费其存储能力,本发明使用这些服务器存储所有的小库,作为进一步的分布式存储的备份。[0043]前述步骤⑷中,需要针对每一台数据库服务器计算当前的可靠度,可靠度可以有多种计算方式,下面是依据本发明的一个实施例的计算方式,但是本领域技术人员可以采用任意一种可行的其他计算方式,本发明对此不作限制。[0044]4.1设η台数据库服务器为A1,A2,……,An;首先计算仏(1彡i彡η的数据代价D1,即01=1^1'1。其中,T1是数据库服务器仏到主服务器的传输延迟时间(单位为秒),L1是数据库服务器仏本身的数据吞吐率单位为MB秒)。[0045]如果各台数据库服务器在同一个局域网中,则所述传输延迟时间应该是相同的,这种情况下可以省略该时间的计算,直接用一个固定数值代替。[0046]4.2计算数据库服务器A1的可靠度心=〕#“[0047]其中,?1是六1在已经获取的可靠组中出现的次数。例如,已经获取的可靠组SS1={Αι,Α2,Α3}和S2={Ai,A3,Ai},那么当前的Fi=2,即Al在已获取的两个可靠组中出现2次,同理有F2=1,F3=2。[0048]所述F1反映了数据库服务器A1中已有的小库数量,每个小库都会占用存储空间和数据传输带宽,导致数据库服务器负载增加,因而导致了可靠度的增加。[0049]基于上述创建可靠数据库的方法,在数据库的管理上,同一个小库在不同数据库服务器上都是同步的,因此,如果η台数据库服务器中有一台丢失了数据,可以使用其他的数据库服务器为其恢复数据,例如,如果丢失数据的服务器上本来有k个小库,那么就可以同时使用另外的相应于k个小库的k台数据库服务器为其恢复数据。[0050]以上所述仅是本发明的较佳实施方式,故凡依本发明专利申请范围所述的构造、特征及原理所做的等效变化或修饰,均包括于本发明专利申请范围内。

权利要求:1.一种创建可靠数据库的方法,其特征在于,该方法包括以下步骤:步骤1:通过计算可靠度,在η台数据库服务器中选出可靠度最大的一组数据库服务器作为一个可靠组,一组数据库服务器中的服务器个数为预先设置的数值t;步骤2:反复执行步骤1,获取互不相同的m个可靠组,m是预先定义的数值。步骤3:将数据库分割成m个小库,每个可靠组分别存储一个小库,同一可靠组中的服务器都存储相应小库的一份拷贝。2.根据权利要求1所述的创建可靠数据库的方法,其特征在于,还具有一个主服务器,该主服务器用于管理和调度各个数据库服务器。3.根据权利要求2所述的创建可靠数据库的方法,其特征在于,所述主服务器向外部提供数据库服务。4.根据权利要求2或3所述的创建可靠数据库的方法,其特征在于,各个数据库服务器之间通过局域网连接。5.根据权利要求2或3所述的创建可靠数据库的方法,其特征在于,各个数据库服务器之间通过广域网连接。6.根据权利要求2或3所述的创建可靠数据库的方法,其特征在于,各个数据库服务器之间通过互联网连接。

百度查询: 中科星图股份有限公司 一种创建可靠数据库的方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。