CN108897756A - 跨数据中心的数据查询分析方法及存储介质 - Google Patents
跨数据中心的数据查询分析方法及存储介质 Download PDFInfo
- Publication number
- CN108897756A CN108897756A CN201810430678.1A CN201810430678A CN108897756A CN 108897756 A CN108897756 A CN 108897756A CN 201810430678 A CN201810430678 A CN 201810430678A CN 108897756 A CN108897756 A CN 108897756A
- Authority
- CN
- China
- Prior art keywords
- data
- convergence
- data center
- storage file
- center
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种跨数据中心的数据查询分析方法及存储介质,方法包括:主数据中心生成汇聚指令,并按照预设的时间周期下发至各数据中心;各数据中心根据汇聚指令获取当前时间周期的汇聚数据,并将从同一个数据表中获取的汇聚数据存储到同一集合中,得到汇聚集合并上传至主数据中心;主数据中心判断是否存在对应的存储文件;若存在,则将汇聚数据更新至对应的存储文件;若不存在,则新建存储文件并将汇聚数据保存至存储文件;将新建的存储文件与汇聚集合对应的数据要素字段、资源编号和时间周期进行关联,得到关联关系;主数据中心进行数据查询分析。本发明可解决大量数据无法汇聚的问题,并达到快速查询分析的效果。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种跨数据中心的数据查询分析方法及存储介质。
背景技术
数据中心最早出现在20世纪60年代初,随着互联网的快速建设和信息技术的迅猛发展,到20世纪90年代中后期,数据中心进入了蓬勃发展期,建设规模和服务器数量每年都以惊人的速度增长,互联网技术的蓬勃发展掀起了建设数据中心的高潮,不但政府机构和金融电信等大型企业扩建自己的数据中心,中小企业也纷纷构建数据中心。
目前的状况是一个企业可能按照区域划分建立了多个数据中心,这些数据中心的数据又是相互独立的,如何对这些数据中心里面的各种要素数据进行快速定位,以实现高速分析的效果。目前在这一方面的工作还是比较缺乏的。通常的一些做法都是建立标准查询服务接口,采用webservice或者restful的方式进行跨数据中心的查询请求。又或者是采用数据汇聚的方式,由各个分中心采用全量或者增量的方式将数据以标准结构的方式上传到主数据中心,通过统一存储的方式,避免这种跨数据中心的查询请求。
如果是采用跨数据中心查询请求服务的方式,或者是采用数据汇聚的方式,当数据中心的结构越来越复杂,比如政府部门这种采用部省市三级架构的方式,往往一个部中心的查询请求,都要涉及到上百个省市的数据节点。特别是查询并发大,或者下面某个地市节点网络延迟比较大的时候,就无法达到快速查询分析的效果。当需要汇聚的数据量达到PB级别,受限于网络带宽,也无法对数据进行全量高速的汇聚。
发明内容
本发明所要解决的技术问题是:提供一种跨数据中心的数据查询分析方法及存储介质,可解决大量数据无法汇聚的问题,并达到快速查询分析的效果。
为了解决上述技术问题,本发明采用的技术方案为:一种跨数据中心的数据查询分析方法,包括:
主数据中心根据业务需求,生成汇聚指令,并按照预设的时间周期将所述汇聚指令下发至各数据中心,所述汇聚指令包括数据要素字段和当前时间周期对应的时间范围;
各数据中心根据所述汇聚指令获取当前时间周期的汇聚数据,并将从同一个数据表中获取的汇聚数据存储到同一集合中,得到汇聚集合;
将所述汇聚集合上传至主数据中心;
主数据中心根据所述汇聚集合对应的数据要素字段、数据表的资源编号和时间周期,判断是否存在对应的存储文件;
若存在,则将所述汇聚集合中的汇聚数据更新至对应的存储文件;
若不存在,则新建存储文件,并将所述汇聚集合中的汇聚数据保存至所述存储文件;
将所述新建的存储文件与所述汇聚集合对应的数据要素字段、数据表的资源编号和时间周期进行关联,得到关联关系;
主数据中心根据业务需求和所述关联关系,进行数据查询分析。
本发明还涉及一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上所述的步骤。
本发明的有益效果在于:通过根据关键的数据要素字段来进行数据汇聚,大大减少了汇聚的数据量,降低网络负载,提高数据汇聚的效率;通过根据数据要素字段、数据表和时间周期对汇聚数据进行分别存储,并建立对应的关联关系,实现全局统一索引,从而可将查询分析操作集中在主数据中心,避免跨数据中心的查询请求,达到快速存储分析的效果。
附图说明
图1为本发明一种跨数据中心的数据查询分析方法的流程图;
图2为本发明实施例一的方法流程图。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图详予说明。
本发明最关键的构思在于:建立全局数据资源目录;根据关键的数据要素字段来进行数据汇聚;利用bitmap的方式进行数据存储。
请参阅图1,一种跨数据中心的数据查询分析方法,包括:
主数据中心根据业务需求,生成汇聚指令,并按照预设的时间周期将所述汇聚指令下发至各数据中心,所述汇聚指令包括数据要素字段和当前时间周期对应的时间范围;
各数据中心根据所述汇聚指令获取当前时间周期的汇聚数据,并将从同一个数据表中获取的汇聚数据存储到同一集合中,得到汇聚集合;
将所述汇聚集合上传至主数据中心;
主数据中心根据所述汇聚集合对应的数据要素字段、数据表的资源编号和时间周期,判断是否存在对应的存储文件;
若存在,则将所述汇聚集合中的汇聚数据更新至对应的存储文件;
若不存在,则新建存储文件,并将所述汇聚集合中的汇聚数据保存至所述存储文件;
将所述新建的存储文件与所述汇聚集合对应的数据要素字段、数据表的资源编号和时间周期进行关联,得到关联关系;
主数据中心根据业务需求和所述关联关系,进行数据查询分析。
从上述描述可知,本发明的有益效果在于:可减少数据的汇聚量,并达到快速查询分析的效果。
进一步地,所述主数据中心根据业务需求,生成汇聚指令,并按照预设的时间周期将所述汇聚指令下发至各数据中心之前,进一步包括:
在两个以上的数据中心中选取一数据中心作为主数据中心;
各数据中心将各自的数据资源目录上报至主数据中心,所述数据资源目录包括数据中心的标识、与数据中心中各数据表一一对应的资源编号以及各数据表中各数据字段的标识;
主数据中心根据所述上报的数据资源目录,整合生成全局数据资源目录。
由上述描述可知,通过在主数据中心建立全局数据资源目录,标识各个数据中心存储的数据表和数据字段,便于后续进行针对性的调度和分析。
进一步地,所述主数据中心根据业务需求,生成汇聚指令,并按照预设的时间周期将所述汇聚指令下发至各数据中心具体为:
主数据中心根据业务需求,生成汇聚指令,所述汇聚指令包括数据要素字段的标识和当前时间周期对应的时间范围;
根据所述全局数据资源目录,确定包含所述数据要素字段的数据中心;
按照预设的时间周期将所述汇聚指令下发至所述确定的数据中心。
由上述描述可知,通过针对性的下发汇聚指令,减少无效指令的传输。
进一步地,所述得到汇聚集合之后,进一步包括:
根据所述数据要素字段、所述同一数据表的资源编号和所述当前时间周期,对所述汇聚集合进行命名。
由上述描述可知,通过对汇聚集合进行命名,便于后续在主数据中心中可根据其名称确定其对应的存储文件。
进一步地,所述将所述汇聚集合上传至主数据中心具体为:
对所述汇聚集合中的汇聚数据进行排重;
将排重后的汇聚集合压缩后上传至主数据中心。
由上述描述可知,通过对汇聚数据进行排重并进行压缩,减少数据传输量,降低网络负载。
进一步地,所述存储文件为位图文件,每个位图文件包括2的16次方个块;
所述将所述汇聚集合中的汇聚数据保存至所述存储文件具体为:
对所述汇聚集合中的各汇聚数据进行哈希计算,得到对应各汇聚数据的32位整数;
将所述32位整数的后16位数字存储至前16位数字对应的块中。
由上述描述可知,通过采用bitmap的方式进行存储,可大大地减少原有数据的存储空间,减少额外的存储服务器的投入,降低设备成本,并且可被加载到内存中,从而提高查询分析的速度。
进一步地,所述新建存储文件,并将所述汇聚集合中的汇聚数据保存至所述存储文件之后,进一步包括:
根据汇聚集合对应的数据要素字段、数据表的资源编号和时间周期,对所述新建的存储文件进行命名。
由上述描述可知,根据数据要素字段、数据表的资源编号和时间周期对存储文件进行命名,保证存储文件名称的唯一性;通过对存储文件进行命名,可便于与汇聚集合进行匹配。
进一步地,根据权利要求1所述的跨数据中心的数据查询分析方法,其特征在于,所述新建存储文件,并将所述汇聚集合中的汇聚数据保存至所述存储文件之后,进一步包括:
将所述新建的存储文件进行持久化保存。
由上述描述可知,防止数据丢失。
本发明还涉及一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上所述的步骤。
实施例一
请参照图2,本发明的实施例一为:一种跨数据中心的数据查询方法,包括如下步骤:
S1:在两个以上的数据中心中选取一数据中心作为主数据中心;主数据中心通常是业务上的中心节点,并且可以和其他数据中心互联互通。
S2:各数据中心将各自的数据资源目录上报至主数据中心,进一步地,各数据中心定时将自身的数据资源目录上报至主数据中心;所述数据资源目录包括数据中心的标识、与数据中心中各数据表一一对应的资源编号以及各数据表中各数据字段的标识,还可以包括数据中心中各数据表的名称,数据字段的标识可以为数据字段的名称;其中,每个资源编号唯一对应一个数据中心中的一个数据表,因此,可以根据数据中心的标识和数据表的名称来生成资源编号。一个数据中心的数据资源目录即用来表述该数据中心有哪些数据表、数据表中有哪些字段等信息。
S3:主数据中心根据所述上报的数据资源目录,整合生成全局数据资源目录。进一步地,将全局数据资源目录持久化到数据库(如mysql)中进行保存。
S4:主数据中心根据业务需求,生成汇聚指令,并按照预设的时间周期将所述汇聚指令下发至各数据中心,所述汇聚指令包括数据要素字段和当前时间周期对应的时间范围。其中,数据要素字段即关键的数据字段,如身份证、手机号等。
S5:各数据中心根据所述汇聚指令获取当前时间周期的汇聚数据,并将从同一个数据表中获取的汇聚数据存储到同一集合中,得到汇聚集合。即各数据中心从与数据要素字段匹配的字段下获取满足时间范围要求的数据,得到汇聚数据,但由于一个数据中心中可能有多张数据表中存在与数据要素字段匹配的数据字段,因此,将从同一个数据表中获取的汇聚数据存储在同一个集合中;进一步地,可根据所述数据要素字段、所述同一数据表的资源编号和所述当前时间周期,对该集合进行命名。
S6:将所述汇聚集合上传至主数据中心;即各数据中心分别将得到的汇聚集合上传至主数据中心。进一步地,可先对所述汇聚集合中的汇聚数据进行排重,再将排重后的汇聚集合压缩后上传至主数据中心,以减少数据传输量,提高传输效率。其中,根据特定的业务场景,可分别对每个汇聚集合中的汇聚数据进行排重,也可对所有汇聚数据进行排重。
S7:主数据中心根据所述汇聚集合对应的数据要素字段、数据表的资源编号和时间周期,判断是否存在对应的存储文件,若是,则执行步骤S8,若否,则执行步骤S9。
S8:将所述汇聚集合中的汇聚数据更新至对应的存储文件;即将汇聚集合中的汇聚数据保存至汇聚集合对应的存储文件中。
S9:新建存储文件,并将所述汇聚集合中的汇聚数据保存至所述存储文件;进一步地,将新建的存储文件持久化到数据库(如mysql)中进行保存。
S10:将所述新建的存储文件与所述汇聚集合对应的数据要素字段、数据表的资源编号以及对应的时间周期进行关联,得到关联关系,其中,汇聚集合对应的时间周期即当前时间周期。
进一步地,可根据汇聚集合对应的数据要素字段、数据表的资源编号和时间周期,对所述新建的存储文件进行命名。通过数据要素字段、数据表的资源编号和时间周期,可保证存储文件名称的唯一性。
S11:主数据中心根据业务需求和所述关联关系,进行数据查询分析。可以根据业务需求,确定出关键字段即数据要素字段,以及对应的数据表和时间周期,即可从对应的存储文件中获取相关数据。进一步地,还可结合全局数据资源目录,根据数据表的资源编号,得知数据来自于哪个数据中心。或者根据业务需求,在全局数据资源目录中确定资源编号,再根据数据要素字段和资源编号以及时间周期获取对应的存储文件。
优选地,对于步骤S4,主数据中心可根据全局数据资源目录,确定包含数据要素字段的数据中心,然后只将汇聚指令下发给这些数据中心。在步骤S5中,这些数据中心根据汇聚指令,获取数据要素字段下满足当前时间周期的时间要求的要素数据,作为汇聚数据。
本实施例通过根据关键的数据要素字段来进行数据汇聚,大大减少了汇聚的数据量,降低网络负载,提高数据汇聚的效率;通过根据数据要素字段、数据表和时间周期对汇聚数据进行分别存储,并建立对应的关联关系,实现全局统一索引,从而可将查询分析操作集中在主数据中心,避免跨数据中心的查询请求,达到快速存储分析的效果。
实施例二
本实施例是实施例一的进一步拓展,相同之处不再累述,区别在于,本实施例中采用bitmap(位图)文件作为存储文件,即将汇聚数据以bitmap的形式存储在主数据中心中,进一步地,采用RoaringBitmap作为bitmap的技术实现,RoaringBitmap是一种高效的、压缩的bitmap索引。
bitmap的原理就是用一个bit来标识一个元素是否存在,采用一个bit来存储一个数据。每个数据要素可以用一个整型表示,在这个位如果出现了就设为1,如果没有就设置为0。如果采用bitmap来存储整数(整数的范围是0~2^32-1)的话,一个bit位代表一个整数是否存在,可以计算出所占用的大小就是2^32/8/1024/1024=512M,在考虑到大数据情况下,bitmap中元素不会太多,反而是非常的稀疏,因此用512M来存储一个稀疏的bitmap,代价就比较大。
而RoaringBitmap是可以将32位整数分成2^16块,任何一个32位整数的前16位决定放在哪个块里面,后16位就是这个块里的内容。比如0xFFFF0000和0xFFFF0001,前16位都是FFFF,表明这两个数应该放在一个块里。后16位分别是0和1。在这个块中指保存0和1就可了,不需要保证完整的整数。
因此,本实施例中,每个存储文件包括2^16个块,每个块都有唯一的块号,块号的范围为0-2^16-1。对于实施例一的步骤S7-S9,即对于各数据中心汇聚上来的数据,先根据数据要素字段、数据表的资源编号和时间周期,判断相应的bitmap文件是否存在,如果存在则直接在原有的bitmap文件中更新,如果不存在则创建一个新的bitmap文件,然后将每个汇聚数据利用RoaringBitmap转换成数字序号,加入到bitmap文件中,具体地,对每个汇聚数据进行哈希计算,得到对应的32位整数,然后将所述32位整数的后16位数字存储至前16位数字对应的块中。
进一步地,bitmap文件的名称可以为“bitmap|数据要素字段|资源编号|时间周期”这样的形式。
利用RoaringBitmap可以大大的减少原有数据的存储空间。
以手机号数据为例,采用传统的数据保存方法是记录所有的手机号列表,比如13700001234,13800001234,13900001234…这样。假如手机号列表采用java里面long类型进行存储的话,每个手机号需要占用8个字节的存储空间,则10亿个手机号大约需要占用8G的内存存储空间。
如果采用RoaringBitmap的存储方式话,存储10亿的手机号数据,只需要119M的存储空间。极大了减少了存储空间,因此可以被一次性加载到内存里面,大大提高了查询分析的速度。
进一步地,可在内存中维护经常使用的bitmap文件,即尽可能将经常访问到的bitmap文件在内存中保留,对于不在内存中的,则通过mysql获取bitmap文件,再反序列化到内存中进行使用。
通过以bitmap的形式进行存储,在进行数据查询分析,可通过多个bitmap之间的且、或、异或反等位操作,完成全部数据中心的周期活跃数据、新增数据等统计计算。同时结合全局数据资源目录还可以完成类似多地流串、串并分析等原来需要跨数据中心联合才能进行的计算分析。
实施例三
本实施例是上述实施例的一具体应用场景。
目前在各省公安内部网之间的数据架构,通常是省市两级架构。省市各部署一套数据中心,两级之间数据相互独立,同时又需要涉及到大量的数据汇聚。随着需要汇聚的数据越来越多,现有的公安网络架构无法适应日均数百TB级别的大数据量汇聚,导致很大一部分重要的数据无法进行汇聚。同时对于大部分的联查应用,由于网络延迟,存在着请求响应慢的问题,而无法进行大规模的快速查询分析。
假设有10个数据中心,分别为A、B、C、D、E、F、G、H、I、J,其中,A为省厅对应的数据中心,其他的为A省下属的9个地市对应的数据中心。传统的查询分析,是将部分的数据汇聚到省厅的数据中心,再进行查询分析。对于无法汇聚的数据采用联查的方式。采用这种方案面临的一个主要问题是当传输量变大的时候,很容易导致网络带宽压力变大,从而影响其他的应用。对于联查分析往往要数秒甚至分钟级才能完成,且存在着短板效应,当某个地市网络时延高的时候会进一步的影响整体的分析性能。
因此,本实施例针对此种需要快速查询分析的场景进行了改造,对关键数据要素进行汇聚,解决大量数据无法汇聚的问题,并利用bitmap的方式进行存储,减少额外的存储服务器的投入。结合本地化的内存计算来快速提升大规模的查询分析性能。
本实施例首先需要在主数据中心建立全局数据资源目录,然后从各数据中心汇聚数据,最后再把汇聚上来的各类数据形成全局统一索引,再对外提供基于统一索引的快速查询分析服务。
具体地,首先,选取A省的省厅数据中心为主数据中心,建立全局数据资源目录,全局数据资源目录主要是对所整合的数据资源按照公安业务数据、社会单位数据、互联网数据、多媒体数据、服务接口数据等不同来源、不同类别的数据,建立数据库、数据表、数据项和双向数据调用接口、数据规约等各类数据资源的基础台账。
下属九地市对应的数据中心对于每个本地新增的数据资源需要按照标准实时的向数据中心A注册数据资源目录,同时按照汇聚指令定时或实时地向数据中心A汇聚数据实体要素。
其中,数据资源目录包括数据中心的标识、资源ID、数据字段,还可以包括数据分类、数据表的名称以及数据来源等。其中,资源ID唯一对应一个数据中心的一个数据表。
进行数据汇聚的时候,只要求汇聚一个时间周期之内有活动的数据要素信息。因此,各数据中心按照主数据中心下发的汇聚指令确定要汇聚的数据要素以及时间周期,计算出需要汇聚的数据并进行排重后保存成集合,写入到文件中,并将文件命名成{数据要素字段名称}-{资源ID}-{当前时间周期}.txt,再对文件进行压缩后上传汇聚到主数据中心。
以结合宾旅馆数据进行多地入住快速分析为例,九地市的数据中心向主数据中心A注册数据资源目录,部分关键信息如表1所示。
表1:
省厅的数据中心A向下属九地市的9个数据中心B、C、D、E、F、G、H、I、J下发汇聚指令,要求汇聚近一周之内在各地宾旅馆入住的人员。此时,可将数据汇聚的时间周期设为一周,即每隔一周就进行数据汇聚。
九地市的9个数据中心定时地计算近一周在本地宾旅馆入住的人员信息,假设当前时间周期为第6周。各地市形成如下结构的数据文件汇聚到数据中心A(以B、C、D为例,其中“\n”表示换行符):
B数据中心,汇聚文件名为{身份证}-{B市行政区划|hotel|宾旅馆}-{第6周}.txt,包含:
身份证1\n身份证2\n身份证3\n身份证4\n身份证5\n身份证6\n身份证7\n…
C数据中心,汇聚文件名为{身份证}-{C市行政区划|hotel|宾旅馆}-{第6周}.txt,包含:
身份证1\n身份证8\n身份证9\n身份证10\n身份证15\n身份证16\n身份证7\n…
D数据中心,汇聚文件名为{身份证}-{D市行政区划|hotel|宾旅馆}-{第6周}.txt,包含:
身份证1\n身份证5\n身份证23\n身份证7\n身份证9\n身份证8\n…
A数据中心对于各地市汇聚上来的文件按照bitmap的方式进行存储,并持久化到mysql中。对bitmap文件进行命名,并将bitmap文件与汇聚文件对应的数据要素字段、对应的资源ID以及对应的时间周期进行关联,得到的关联关系如表2所示。
表2:
上述关联关系即相当于全局统一索引,并可提供相应的统一索引快速查询分析服务。若利用该服务在A数据中心发起一个近一周在B、C、D三地同时入住的人员信息,则首先会根据“数据来源名称=宾旅馆”的检索条件在全局数据资源目中进行检索,获取B、C、D三个数据中心的宾旅馆数据对应的资源ID,再通过数据要素字段(身份证)、资源ID、活动周期(第6周)获取到对应的bitmap文件,分别为:
bitmap|身份证|B市行政区划|hotel|宾旅馆|第6周,
bitmap|身份证|C市行政区划|hotel|宾旅馆|第6周,
bitmap|身份证|D市行政区划|hotel|宾旅馆|第6周。
最后利用RoaringBitmap对上述三个bitmap文件中的数据进行取交操作:bitmapB&bitmapC&bitmapD,得到身份证1和身份证7两个人员近一周在同时在B、C、D三地有宾旅馆入住行为。
全局统一索引通过数据汇聚以及资源目录,对系统中所有数据中心的数据要素按照bitmap方式进行统一索引存储和管理,以便于高效的提供联合查询或计算。全局统一索引适用于数据中心很多,需要频繁地联查分析或者数据量非常大,无法进行全量汇聚而又需要快速定位的场景。本实施例通过全局统一索引方案的的思想,极大的减少数据量的传输,降低网络负载,同时利用bitmap存储引擎和全局数据资源目录达到快速查询分析的效果。
实施例四
本实施例是对应上述实施例的一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如下步骤:
主数据中心根据业务需求,生成汇聚指令,并按照预设的时间周期将所述汇聚指令下发至各数据中心,所述汇聚指令包括数据要素字段和当前时间周期对应的时间范围;
各数据中心根据所述汇聚指令获取当前时间周期的汇聚数据,并将从同一个数据表中获取的汇聚数据存储到同一集合中,得到汇聚集合;
将所述汇聚集合上传至主数据中心;
主数据中心根据所述汇聚集合对应的数据要素字段、数据表的资源编号和时间周期,判断是否存在对应的存储文件;
若存在,则将所述汇聚集合中的汇聚数据更新至对应的存储文件;
若不存在,则新建存储文件,并将所述汇聚集合中的汇聚数据保存至所述存储文件;
将所述新建的存储文件与所述汇聚集合对应的数据要素字段、数据表的资源编号和时间周期进行关联,得到关联关系;
主数据中心根据业务需求和所述关联关系,进行数据查询分析。
进一步地,所述主数据中心根据业务需求,生成汇聚指令,并按照预设的时间周期将所述汇聚指令下发至各数据中心之前,进一步包括:
在两个以上的数据中心中选取一数据中心作为主数据中心;
各数据中心将各自的数据资源目录上报至主数据中心,所述数据资源目录包括数据中心的标识、与数据中心中各数据表一一对应的资源编号以及各数据表中各数据字段的标识;
主数据中心根据所述上报的数据资源目录,整合生成全局数据资源目录。
进一步地,所述主数据中心根据业务需求,生成汇聚指令,并按照预设的时间周期将所述汇聚指令下发至各数据中心具体为:
主数据中心根据业务需求,生成汇聚指令,所述汇聚指令包括数据要素字段的标识和当前时间周期对应的时间范围;
根据所述全局数据资源目录,确定包含所述数据要素字段的数据中心;
按照预设的时间周期将所述汇聚指令下发至所述确定的数据中心。
进一步地,所述得到汇聚集合之后,进一步包括:
根据所述数据要素字段、所述同一数据表的资源编号和所述当前时间周期,对所述汇聚集合进行命名。
进一步地,所述将所述汇聚集合上传至主数据中心具体为:
对所述汇聚集合中的汇聚数据进行排重;
将排重后的汇聚集合压缩后上传至主数据中心。
进一步地,所述存储文件为位图文件,每个位图文件包括2的16次方个块;
所述将所述汇聚集合中的汇聚数据保存至所述存储文件具体为:
对所述汇聚集合中的各汇聚数据进行哈希计算,得到对应各汇聚数据的32位整数;
将所述32位整数的后16位数字存储至前16位数字对应的块中。
进一步地,所述新建存储文件,并将所述汇聚集合中的汇聚数据保存至所述存储文件之后,进一步包括:
根据汇聚集合对应的数据要素字段、数据表的资源编号和时间周期,对所述新建的存储文件进行命名。
进一步地,所述新建存储文件,并将所述汇聚集合中的汇聚数据保存至所述存储文件之后,进一步包括:
将所述新建的存储文件进行持久化保存。
综上所述,本发明提供的一种跨数据中心的数据查询分析方法及存储介质,通过根据关键的数据要素字段来进行数据汇聚,大大减少了汇聚的数据量,降低网络负载,提高数据汇聚的效率;通过根据数据要素字段、数据表和时间周期对汇聚数据进行分别存储,并建立对应的关联关系,实现全局统一索引,从而可将查询分析操作集中在主数据中心,避免跨数据中心的查询请求,达到快速存储分析的效果;通过在主数据中心建立全局数据资源目录,标识各个数据中心存储的数据表和数据字段,便于后续进行针对性的调度和分析;通过采用bitmap的方式进行存储,可大大地减少原有数据的存储空间,减少额外的存储服务器的投入,降低设备成本,并且可被加载到内存中,从而提高查询分析的速度。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种跨数据中心的数据查询分析方法,其特征在于,包括:
主数据中心根据业务需求,生成汇聚指令,并按照预设的时间周期将所述汇聚指令下发至各数据中心,所述汇聚指令包括数据要素字段和当前时间周期对应的时间范围;
各数据中心根据所述汇聚指令获取当前时间周期的汇聚数据,并将从同一个数据表中获取的汇聚数据存储到同一集合中,得到汇聚集合;
将所述汇聚集合上传至主数据中心;
主数据中心根据所述汇聚集合对应的数据要素字段、数据表的资源编号和时间周期,判断是否存在对应的存储文件;
若存在,则将所述汇聚集合中的汇聚数据更新至对应的存储文件;
若不存在,则新建存储文件,并将所述汇聚集合中的汇聚数据保存至所述存储文件;
将所述新建的存储文件与所述汇聚集合对应的数据要素字段、数据表的资源编号和时间周期进行关联,得到关联关系;
主数据中心根据业务需求和所述关联关系,进行数据查询分析。
2.根据权利要求1所述的跨数据中心的数据查询分析方法,其特征在于,所述主数据中心根据业务需求,生成汇聚指令,并按照预设的时间周期将所述汇聚指令下发至各数据中心之前,进一步包括:
在两个以上的数据中心中选取一数据中心作为主数据中心;
各数据中心将各自的数据资源目录上报至主数据中心,所述数据资源目录包括数据中心的标识、与数据中心中各数据表一一对应的资源编号以及各数据表中各数据字段的标识;
主数据中心根据所述上报的数据资源目录,整合生成全局数据资源目录。
3.根据权利要求2所述的跨数据中心的数据查询分析方法,其特征在于,所述主数据中心根据业务需求,生成汇聚指令,并按照预设的时间周期将所述汇聚指令下发至各数据中心具体为:
主数据中心根据业务需求,生成汇聚指令,所述汇聚指令包括数据要素字段的标识和当前时间周期对应的时间范围;
根据所述全局数据资源目录,确定包含所述数据要素字段的数据中心;
按照预设的时间周期将所述汇聚指令下发至所述确定的数据中心。
4.根据权利要求1所述的跨数据中心的数据查询分析方法,其特征在于,所述得到汇聚集合之后,进一步包括:
根据所述数据要素字段、所述同一数据表的资源编号和所述当前时间周期,对所述汇聚集合进行命名。
5.根据权利要求1所述的跨数据中心的数据查询分析方法,其特征在于,所述将所述汇聚集合上传至主数据中心具体为:
对所述汇聚集合中的汇聚数据进行排重;
将排重后的汇聚集合压缩后上传至主数据中心。
6.根据权利要求1所述的跨数据中心的数据查询分析方法,其特征在于,所述存储文件为位图文件,每个位图文件包括2的16次方个块;
所述将所述汇聚集合中的汇聚数据保存至所述存储文件具体为:
对所述汇聚集合中的各汇聚数据进行哈希计算,得到对应各汇聚数据的32位整数;
将所述32位整数的后16位数字存储至前16位数字对应的块中。
7.根据权利要求1所述的跨数据中心的数据查询分析方法,其特征在于,所述新建存储文件,并将所述汇聚集合中的汇聚数据保存至所述存储文件之后,进一步包括:
根据汇聚集合对应的数据要素字段、数据表的资源编号和时间周期,对所述新建的存储文件进行命名。
8.根据权利要求1所述的跨数据中心的数据查询分析方法,其特征在于,所述新建存储文件,并将所述汇聚集合中的汇聚数据保存至所述存储文件之后,进一步包括:
将所述新建的存储文件进行持久化保存。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-8任一项所述的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810430678.1A CN108897756A (zh) | 2018-05-08 | 2018-05-08 | 跨数据中心的数据查询分析方法及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810430678.1A CN108897756A (zh) | 2018-05-08 | 2018-05-08 | 跨数据中心的数据查询分析方法及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108897756A true CN108897756A (zh) | 2018-11-27 |
Family
ID=64342656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810430678.1A Pending CN108897756A (zh) | 2018-05-08 | 2018-05-08 | 跨数据中心的数据查询分析方法及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108897756A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110471760A (zh) * | 2019-07-10 | 2019-11-19 | 深圳数位传媒科技有限公司 | 一种用户应用使用数据的处理方法及装置 |
CN110944065A (zh) * | 2019-12-13 | 2020-03-31 | 李炳勇 | 一种基于物联网的传感器数据传输方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007109055A (ja) * | 2005-10-14 | 2007-04-26 | Hitachi Software Eng Co Ltd | 情報収集システム及び情報収集方法 |
CN103745299A (zh) * | 2013-12-16 | 2014-04-23 | 远光软件股份有限公司 | 一种跨数据中心抽取数据的方法及设备 |
CN106572191A (zh) * | 2016-11-15 | 2017-04-19 | 厦门市美亚柏科信息股份有限公司 | 跨数据中心协同计算方法及其系统 |
CN106897285A (zh) * | 2015-12-17 | 2017-06-27 | 北京宸瑞国新科技有限公司 | 数据要素抽取分析系统及数据要素抽取分析方法 |
CN107682180A (zh) * | 2017-09-07 | 2018-02-09 | 南京南瑞信息通信科技有限公司 | 一种通信网设备性能指标数据采集方法 |
-
2018
- 2018-05-08 CN CN201810430678.1A patent/CN108897756A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007109055A (ja) * | 2005-10-14 | 2007-04-26 | Hitachi Software Eng Co Ltd | 情報収集システム及び情報収集方法 |
CN103745299A (zh) * | 2013-12-16 | 2014-04-23 | 远光软件股份有限公司 | 一种跨数据中心抽取数据的方法及设备 |
CN106897285A (zh) * | 2015-12-17 | 2017-06-27 | 北京宸瑞国新科技有限公司 | 数据要素抽取分析系统及数据要素抽取分析方法 |
CN106572191A (zh) * | 2016-11-15 | 2017-04-19 | 厦门市美亚柏科信息股份有限公司 | 跨数据中心协同计算方法及其系统 |
CN107682180A (zh) * | 2017-09-07 | 2018-02-09 | 南京南瑞信息通信科技有限公司 | 一种通信网设备性能指标数据采集方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110471760A (zh) * | 2019-07-10 | 2019-11-19 | 深圳数位传媒科技有限公司 | 一种用户应用使用数据的处理方法及装置 |
CN110944065A (zh) * | 2019-12-13 | 2020-03-31 | 李炳勇 | 一种基于物联网的传感器数据传输方法及系统 |
CN110944065B (zh) * | 2019-12-13 | 2023-03-24 | 湖南半岛医疗科技有限公司 | 一种基于物联网的传感器数据传输方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106960037B (zh) | 一种跨内外网的分布式索引资源整合与共享方法 | |
Schram et al. | MySQL to NoSQL: data modeling challenges in supporting scalability | |
CN105045932B (zh) | 一种基于降序存储的数据分页查询方法 | |
CN102521406B (zh) | 海量结构化数据复杂查询任务的分布式查询方法和系统 | |
CN106815338A (zh) | 一种大数据的实时存储、处理和查询系统 | |
CN102906751B (zh) | 一种数据存储、数据查询的方法及装置 | |
CN101630322B (zh) | 树形目录结构下的文件集在数据库中的存储和访问方法 | |
CN108292323A (zh) | 使用数据源的元数据的数据库操作 | |
CN105447014B (zh) | 基于binlog的元数据管理方法和用于提供元数据的方法及装置 | |
CN104111996A (zh) | 基于hadoop平台的医保门诊大数据抽取系统及方法 | |
CN110275920A (zh) | 数据查询方法、装置、电子设备及计算机可读存储介质 | |
CN102495853B (zh) | 一种面向切面的云存储引擎构造方法 | |
CN104462222A (zh) | 一种卡口车辆通行数据的分布式存储方法及系统 | |
CN109063196A (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN102542007A (zh) | 关系型数据库之间的同步方法及系统 | |
CN105183834A (zh) | 一种基于本体库的交通大数据语义应用服务方法 | |
CN104615698A (zh) | 一种人脉网络系统及其数据整合方法 | |
CN109241054A (zh) | 一种多模型数据库系统、实现方法以及服务器 | |
CN109408536A (zh) | 一种云平台数据管理方法 | |
CN108897756A (zh) | 跨数据中心的数据查询分析方法及存储介质 | |
CN102012946A (zh) | 一种高效的安全监控视频/图像数据存储方法 | |
CN110633301B (zh) | 一种基于引擎设置抽取数据的方法及系统 | |
CN107491549A (zh) | 一种数据处理方法及系统 | |
CN103139324B (zh) | 具有联系人特征描述以及交往信息的通讯录系统 | |
CN107193494A (zh) | 一种基于ssd和hdd混合存储系统的rdd持久化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181127 |