一种中央服务器的数据转移存储实现方法及系统的制作方法

文档序号:9750877阅读:397来源:国知局
一种中央服务器的数据转移存储实现方法及系统的制作方法
【技术领域】
[0001]本发明涉及数据存储技术领域,尤其涉及的是一种中央服务器的数据转移存储实现方法及系统。
【背景技术】
[0002]数据在中央服务器中存储时,都是存储在缓存中。由于缓存成本较高,且存储空间比硬盘小,所以常使用时间换空间的方式来节省中央服务器的内存使用开销。而且由于缓存数据服务器(即中央服务器)一般都不带事务处理机制,所以数据的一致性需要程序启动后台线程来维护。在维护数据的时候在极端情况下是不能对外提供写入服务,所以需要减少事务性数据。另一方面为了更大限度的利用内存,就需要一个有效的方式来减少中央内存使用量。
[0003]例如有一视频数据需在中央服务器存储,视频数据包括名称、类型、UUID(Universally Unique Identif ier,即通用唯一识别码)值等。而这组数据在中央服务器中的内存中存储时,其键是UUID值,其它的数据只能以键-值对(即Key-Value )中值的形式存储。这样在中央服务器缓存数据集中时,就很难查找到以类型为条件的数据,所以一般做法是在在中央服务器中会再存一份以类型为键的数据集。这样操作会带来两个直接结果:首先当一个新数据加入的时候首先会以UUID值为键存一份,然后再以类型为键再存一份。这两个操作要以事务性操做,如图1所示。
[0004]由图1可知,一份数据进入中央服务器的内存中后,会变成多份,并且会带有一定的副作用。简单的来说,这一组数据中只有UUID可以作为全局唯一ID值(即全局不重复),其它任何值作为Key都会带来重复,所以对属于其的值必需要做相应的处理,比如用Key+List的结构保存,即如果类型相同,有多组[名称,UUID]则以其作为一个“对象”存在一个List中然后再作为类型的Value存入。采用将所有数据均缓存在中央服务器中存在的最大缺陷在于,类型并不是全局所以新增和更新都涉及到数据的更改,就必需要知道这个数据是新的还是旧的,如果是旧值则需要做替换操作,尤其是数据量大后这对数据更改操作就是噩梦,每一个查找操作都是o(n)的和对象个数成正比,要不就是重写对象之间的匹配算法(工作量大小视每种语言自代的List工具类用法)。另一个方式是将List变为HashMap(即哈希表),改为HashMap后的数据存储示意图如图2所示,这种方式提高了操作效率,但数据的存储结构会多出一层,并不直接体现数据真实结构,操作逻辑就不再表现的为数据的真实操作,后期维护增加了难点。
[0005]因此,现有技术还有待于改进和发展。

【发明内容】

