[发明专利]数据全局处理系统和方法有效
申请号: | 201410638336.0 | 申请日: | 2014-11-07 |
公开(公告)号: | CN104408086B | 公开(公告)日: | 2018-02-06 |
发明(设计)人: | 王锋 | 申请(专利权)人: | 北京奇虎科技有限公司;奇智软件(北京)有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;H04L29/08 |
代理公司: | 北京智汇东方知识产权代理事务所(普通合伙)11391 | 代理人: | 康正德,郭海彬 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 全局 处理 系统 方法 | ||
技术领域
本发明涉及计算机技术领域,特别是一种数据全局处理系统和方法。
背景技术
Cassandra是依赖DHT(Distributed Hash Table,分布式哈希表)技术实现的一种典型的无中心节点的环形结构的分布式存储系统。Cassandra数据存储空间可以抽象为一个环形结构,数据就是通过hash(哈希)分散在这个环形存储空间上。每个节点负责管理这个环形存储空间上的某一块连续的Range(范围),落在此Range空间上的数据就存储在这个节点上。
首先,由于Cassandra是一个无中心节点的分布式存储系统,因此没有任何一个中心节点集中管理集群的分布式信息。整个存储系统的分布式管理信息是由集群中的所有节点之间相互通过Gossip协议进行协商同步,即各节点最终均会保存一份完整的分布式管理信息以及节点的存活状态。正是由于这种节点之间的相互间的分布式信息同步,集群中所有节点间都是保持全相连的网络关系,这种网络连接结构决定了单个Cassandra集群无法扩展的很大(例如,上万台机器的集群规模,单个节点上的网络连接数就达到数万条,对系统资源的开销很大)。而为满足海量数据存储的需求,则需要搭建若干个一定节点规模的Cassandra存储集群,并在适当的时候新建新的Cassandra集群。
其次,由于考虑到数据存储效率的原因,存储服务也往往分布于全国各地,来实现用户数据的就近存储。同样作为存储系统,Cassandra集群也会分布在全国各地的数据中心之中。而如何将这些分散在各地的存储系统整合在一起,对外提供统一透明的存储服务是一项十分重要的工作。存储服务的接口无外乎是对数据的增、删、改、查操作,而所有这些操作都基于对数据的全局定位,即定位该数据存储在哪个数据集群中的哪个数据节点上。
目前,数据的全局存储与定位常用的技术方案是基于规则的定位,即通过简单的hash函数将数据直接分散到各Cassandra存储集群中,而具体存储在哪个数据节点上,则由该Cassandra集群内部存储机制实现。如图1所示,根据数据(data)的某一特征计算得到该data的hash值,进而根据hash值与集群的映射关系,将其定位到A、B、C、D中的某个集群中,然后再通过Cassandra存储集群的存储定位策略,确定其存储在该集群中的某个数据节点之上。然而,由于hash算法本身扩展性较差,当全局存储需要扩展新集群时,必然涉及各集群间数据的迁移,这个代价十分巨大的。其次,由于数据是通过hash算法进行存储,数据在上传或写入时该数据所在的目标集群已经由hash规则确定,因此无法保证实现数据的就近上传或写入,存在电信接入的数据有可能被存储到网通集群中去的情况,从而无法保证数据存储的效率。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的数据全局处理系统和方法。
依据本发明的一个方面,提供了一种数据全局处理系统,包括全局数据定位中心(Center Locator),所述Center Locator耦接至多个分布式存储系统(Cassandra)集群,其中,
每个Cassandra集群,适于将自身存储的数据与具体存储位置间的映射关系上传至所述Center Locator;
所述Center Locator,适于接收并存储每个Cassandra集群上传的映射关系,并根据存储的映射关系与各Cassandra集群之间通信。
可选地,每个Cassandra集群,还适于当自身存储的数据发生更新时,将更新部分的数据与具体存储位置间的映射关系上传至所述Center Locator。
可选地,所述更新部分的数据包括下列至少之一:
写入的数据;
删除的数据;
更改的数据。
可选地,所述Center Locator,还适于接收数据写入请求时,在其耦接的多个Cassandra集群中,查找与待写入数据的源地址距离最近的Cassandra集群地址作为目标地址,将所述待写入数据写入所述目标地址对应的Cassandra集群。
可选地,任意一个Cassandra集群,还适于接收读取指定数据的请求时,向所述Center Locator发起映射关系的查找请求;根据所述Center Locator返回的结果查找到所述指定数据的具体存储位置进行数据读取。
可选地,所述Center Locator,还适于将更新部分的数据与具体存储位置间的映射关系同步至其耦接的所有Cassandra集群中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司;奇智软件(北京)有限公司,未经北京奇虎科技有限公司;奇智软件(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410638336.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:并发请求的控制方法及装置
- 下一篇:基于车载无线通讯模块的车辆违章查询系统
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置