一种多用户数据库存储系统和方法

文档序号:6575624阅读:194来源:国知局
专利名称:一种多用户数据库存储系统和方法
技术领域
本发明涉及数据库存储技术,特别是指一种大数据量的多用户数 据库存储装置和方法。
背景技术
系统在运行中都会产生数据,对数据的管理最常用方法就是使用 数据库。但随时间推移和客户数量的增加,会产生量非常庞大的数据。 在大数据量的数据库访问中,访问效率是一个很重要的指标,能否快 速的将数据呈现给用户是衡量一个系统的重要标准。存储在公共数据 服务器上数据的安全性也是用户非常关心的问题。
现有的公共数据服务中,公共服务器上存储的数据可以分为逻辑 关系型数据和存储增长型数据。
逻辑关系型数据是系统中描述各个子系统或者对象之间的关系 以及属性的数据。这些数据的特点是动态增长幅度比较小,单个表的 数据量有限,且需要统一访问和写入。
存储增长型数据是数据增长量非常大的数据,比如一些业务流水 记录、日志记录、充值记录、呼叫中心的通话历史记录等。这种数据 大都为历史数据,主要用于检索访问。
现有技术是将这两种数据都存储在公共数据库内,这样造成数据 库过于庞大导致检索效率降低。同时,这样不仅公共服务器上数据的 安全性无法得到可靠的保障,还容易产生数据丢失。

发明内容
针对现有技术中存在的缺陷和不足,本发明的目的是提供多用户 数据库存储系统和方法,根据数据的特性进行分别存储,以提高数据 的访问效率。
4为达到上述目的,本发明提出了一种多用户数据库存储系统,包 括公共服务器,其特征在于,所述公共服务器包括
至少一个逻辑关系型数据库,该逻辑关系型数据库存储有所有用 户的逻辑关系型数据;
一个或一个以上存储增长型数据库,每一存储增长型数据库存储 有一个用户的存储增长型数据。
其中,所述系统还包括
本地服务器,所述本地服务器电连接所述公共服务器,并对所述
公共服务器上的存储增长型数据进行备份;
客户端,所述客户端电连接所述本地服务器及所述公共服务器;
当客户端访问所述存储增长型数据时,向该本地服务器发送访问请
求;如果本地服务器存储有该数据,则将该数据发送到客户端;如果 本地服务器无该数据或访问失败时,该客户端向公共服务器的存储增 长型数据库发送访问请求。 其中,所述系统还包括
数据分类模块,所述数据分类模块判断所述数据是否与系统或子 系统无逻辑关系且不需要统一访问和写入,如果否,则该数据为系统 数据;如果是,则读取每一数据的增长量,并判断该增长量是否大于 预设阀值,如果是则将该数据标识为存储增长型数据,并存储到所述 存储增长型数据库;否则将该数据标识为逻辑关系型数据,并存储到 所述逻辑关系型数据库。
同时,本发明还提出了一种多用户数据库存储方法,包括 在公共服务器上设置至少一个逻辑关系型数据库,并将所有用户
的逻辑关系型数据存储于所述逻辑关系型数据库中;
在公共服务器上设置一个或一个以上存储增长型数据库,每一存
储增长型数据库对应一个客户,并将该客户的存储增长型数据存储到相应的存储增长型数据库中。 其中,所述方法还包括
设置本地服务器,并使所述本地服务器电连接所述公共服务器以 对所述公共服务器上的存储增长型数据进行备份;
当客户端访问所述存储增长型数据时,向该本地服务器发送访问
请求;如果本地服务器存储有该数据,则将该数据发送到客户端;如
果本地服务器无该数据或访问失败时,该客户端向公共服务器的存储 增长型数据库发送访问请求。
其中,所述方法还包括
判断所述数据是否与系统或子系统无逻辑关系且不需要统 一 访
问和写入,如果否,则该数据为系统数据;如果是,则判断在单位时
间内,每一数据的增长量是否大于阀值,如果是则将该数据标识为存
储增长型数据,并存储到所述存储增长型数据库;否则将该数据标识
为逻辑关系型数据,并存储到所述逻辑关系型数据库。
上述技术方案具有如下优点由于用户关注的是存储增长型数
据,因此本发明将存储增长型数据和逻辑关系型数据分别进行存储, 以此提高存储增长型数据库的检索效率。同时为每一客户分别设置一 个存储增长型数据库,以此提高每一客户检索存储增长型数据时的检 索效率。