[0006]鉴于上述现有技术的不足,本发明的目的在于提供一种中央服务器的数据转移存储实现方法及系统,旨在解决现有技术中将中央服务器收集得到的原数据,及根据原数据推导得到衍生数据均存储在中央服务器,导致中央服务器的内存使用率较高、数据维护困难的缺陷。
[0007]本发明的技术方案如下:
一种中央服务器的数据转移存储实现方法,其中,所述方法包括以下步骤:
A、当中央服务器检测到原数据中的数据集发生更新时,则存储所述更新后的数据集,并将所述更新后的数据集发送至对应的本地服务器;
B、本地服务器根据所述更新后的数据集及对应的业务需求生成衍生数据,并将所述衍生数据存储在本地服务器。
[0008]所述中央服务器的数据转移存储实现方法,其中,所述原数据中包括至少一个以通用唯一识别码为键的数据集,且所述数据集以通用唯一识别码为键在中央服务器中存储。
[0009]所述中央服务器的数据转移存储实现方法,其中,所述步骤A具体包括:
Al、当中央服务器检测到原数据中的数据集发生更新时,则以通用唯一识别码为键将更新后的数据集存储;
A2、获取更新后的数据集所对应的本地服务器,并向所述本地服务器发送更新通知消息;
A3、当中央服务器接收到本地服务器发送的与更新通知消息对应的数据抽取请求时,则将更新后的数据集发送至本地服务器。
[0010]所述中央服务器的数据转移存储实现方法,其中,所述步骤B具体包括:
B1、本地服务器接收更新后的数据集,并以通用唯一识别码为键遍历获取更新后的数据集中包括的数据库表;
B2、依次获取各数据表相对应的数据类型,并判断本地服务器中是否有该数据类型的键存在;当本地服务器中存在该数据类型的键时,则将该数据库表存储至该数据类型的键所对应数据库表中;当本地服务器中不存在该数据类型的键时,则新建以该数据类型为键的数据库表,并将该数据库表存储至该新建的数据库表中;
B3、将以数据类型为键的数据库表所组成的衍生数据存储在本地服务器。
[0011]所述中央服务器的数据转移存储实现方法,其中,所述步骤BI中还包括将将以通用唯一识别码为键的数据库表所组成的、与本地服务器相对应的数据集存储在本地服务器。
[0012]一种中央服务器的数据转移存储实现系统,其中,包括:
中央服务器,用于当检测到原数据中的数据集发生更新时,则存储所述更新后的数据集,并将所述更新后的数据集发送至对应的本地服务器;
本地服务器,用于根据所述更新后的数据集及对应的业务需求生成衍生数据,并将所述衍生数据存储在本地服务器。
[0013]所述中央服务器的数据转移存储实现系统,其中,所述原数据中包括至少一个以通用唯一识别码为键的数据集,且所述数据集以通用唯一识别码为键在中央服务器中存储。
[0014]所述中央服务器的数据转移存储实现系统,其中,所述中央服务器具体包括: 第一存储模块,用于当中央服务器检测到原数据中的数据集发生更新时,则以通用唯一识别码为键将更新后的数据集存储; 更新通知模块,用于获取更新后的数据集所对应的本地服务器,并向所述本地服务器发送更新通知消息;
数据发送模块,用于当中央服务器接收到本地服务器发送的与更新通知消息对应的数据抽取请求时,则将更新后的数据集发送至本地服务器。
[0015]所述中央服务器的数据转移存储实现系统,其中,所述本地服务器具体包括:
数据集接收及遍历模块,用于本地服务器接收更新后的数据集,并以通用唯一识别码为键遍历获取更新后的数据集中包括的数据库表;
第二存储模块,用于依次获取各数据表相对应的数据类型,并判断本地服务器中是否有该数据类型的键存在;当本地服务器中存在该数据类型的键时,则将该数据库表存储至该数据类型的键所对应数据库表中;当本地服务器中不存在该数据类型的键时,则新建以该数据类型为键的数据库表,并将该数据库表存储至该新建的数据库表中;
衍生数据存储模块,用于将以数据类型为键的数据库表所组成的衍生数据存储在本地服务器。
[0016]所述中央服务器的数据转移存储实现系统,其中,所述数据集接收及遍历模块还用于将以通用唯一识别码为键的数据库表所组成的、与本地服务器相对应的数据集存储在本地服务器。
[0017]本发明提供了一种中央服务器的数据转移存储实现方法及系统,方法包括:当中央服务器检测到原数据中的数据集发生更新时,则存储所述更新后的数据集,并将所述更新后的数据集发送至对应的本地服务器;本地服务器根据所述更新后的数据集及对应的业务需求生成衍生数据,并将所述衍生数据存储在本地服务器。本发明通过将原数据存储在中央服务器,将衍生数据存储在本地服务器,减少事务性事务数据的一致性维护、中央服务器存储消耗及数据维护期不能对外提供服务时间,而且不需要在增加修改原数据的时进行事务性操作以维护衍生数据的一致性数据的可分布式存储,横向扩大中央服务器内存的使用量。
【附图说明】
[0018]图1为现有技术中将原数据及Key-List形式的衍生数据均存储在中央服务器的示意图。
[0019]图2为现有技术中将原数据及哈希表形式的衍生数据均存储在中央服务器的示意图。
[0020]图3为本发明所述中央服务器的数据转移存储实现方法较佳实施例的流程图。
[0021]图4为本发明所述中央服务器的数据转移存储实现方法中步骤SlOO的具体流程图。
[0022]图5为本发明所述中央服务器的数据转移存储实现方法中步骤S200的具体流程图。
[0023]图6为本发明所述中央服务器的数据转移存储实现方法第一具体
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1