CN106156086A - Hadoop平台***及其主节点日志备份方法 - Google Patents
Hadoop平台***及其主节点日志备份方法 Download PDFInfo
- Publication number
- CN106156086A CN106156086A CN201510150482.3A CN201510150482A CN106156086A CN 106156086 A CN106156086 A CN 106156086A CN 201510150482 A CN201510150482 A CN 201510150482A CN 106156086 A CN106156086 A CN 106156086A
- Authority
- CN
- China
- Prior art keywords
- host node
- cloud storage
- daily record
- storage
- memory paragraph
- 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
本发明提供了一种Hadoop平台***及其主节点日志备份方法。该Hadoop平台***包括:处于活动状态的第一主节点;处于待机状态的第二主节点;将第一主节点连至云存储器的第一接口,被配置为响应于第一主节点中日志的更新,将更新的日志复制成多份分别向云存储器的多个存储段传输;将第二主节点连至云存储器的第二接口,被配置为响应于云存储器存储的第一主节点的日志的更新,将云存储器中更新的第一主节点的日志读取至第二主节点。本发明提高了Hadoop平台***中主节点的可用性。
Description
技术领域
本发明涉及日志备份,尤其涉及一种Hadoop平台***及其主节点日志备份方法。
背景技术
目前,Hadoop平台***已经成为了最为流行的分布式大数据框架,其广泛应用于不同的行业,例如健康、能源等。
Hadoop平台***包括主节点(name node)和连接到主节点的若干从节点(slave node)。主节点接收到一个任务,将任务分配到与其连接的各从节点中。自从Hadoop 1.0.0时代,主节点的可用性一直是一个大问题。一旦主节点发生单点故障,与其连接的从节点的任务分配、执行等都没有办法正常进行。直到该主节点故障恢复,或另一个节点接管了主节点的职能,与该主节点连接的从节点的任务分配、执行等才能够正常进行。
传统的解决主节点的单点故障的方法是在处于活动状态的主节点之外,还采用一个处于待机状态的主节点。当检测到处于活动状态的主节点发生单点故障后,启用处于待机状态的主节点。此时的问题是虽然有的新的主节点,但原主节点的日志丢失。因此,采用文件***(FS)来同步处于活动状态的主节点的日志。只要处于活动状态的主节点的日志发生更新,就将该更新的日志同步到FS。当启用处于待机状态的主节点后,调取FS中处于活动状态的主节点的日志到处于待机状态的主节点。然而,FS同样会发生单点故障。一旦FS发生单点故障,仍然无法恢复处于活动状态的主节点的日志。
发明内容
有鉴于此,本发明的一个实施例解决的问题之一是提高Hadoop平台***中主节点的可用性。
根据本发明的一个实施例,提供了一种Hadoop平台***,包括:处于活动状态的第一主节点;处于待机状态的第二主节点;将第一主节点连至云存储器的第一接口,被配置为响应于第一主节点中日志的更新,将更新的日志复制成多份分别向云存储器的多个存储段传输;将第二主节点连至云存储器的第二接口,被配置为响应于云存储器存储的第一主节点的日志的更新,将云存储器中更新的第一主节点的日志读取至第二主节点。
可选地,第一接口进一步被配置为将更新的日志复制成多份分别向云存储器的位于不同区域的多个存储段传输。
可选地,第一接口将更新的日志复制成N份分别向云存储器的N个存储段传输,N≧2且N为自然数;在第一接口将更新的日志复制成N份分别向云存储器的N个存储段传输后,接收到W个存储段的响应的情况下,认为向云存储器传输完成,W≦N且W为自然数;第二接口读取R个存储段,以将云存储器中更新的第一主节点的日志读取至第二主节点,R≦N且R为自然数,其中W+R>N。
可选地,W+R=N+1。
可选地,第一接口进一步被配置成:为第一主节点中更新的日志分配独特的流水号,将该流水号与复制成的多份更新的日志相关联地分别向云存储器的多个存储段传输,每响应于接收到云存储器中一个存储段的响应,将云存储器中初始化设置为0的计数器加1;第二接口进一步被配置为响应于云存储器存储的第一主节点的日志的更新,在所述计数器的值达到W的情况下,读取R个存储段,从而将云存储器中更新的第一主节点的日志读取至第二主节点。
可选地,第一接口进一步被配置成:为第一主节点中更新的日志分配递增的流水号;将该流水号与复制成的多份更新的日志相关联地分别向云存储器的多个存储段传输;第二接口被配置成:响应于第二主节点被启用,确定所述云存储器中存储的最大流水号,确定存储有该最大流水号的存储段数P,其中P为正整数,且P≦N,如果所述存储段数P小于W,则选取存储有该最大流水号的存储段中的一个,将选取的存储段中与该最大流水号关联存储的日志、以及该最大流水号相关联地复制到云存储器中未存储有该最大流水号的存储段,在接收到W-P个存储段的响应的情况下,读取R个存储段,从而将云存储器中与该最大流水号关联存储的日志读取至第二主节点。
可选地,Hadoop平台***还包括:监视机构,用于监视第一主节点是否出现故障,响应于监视到第一主节点出现故障,关闭第一主节点,启用第二主节点。
根据本发明的一个实施例,提供了一种Hadoop平台***的主节点日志备份方法,其中该Hadoop平台***包括处于活动状态的第一主节点和处于待机状态的第二主节点,该主节点日志备份方法包括:响应于第一主节点中日志的更新,将第一主节点中更新的日志复制成多份分别向云存储器的多个存储段传输;响应于云存储器存储的第一主节点的日志的更新,将云存储器中更新的第一主节点的日志读取至第二主节点。
可选地,所述将第一主节点中更新的日志复制成多份分别向云存储器的多个存储段传输的步骤包括:将第一主节点中更新的日志复制成多份分别向云存储器的位于不同区域的多个存储段传输。
可选地,将第一主节点中更新的日志复制成的份数为N,对应的传输到的云存储器中的存储段的数目也为N,N≧2且N为自然数;所述将第一主节点中更新的日志复制成多份分别向云存储器的多个存储段传输的步骤包括:在接收到W个存储段的响应的情况下,认为向云存储器传输完成,W≦N且W为自然数;将云存储器中更新的第一主节点的日志读取至第二主节点的步骤包括:读取R个存储段,以将云存储器中更新的第一主节点的日志读取至第二主节点,R≦N且R为自然数,其中W+R>N。
可选地,W+R=N+1。
可选地,所述将第一主节点中更新的日志复制成多份分别向云存储器的多个存储段传输的步骤包括:为第一主节点中更新的日志分配独特的流水号,并将该流水号与复制成的多份更新的日志相关联地分别向云存储器的多个存储段传输,每响应于接收到云存储器中一个存储段的响应,将云存储器中初始化设置为0的计数器加1。所述将云存储器中更新的第一主节点的日志读取至第二主节点的步骤包括:响应于云存储器存储的第一主节点的日志的更新,在所述计数器的值达到W的情况下,读取R个存储段中与该流水号关联的第一主节点的更新的日志到第二主节点。
可选地,所述将第一主节点中更新的日志复制成多份分别向云存储器的多个存储段传输的步骤包括:为第一主节点中更新的日志分配递增的流水号,并将该流水号与复制成的多份更新的日志相关联地分别向云存储器的多个存储段传输。所述将云存储器中更新的第一主节点的日志读取至第二主节点的步骤包括:响应于第二主节点被启用,确定所述云存储器中存储的最大流水号,确定存储有该最大流水号的存储段数P,其中P为正整数,且P≦N,如果所述存储段数P小于W,则选取存储有该最大流水号的存储段中的一个,将选取的存储段中与该最大流水号关联存储的日志、以及该最大流水号相关联地复制到云存储器中未存储有该最大流水号的存储段,在接收到W-P个存储段的响应的情况下,读取R个存储段,从而将云存储器中与该最大流水号关联存储的日志读取至第二主节点。
可选地,该主节点日志备份方法还包括:监视第一主节点是否出现故障;响应于监视到第一主节点出现故障,关闭第一主节点,启用第二主节点。
由于本发明实施例不是采用文件***(FS)来同步处于活动状态的主节点的日志,而是采用不容易变得不可用的云存储器来同步处于活动状态的主节点的日志,更关键地是将更新的日志复制成多份分别向云存储器的多个存储段传输,这样,即使其中一个存储段存储的更新的日志变得不可用,其它存储段存储的更新的日志仍然可用,不至于无法恢复处于活动状态的主节点的日志。这样,提高了Hadoop平台***中主节点的可用性。
另外,由于在本发明进一步的实施例中,所述多个存储段位于云存储器上不同区域,不同区域上的存储段不容易同时发送损坏,因此,进一步提高了Hadoop平台***中主节点的可用性。
另外,在本发明进一步的实施例中,第一接口将更新的日志复制成N份分别向云存储器的N个存储段传输,在第一接口接收到W个存储段的响应的情况下认为向云存储器传输完成,第二接口读取R个存储段,以将云存储器中更新的第一主节点的日志读取至第二主节点,其中W+R>N。这样做的好处是:如果第一接口接收到全部N个存储段的响应的情况下才认为向云存储器传输完成,第一接口要等待很长时间,降低日志更新效率,但如果等待接收到的存储段的响应数太少又无法保证第二主节点在读取时能读到更新后的日志。如果第二接口读取N个存储段以将云存储器中更新的第一主节点的日志读取至第二主节点,第二接口要等待很长时间,降低日志更新效率,但如果的读取的存储段数太少又无法保证第二主节点在读取时能读到更新后的日志。假设第一接口将更新的日志复制成N份分别向云存储器的N个存储段传输,在第一接口接收到W个存储段的响应的情况下认为向云存储器传输完成,此时如果剩下的N-W个存储段实际上最后都未响应,即未成功写入存储段,如果第二主节点读取云存储器中更新的第一主节点的日志时最先读取的就是剩下的这N-W个存储段,则不能成功读取至少一个该更新的日志,因此,至少要保证读取的存储段数R>N-W,即W+R>N,才能保证至少读取到一个该更新的日志。因此,这种方式在保障能够完成日志更新的前提下,尽可能地提高了日志更新效率。
附图说明
本发明的其它特点、特征、优点和益处通过以下结合附图的详细描述将变得更加显而易见。
图1表示根据本发明一个实施例的云计算环境。
图2是根据本发明一个实施例的Hadoop平台***的示意图。
图3是根据本发明一个实施例的Hadoop平台***的详细示意图。
图4是根据本发明一个实施例的Hadoop平台***的主节点日志备份方法的流程图。
图5是根据本发明另一个实施例的Hadoop平台***的主节点日志备份方法的流程图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整的传达给本领域的技术人员。
首先应当理解,尽管本公开包括关于云计算的详细描述,但其中记载的技术方案的实现却不限于云计算环境,而是能够结合现在已知或以后开发的任何其它类型的计算环境而实现。
云计算是一种服务交付模式,用于对共享的可配置计算资源池进行方便、按需的网络访问。可配置计算资源是能够以最小的管理成本或与服务提供者进行最少的交互就能快速部署和释放的资源,例如可以是网络、网络带宽、服务器、处理、内存、存储、应用、虚拟机和服务。现在参考图1,其中显示了示例性的云计算环境50。如图所示,云计算环境50包括云计算消费者使用的本地计算设备可以与其相通信的一个或者多个云节点10,本地计算设备例如可以是个人数字助理(PDA)或移动电话54A,台式电脑54B、笔记本电脑54C和/或汽车计算机***54N。云节点10之间可以相互通信。可以在包括但不限于如上所述的私有云、共同体云、公共云或混合云或者它们的组合的一个或者多个网络中将云节点10进行物理或虚拟分组(图中未显示)。这样,云的消费者无需在本地计算设备上维护资源就能请求云计算环境50提供的基础架构即服务(IaaS)、平台即服务(PaaS)和/或软件即服务(SaaS)。应当理解,图1显示的各类计算设备54A-N仅仅是示意性的,云节点10以及云计算环境50可以与任意类型网络上和/或网络可寻址连接的任意类型的计算设备(例如使用网络浏览器)通信。
图2是根据本发明一个实施例的Hadoop平台***4的示意图。如图2所示,Hadoop平台***4至少包括:处于活动状态的第一主节点401;处于待机状态的第二主节点402;将第一主节点连至云存储器的第一接口415;将第二主节点连至云存储器的第二接口416。
主节点是Hadoop平台***中负责任务分配和对任务执行结果的整合的节点,它例如可以是图1所示的云计算环境50中的一个云节点10。主节点还连接着若干从节点(例如图3所示的从节点403-408)。从节点是接受主节点分配的任务并将任务执行结果上报给主节点的节点,它可以是图1所示的云计算环境50中的一些云节点10。
活动状态是指正在运行的状态,即当前负责任务分配和对任务执行结果的整合的状态。待机状态是当前不在运行,一旦处于活动状态的主节点发生故障就会被通知开始运行的状态。
如图2-3所示,云存储器位于Hadoop平台***4外部。但在一些实施例中,云存储器也可以位于Hadoop平台***4内部。第一接口、第二接口例如分别是第一主节点、第二主节点上的具有编好的软件程序的插件,将其***或安装到第一主节点、第二主节点上可以分别实现与云存储器的交互。
第一主节点401被配置为与云存储器完成以下交互:响应于第一主节点中日志的更新,将更新的日志复制成多份分别向云存储器的多个存储段传输。
日志在本发明实施例中是指,Hadoop平台***的主节点运行时产生的主节点运行参数。主节点运行参数例如主节点当前正分配的任务序号、主节点将该任务分成的子任务数、将子任务已分配给的从节点标识等。例如,处于活动状态的第一主节点401当前正将任务181分配给与其连接的从节点,其中将任务181分成6个子任务,第一个子任务分给从节点403,第二子任务分给从节点404,第三至六个子任务还未来得及分配,此时第一主节点发生故障,则需要将第一主节点401产生的日志(即当前正分配的任务序号181、子任务数6、该任务已分配给的两个从节点的标识——节点403和404的标识),通过本发明实施例的方式传递到接替其工作的第二主节点,第二主节点才能够继续完成该任务的分配。
日志的更新即主节点运行时产生的主节点运行参数的更新。例如,假设主节点当前正分配的任务序号为180,表明当前主节点正分配着序号为180的任务。当该任务分配完后,主节点开始分配序号为181的任务。此时主节点当前正分配的任务序号这个主节点运行参数更新为181,即产生了日志的更新。
存储段是云存储器中的一个用于存储的空间。云存储器上物理上划分出多个不同的区域。在一个优选实施例中,将更新的日志向位于云存储器的不同区域的存储段传输。这样做的好处是,即使其中一个存储段存储的更新的日志变得不可用,其它存储段由于位于与该存储段所在的区域不同的区域,这样很可能仍然可用,不至于无法恢复处于活动状态的主节点的日志。这样,提高了Hadoop平台***中主节点的可用性。
例如,第一接口415实时监视到第一主节点401开始分配任务181,即主节点当前正分配的任务序号变成181,认为发生了日志的更新,将该更新的日志复制4份,连带本身共5份,向分别位于云存储器5个区域的5个存储段传输。
第二接口416被配置为响应于云存储器存储的第一主节点的日志的更新,将云存储器中更新的第一主节点的日志读取至第二主节点。
例如,第一主节点401将更新的日志,即当前正分配的任务序号181,存储到云存储器的存储段后,第二接口监视到这一情况,将该存储的日志读取至第二主节点。
在一个实施例中,第一接口415将更新的日志复制成N份分别向云存储器的N个存储段传输,N≧2且N为自然数。然后,在第一接口415接收到N个存储段的响应的情况下,才认为向云存储器传输完成,第一接口415才可以将下一条更新的日志复制并向云存储器的存储段传输。这样,确保了更新的日志能存到云存储器的全部N个存储段中,确保了云存储器存储了足够份的更新的日志以便正确恢复到第二主节点上。如果在规定的时间段(该时间段可以由用户根据实际需要规定,其可设置为大于正常接到一个存储段的响应的时间)内接收不到全部N个存储段的响应,有可能向其中的一些存储器进行存储时出现了错误,此时可以向这些出现了错误的存储段再次发起对该更新的日志的存储。如果仍然接收不到响应,可能这一存储段已损坏,此时可以考虑用指定另一个存储段替代该已损坏的存储段进行存储。另外,第一接口415实时监视到第一主节点中日志的更新后,可以为该更新的日志分配独特的流水号(独特是指对于不同的更新的日志,该流水号不重复,例如从低到高递增分配),并将该流水号与复制成的多份更新的日志相关联地分别向云存储器的多个存储段传输。云存储器每接到一个新的流水号后就一方面存储该流水号和相关联的多份复制的更新的日志分别到所述多个存储段,另一方面通知第二接口该云存储器新存储了第一主节点的更新的日志、以及该流水号。第二接口416此时由于不知第一主节点的更新的日志存储在哪个存储段,要逐一读取该N个存储段。在该N个存储段的哪个或哪些存储段中存储了该独特的流水号,就可以从该存储段中读取与该流水号相关联的更新的日志到第二主节点。
在另一个实施例中,第一接口415将更新的日志复制成N份分别向云存储器的N个存储段传输,N≧2且N为自然数。然后,在第一接口415接收到W个存储段的响应的情况下,认为向云存储器传输完成,第一接口415就可以将下一条更新的日志复制并向云存储器的存储段传输,其中W≦N且W为自然数。这样,不用等到全部N个存储段都响应,只要有W个存储段响应就可以继续向下进行,从而提高了日志更新的效率。另外,第一接口415实时监视到第一主节点中日志的更新后,可以为该更新的日志分配独特的流水号,并将该流水号与复制成的多份更新的日志相关联地分别向云存储器的多个存储段传输。云存储器每接到一个新的流水号后就一方面存储该流水号和相关联的多份复制的更新的日志分别到所述多个存储段,另一方面通知第二接口该云存储器新存储了第一主节点的更新的日志、以及该流水号。第二接口416此时只需读取R个存储段,就能将云存储器中更新的第一主节点的日志读取至第二主节点,其中R≦N,W+R>N且R为自然数。其原因是:即使在第一接口接收到W个存储段的响应的情况下认为向云存储器传输完成,而剩下的N-W个存储段实际上最后都未响应,即未成功写入存储段,或者说这N-W个存储段未存储有与该流水号关联的更新的日志,当第二主节点读取云存储器中更新的第一主节点的日志时,如果不幸读取的就是剩下的这N-W个存储段,没有读取到与该流水号关联的更新的日志,这时只要再多读一个没读取的W个存储段中的一个,就一定能读取到一个与该流水号关联的更新的日志。因此,只要保证读取的存储段数R>N-W,即W+R>N,就能保证至少读取到一个该更新的日志。因此,这种方式在保障能够完成日志更新的前提下,尽可能地提高了日志更新效率。
W+R刚好比N大1,即W+R=N+1,刚好能保障完成日志更新,而又最大化地提高了日志更新效率。
但是,上述公式W+R>N的前提是,第一接口将更新的日志复制成N份分别向云存储器的N个存储段传输且已接到W个存储段的响应后,第二接口才开始从云存储器中读取更新的日志。如果在第一接口向将更新的日志复制成N份分别向云存储器的N个存储段传输且已接到W个存储段的响应之前,第二接口就开始从云存储器中读取更新的日志则不适用。例如,N=5,W=4,则R=2则满足W+R>N。但如果在只接到3个存储段的响应时,第二接口就开始读取更新的日志,则可能产生问题。因为这时可能第二接口读取的2个存储段就是5个存储段中未接到响应的2个存储段,此时是读不到第一主节点的该更新的日志的。虽然在随后的时间里第四个存储段作出响应,表明该更新的日志已存储到第四个存储段中,但此时第二接口的读取已完成。在本发明实施例中,第一接口每响应于接收到云存储器中一个存储段的响应,将云存储器中初始化设置为0的计数器加1,而第二接口响应于云存储器存储的第一主节点的日志的更新,只有在所述计数器的值达到W的情况下,才读取R个存储段,从而将云存储器中更新的第一主节点的日志读取至第二主节点。这样做就能够保证只有在第一接口将更新的日志复制成N份分别向云存储器的N个存储段传输且已接到W个存储段的响应后,第二接口才开始从云存储器中读取更新的日志。
另外,存在这样一种情形:如果第一主节点401出现故障时第一接口正在复制日志并向云存储器的N个存储段传输,还未接收到W个存储段的响应,此时第二接口是不能读取云存储器的。这时,当第二主节点402代替第一主节点401工作时,这个正在复制、传输过程中的日志就没有复制到第二主节点402中,造成第二主节点402中日志不全。
为了解决这一问题,本发明的一个实施例中,第一接口415进一步被配置成:为第一主节点中更新的日志分配递增的流水号;将该流水号与复制成的多份更新的日志相关联地分别向云存储器的多个存储段传输。第二接口416被配置成:响应于第二主节点被启用,确定所述云存储器中存储的最大流水号,确定存储有该最大流水号的存储段数P,其中P为正整数,且P≦N,如果所述存储段数P小于W,则选取存储有该最大流水号的存储段中的一个,将选取的存储段中与该最大流水号关联存储的日志、以及该最大流水号相关联地复制到云存储器中未存储有该最大流水号的存储段,在接收到W-P个存储段的响应的情况下,读取R个存储段,从而将云存储器中与该最大流水号关联存储的日志读取至第二主节点。
由于流水号是递增分配的,整个云存储器中最大的流水号就是最晚进入云存储器的日志,也就是可能没有复制到第二主节点402的日志。如果存储着该最大流水号的存储段数P大于W,此时符合第二接口读取R个存储段的条件,就认为第二主节点中已经备份有该日志。如果存储着该最大流水号的存储段数P小于W,此时意味着第二接口还没有读取R个存储段,从而将该日志读取至第二主节点的过程,这时就要执行上述过程,以将该日志读取至第二主节点。
如图3所示,Hadoop平台***还包括:监视机构414,用于监视第一主节点是否出现故障,响应于监视到第一主节点出现故障,关闭第一主节点,启用第二主节点。
在一个实施例中,如图3所示,监视机构414包括:第一主节点的启用/关断控制器409,用于启用或关断第一主节点;第二主节点的启用/关断控制器410,用于启用或关断第二主节点;第一主节点的健康状况监视器411,用于监视第一主节点是否出现故障;第二主节点的健康状态监视器412,用于监视第二主节点是否出现故障;总体控制器413,用于接收第一主节点的健康状况监视器411上报的第一主节点的故障情况和第二主节点的健康状态监视器412上报的第二主节点的故障情况,且在第一主节点出现故障的情况下,通过第一主节点的启用/关断控制器409关断第一主节点,通过第二主节点的启用/关断控制器410启用第二主节点。由于第一主节点的日志已通过前述的过程实时备份到第二主节点中,第二主节点就能够接替第一主节点的工作而不会对Hadoop平台***的整体运行造成影响。
图4示出了根据本发明一个实施例的一种Hadoop平台***4的主节点日志备份方法6,其中该Hadoop平台***4包括处于活动状态的第一主节点401和处于待机状态的第二主节点402。该主节点日志备份方法6包括:响应于第一主节点中日志的更新,将第一主节点中更新的日志复制成多份分别向云存储器的多个存储段传输610;响应于云存储器存储的第一主节点的日志的更新,将云存储器中更新的第一主节点的日志读取至第二主节点620。
可选地,所述将第一主节点中更新的日志复制成多份分别向云存储器的多个存储段传输的步骤610包括:将第一主节点中更新的日志复制成多份分别向云存储器的位于不同区域的多个存储段传输。
可选地,将第一主节点中更新的日志复制成的份数为N,对应的传输到的云存储器中的存储段的数目也为N,N≧2且N为自然数。所述将第一主节点中更新的日志复制成多份分别向云存储器的多个存储段传输的步骤610包括:在接收到W个存储段的响应的情况下,认为向云存储器传输完成,W≦N且W为自然数。将云存储器中更新的第一主节点的日志读取至第二主节点的步骤620包括:读取R个存储段,以将云存储器中更新的第一主节点的日志读取至第二主节点,R≦N且R为自然数,其中W+R>N。
可选地,W+R=N+1。
可选地,所述将第一主节点中更新的日志复制成多份分别向云存储器的多个存储段传输的步骤610包括:为第一主节点中更新的日志分配独特的流水号,并将该流水号与复制成的多份更新的日志相关联地分别向云存储器的多个存储段传输;每响应于接收到云存储器中一个存储段的响应,将云存储器中初始化设置为0的计数器加1。所述将云存储器中更新的第一主节点的日志读取至第二主节点的步骤620包括:响应于云存储器存储的第一主节点的日志的更新,在所述计数器的值达到W的情况下,读取R个存储段中与该流水号关联的第一主节点的更新的日志到第二主节点。
可选地,所述将第一主节点中更新的日志复制成多份分别向云存储器的多个存储段传输的步骤610包括:为第一主节点中更新的日志分配递增的流水号,并将该流水号与复制成的多份更新的日志相关联地分别向云存储器的多个存储段传输。所述将云存储器中更新的第一主节点的日志读取至第二主节点的步骤620包括:响应于第二主节点被启用,确定所述云存储器中存储的最大流水号,确定存储有该最大流水号的存储段数P,其中P为正整数,且P≦N,如果所述存储段数P小于W,则选取存储有该最大流水号的存储段中的一个,将选取的存储段中与该最大流水号关联存储的日志、以及该最大流水号相关联地复制到云存储器中未存储有该最大流水号的存储段,在接收到W-P个存储段的响应的情况下,读取R个存储段,从而将云存储器中与该最大流水号关联存储的日志读取至第二主节点。
可选地,如图5所示,该主节点日志备份方法还可以包括:监视第一主节点是否出现故障630;响应于监视到第一主节点出现故障,关闭第一主节点,启用第二主节点640。
本领域技术人员应当理解,上面所公开的各个实施例,可以在不偏离发明实质的情况下做出各种变形和改变。因此,本发明的保护范围应当由所附的权利要求书来限定。
Claims (14)
1.一种Hadoop平台***(4),包括:
处于活动状态的第一主节点(401);
处于待机状态的第二主节点(402);
将第一主节点连至云存储器的第一接口(415),被配置为响应于第一主节点中日志的更新,将更新的日志复制成多份分别向云存储器的多个存储段传输;
将第二主节点连至云存储器的第二接口(416),被配置为响应于云存储器存储的第一主节点的日志的更新,将云存储器中更新的第一主节点的日志读取至第二主节点。
2.根据权利要求1的Hadoop平台***,其中第一接口(415)进一步被配置为将更新的日志复制成多份分别向云存储器的位于不同区域的多个存储段传输。
3.根据权利要求1的Hadoop平台***,其中第一接口(415)将更新的日志复制成N份分别向云存储器的N个存储段传输,N≧2且N为自然数;在第一接口(415)将更新的日志复制成N份分别向云存储器的N个存储段传输后,接收到W个存储段的响应的情况下,认为向云存储器传输完成,W≦N且W为自然数;第二接口(416)读取R个存储段,以将云存储器中更新的第一主节点的日志读取至第二主节点,R≦N且R为自然数,其中
W+R>N。
4.根据权利要求3的Hadoop平台***,其中W+R=N+1。
5.根据权利要求3的Hadoop平台***,其中第一接口(415)进一步被配置成:为第一主节点中更新的日志分配独特的流水号;将该流水号与复制成的多份更新的日志相关联地分别向云存储器的多个存储段传输;每响应于接收到云存储器中一个存储段的响应,将云存储器中初始化设置为0的计数器加1;
第二接口(416)进一步被配置为响应于云存储器存储的第一主节点的日志的更新,在所述计数器的值达到W的情况下,读取R个存储段,从而将云存储器中更新的第一主节点的日志读取至第二主节点。
6.根据权利要求3的Hadoop平台***,其中第一接口(415)进一步被配置成:为第一主节点中更新的日志分配递增的流水号;将该流水号与复制成的多份更新的日志相关联地分别向云存储器的多个存储段传输;
第二接口(416)被配置成:响应于第二主节点被启用,确定所述云存储器中存储的最大流水号,确定存储有该最大流水号的存储段数P,其中P为正整数,且P≦N,如果所述存储段数P小于W,则选取存储有该最大流水号的存储段中的一个,将选取的存储段中与该最大流水号关联存储的日志、以及该最大流水号相关联地复制到云存储器中未存储有该最大流水号的存储段,在接收到W-P个存储段的响应的情况下,读取R个存储段,从而将云存储器中与该最大流水号关联存储的日志读取至第二主节点。
7.根据权利要求1的Hadoop平台***,还包括:
监视机构(414),用于监视第一主节点是否出现故障,响应于监视到第一主节点出现故障,关闭第一主节点,启用第二主节点。
8.一种Hadoop平台***(4)的主节点日志备份方法(6),其中该Hadoop平台***(4)包括处于活动状态的第一主节点(401)和处于待机状态的第二主节点(402),该主节点日志备份方法(6)包括:
响应于第一主节点中日志的更新,将第一主节点中更新的日志复制成多份分别向云存储器的多个存储段传输(610);
响应于云存储器存储的第一主节点的日志的更新,将云存储器中更新的第一主节点的日志读取至第二主节点(620)。
9.根据权利要求8的主节点日志备份方法,其中所述将第一主节点中更新的日志复制成多份分别向云存储器的多个存储段传输(610)的步骤包括:将第一主节点中更新的日志复制成多份分别向云存储器的位于不同区域的多个存储段传输。
10.根据权利要求8的主节点日志备份方法,其中
将第一主节点中更新的日志复制成的份数为N,对应的传输到的云存储器中的存储段的数目也为N,N≧2且N为自然数;
所述将第一主节点中更新的日志复制成多份分别向云存储器的多个存储段传输的步骤(610)包括:在接收到W个存储段的响应的情况下,认为向云存储器传输完成,W≦N且W为自然数;
将云存储器中更新的第一主节点的日志读取至第二主节点的步骤(620)包括:读取R个存储段,以将云存储器中更新的第一主节点的日志读取至第二主节点,R≦N且R为自然数,其中
W+R>N。
11.根据权利要求10的主节点日志备份方法,其中W+R=N+1。
12.根据权利要求10的主节点日志备份方法,其中
所述将第一主节点中更新的日志复制成多份分别向云存储器的多个存储段传输的步骤(610)包括:为第一主节点中更新的日志分配独特的流水号,并将该流水号与复制成的多份更新的日志相关联地分别向云存储器的多个存储段传输;每响应于接收到云存储器中一个存储段的响应,将云存储器中初始化设置为0的计数器加1;
所述将云存储器中更新的第一主节点的日志读取至第二主节点的步骤(620)包括:响应于云存储器存储的第一主节点的日志的更新,在所述计数器的值达到W的情况下,读取R个存储段中与该流水号关联的第一主节点的更新的日志到第二主节点。
13.根据权利要求10的主节点日志备份方法,其中
所述将第一主节点中更新的日志复制成多份分别向云存储器的多个存储段传输的步骤(610)包括:为第一主节点中更新的日志分配递增的流水号,并将该流水号与复制成的多份更新的日志相关联地分别向云存储器的多个存储段传输;
所述将云存储器中更新的第一主节点的日志读取至第二主节点的步骤(620)包括:响应于第二主节点被启用,确定所述云存储器中存储的最大流水号,确定存储有该最大流水号的存储段数P,其中P为正整数,且P≦N,如果所述存储段数P小于W,则选取存储有该最大流水号的存储段中的一个,将选取的存储段中与该最大流水号关联存储的日志、以及该最大流水号相关联地复制到云存储器中未存储有该最大流水号的存储段,在接收到W-P个存储段的响应的情况下,读取R个存储段,从而将云存储器中与该最大流水号关联存储的日志读取至第二主节点。
14.根据权利要求8的主节点日志备份方法,还包括:
监视第一主节点是否出现故障(630);
响应于监视到第一主节点出现故障,关闭第一主节点,启用第二主节点(640)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510150482.3A CN106156086A (zh) | 2015-03-31 | 2015-03-31 | Hadoop平台***及其主节点日志备份方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510150482.3A CN106156086A (zh) | 2015-03-31 | 2015-03-31 | Hadoop平台***及其主节点日志备份方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106156086A true CN106156086A (zh) | 2016-11-23 |
Family
ID=57337323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510150482.3A Pending CN106156086A (zh) | 2015-03-31 | 2015-03-31 | Hadoop平台***及其主节点日志备份方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106156086A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110544136A (zh) * | 2019-09-10 | 2019-12-06 | 恩亿科(北京)数据科技有限公司 | 计算同步投放概率的方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5423037A (en) * | 1992-03-17 | 1995-06-06 | Teleserve Transaction Technology As | Continuously available database server having multiple groups of nodes, each group maintaining a database copy with fragments stored on multiple nodes |
CN101729290A (zh) * | 2009-11-04 | 2010-06-09 | 中兴通讯股份有限公司 | 用于实现业务***保护的方法及装置 |
CN102307221A (zh) * | 2011-03-25 | 2012-01-04 | 国云科技股份有限公司 | 一种云存储***及其实现方法 |
CN103391185A (zh) * | 2013-08-12 | 2013-11-13 | 北京泰乐德信息技术有限公司 | 一种轨道交通监测数据的云安全存储和处理方法及*** |
CN103763155A (zh) * | 2014-01-24 | 2014-04-30 | 国家电网公司 | 分布式云存储***多服务心跳监测方法 |
-
2015
- 2015-03-31 CN CN201510150482.3A patent/CN106156086A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5423037A (en) * | 1992-03-17 | 1995-06-06 | Teleserve Transaction Technology As | Continuously available database server having multiple groups of nodes, each group maintaining a database copy with fragments stored on multiple nodes |
CN101729290A (zh) * | 2009-11-04 | 2010-06-09 | 中兴通讯股份有限公司 | 用于实现业务***保护的方法及装置 |
CN102307221A (zh) * | 2011-03-25 | 2012-01-04 | 国云科技股份有限公司 | 一种云存储***及其实现方法 |
CN103391185A (zh) * | 2013-08-12 | 2013-11-13 | 北京泰乐德信息技术有限公司 | 一种轨道交通监测数据的云安全存储和处理方法及*** |
CN103763155A (zh) * | 2014-01-24 | 2014-04-30 | 国家电网公司 | 分布式云存储***多服务心跳监测方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110544136A (zh) * | 2019-09-10 | 2019-12-06 | 恩亿科(北京)数据科技有限公司 | 计算同步投放概率的方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106062717B (zh) | 一种分布式存储复制***和方法 | |
US9916113B2 (en) | System and method for mirroring data | |
ES2703901T3 (es) | Sistema de archivo distribuido mediante nodos de consenso | |
KR101547719B1 (ko) | 데이터 센터들에 걸쳐 데이터 서버들내 데이터 무결정의 유지 | |
CN102098342B (zh) | 一种基于事务级的数据同步方法、装置及*** | |
CN108234307A (zh) | 网络方法、网络装置和非暂时性计算机可读存储介质 | |
JP4668763B2 (ja) | ストレージ装置のリストア方法及びストレージ装置 | |
CN1980192B (zh) | 多机架路由器中的不间断转发 | |
CN108234302A (zh) | 保持网络装置用的分布式操作***中的一致性 | |
CN108234306A (zh) | 网络装置、网络方法和计算机可读存储介质 | |
US8626936B2 (en) | Protocol independent server replacement and replication in a storage area network | |
CN100454265C (zh) | 镜像恢复方法、存储设备及网络*** | |
CN101390336A (zh) | 灾难恢复体系结构 | |
AU2015241457A1 (en) | Geographically-distributed file system using coordinated namespace replication | |
US10191958B1 (en) | Storage provisioning in a data storage environment | |
EP1776638B1 (en) | A system, a method and a device for updating a data set through a communication network | |
CN109845192B (zh) | 动态地适配网络的计算机***和方法及计算机可读介质 | |
CN106605217B (zh) | 用于将应用从一个站点移动到另一站点的方法和*** | |
US20210089379A1 (en) | Computer system | |
CN109639773A (zh) | 一种动态构建的分布式数据集群控制***及其方法 | |
WO2021115043A1 (zh) | 分布式数据库***和数据灾备演练方法 | |
WO2015196692A1 (zh) | 一种云计算***以及云计算***的处理方法和装置 | |
CN106156086A (zh) | Hadoop平台***及其主节点日志备份方法 | |
KR20200113995A (ko) | 엣지 인공지능 서비스에 대한 고가용성 보장을 위한 삼중화 이상 다중화 구조 및 방법 | |
US20220342775A1 (en) | Storage system, storage node virtual machine restore method, and recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20161123 |