图l是本发明提出的多用户数据库存储系统的优选实施例结构示 意图。
具体实施例方式
下面结合附图和实施例,对本发明的具体实施方式
作进一步详细 描述。以下实施例用于说明本发明,但不用来限制本发明的范围。 实施例1
本发明第一实施例提出了 一种多用户数据库存储系统,包括公共
6服务器,所述公共服务器包括
至少 一个逻辑关系型数据库,该逻辑关系型数据库存储有所有用 户的逻辑关系型数据;
一个或一个以上存储增长型数据库,每一存储增长型数据库存储 有一个用户的存储增长型数据。
本发明第 一 实施例是釆用在公共服务器上设置多个数据库,其中
一个数据库用于存放所有用户的逻辑关系型数据;其余数据库用于存
储单个用户的存储增长型数据。这是由于存储增长型数据主要用于检 索,且数据的增长量很大。为每一用户设置一个单独的数据库以存放 存储增长型数据,可以提高用户的检索效率。
为了进一步提高数据的访问效率,可以为存储增长型数据库设置 分库或是分表。例如,根据将数据根据时间维度、客户维度等多种维 度进行划分,然后分别存储在分库或是分表中。这样可以便于控制每 一个分库或分表的数据量,以保证访问检索的效率。
实施例2
本发明第二实施例是作为上述第一实施例的改进,如图1所示,
即除了公共服务器,多用户数据库存储系统还包括
本地服务器,所述本地服务器电连接所述公共服务器,并对所述
公共服务器上的存储增长型数据进行备份;
客户端,所述客户端电连接所述本地服务器及所述公共服务器;
当客户端访问所述存储增长型数据时,向该本地服务器发送访问请
求;如果本地服务器存储有该数据,则将该数据发送到客户端;如果
本地服务器无该数据或访问失败时,该客户端向公共服务器的存储增
长型数据库发送访问请求。
在本实施例中,增设了本地服务器以对公共服务器的存储增长型
数据进行备份。这样提高了存储增长型数据的安全性。同时,用户在访问存储增长型数据时,可以先向本地服务器发出访问请求,如果本 地服务器无备份数据或访问本地服务器失败时,才向公共服务器发送 访问请求。这样可以提高用户访问时的访问效率,降低公共服务器的 负载。
实施例3
本发明的第三实施例是在第一或第二实施例的基础上改进而来, 即上述多用户数据库存储系统还包括
数据分类模块,所述数据分类模块判断所述数据是否与系统或子 系统无逻辑关系且不需要统一访问和写入,如果否则该数据为系统; 如果是,则判断所述数据在读取每一数据的增长量,并判断该增长量 是否大于预设阀值,如果是则将该数据标识为存储增长型数据,并存
储到所述存储增长型数据库;否则将该数据标识为逻辑关系型数据,
并存储到所述逻辑关系型数据库。
本实施例中提出的数据分类模块,可以自动检测数据的增长量, 从而将数据进行分类,以分别存储。当然,不釆用本实施例的数据分 类模块,通过人工对数据进行分类,也可以实现对数据进行分类的目 的。同时,如果数据是与系统或子系统有逻辑关系且需要统一访问和 写入,则这种数据是系统数据。因此只有当数据是与系统或子系统无 逻辑关系且不需要统一访问和写入的,才需要区分是存储增长型数据 还是逻辑增长型数据。
实施例4
本发明的第四实施例是一种多用户数据库存储方法,包括 在公共服务器上设置至少一个逻辑关系型数据库,并将所有用户 的逻辑关系型数据存储于该数据库中;
在公共服务器上设置一个或一个以上存储增长型数据库,所述每 一存储增长型数据库对应一个客户,并将该客户对应的存储增长型数
8据存储到该数据库中。
本发明第四实施例是釆用在公共服务器上设置多个数据库,其中 一个数据库用于存放所有用户的逻辑关系型数据;多个数据库用于存 储单个用户的存储增长型数据。这是由于存储增长型数据主要用于检 索,且数据的增长量很大。为每一用户设置一个单独的数据库以存放 存储增长型数据,可以提高用户的检索效率。
为了进一步提高数据的访问效率,可以为存储增长型数据库设置 分库或是分表。例如,根据将数据根据时间维度、客户维度等多种维 度进行划分,然后分别存储在分库或是分表中。这样可以便于控制每 一个分库或分表的数据量,以保证访问检索的效率。
实施例5
本发明的第五实施例是在第四实施例的基础上改进而来,即所述 方法还包括
设置本地服务器,并使所述本地服务器电连接所述公共服务器以
对所述公共服务器上的存储增长型数据进行备份;
当客户端访问所述存储增长型数据时,向该本地服务器发送访问
请求;如果本地服务器存储有该数据,则将该数据发送到客户端;如 果本地服务器无该数据或访问失败时,该客户端向公共服务器的存储 增长型数据库发送访问请求。
在本实施例中,增设了本地服务器以对公共服务器的存储增长型 数据进行备份。这样提高了存储增长型数据的安全性。同时,用户在 访问存储增长型数据时,可以先向本地服务器发出访问请求,如果本 地服务器无备份数据或访问本地服务器失败时,才向公共服务器发送 访问请求。这样可以提高用户访问时的访问效率,降低公共服务器的 负载。
9实施例6
本发明的第六实施例是在第四或第五实施例的基础上改进而来,
即所述方法还包括
判断所述数据是否与系统或子系统无逻辑关系且不需要统 一 访
问和写入,如果否则该数据为系统数据;如果是,则判断所述数据在 单位时间内,每一数据的增长量是否大于阀值,如果是则将该数据标 识为存储增长型数据,并存储到所述存储增长型数据库;否则将该数 据标识为逻辑关系型数据,并存储到所述逻辑关系型数据库。本实施 例中增设了对数据进行分类的步骤,可以自动检测数据的增长量,从 而将数据进行分类,以分别存储。当然,不采用本实施例的数据分类 模块,通过人工对数据进行分类,也可以实现对数据进行分类的目的。 同时,如果数据是与系统或子系统有逻辑关系且需要统一访问和写 入,则这种数据是系统数据。因此只有当数据是与系统或子系统无逻 辑关系且不需要统一访问和写入的,才需要区分是存储增长型数据还 是逻辑增长型数据。
由以上实施例可以看出,本发明实施例的多用户数据库存储系统 和方法,相比较现有技术具有以下优点
1、 对数据库中数据进行分类,并将不同类型数据利用不同数据 库进行存储,以简化对数据的存储读取过程,提高访问效率;
2、 方便管理每个用户的数据,并可以根据每个用户的数据量来 进行数据管理;
3、 对存储增长型数据进行本地化存储,并通过远程与本地热备 份,实现云存储。这样可以方便用户来管理专属数据,以此进一步提 高数据库的检索效率。完善数据库热备机制,保证用户数据的完整和 安全。
以上所述仅是本发明的实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出 若干改进和变型,这些改进和变型也应视为本发明的保护范围。
权利要求
1、一种多用户数据库存储系统,包括公共服务器,其特征在于,所述公共服务器包括至少一个逻辑关系型数据库,该逻辑关系型数据库存储有所有用户的逻辑关系型数据;一个或一个以上存储增长型数据库,每一存储增长型数据库存储有一个用户的存储增长型数据。
2、 根据权利要求l所述的多用户数据库存储系统,其特征在于, 所述系统还包括本地服务器,所述本地服务器电连接所述公共服务器,并对所述 公共服务器上的存储增长型数据进行备份;客户端,所述客户端电连接所述本地服务器及所述公共服务器; 当客户端访问所述存储增长型数据时,向该本地服务器发送访问请 求;如果本地服务器存储有该数据,则将该数据发送到客户端;如果 本地服务器无该数据或访问失败时,该客户端向公共服务器的存储增 长型数据库发送访问请求。
3、 根据权利要求1或2所述的多用户数据库存储系统,其特征 在于,所述系统还包括数据分类模块,所述数据分类模块判断所述数据是否与系统或子 系统无逻辑关系且不需要统一访问和写入;如果否,则该数据为系统 数据;如果是,则读取每一数据的增长量,并判断该增长量是否大于 预设阀值,如果是则将该数据标识为存储增长型数据,并存储到所述 存储增长型数据库;否则将该数据标识为逻辑关系型数据,并存储到 所述逻辑关系型数据库。
4、 一种多用户数据库存储方法,包括 在公共服务器上设置至少一个逻辑关系型数据库,并将所有用户的逻辑关系型数据存储于所述逻辑关系型数据库中;在公共服务器上设置一个或一个以上存储增长型数据库,每一存 储增长型数据库对应 一个客户,并将该客户的存储增长型数据存储到 相应的存储增长型数据库中。
5、 根据权利要求4所述的多用户数据库存储方法,其特征在于, 所述方法还包括设置本地服务器,并使所述本地服务器电连接所述公共服务器以 对所述公共服务器上的存储增长型数据进行备份;当客户端访问所述存储增长型数据时,向该本地服务器发送访问 请求;如果本地服务器存储有该数据,则将该数据发送到客户端;如 果本地服务器无该数据或访问失败时,该客户端向公共服务器的存储 增长型数据库发送访问请求。
6、 根据权利要求4或5所述的多用户数据库存储方法,其特征 在于,所述方法还包括判断所述数据是否与系统或子系统无逻辑关系且不需要统一访 问和写入,如果否,则该数据为系统数据;如果是,则判断在单位时间内,每一数据的增长量是否大于阀值,如果是则将该数据标识为存 储增长型数据,并存储到所述存储增长型数据库;否则将该数据标识 为逻辑关系型数据,并存储到所述逻辑关系型数据库。
全文摘要
本发明提出了一种多用户数据库存储系统和方法,针对现有技术中大存储量多用户数据库访问效率低的问题而发明。本发明的系统包括公共服务器,公共服务器包括一个用于存储所有用户的逻辑关系型数据库;一个或一个以上用于存储一个用户的存储增长型数据的存储增长型数据库。方法包括在公共服务器上设置一个逻辑关系型数据库,并将所有用户的逻辑关系型数据存储于该数据库中;在公共服务器上设置一个或一个以上存储增长型数据库,所述每一存储增长型数据库对应一个客户,并将该客户对应的存储增长型数据存储到该数据库中。本发明应用在大容量多用户数据库,能够提高存储增长型数据库的检索效率。同时提高每一客户检索时的检索效率。
文档编号G06F17/30GK101667195SQ20091009347
公开日2010年3月10日 申请日期2009年10月10日 优先权日2009年10月10日
发明者(请求不公开姓名) 申请人:北京讯鸟软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1