集成分布式数据处理系统的方法、相应系统及其数据处理方法_2

文档序号:9708418阅读:来源:国知局
故障检测。每个工作节点都运行了一个名为“Supervisor”的守护进程,用于监听工作,开始并终止工作进程。因此,当Storm集成在Hadoop集群上时,作为Hadoop名称节点NameNode的计算机便用来作为Storm的Nimbus,同时作为Hadoop数据节点DataNode的计算机便用来作为Storm的Supervisor。
[0033]进一步的,所述在所述Hadoop集群上建立分布式数据库Hbase、全文搜索服务器Solr以及分布式实时计算系统Storm,具体包括:
[0034]基于Hadoop2.0集群安装分布式应用程序协调服务Zookeeper;在安装所述Zookeeper的Hadoop2.0集群上,配置安装分布式数据库Hbase、全文搜索服务器Solr以及分布式实时计算系统Storm,其中所述Hbase、Solr以及Storm共用所述Zookeeper ο
[0035]—般地,对于由多个计算机组成的分布式集群,都会有一个主节点和多个从节点。而主节点与从节点之间的通信需要分布式应用程序协调服务Zookeeper进行协调。因此,为了集群的正常工作,在Hadoop2.0集群上,还需安装所述Zookeeper,进而通过Zookeeper协调Hadoop 中 NameNode 与 DataNode 的关系、Hbase 中Mas ter与 Reg1nServer 的关系、Solr 中ResourceMas ter与 SolrServer 的关系以及Storm中 Nimbus与 Supervisor 的关系。
[0036]综上所述,当在Hadoop集群上建立了所述Hbase、Solr以及Storm并共用所述计算机集群以及Zookeeper时,便形成了一个分布式数据处理系统的总架构。
[0037]步骤103、在所述总架构的数据访问层上,设置第一配置文件和第二配置文件,以提供统一的数据访问接口,集成分布式数据处理系统。
[0038]理论上,当在Hadoop集群上建立好所述Hbase、Solr以及Storm,组成分布式数据处理系统总架构后,基于所述总架构的数据访问层可以通过业务请求实现数据的存储、索引以及实时计算处理。但事实上,由于Hbase、Solr以及S t orm三者之间没有统一的数据访问接口,并不能对一个业务数据访问请求实现多元化的存储、索引以及实时计算处理。
[0039]因此,在本实施例中,提出了在所述总架构的数据访问层上设置配置文件提供统一数据访问结构的方法。具体的,先设置第一配置文件,建立所述Solr的索引库与所述Hbase表的映射关系;再设置第二配置文件,建立所述Storm与所述Hbase和/或Solr的数据存取路径。由此,基于所述映射关系和所述数据存储路径,集成分布式数据处理系统,实现多元化的数据处理。
[0040]进一步的,所述在所述总架构的数据访问层上,设置第一配置文件和第二配置文件,具体包括:
[0041]在分布式数据处理系统总架构的数据访问层上,设置元数据配置文件和入库策略配置文件,将Hbase中的数据存储与Solr中的数据索引进行关联;在分布式数据处理系统总架构的数据访问层上,设置数据提取策略配置文件,使得Storm能够实时读取Hbase和/或Solr中的数据以进行计算处理,并将处理后的数据实时写入Hbase和/或Solr的相应位置,其中,所述数据提取策略配置文件包括:数据的提取目标、提取条件、提取周期、以及提取批次。
[0042]在本实施例中,由于Hbase与Solr分别用于存储数据和索引数据,如果要协同完成同一份数据的存储和索引任务,就要求Solr的索引库和Hbase的数据库表存在映射关系。同时,由于Hbase的具体存储结构及Solr的索引数据结构都与具体业务和数据相关,要考虑分布式数据处理系统的通用性,就需要设置配置文件为Hbase和Solr提供统一数据访问接口。本发明所提的集成方法具体是在所述总架构的数据访问层上设置元数据配置文件和入库策略配置文件,基于上述的配置文件,在设置配置文件后,运行数据访问层的工具,自动创建或更新hbase表结构,以及solr的schema.xml文件,从而将Hbase中的数据存储与Solr中的数据索引进行关联。
[0043]进一步的,在本实施例中,所述元数据配置文件,包括:数据集文件、元素集文件以及代码集文件;所述数据集文件用于描述源数据的结构类型;所述元素集文件用于描述源数据的字段属性;所述代码集文件用于描述源数据的字典数据。
[0044]所述入库策略配置文件,包括:存储策略、索引策略;所述存储策略用于描述需要存储的数据集以及所述数据集的存储位置、存储周期和存储特性;所述索引策略用于描述索引库的结构、索引库对应的Solr服务器或分区、需要索引的数据以及所述数据集的存储周期;所述存储和索引策略用于描述需要存储和索引的数据、以及所述数据的存储位置、索引位置。
[0045]具体的,在所述入库策略配置文件的所述存储策略中,所述数据集的存储位置需要描述该数据集中的数据表位置、数据表中对应的列组的位置以及每列所在的位置;对于所述数据集的存储特性主要描述的是该数据集在存储时是否进行了压缩或以序列化存储等。同时,对于入库策略配置文件,其中的一个存储策略对应一个或多个索引策略,且一个索引策略也可用于多个存储策略的索引。需要注意的是,上述元数据配置文件和入库策略配置文件中涉及的配置内容仅是数据存储和数据索引进行关联的基本条件,对于不同的业务请求,还需要在配置文件中根据实际的业务数据进行扩展;同时对于元数据配置文件和入库策略配置文件中的扩展部分,还需要在数据访问层提供与之对应的配置解析程序,由此保持数据访问接口的一致性。
[0046]同时,在基于元数据配置文件和入库策略配置文件将Hbase中的数据存储与Solr中的数据索引进行关联后,还需要将Hbase和Solr同Storm进行数据间的集成,由此实现Storm实时读取Hbase和/或Solr中的数据以进行计算处理,并将处理后的数据实时写入Hbase和/或Solr的相应位置。具体的,考虑到分布式数据处理系统的通用性,也需要设置配置文件为StornuHbase和Solr提供统一数据访问接口,本发明所提的集成方法是在所述总架构的数据访问层上设置数据提取策略配置文件,基于该配置文件实现Storm对Hbase以及Solr中数据的实时处理。在数据提取策略配置文件中,所述配置文件是基于原子运算器的流程配置文件,其内容主要包括:数据处理流程,每一步对应的原子器类,各步处理间数据分发方式等,因此需要通过设置提取数据的目标、对数据进行提取的条件、提取数据所需的周期以及对数据进行提取的批次等来实现。总体而言,通过这些配置信息实现了Storm对Hbase以及Solr中数据信息的集成,由此使得默认的storm程序能够根据所述数据提取策略配置文件组织并调度相应的原子运算器进行数据处理。
[0047]同样,需要注意的是,所设置的数据提取策略配置文件的内容也是基本内容,在实际的系统操作中,针对不同的访问请求还需要在数据提取策略配置文件中设置扩展的内容,而且对于数据提取策略配置文件的扩展部分,也需要在数据访问层提供与之对应的配置解析程序,由此保持数据访问接口的一致性。
[0048]综上所述,通过上述三步骤便实现了分布式数据处理系统的集成,由此在集成的分布式数据处理系统上可以实现海量数据的多元化处理。
[0049]本发明实施例一提供的一种集成分布式数据处理系统的方法,首先搭建Hadoop集群,然后在Hadoop集群上建立Hbase、Solr以及Storm,最终通过配置文件将Hbase、Solr以及Storm进行关联,由此提供统一的数据访问接口,获得分布式数据处理系统,实现海量数据的存储、索引以及实时计算等多元化处理。
[0050]实施例二
[0051]图2为本发明实施例二提供的一种分布式数据处理系统的总体结构层次图。本实施例中的分布式数据处理系统基于实施例一所提的集成分布式数据处理系统的方法集成。进一步的,该分布式数据处理系统包括:Hadoop集群、配置于所述集群中的分布式数据库Hbase、全文搜索服务器Solr和分布式实时计算系统Storm、以及配置于所述集群的数据访问层上的统一数据访问接口;其中,所述分布式数据库Hbase、全文搜索服务器Solr以及分布式实时计算系统Storm通过配置于所述集群的数据访问层上的第一配置文件和第二配置文件进行数据处理。
[0052]如图2所示,本实施例二提供的一种分布式数据处理系统的总体结构层次,包括:文件存储层21、系统集群层22、系统协调服务层23、数据访问层24。
[0053]在本实施例中,所述文件存储层21具体为分布式文件系统HDFS,用于存放系统中Hbase的数据以及Hadoop所需的数据。所述系统集群层22又可划分为系统集群从节点层221和系统集群主节点层222。所述系统集群从节点层221具体由构成集群的多个计算机组成,用于作为Hadoop中的数据节点
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1