《一种大数据存储方法及装置.pdf》由会员分享,可在线阅读,更多相关《一种大数据存储方法及装置.pdf(7页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103440288 A(43)申请公布日 2013.12.11CN103440288A*CN103440288A*(21)申请号 201310358482.3(22)申请日 2013.08.16G06F 17/30(2006.01)(71)申请人曙光信息产业股份有限公司地址 300384 天津市西青区华苑产业区(环外)海泰华科大街15号1-3层(72)发明人狄静舒 王颖 宋怀明 苗艳超刘新春 邵宗有(74)专利代理机构北京新知远方知识产权代理事务所(普通合伙) 11397代理人张艳(54) 发明名称一种大数据存储方法及装置(57) 摘要本发明提供了一种大数据存储方法及。
2、装置,接收对象数据;识别对象数据的属性信息;根据对象数据的属性信息将其对象数据存储至存储系统中的第一存储子系统。本发明通过将结构化数据、半结构化数据和非结构化数据统一成对象存储到数据库平台和Hadoop平台中,有效利用关系型数据库的性能优势,Hadoop平台和MapReduce框架的容错性及对动态数据模型的支持,并且还将对象的数据模式及相应属性信息存储至元数据中,便于在数据分析时将数据交给合适的执行引擎完成查询,从而实现了海量结构化数据和非结构化数据的统一管理,降低了管理成本,有助于提高数据处理的灵活性和易用性,降低了用户使用的学习成本。(51)Int.Cl.权利要求书1页 说明书4页 附图1。
3、页(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书1页 说明书4页 附图1页(10)申请公布号 CN 103440288 ACN 103440288 A1/1页21.一种大数据存储方法,其包括:接收对象数据;识别对象数据的属性信息;根据对象数据的属性信息将其对象数据存储至存储系统中的第一存储子系统。2.如权利要求1所述的方法,其特征在于,所述对象数据包含结构化数据、半结构化数据或非结构化数据中的至少一种,并且该方法还包括,在接收对象数据之前,在对象数据的创建时,设定结构化数据、半结构化数据和非结构化数据与存储单元之间的对应关系。3.如权利要求1所述的方法,其特征在于,所述第一。
4、存储子系统由并行数据库单元和Hadoop平台组成,Hadoop平台包括HDFS单元、HBase单元和Hive单元,其中,HDFS单元存储非结构化数据,HBase单元和Hive单元存储半结构化数据,并行数据库单元存储结构化数据。4.如权利要求1所述的方法,其特征在于,将所述存储至存储系统中第一存储子系统的对象数据的关联关系和模式存储至存储系统中的第二存储子系统,以元数据的形式进行管理,其中,对象数据的模式包括对象数据的数据结构和数据属性。5.如权利要求4所述的方法,其特征在于,同属于一个对象而存储至第一存储子系统中不同存储单元的数据通过关联关系进行管理,所述关联关系由元数据统一管理。6.一种大数。
5、据存储装置,其特征在于,包括接收模块、识别模块和存储模块,其中,接收模块用于接收对象数据;识别模块用于识别对象数据的属性信息;存储模块用于根据对象数据的属性信息将对象数据存储至存储系统中的第一存储子系统。7.如权利要求6所述的装置,其特征在于,所述存储模块还用于将所述存储至存储系统中第一存储子系统的对象数据的关联关系和模式存储至存储系统中的第二存储子系统,以元数据的形式进行管理,其中,对象数据的模式包括对象数据的数据结构和数据属性。8.如权利要求6所述的装置,其特征在于,所述对象数据包含结构化数据、半结构化数据或非结构化数据中的至少一种,所述第一存储子系统由并行数据库单元和Hadoop平台组成。
6、,Hadoop平台包括HDFS单元、HBase单元和Hive单元,其中,HDFS单元存储非结构化数据,HBase单元和Hive单元存储半结构化数据,并行数据库单元存储结构化数据。权 利 要 求 书CN 103440288 A1/4页3一种大数据存储方法及装置技术领域0001 本发明涉及数据存储领域,具体涉及一种大数据存储方法及装置。背景技术0002 数据按类型分为结构化数据、半结构化数据和非结构化数据,其中结构化数据是指能够以二维结构表示的一种数据类型,能通过关系型数据库存储;半结构化数据是指具有一定结构,但语义不够明确的一种数据类型,如邮件、HTML网页等,它们有些字段是确定的,也有些字段是。
7、不确定的;非结构化数据是指无法用二维结构表示的一种数据类型,主要包括办公文档、文本、图片、音视频文件等,无法采用关系型数据库进行处理。伴随社交网络的兴起和发展,产生了大量的UGC(User Generated Content,用户生成内容),包括音频、视频、文本和图片等非结构化数据。另外,物联网的数据量也剧增,加上移动互联网可以更加准确、快速地搜集用户信息,如位置、生活信息等数据,大数据处理给我们提出了新的挑战。在所有数据中,结构化数据占数据总量的20,半结构化数据和非结构化数据占数据总量的80,如何科学管理和合理应用这些数据显得日益重要。0003 目前针对大数据的处理技术,包括并行数据库、M。
8、apReduce技术、并行数据库和MapReduce技术混合架构,其中对于大数据的统一处理技术属于第三类并行数据库和MapReduce技术混合架构,该技术有分为并行数据库主导型、MapReduce主导型、并行数据库和MapReduce集成型三种。并行数据库主导型是利用MapReduce来增强并行数据库的数据处理功能,如EMC的Greenplum,Aster Data,但其可扩展性和容错能力并未改变;MapReduce主导型是利用关系数据库的SQL(Structure Query Language,结构化查询语言)接口和对模式的支持来改善MapReduce的易用性,如Hive、Pig Latin。
9、,但其对于数据处理的实时性方面仍无法满足需求;并行数据库和MapReduce集成型是借助Hadoop框架来获得较好的容错性和对异构环境的支持,同时获得关系型数据库的性能优势,但是目前并无应用案例,究其原因在于无法把工作推给适合的执行引擎。0004 综上所述,现有的大数据存储技术中,并行数据库主导型可扩展性和容错能力不佳;MapReduce主导型数据处理的实时性方面仍无法满足需求;并行数据库和MapReduce集成型无法把工作推给适合的执行引擎。因此,在大数据存储领域,一直渴望一种对海量结构化数据和非结构化数据进行统一管理并且数据处理灵活性和易用性较好的存储方法和系统。发明内容0005 为了解决。
10、上述大数据对象的存储问题,本发明提供了一种大数据存储方法,其包括:0006 接收对象数据;0007 识别对象数据的属性信息;0008 根据对象数据的属性信息将其对象数据存储至存储系统中的第一存储子系统。说 明 书CN 103440288 A2/4页40009 较优地,所述对象数据包含结构化数据、半结构化数据或非结构化数据中的至少一种,并且该方法还包括,在接收对象数据之前,在对象数据的创建时,设定结构化数据、半结构化数据和非结构化数据与存储单元之间的对应关系。0010 较优地,所述第一存储子系统由并行数据库单元和Hadoop平台组成,Hadoop平台包括HDFS单元、HBase单元和Hive单元。
11、,其中,HDFS单元存储非结构化数据,HBase单元和Hive单元存储半结构化数据,并行数据库单元存储结构化数据。0011 较优地,将所述存储至存储系统中第一存储子系统的对象数据的关联关系和模式存储至存储系统中的第二存储子系统,以元数据的形式进行管理,其中,对象数据的模式包括对象数据的数据结构和数据属性。0012 较优地,同属于一个对象而存储至第一存储子系统中不同存储单元的数据通过关联关系进行管理,所述关联关系由元数据统一管理。0013 本发明另一方面还提供了一种大数据存储装置,包括接收模块、识别模块和存储模块,其中,0014 接收模块用于接收对象数据;0015 识别模块用于识别对象数据的属性。
12、信息;0016 存储模块用于根据对象数据的属性信息将对象数据存储至存储系统中的第一存储子系统。0017 较优地,所述存储模块还用于将所述存储至存储系统中第一存储子系统的对象数据的关联关系和模式存储至存储系统中的第二存储子系统,以元数据的形式进行管理,其中,对象数据的模式包括对象数据的数据结构和数据属性。0018 较优地,所述第一存储子系统由并行数据库单元和Hadoop平台组成,Hadoop平台包括HDFS单元、HBase单元和Hive单元,其中,HDFS单元存储非结构化数据,HBase单元和Hive单元存储半结构化数据,并行数据库单元存储结构化数据。0019 本发明通过将结构化数据、半结构化数。
13、据和非结构化数据统一成对象存储到数据库平台和Hadoop平台中,有效利用关系型数据库的性能优势,Hadoop平台和MapReduce框架的容错性及对动态数据模型的支持,并且还将对象的数据模式及相应属性信息存储至元数据中,便于在数据分析时将数据交给合适的执行引擎完成查询,从而实现了海量结构化数据和非结构化数据的统一管理,降低了管理成本,有助于提高数据处理的灵活性和易用性,降低了用户使用的学习成本。附图说明0020 图1为本发明提供的一种大数据存储方法的流程图;0021 图2为存储系统的构成图;0022 图3为本发明提供的一种大数据存储装置的结构图。具体实施方式0023 如图1所示,本发明提供了一。
14、种大数据存储方法,首先接收对象数据;识别所述对象数据的属性信息,即所述的数据是结构化数据、半结构化数据,还是非结构化数据,依据数据的属性信息将其存储到相应的存储单元中。所述的对象数据可以是由用户生成的大批说 明 书CN 103440288 A3/4页5量的数据,其构成较为复杂,既包括结构化数据、半结构化数据,也可能包括非结构化数据,用现有技术进行数据存储,或存在可扩展性和容错能力的问题,或处理的实时性不佳,或无法与合适的执行引擎结合。0024 如图2所示,存储系统包括存储对象数据的第一存储子系统和存储对象数据的关联关系和模式的第二存储子系统。其中第一存储子系统由并行数据库单元和Hadoop平台。
15、组成,包括四种存储单元,即:并行数据库单元、HDFS(HadoopDistributed Files System,Hadoop分布式文件系统)单元,HBase(HadoopDataBase,Hadoop数据库)单元和Hive单元。结构化数据的部分存储至并行数据库单元,半结构化数据和非结构化数据部分存储至Hadoop平台,主要是HDFS单元、HBase单元和Hive单元。具体地,HBase单元和Hive单元用于存储半结构化数据,HDFS单元用于存储非结构化数据,并行数据库单元用于存储结构化数据。0025 对象即是包含多种类型数据的各种复杂信息的抽象,一个对象可以同时包含结构化数据、半结构化数据。
16、和非结构化数据,结构化数据、半结构化数据和非结构数据在存储系统均中以虚拟表的方式进行存储和管理,虚拟表即将数据的属性信息抽象出来成为表的字段,多个字段组成一个虚拟表。0026 在对大数据对象进行存储之前,需要进行数据对象的创建,创建对象时,设定三种属性的数据与存储系统四种存储单元的对应关系,如图2所示,结构化数据对应存储至存储系统中的并行数据库单元,半结构化数据存储至存储系统中的HBase单元和Hive单元中,非结构化数据存储至存储系统中的HDFS单元中。在进行对象数据存储时,直接将对应的数据存储到相应的存储单元表中。0027 存储服务端接收到的对象数据需要存储至数据库四个存储单元中:HDFS。
17、单元、HBase单元、Hive单元和并行数据库单元。HDFS单元、Hive单元、并行数据库单元根据数据的不同属性又有不同的分区,存储时需要对数据进行数据划分,即根据数据特性对数据进行分存储单元及存储单元数据的分区处理;其中HBase单元不需要分区,例如,仅需要将数据组织成rowkey-family:column-family:column的形式。0028 数据划分过程中,分区列值可能是用户传入或通过UDF(user definedfunctions,用户自定义函数)计算得到。数据划分流程,即用户输入的数据包含需要写入底层存储系统中的待存储数据和用于确定各存储单元分区的数据。分区数据(如HBas。
18、e单元的rowkey值)可以由用户在输入数据时直接输入,也可以通过其他UDF函数计算得到,此时无需用户额外输入分区数据,直接利用待存储数据进行udf计算。0029 HDFS单元和Hive单元的数据划分方法一致,从元数据库读取待存储表的分区类型,和分区列信息,直接从输入数据中提取或利用输入数据经UDF函数计算得到分区值,将对应于相同分区值的数据写入到该存储单元的相应缓存中,等待并行存储。0030 HBase单元无需分区,利用rowkey特性存储数据进行查询。rowkey的生成可以由用户输入或利用用户输入的其他存储单元的数据经UDF计算获取,将数据组织成rowkey-column,columns的。
19、形式完成数据入库。0031 并行数据库单元的数据按照分区列数据进行分区处理后,建立多个数据库连接,并行的写入到数据库中。0032 各个存储单元之间的同一个对象的数据列之间的关联关系是有向无环图,各个存说 明 书CN 103440288 A4/4页6储单元的关联数据列之间或是相同的或是可以通过计算得到,即Hive单元(或HDFS单元,HBase单元,并行数据库单元)的关联数据列可能在并行数据库单元中也存在同样的关联数据列,或是Hive单元的关联数据列经过函数计算如加减乘除可以得到并行数据库单元的关联数据列。存储单元数据表的关联列之间的关系和一个对象的模式(包含所属存储单元的数据结构和数据属性)均。
20、存储在第二存储系统中的元数据库中由元数据统一管理。0033 数据对象结构及存储过程中,一个对象中各个存储单元数据表问存在的关联关系,即对象的关联数据列之间的推导关系。一个对象的数据可能分布在一个或多个存储单元中,每个存储单元数据表均会存在一个或多个关联列数据,用于和其他存储单元数据建立联系,便于进行数据分析。0034 一个对象数据存储至底层存储单元中需要由数据存储来实现。数据存储实现的主要功能是,批量获取客户端的数据即用户数据,从元数据获取关于对象的模式描述即数据所属存储单元及关联列信息,将数据定向的写入到底层存储平台中,同时要保证数据写入的高效性和可靠性。高效性和可靠性的保证均依赖于多线程实。
21、现。0035 如图3所示,另一方面,本发明还提供了一种大数据存储装置,包括接收模块301、识别模块302和存储模块303,其中,接收模块301用于接收包含结构化数据、半结构化数据或非结构化数据属性数据的对象数据;识别模块302用于识别对象数据的属性信息;存储模块303用于根据对象数据的属性信息将对象数据存储至存储系统中的第一存储子系统。0036 所述存储模块303还用于将所述存储至存储系统中第一存储子系统的对象数据的关联关系和模式存储至存储系统中的第二存储子系统,以元数据的形式进行管理,其中,对象数据的模式包括对象数据的数据结构和数据属性。0037 所述第一存储子系统由并行数据库单元和Hado。
22、op平台组成,包括四种存储单元,分别是HDFS单元、HBase单元、Hive单元和并行数据库单元,其中,HDFS单元存储非结构化数据,HBase单元和Hive单元存储半结构化数据,并行数据库单元存储结构化数据。0038 本发明通过将结构化数据、半结构化数据和非结构化数据统一成对象存储到数据库平台和Hadoop平台中,且将对象的数据模式及相应属性信息存储至元数据库中,便于在数据分析时将数据交给合适的执行引擎完成查询,有效的利用了关系型数据库的性能优势,Hadoop平台和MapReduce框架的容错性及对动态数据模型的支持,并且实现了海量结构化数据和非结构化数据的统一管理,有助于提高数据处理的灵活性和易用性。0039 最后应说明的是,以上实施例仅用以说明本发明的技术方案而非对本发明保护范围的限制。尽管参照上述实施例对本发明进行了详细的说明,所述领域的普通技术人员应该理解,可以对本发明的具体实施例方式进行修改或等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,均涵盖在本发明的权利要求范围中。说 明 书CN 103440288 A1/1页7图1图2图3说 明 书 附 图CN 103440288 A。