CN105740295A - 一种分布式数据的处理方法及装置 - Google Patents
一种分布式数据的处理方法及装置 Download PDFInfo
- Publication number
- CN105740295A CN105740295A CN201410768646.4A CN201410768646A CN105740295A CN 105740295 A CN105740295 A CN 105740295A CN 201410768646 A CN201410768646 A CN 201410768646A CN 105740295 A CN105740295 A CN 105740295A
- Authority
- CN
- China
- Prior art keywords
- data
- copy
- file
- query
- fragment
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 16
- 230000006870 function Effects 0.000 claims abstract description 20
- 230000004044 response Effects 0.000 claims abstract description 11
- 239000012634 fragment Substances 0.000 claims description 236
- 238000006243 chemical reaction Methods 0.000 claims description 88
- 238000004458 analytical method Methods 0.000 claims description 52
- 238000000034 method Methods 0.000 claims description 18
- 238000007405 data analysis Methods 0.000 claims description 5
- 238000013500 data storage Methods 0.000 abstract description 9
- 238000002955 isolation Methods 0.000 abstract description 8
- 230000008520 organization Effects 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000008521 reorganization Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种分布式数据的处理方法及装置,该处理方法包括:将原始数据分别写入多个副本分片中,并为不同的副本分片设置标识不同功能的标签;响应不同的操作请求,根据所述副本分片的标签确定与所述不同的操作请求对应的副本分片,其中所述操作请求至少包括分析数据的操作请求和查询数据的操作请求;读取确定的所述副本分片的数据,并对所述数据进行相应的操作。本发明实施例对同一份原始数据利用不同标签的副本分片进行不同业务数据处理,极大的降低了数据存储的冗余度,提高了数据处理的效率;且由于不同的操作请求分别落在不同的副本分片上,对不同的响应时间要求的数据处理的输入/输出可以进行完全的隔离,保证了性能的隔离。
Description
技术领域
本发明涉及数据处理技术领域,特别涉及一种分布式数据的处理方法及装置。
背景技术
由于目前数据库的查询处理对数据的实时响应要求较高,实时交易类请求需达ms级响应;数据仓库类的分析类处理有些对时延不敏感,仅对准确性有要求,有些大规模数据分析系统分钟级结果汇总也可接受。为满足两种不同特性的数据处理需求,目前的应用多会对数据分别组织,且数据也是基于两份完全独立的数据进行查询和分析。每份数据存储时为考虑可靠性往往又通过磁盘阵列RAID机制或副本机制进行存储,因此为了满足访问效率而造成了大量的数据冗余。常见的基于集群数据处理的多租户实现方式如下:
(一)、传统数据库或数据仓库的多租户模式,如图1、图2所示:对于分布式数据库的多租户数据虽然统一存储,但是以DB实例或表进行隔离,需要存储多套应用数据。图1表示通过一个数据库多个表实现对多个用户查询调度请求的分担,实现表级别的数据隔离,用户的访问请求和调度是在一个大数据库内进行;图2表示不同的用户对应不同的数据库实例,各自只访问自己的数据库实例中的数据表或数据,可在数据库实例层面做一些用户差异化配置。但由于受限于数据组织方式这两种多租户方式实现时仅限于一种应用场景(或数据库查询或数据仓库分析)进行不同层面的租户隔离和调度,必须单独建立一个查询库或分析库,数据单独两份。底层的数据存储一般通过传统的RAID方式做数据保护,RAID10放数据文件,再划一部分RAID5放数据归档文件,因此在存储空间的利用率和数据访问效率上都偏低,但在数据安全性上较高。
(二)、基于hadoop架构的数据分析处理框架,如图3所示:在类似hadoop的数据处理架构中,通过调度不同的job隔离查询和分析访问。可以通过分布式结构化存储系统Hbase引擎做查询,数据库仓库工具HIVE做分析汇总,但仍然需要组织Hfile和newtxt两种文件形式分别存储查询和分析的两类数据,非结构化的分析数据在做查询时需要预先导入成Hbase可识别的Hfile文件存储在分布式文件系统HDFS上。底层的数据保护通过三副本方式打散存储在分布式服务器集群中。因此从底层数据来看一套数据会被存储两次,同时为保障数据可靠性再通过副本机制作更细粒度的分片副本,造成数据进一步的冗余存储。
特别的以hadoop架构实现的技术方案分析如下图4:
用于分析的原始newtxt非结构化数据如果需要用于查询,需要预先通过bulkload方式导入转换为Hbase,单独存储组织成为一份数据文件进行查询时使用。
综上,现有技术中,在大数据同一存储服务的应用背景下,承载在大数据平台上的应用往往对同套数据既要做数据交易查询,同时又要数据分析;现有方案在解决多租户查询和分析统一数据处理时多采用查询和分析分别多套数据存储的方式,在海量数据处理时会造成数据存储的大量冗余。
发明内容
本发明的目的在于提供一种分布式数据的处理方法及装置,使得多类应用可共用一份数据,极大的降低了数据存储的冗余度。
为了达到上述目的,本发明实施例提供一种分布式数据的处理方法,包括:
将原始数据分别写入多个副本分片中,并为不同的副本分片设置标识不同功能的标签,其中,所述多个副本分片至少包括具有分析标签的副本分片、具有查询标签的副本分片以及具有仲裁一致标签的副本分片;
响应不同的操作请求,根据所述副本分片的标签确定与所述不同的操作请求对应的副本分片,其中,所述操作请求至少包括分析数据的操作请求和查询数据的操作请求;
读取确定的所述副本分片的数据,并对所述数据进行相应的操作。
其中,所述为不同的副本分片设置标识不同功能的标签,具体为:
通过一转换设备为不同的副本分片设置标识不同功能的标签;其中,所述转换设备用于对所述原始数据进行预设转换。
其中,所述多个副本分片为至少3个副本分片;其中,
具有所述查询标签的副本分片用于数据的查询,具有所述分析标签的副本分片用于数据的分析,具有所述仲裁一致标签的副本分片用于保证多个副本分片数据的一致性。
其中,所述原始数据以第一预设格式存储为一基础文件,所述第一预设格式的基础文件用于数据的分析;
通过所述转换设备对所述第一预设格式的基础文件进行预设转换得到第二预设格式的转换文件,所述第二预设格式的转换文件用于数据的查询。
其中,所述第一预设格式的基础文件包括用于存储数据的数据块、用于存储所述数据块的位置信息和所属副本分片信息的元数据块以及用于存储不同业务处理数据所属的副本分片和所述数据块的定位信息的第一文件信息;
所述第二预设格式的转换文件包括与所述基础文件共享的数据块和元数据块、以及对所述基础文件进行预设转换得到的用于存储不同业务处理数据所属的副本分片和所述数据块的定位信息的第二文件信息、用于存储数据块和元数据块的索引数据的索引信息以及用于存储所述预设格式的文件的各要素的偏移量位置信息及索引大小的定位信息。
其中,所述响应不同的操作请求,根据所述副本分片的标签确定与所述不同的操作请求对应的不同的副本分片,具体为:
响应分析数据的操作请求,解析所述第一预设格式的基础文件的第一文件信息定位所述分析数据的操作请求对应的具有分析标签的副本分片。
其中,所述响应不同的操作请求,根据所述副本分片的标签确定与所述不同的操作请求对应的不同的副本分片,具体为:
响应查询数据的操作请求,解析所述第二预设格式的转换文件的第二文件信息定位所述查询数据的操作请求对应的具有查询标签的副本分片;其中,所述第二预设格式的转换文件能够被预设交易查询服务系统辨识。
其中,所述方法还包括:
响应交易写入的请求,通过所述转换设备将所述交易写入的写入数据转换成能够被预设交易查询服务系统辨识的第二预设格式的写入文件;
解析所述写入文件,为所述写入文件设置查询标签;
将具有查询标签的写入文件写入具有所述查询标签的副本分片中,得到具有查询标签的新的副本分片;
将具有所述查询标签的所述新的副本分片中的数据同步到具有仲裁一致标签的副本分片中,完成写入。
其中,完成写入后所述方法还包括:
将具有所述仲裁一致标签的副本分片的数据同步到具有分析标签的副本分片中。
其中,将具有查询标签的写入文件写入具有所述查询标签的副本分片中,得到具有查询标签的新的副本分片,具体包括:
根据所述写入文件的查询标签,确定具有所述查询标签的副本分片;
将所述写入文件的内容写入具有所述查询标签的副本分片的元数据块中,得到具有所述查询标签的副本分片的新的元数据块;
根据所述新的元数据块的信息,重新组织具有所述查询标签的副本分片的数据块,构成具有查询标签的新的副本分片。
本发明实施例还提供一种分布式数据的处理装置,包括:
标识模块,用于将原始数据分别写入多个副本分片中,并为不同的副本分片设置标识不同功能的标签,其中,所述多个副本分片至少包括具有分析标签的副本分片、具有查询标签的副本分片以及具有仲裁一致标签的副本分片;
确定模块,用于响应不同的操作请求,根据所述副本分片的标签确定与所述不同的操作请求对应的副本分片,其中,所述操作请求至少包括分析数据的操作请求和查询数据的操作请求;
读取模块,用于读取确定的所述副本分片的数据,并对所述数据进行相应的操作。
其中,所述标识模块包括:
标识子模块,用于通过一转换设备为不同的副本分片设置标识不同功能的标签;其中,所述转换设备用于对所述原始数据进行预设转换。
其中,所述多个副本分片为至少3个副本分片;其中,
具有所述查询标签的副本分片用于数据的查询,具有所述分析标签的副本分片用于数据的分析,具有所述仲裁一致标签的副本分片用于保证多个副本数据的一致性。
其中,所述原始数据以第一预设格式存储为一基础文件,所述第一预设格式的基础文件用于数据的分析;
通过所述转换设备对所述第一预设格式的基础文件进行预设转换得到第二预设格式的转换文件,所述第二预设格式的转换文件用于数据的查询。
其中,所述第一预设格式的基础文件包括用于存储数据的数据块、用于存储所述数据块的位置信息和所属副本分片信息的元数据块以及用于存储不同业务处理数据的所属副本分片和所述数据块的定位信息的第一文件信息;
所述第二预设格式的转换文件包括与所述基础文件共享的数据块和元数据块、以及对所述基础文件进行预设转换得到的用于存储不同业务处理数据的所属副本分片和所述数据块的定位信息的第二文件信息、用于存储数据块和元数据块的索引数据的索引信息以及用于存储所述预设格式的文件的各要素的偏移量位置信息及索引大小的定位信息。
其中,所述确定模块包括:
第一定位模块,用于响应分析数据的操作请求,解析所述第一预设格式的基础文件的第一文件信息定位所述分析数据的操作请求对应的具有分析标签的副本分片。
其中,所述确定模块还包括:
第二定位模块,用于响应查询数据的操作请求,解析所述第二预设格式的转换文件的第二文件信息定位所述查询数据的操作请求对应的具有查询标签的副本分片;其中,所述第二预设格式的转换文件能够被预设交易查询服务系统辨识。
其中,所述装置还包括:
转换模块,用于响应交易写入的请求,通过所述转换设备将所述交易写入的写入数据转换成能够被预设交易查询服务系统辨识的第二预设格式的写入文件;
设置模块,用于解析所述写入文件,为所述写入文件设置查询标签;
写入模块,用于将具有查询标签的写入文件写入具有所述查询标签的副本分片中,得到具有查询标签的新的副本分片;
第一同步模块,用于将具有所述查询标签的所述新的副本分片中的数据同步到具有仲裁一致标签的副本分片中,完成写入。
其中,所述装置还包括:
第二同步模块,用于将具有所述仲裁一致标签的副本分片的数据同步到具有分析标签的副本分片中。
其中,所述写入模块包括:
第一写入子模块,用于根据所述写入文件的查询标签,确定具有所述查询标签的副本分片;
第二写入子模块,用于将所述写入文件的内容写入具有所述查询标签的副本分片的元数据块中,得到具有所述查询标签的副本分片的新的元数据块;
第三写入子模块,用于根据所述新的元数据块的信息,重新组织具有所述查询标签的副本分片的数据块,构成具有查询标签的新的副本分片。
本发明的上述技术方案至少具有如下有益效果:
本发明实施例的分布式数据的处理方法及装置中,对同一份原始数据利用不同标签的副本分片进行不同业务数据处理,极大的降低了数据存储的冗余度,提高了数据处理的效率;且由于不同的操作请求分别落在不同的副本分片上,对不同的响应时间要求的数据处理的输入/输出可以进行完全的隔离,保证了性能的隔离。
附图说明
图1表示传统数据库或数据仓库的多租户架构一;
图2表示传统数据库或数据仓库的多租户架构二;
图3表示现有技术中hadoop数据处理的逻辑架构;
图4表示现有技术中hadoop架构下查询和分析的组织形式;
图5表示本发明实施例的分布式数据的处理方法的基本步骤流程图;
图6表示本发明实施例的hadoop架构下查询和分析的组织形式;
图7表示本发明实施例中一套完整的Hfile文件的组成结构示意图;
图8表示本发明实施例的交易写入的基本步骤流程图;
图9表示本发明实施例中分布式数据的处理装置的组成结构示意图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明针对现有技术中大数据平台对数据进行多种处理时需要分别存储多套数据,造成了数据存储的大量冗余的问题,提供一种分布式数据的处理方法及装置,对同一份原始数据利用不同标签的副本分片进行不同业务数据处理,极大的降低了数据存储的冗余度,提高了数据处理的效率;且由于不同的操作请求分别落在不同的副本分片上,对不同的响应时间要求的数据处理的输入/输出可以进行完全的隔离,保证了性能的隔离。
如图5所示,本发明实施例提供一种分布式数据的处理方法,包括:
步骤11,将原始数据分别写入多个副本分片中,并为不同的副本分片设置标识不同功能的标签,其中,所述多个副本分片至少包括具有分析标签的副本分片、具有查询标签的副本分片以及具有仲裁一致标签的副本分片;
步骤12,响应不同的操作请求,根据所述副本分片的标签确定与所述不同的操作请求对应的副本分片,其中,所述操作请求至少包括分析数据的操作请求和查询数据的操作请求;
步骤13,读取确定的所述副本分片的数据,并对所述数据进行相应的操作。
本发明的上述实施例中,多个副本分片中存储的数据是一致的,基于现有的副本机制,为不同的副本分片设置不同的访问标签,实现以一套基础数据同时对外提供多种数据服务的功能,极大了降低了数据存储的冗余度。
下面在hadoop(分布式系统基础架构)架构具体描述本发明实施例提供的分布式数据的处理方法:
本发明主要通过变更hadoop架构的文件块的组织形式,查询数据是基于分析数据进行实时组织转换得到的。如图6所示为hadoop架构下基于一份数据的查询和分析统一数据处理的示意图。
由于现有hadoop架构是三副本机构,因此以下以三副本为例说明以下查询数据、分析数据以及更改查询交易的流程:
首先,步骤11具体为:
步骤111,通过一转换设备为不同的副本分片设置标识不同功能的标签;其中,所述转换设备用于对所述原始数据进行预设转换。
具体的,上述标签是在对原始数据的实时转换过程中通过转换设备为不同的副本分片设置的;该转换设备在hadoop架构下为Hfile转换模块。且所述多个副本分片为至少3个副本分片,所述3个副本分片的标签分别为查询、分析以及仲裁一致;其中,
具有所述查询标签的副本分片用于数据的查询,具有所述分析标签的副本分片用于数据的分析,具有所述仲裁一致标签的副本分片用于保证多个副本分片数据的一致性。具体的,任一副本分片中的数据发生更改后,该副本分片立即将更改后的数据同步给具有仲裁一致标签的副本分片,进而由具有仲裁一致标签的副本分片将更改后的数据同步给其他副本分片,保证了多个副本分片的数据一致性。
需要说明的是,具有仲裁一致标签的副本分片是用于保障多个副本分片数据的一致性,只要副本大于等于三,均可使用本发明实施例提供的处理方法,可通过配置实现对不同副本的功能定位。例如查询功能、分析功能、计算功能等,在此不一一列举。
具体的,本发明的上述实施例中,所述原始数据以第一预设格式存储为一基础文件,所述第一预设格式的基础文件用于数据的分析;
通过所述转换设备对所述第一预设格式的基础文件进行预设转换得到第二预设格式的转换文件,所述第二预设格式的转换文件用于数据的查询。
本发明实施例的上述应用中,预设转换是指对基础文件(newtxt文件;需要说明的是,该newtxt文件与现有技术中用于分析的txt文件的格式不同)实时序列化处理和文件重新组织封装,解析成为分布式结构化存储系统Hbase可辨识的Hfile文件(第二预设格式的转换文件)。
且所述第一预设格式的基础文件包括用于存储数据的数据块、用于存储所述数据块的位置信息和所属副本分片信息的元数据块以及用于存储不同业务处理数据所属的副本分片和所述数据块的定位信息的第一文件信息;
所述第二预设格式的转换文件包括与所述基础文件共享的数据块和元数据块、以及对所述基础文件进行预设转换得到的用于存储不同业务处理数据所属的副本分片和所述数据块的定位信息的第二文件信息、用于存储数据块和元数据块的索引数据的索引信息以及用于存储所述预设格式的文件的各要素的偏移量位置信息及索引大小的定位信息。
本发明的上述实施例中,第一预设格式的基础文件为用于分析的newtxt非结构化数据,第二预设格式的转换文件为用于查询的Hfile文件。对于newtxt文件基础文件组织信息包括:数据块Datablock和元数据块Metablock和第一文件信息fileinfo;Hfile文件组织信息包括:数据块Datablock、元数据块Metablock、第二文件信息fileinfo、索引信息index和定位信息trailer;各数据要素的主要功能如下:
数据块Datablock:数据块存储的最小单元,多个数据块可组成一个数据副本分片;
元数据块Metablock:数据块组织的元数据信息,包含数据块的位置信息,所属的分片;
第一/第二文件信息Fileinfo:组织不同文件类型的文件基本信息,例如时间、大小等信息,特别的包含了不同业务处理数据的所属副本,block的定位信息;
索引信息Index:存储了数据块Datablock和元数据块Metablock的索引数据;
定位信息Trailer:存储了组织该文件各要素的偏移量位置信息,索引大小,便于定位以上各信息进行文件组合。
本发明实施例中,在数据组织时Hfile查询文件和newtxt分析文件的Datablock和metablock是共享部分,Fileinfo,index和trailer信息是转换为Hfile文件时生成而独立存在的,这部分信息大大小远远小于Datablock和Metablock。如下图7所示,一套完整的Hfile文件序列化组成时包括两部分{datablock,Metablock}+{fileinfo,index,Trailer},其中后一部分仅在Hfile转换模块转换时生成,并在生成过程中定位副本分片,进行数据读写。
进一步的,本发明的上述实施例中,步骤12具体为:
步骤121,响应分析数据的操作请求,解析所述第一预设格式的基础文件的第一文件信息定位所述分析数据的操作请求对应的具有分析标签的副本分片。
或步骤12具体为:
步骤122,响应查询数据的操作请求,解析所述第二预设格式的转换文件的第二文件信息定位所述查询数据的操作请求对应的具有查询标签的副本分片;其中,所述第二预设格式的转换文件能够被预设交易查询服务系统辨识。
本发明具体应用中,查询和分析分别读取不同的数据副本分片,查询读取通过Hfile转换模块进行,通过Hfile转换模块将newtxt文件转换为Hfile文件,并通过解析Hfile文件的第二文件信息Fileinfo获取查询副本;而分析数据则直接读取newtxt文件的第二文件信息Fileinfo获取分析副本;由于查询读取和分析读取分别落在了不同的副本分片上,因此对这两种不同的响应时间要求的数据处理输入/输出可以进行完全的隔离,保证了性能的隔离。
本发明的上述实施例中,由于交易查询数据经常会改变,分析数据基本不变,以查询交易数据为最终一致,因此当一次交易造成数据改变时,如图8所示,所述方法还包括:
步骤21,响应交易写入的请求,通过所述转换设备将所述交易写入的写入数据转换成能够被预设交易查询服务系统辨识的第二预设格式的写入文件;
步骤22,解析所述写入文件,为所述写入文件设置查询标签;
步骤23,将具有查询标签的写入文件写入具有所述查询标签的副本分片中,得到具有查询标签的新的副本分片;
步骤24,将具有所述查询标签的所述新的副本分片中的数据同步到具有仲裁一致标签的副本分片中,完成写入。
由于查询应用要求数据的完全最新的,而分析应用并不完全要求数据完全的最新的,因此当一次交易造成数据改变时,通过转换设备为写入文件设置标签并写入相应的副本分片(查询副本分片),查询副本分片更新完成后立即同步给仲裁一致副本,同步完成后一次数据交易更改完成。
且完成写入后所述方法还包括:
步骤25,将具有所述仲裁一致标签的副本分片的数据同步到具有分析标签的副本分片中。
交易更新完成后可以再通过仲裁一致副本后台同步数据给分析副本,其并不影响交易处理的响应性能,且提高了数据更新的效率。
具体的,步骤23具体包括:
步骤231,根据所述写入文件的查询标签,确定具有所述查询标签的副本分片;
步骤232,将所述写入文件的内容写入具有所述查询标签的副本分片的元数据块中,得到具有所述查询标签的副本分片的新的元数据块;
步骤233,根据所述新的元数据块的信息,重新组织具有所述查询标签的副本分片的数据块,构成具有查询标签的新的副本分片。
需要说明的是,由于交易写入时查询副本分片和仲裁一致分别分片是完全一致,为降低查询数据的读取时延,定位查询副本分片时当索引定位读取到仲裁一致副本分片的数据时也可进行读取。
本发明实施例在大数据同一对外提供查询和分析服务的应用场景下,通过对同一份数据的实时组合,利用不同数据副本进行不同的业务数据处理,在既能保障数据一致性的前提下,又满足查询和分析不同应用对时延的不同性能要求。综上,本发明实施例通过对查询和分析数据的重新组织,使得两类应用可共用一份数据,极大的降低了数据存储的冗余度;同时通过对不同数据分片的不同定位处理,在保证数据一致性不变的前提下,隔离了不同类型数据处理的性能,满足查询和分析不同应用对时延的不同性能要求。
为了更好的实现上述目的,如图9所示,本发明实施例还提供一种分布式数据的处理装置,包括:
标识模块31,用于将原始数据分别写入多个副本分片中,并为不同的副本分片设置标识不同功能的标签,其中,所述多个副本分片至少包括具有分析标签的副本分片、具有查询标签的副本分片以及具有仲裁一致标签的副本分片;
确定模块32,用于响应不同的操作请求,根据所述副本分片的标签确定与所述不同的操作请求对应的副本分片,其中,所述操作请求至少包括分析数据的操作请求和查询数据的操作请求;
读取模块33,用于读取确定的所述副本分片的数据,并对所述数据进行相应的操作。
具体的,本发明上述实施例中,所述标识模块31包括:
标识子模块,用于通过一转换设备为不同的副本分片设置标识不同功能的标签;其中,所述转换设备用于对所述原始数据进行预设转换。
具体的,本发明上述实施例中,所述多个副本分片为至少3个副本分片,所述3个副本分片的标签分别为查询、分析以及仲裁一致;其中,
具有所述查询标签的副本分片用于数据的查询,具有所述分析标签的副本分片用于数据的分析,具有所述仲裁一致标签的副本分片用于保证多个副本数据的一致性。
具体的,本发明上述实施例中,所述原始数据以第一预设格式存储为一基础文件,所述第一预设格式的基础文件用于数据的分析;
通过所述转换设备对所述第一预设格式的基础文件进行预设转换得到第二预设格式的转换文件,所述第二预设格式的转换文件用于数据的查询。
具体的,本发明上述实施例中,所述第一预设格式的基础文件包括用于存储数据的数据块、用于存储所述数据块的位置信息和所属副本分片信息的元数据块以及用于存储不同业务处理数据的所属副本分片和所述数据块的定位信息的第一文件信息;
所述第二预设格式的转换文件包括与所述基础文件共享的数据块和元数据块、以及对所述基础文件进行预设转换得到的用于存储不同业务处理数据的所属副本分片和所述数据块的定位信息的第二文件信息、用于存储数据块和元数据块的索引数据的索引信息以及用于存储所述预设格式的文件的各要素的偏移量位置信息及索引大小的定位信息。
具体的,本发明上述实施例中,所述确定模块32包括:
第一定位模块,用于响应分析数据的操作请求,解析所述第一预设格式的基础文件的第一文件信息定位所述分析数据的操作请求对应的具有分析标签的副本分片。
具体的,本发明上述实施例中,所述确定模块32还包括:
第二定位模块,用于响应查询数据的操作请求,解析所述第二预设格式的转换文件的第二文件信息定位所述查询数据的操作请求对应的具有查询标签的副本分片;其中,所述第二预设格式的转换文件能够被预设交易查询服务系统辨识。
具体的,本发明上述实施例中,所述装置还包括:
转换模块,用于响应交易写入的请求,通过所述转换设备将所述交易写入的写入数据转换成能够被预设交易查询服务系统辨识的第二预设格式的写入文件;
设置模块,用于解析所述写入文件,为所述写入文件设置查询标签;
写入模块,用于将具有查询标签的写入文件写入具有所述查询标签的副本分片中,得到具有查询标签的新的副本分片;
第一同步模块,用于将具有所述查询标签的所述新的副本分片中的数据同步到具有仲裁一致标签的副本分片中,完成写入。
具体的,本发明上述实施例中,所述装置还包括:
第二同步模块,用于将具有所述仲裁一致标签的副本分片的数据同步到具有分析标签的副本分片中。
具体的,本发明上述实施例中,所述写入模块包括:
第一写入子模块,用于根据所述写入文件的查询标签,确定具有所述查询标签的副本分片;
第二写入子模块,用于将所述写入文件的内容写入具有所述查询标签的副本分片的元数据块中,得到具有所述查询标签的副本分片的新的元数据块;
第三写入子模块,用于根据所述新的元数据块的信息,重新组织具有所述查询标签的副本分片的数据块,构成具有查询标签的新的副本分片。
需要说明的是,本发明实施例提供的分布式数据的处理装置是应用上述处理方法的装置,则上述分布式数据的处理方法的所有实施例均适用于该装置,且均能达到相同或相似的有益效果。
本发明实施例提供一种分布式数据的处理方法及装置,对同一份原始数据利用不同标签的副本分片进行不同业务数据处理,极大的降低了数据存储的冗余度,提高了数据处理的效率;且由于不同的操作请求分别落在不同的副本分片上,对不同的响应时间要求的数据处理的输入/输出可以进行完全的隔离,保证了性能的隔离。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (20)
1.一种分布式数据的处理方法,其特征在于,包括:
将原始数据分别写入多个副本分片中,并为不同的副本分片设置标识不同功能的标签,其中,所述多个副本分片至少包括具有分析标签的副本分片、具有查询标签的副本分片以及具有仲裁一致标签的副本分片;
响应不同的操作请求,根据所述副本分片的标签确定与所述不同的操作请求对应的副本分片,其中,所述操作请求至少包括分析数据的操作请求和查询数据的操作请求;
读取确定的所述副本分片的数据,并对所述数据进行相应的操作。
2.根据权利要求1所述的分布式数据的处理方法,其特征在于,所述为不同的副本分片设置标识不同功能的标签,具体为:
通过一转换设备为不同的副本分片设置标识不同功能的标签;其中,所述转换设备用于对所述原始数据进行预设转换。
3.根据权利要求2所述的分布式数据的处理方法,其特征在于,所述多个副本分片为至少3个副本分片;其中,
具有所述查询标签的副本分片用于数据的查询,具有所述分析标签的副本分片用于数据的分析,具有所述仲裁一致标签的副本分片用于保证多个副本分片数据的一致性。
4.根据权利要求3所述的分布式数据的处理方法,其特征在于,所述原始数据以第一预设格式存储为一基础文件,所述第一预设格式的基础文件用于数据的分析;
通过所述转换设备对所述第一预设格式的基础文件进行预设转换得到第二预设格式的转换文件,所述第二预设格式的转换文件用于数据的查询。
5.根据权利要求4所述的分布式数据的处理方法,其特征在于,
所述第一预设格式的基础文件包括用于存储数据的数据块、用于存储所述数据块的位置信息和所属副本分片信息的元数据块以及用于存储不同业务处理数据所属的副本分片和所述数据块的定位信息的第一文件信息;
所述第二预设格式的转换文件包括与所述基础文件共享的数据块和元数据块、以及对所述基础文件进行预设转换得到的用于存储不同业务处理数据所属的副本分片和所述数据块的定位信息的第二文件信息、用于存储数据块和元数据块的索引数据的索引信息以及用于存储所述预设格式的文件的各要素的偏移量位置信息及索引大小的定位信息。
6.根据权利要求5所述的分布式数据的处理方法,其特征在于,所述响应不同的操作请求,根据所述副本分片的标签确定与所述不同的操作请求对应的不同的副本分片,具体为:
响应分析数据的操作请求,解析所述第一预设格式的基础文件的第一文件信息定位所述分析数据的操作请求对应的具有分析标签的副本分片。
7.根据权利要求5或6所述的分布式数据的处理方法,其特征在于,所述响应不同的操作请求,根据所述副本分片的标签确定与所述不同的操作请求对应的不同的副本分片,具体为:
响应查询数据的操作请求,解析所述第二预设格式的转换文件的第二文件信息定位所述查询数据的操作请求对应的具有查询标签的副本分片;其中,所述第二预设格式的转换文件能够被预设交易查询服务系统辨识。
8.根据权利要求5所述的分布式数据的处理方法,其特征在于,所述方法还包括:
响应交易写入的请求,通过所述转换设备将所述交易写入的写入数据转换成能够被预设交易查询服务系统辨识的第二预设格式的写入文件;
解析所述写入文件,为所述写入文件设置查询标签;
将具有查询标签的写入文件写入具有所述查询标签的副本分片中,得到具有查询标签的新的副本分片;
将具有所述查询标签的所述新的副本分片中的数据同步到具有仲裁一致标签的副本分片中,完成写入。
9.根据权利要求8所述的分布式数据的处理方法,其特征在于,完成写入后所述方法还包括:
将具有所述仲裁一致标签的副本分片的数据同步到具有分析标签的副本分片中。
10.根据权利要求8所述的分布式数据的处理方法,其特征在于,将具有查询标签的写入文件写入具有所述查询标签的副本分片中,得到具有查询标签的新的副本分片,具体包括:
根据所述写入文件的查询标签,确定具有所述查询标签的副本分片;
将所述写入文件的内容写入具有所述查询标签的副本分片的元数据块中,得到具有所述查询标签的副本分片的新的元数据块;
根据所述新的元数据块的信息,重新组织具有所述查询标签的副本分片的数据块,构成具有查询标签的新的副本分片。
11.一种分布式数据的处理装置,其特征在于,包括:
标识模块,用于将原始数据分别写入多个副本分片中,并为不同的副本分片设置标识不同功能的标签,其中,所述多个副本分片至少包括具有分析标签的副本分片、具有查询标签的副本分片以及具有仲裁一致标签的副本分片;
确定模块,用于响应不同的操作请求,根据所述副本分片的标签确定与所述不同的操作请求对应的副本分片,其中,所述操作请求至少包括分析数据的操作请求和查询数据的操作请求;
读取模块,用于读取确定的所述副本分片的数据,并对所述数据进行相应的操作。
12.根据权利要求11所述的分布式数据的处理装置,其特征在于,所述标识模块包括:
标识子模块,用于通过一转换设备为不同的副本分片设置标识不同功能的标签;其中,所述转换设备用于对所述原始数据进行预设转换。
13.根据权利要求12所述的分布式数据的处理装置,其特征在于,所述多个副本分片为至少3个副本分片;其中,
具有所述查询标签的副本分片用于数据的查询,具有所述分析标签的副本分片用于数据的分析,具有所述仲裁一致标签的副本分片用于保证多个副本数据的一致性。
14.根据权利要求13所述的分布式数据的处理装置,其特征在于,所述原始数据以第一预设格式存储为一基础文件,所述第一预设格式的基础文件用于数据的分析;
通过所述转换设备对所述第一预设格式的基础文件进行预设转换得到第二预设格式的转换文件,所述第二预设格式的转换文件用于数据的查询。
15.根据权利要求14所述的分布式数据的处理装置,其特征在于,
所述第一预设格式的基础文件包括用于存储数据的数据块、用于存储所述数据块的位置信息和所属副本分片信息的元数据块以及用于存储不同业务处理数据的所属副本分片和所述数据块的定位信息的第一文件信息;
所述第二预设格式的转换文件包括与所述基础文件共享的数据块和元数据块、以及对所述基础文件进行预设转换得到的用于存储不同业务处理数据的所属副本分片和所述数据块的定位信息的第二文件信息、用于存储数据块和元数据块的索引数据的索引信息以及用于存储所述预设格式的文件的各要素的偏移量位置信息及索引大小的定位信息。
16.根据权利要求15所述的分布式数据的处理装置,其特征在于,所述确定模块包括:
第一定位模块,用于响应分析数据的操作请求,解析所述第一预设格式的基础文件的第一文件信息定位所述分析数据的操作请求对应的具有分析标签的副本分片。
17.根据权利要求15或16所述的分布式数据的处理装置,其特征在于,所述确定模块还包括:
第二定位模块,用于响应查询数据的操作请求,解析所述第二预设格式的转换文件的第二文件信息定位所述查询数据的操作请求对应的具有查询标签的副本分片;其中,所述第二预设格式的转换文件能够被预设交易查询服务系统辨识。
18.根据权利要求15所述的分布式数据的处理装置,其特征在于,所述装置还包括:
转换模块,用于响应交易写入的请求,通过所述转换设备将所述交易写入的写入数据转换成能够被预设交易查询服务系统辨识的第二预设格式的写入文件;
设置模块,用于解析所述写入文件,为所述写入文件设置查询标签;
写入模块,用于将具有查询标签的写入文件写入具有所述查询标签的副本分片中,得到具有查询标签的新的副本分片;
第一同步模块,用于将具有所述查询标签的所述新的副本分片中的数据同步到具有仲裁一致标签的副本分片中,完成写入。
19.根据权利要求18所述的分布式数据的处理装置,其特征在于,所述装置还包括:
第二同步模块,用于将具有所述仲裁一致标签的副本分片的数据同步到具有分析标签的副本分片中。
20.根据权利要求18所述的分布式数据的处理装置,其特征在于,所述写入模块包括:
第一写入子模块,用于根据所述写入文件的查询标签,确定具有所述查询标签的副本分片;
第二写入子模块,用于将所述写入文件的内容写入具有所述查询标签的副本分片的元数据块中,得到具有所述查询标签的副本分片的新的元数据块;
第三写入子模块,用于根据所述新的元数据块的信息,重新组织具有所述查询标签的副本分片的数据块,构成具有查询标签的新的副本分片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410768646.4A CN105740295B (zh) | 2014-12-12 | 2014-12-12 | 一种分布式数据的处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410768646.4A CN105740295B (zh) | 2014-12-12 | 2014-12-12 | 一种分布式数据的处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105740295A true CN105740295A (zh) | 2016-07-06 |
CN105740295B CN105740295B (zh) | 2019-06-14 |
Family
ID=56241581
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410768646.4A Active CN105740295B (zh) | 2014-12-12 | 2014-12-12 | 一种分布式数据的处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105740295B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106250212A (zh) * | 2016-07-29 | 2016-12-21 | 努比亚技术有限公司 | 资源访问方法及装置 |
CN106302702A (zh) * | 2016-08-10 | 2017-01-04 | 华为技术有限公司 | 数据的分片存储方法、装置及系统 |
CN106354840A (zh) * | 2016-08-31 | 2017-01-25 | 北京小米移动软件有限公司 | 文件处理方法、装置及分布式文件系统 |
CN107403003A (zh) * | 2017-07-21 | 2017-11-28 | 南京智网云联信息科技有限公司 | 一种分布式副本文件仲裁方法 |
CN108304471A (zh) * | 2017-12-28 | 2018-07-20 | 中国银联股份有限公司 | 一种数据异构存储方法以及数据异构存储装置 |
CN108388640A (zh) * | 2018-02-26 | 2018-08-10 | 北京环境特性研究所 | 一种数据转换方法、装置以及数据处理系统 |
CN109684093A (zh) * | 2018-12-24 | 2019-04-26 | 成都四方伟业软件股份有限公司 | 数据处理方法及系统 |
CN110808901A (zh) * | 2019-11-07 | 2020-02-18 | 微位(深圳)网络科技有限公司 | 一种消息分布式阅后即焚方法及系统 |
CN111131034A (zh) * | 2019-11-28 | 2020-05-08 | 江苏艾佳家居用品有限公司 | 一种用于分布式系统的基于标签的环境隔离方法 |
CN113918998A (zh) * | 2021-12-13 | 2022-01-11 | 中国外运华南有限公司 | 一种智慧物流的仓码管理方法和系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101996250A (zh) * | 2010-11-15 | 2011-03-30 | 中国科学院计算技术研究所 | 一种基于Hadoop的海量流数据存储和查询方法及系统 |
CN102831120A (zh) * | 2011-06-15 | 2012-12-19 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及系统 |
CN102999519A (zh) * | 2011-09-15 | 2013-03-27 | 上海盛付通电子商务有限公司 | 一种数据库的读写方法及系统 |
CN103812939A (zh) * | 2014-02-17 | 2014-05-21 | 李漾 | 一种大数据存储系统 |
-
2014
- 2014-12-12 CN CN201410768646.4A patent/CN105740295B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101996250A (zh) * | 2010-11-15 | 2011-03-30 | 中国科学院计算技术研究所 | 一种基于Hadoop的海量流数据存储和查询方法及系统 |
CN102831120A (zh) * | 2011-06-15 | 2012-12-19 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及系统 |
CN102999519A (zh) * | 2011-09-15 | 2013-03-27 | 上海盛付通电子商务有限公司 | 一种数据库的读写方法及系统 |
CN103812939A (zh) * | 2014-02-17 | 2014-05-21 | 李漾 | 一种大数据存储系统 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106250212A (zh) * | 2016-07-29 | 2016-12-21 | 努比亚技术有限公司 | 资源访问方法及装置 |
CN106302702B (zh) * | 2016-08-10 | 2020-03-20 | 华为技术有限公司 | 数据的分片存储方法、装置及系统 |
CN106302702A (zh) * | 2016-08-10 | 2017-01-04 | 华为技术有限公司 | 数据的分片存储方法、装置及系统 |
US10942828B2 (en) | 2016-08-10 | 2021-03-09 | Huawei Technologies Co., Ltd. | Method for storing data shards, apparatus, and system |
CN106354840A (zh) * | 2016-08-31 | 2017-01-25 | 北京小米移动软件有限公司 | 文件处理方法、装置及分布式文件系统 |
CN107403003A (zh) * | 2017-07-21 | 2017-11-28 | 南京智网云联信息科技有限公司 | 一种分布式副本文件仲裁方法 |
WO2019128497A1 (zh) * | 2017-12-28 | 2019-07-04 | 中国银联股份有限公司 | 一种数据异构存储方法以及数据异构存储装置 |
CN108304471A (zh) * | 2017-12-28 | 2018-07-20 | 中国银联股份有限公司 | 一种数据异构存储方法以及数据异构存储装置 |
CN108388640A (zh) * | 2018-02-26 | 2018-08-10 | 北京环境特性研究所 | 一种数据转换方法、装置以及数据处理系统 |
CN109684093A (zh) * | 2018-12-24 | 2019-04-26 | 成都四方伟业软件股份有限公司 | 数据处理方法及系统 |
CN110808901A (zh) * | 2019-11-07 | 2020-02-18 | 微位(深圳)网络科技有限公司 | 一种消息分布式阅后即焚方法及系统 |
CN111131034A (zh) * | 2019-11-28 | 2020-05-08 | 江苏艾佳家居用品有限公司 | 一种用于分布式系统的基于标签的环境隔离方法 |
CN111131034B (zh) * | 2019-11-28 | 2021-11-02 | 江苏艾佳家居用品有限公司 | 一种用于分布式系统的基于标签的环境隔离方法 |
CN113918998A (zh) * | 2021-12-13 | 2022-01-11 | 中国外运华南有限公司 | 一种智慧物流的仓码管理方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105740295B (zh) | 2019-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105740295B (zh) | 一种分布式数据的处理方法及装置 | |
Vora | Hadoop-HBase for large-scale data | |
US8924373B2 (en) | Query plans with parameter markers in place of object identifiers | |
US8949222B2 (en) | Changing the compression level of query plans | |
CN111324610A (zh) | 一种数据同步的方法及装置 | |
CN107180113B (zh) | 一种大数据检索平台 | |
TW201530328A (zh) | 爲半結構化資料構建NoSQL資料庫索引的方法及裝置 | |
US20140156586A1 (en) | Big-fast data connector between in-memory database system and data warehouse system | |
CN104933173B (zh) | 一种用于异构多数据源的数据处理方法、装置和服务器 | |
CN111597160A (zh) | 分布式数据库系统、分布式数据处理方法和装置 | |
CN111046036A (zh) | 数据同步方法、装置、系统及存储介质 | |
US9514173B2 (en) | Real-time index consistency check | |
US10296497B2 (en) | Storing a key value to a deleted row based on key range density | |
CN111651519B (zh) | 数据同步方法、数据同步装置、电子设备及存储介质 | |
CN104731896A (zh) | 一种数据处理方法及系统 | |
US20150006485A1 (en) | High Scalability Data Management Techniques for Representing, Editing, and Accessing Data | |
WO2014110940A1 (en) | A method, apparatus and system for storing, reading the directory index | |
CN102779138A (zh) | 实时数据的硬盘存取方法 | |
US11625503B2 (en) | Data integrity procedure | |
CN113821573A (zh) | 海量数据快速检索服务构建方法、系统、终端及存储介质 | |
CN112131214A (zh) | 数据写入、数据查询的方法、系统、设备和存储介质 | |
US8396858B2 (en) | Adding entries to an index based on use of the index | |
CN103365987A (zh) | 一种基于共享磁盘架构的集群数据库系统及数据处理方法 | |
CN109063061B (zh) | 跨分布式系统数据处理方法、装置、设备及存储介质 | |
Qian et al. | An evaluation of Lucene for keywords search in large-scale short text storage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |