分布式系统的调度方法及系统技术方案

技术编号:4347145 阅读:303 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种分布式系统的调度方法及系统,其中,该方法包括:数据调度器接收调度请求,该调度请求包括对数据的读取操作;数据保存在分布式系统中的至少一个提供数据服务的实体上;数据调度器确定该调度请求对应的各数据服务的状态,并在各数据服务为空闲或读取状态时,发送同意对各数据服务进行读取操作的调度响应;各数据服务为至少一个相同的数据服务。本发明专利技术可有效解决现有技术的分布式调度方式中资源浪费、任务处理效率低等缺陷,实现资源合理利用、提高任务处理效率。

【技术实现步骤摘要】

本专利技术涉及计算机领域的数据业务技术,具体地,涉及一种分布式系统的调度方法及系统
技术介绍
任务调度是网格计算(Grid Computing)、大型分布式数据库系统(Distributed Database System)、以及云计算(Cloud Computing)系统的一个关键问题。在传统的网格 计算中,任务调度的成本较高,调度策略是将数据迁移到任务所在计算节点。在分布式数据 库系统和云计算系统中,数据迁移的成本较高,多数采用将任务分配到数据所在节点的调 度策略。 分布式环境系统,例如云计算系统的特点是海量数据分布式存储和访问;用于 数据一次存储,多次查询的场合。图1为现有技术中云计算系统的分层结构示意图,如图1 所示,云计算系统一般分三个层次分布式文件存统、分布式数据系统、分布式任务调度系 统。其中,分布式数据库系统将数据表分割为小表(Tablet),每个小表将表中不同的列族 (Column Family)保存为一个文件, 一个小表可能对应一个或多个文件,小表相当于对应的 文件的索引,这些文件被冗余存放在下层的分布式文件系统上。图1描述了一个包含两个 文件列族(CF1, CF2),被分成两个小表(小表-l和小表-2)存储,每个文件被存储两份的 视图,其中一份为活跃数据,另一份为非活跃数据。 图2为现有技术中分布式环境的任务调度系统示意图,如图2所示,每个节点上都 运行了分布式任务系统、分布式数据系统和分布式文件系统,可以提供对应的任务和数据 (文件、小表等)服务,由任务调度器(分配任务到负荷低的节点)、小表调度器(分配数据 到数据数目较少的队列)、文件调度器(按照节点存储能力等参数分配文件)分别进行对任 务、小表、文件的调度。 图2为具有两个任务(Jobl和Job2)的分布式系统,其中Jobl使用Tablet-l作 为输入,出于优化的目的,Jobl被调度到Tablet-l所在的数据节点1上,但Tablet-l 的物理文件可能被存储到不同的节点上。如果将Jobl调度到节点2上,则Jobl和Tablet-l 数据服务器不在一起,造成的延迟和网络开销更大。系统中还存在两个冗余节点3和节点 4,保存了非活跃的文件,但是并没有任务执行。 在实现本专利技术过程中,专利技术人发现现有技术中的分布式调度方式至少存在如下问 题 1.资源浪费 现有技术中未利用海量数据的应用读写特征提高数据访问性能,造成了资源的大量浪费。 2.任务处理效率低、速度慢 现有技术中,如图2所示,为了保证系统能够同时支持读写操作,每个小表 (Tablet)只交给一个数据服务器来处理,所有针对这个小表的操作都必须由这一个数据服务器处理,并发能力有限,效率低,速度慢。 3.增加网络开销 现有方案在数据量较少,任务调度不频繁的情况下可以进行任务调度。如图2所 示,Tablet-l的数据文件可能被分配到不同的节点,虽然访问透明,但是在海量数据的分 布式存储系统中,数据量较多、调度复杂的情况下,访问异地文件会造成较大的数据流量、 增加网络开销。
技术实现思路
本专利技术的第一目的是针对现有技术的分布式调度方式中资源浪费等缺陷,提出一 种分布式系统的调度方法,以避免资源浪费。 本专利技术的第二目的是针对现有技术的分布式调度方式中资源浪费等缺陷,提出一 种分布式环境的调度系统,以合理利用资源。 为实现上述第一目的,根据本专利技术的一个方面,提供了一种分布式系统的调度方 法。 根据本专利技术实施例的分布式环境的调度方法,包括 步骤A :数据调度器接收调度请求,该调度请求包括对数据的读取操作;数据保存 在分布式系统中的至少一个提供数据服务的实体上; 步骤B :该数据调度器确定该调度请求对应的各数据服务的状态,并在各数据服 务为空闲或读取状态时,发送同意对各数据服务进行读取操作的调度响应;各数据服务为 至少一个相同的数据服务。 上述方案中,在步骤A之前,还可以包括数据调度器确定并保存各数据服务的状 态信息,该状态信息包括读取、写入、空闲。 优选地,步骤B中数据调度器确定并保存各数据服务的状态信息的操作具体可以 包括数据调度器由设置的数据锁确定并保存各数据服务的状态;数据锁用于标识各数据 服务的状态信息,且各数据服务的数据锁信息相同。其中,该数据调度器可以包括文件调度器,或者文件调度器和小表调度器。 优选地,在步骤A之前,还可以包括任务调度器接收任务后,确定任务的操作类 型和任务对应的数据服务,向数据调度器发送调度请求;其中,操作类型包括读取、写入操作。 优选地,步骤B之后,还可以包括任务调度器接收同意对各数据服务进行读取操 作的调度响应后,任务对所述数据服务进行读取操作,包括任务调度器将任务调度到数据 服务所在节点或相邻节点或其他节点,进行该读取操作。 优选地,步骤A之前,还可以包括任务调度器接收任务后,确定任务的操作类型 和任务对应的数据服务;向预先设置的全局调度器发送调度请求,全局调度器向数据调度 器发送调度请求;其中,操作类型包括读取、写入操作。 为实现上述第二目的,根据本专利技术的另一个方面,提供了一种分布式环境的调度 系统。 根据本专利技术实施例的分布式环境的调度系统,包括 任务调度器,用于接收任务后,确定任务的操作类型和任务对应的数据服务,发送8包括对数据的读取操作的调度请求,数据保存在分布式系统中的至少一个提供数据服务的 实体上;接收同意对各数据服务进行读取操作的调度响应后,任务对所述数据服务进行读 取操作; 数据调度器,用于接收调度请求,确定该调度请求对应的各数据服务的状态,并在 各数据服务为空闲或读取状态时,发送同意对各数据服务进行读取操作的调度响应;各数 据服务为至少一个相同的数据服务。优选地,数据调度器可以包括文件调度器;或者,文件调度器和小表调度器。 优选地,上述系统还可以包括全局调度器,用于对所述任务调度器、小表调度器 和文件调度器进行跨层全局调度,具体可以包括 全局调度器接收任务调度器发送的调度请求,并发送至小表调度器;全局调度器 接收小表调度器返回的调度请求对应的各数据服务所在的小表,并向文件调度器发送调度 请求及小表;全局调度器接收文件调度器返回的任务对应的数据服务的调度响应,向小表 调度器发送查询提供数据服务所在的小表的状态信息;全局调度器接收小表调度器对提供 数据服务所在的小表的调度响应后,将调度响应发送给任务调度器。 优选地,小表调度器接收查询提供数据服务所在的小表的状态信息后,将提供数 据服务所在的小表的状态信息修改为与提供数据服务的状态信息一致,且将数据服务所在 的小表调度到数据服务所在节点或相邻节点或其他节点;和/或任务调度器接收调度响应 后,从小表调度器获得提供数据服务的小表所在的节点,将任务调度到数据服务的小表所 在节点或相邻节点或其他节点,执行任务的操作。 本专利技术各实施例的分布式系统的调度方法及系统,数据调度器在接收到调度请求 后,可以确定各数据服务的状态,并在调度请求所对应的数据服务为空闲或读取时,同意对 一个或多个相同的数据服务进行读取操作,与现有技术中只能读取一个数据服务器,其它 备份的冗余数据没有任务执行不同,本专利技术可以避免资源的浪费,并且,由于在调度请求为 读取操作时,可以同时读取多份数据服务,本专利技术可以本文档来自技高网
...

【技术保护点】
一种分布式系统的调度方法,其特征在于,包括:步骤A:数据调度器接收调度请求,所述调度请求包括对数据的读取操作;所述数据保存在分布式系统中的至少一个提供数据服务的实体上;步骤B:所述数据调度器确定所述调度请求对应的各数据服务的状态,并在所述各数据服务为空闲或读取状态时,发送同意对各数据服务进行读取操作的调度响应;所述各数据服务为至少一个相同的数据服务。

【技术特征摘要】
一种分布式系统的调度方法,其特征在于,包括步骤A数据调度器接收调度请求,所述调度请求包括对数据的读取操作;所述数据保存在分布式系统中的至少一个提供数据服务的实体上;步骤B所述数据调度器确定所述调度请求对应的各数据服务的状态,并在所述各数据服务为空闲或读取状态时,发送同意对各数据服务进行读取操作的调度响应;所述各数据服务为至少一个相同的数据服务。2. 根据权利要求1所述的方法,其特征在于,在所述步骤A之前,还包括所述数据调 度器确定并保存各数据服务的状态信息,所述状态信息包括读取、写入、空闲。3. 根据权利要求2所述的方法,其特征在于,所述步骤B中数据调度器确定并保存各数 据服务的状态信息的操作具体包括所述数据调度器由设置的数据锁确定并保存各数据服务的状态;所述数据锁用于标识所述各数据服务的状态信息,且所述各相同数据服务的数据锁信 息相同。4. 根据权利要求3所述的方法,其特征在于,所述数据调度器包括文件调度器,所述步 骤B还包括若所述状态为写入状态,则发送不同意对各数据服务进行操作的调度响应,或者发送 同意对正在执行写入操作的数据服务进行读取操作的调度响应;若所述状态为写入状态且所述调度请求中携带优先信息,则发送同意对数据服务进行 读取操作的调度响应,并修改所述各数据服务的状态信息为读取;若所述状态为读取状态且所述调度请求为写入操作,则正在执行读取操作的数据服务 执行完毕后,发送同意对数据服务进行写入操作的调度响应,并修改所述各数据服务的状 态信息为写入;或者发送同意对数据服务进行写入操作的调度响应,并将正在执行读取操 作的数据服务转移至进行写入操作的数据服务上,并修改所述各数据服务的状态信息为写 入;若所述状态为空闲状态,发送同意对数据服务进行读取或写入操作的调度响应,并修 改所述各数据服务的状态信息对应为读取或写入。5. 根据权利要求3所述的方法,其特征在于,所述数据调度器包括小表调度器和文件 调度器,所述方法具体包括小表调度器接收包括对数据服务进行读取操作的调度请求后,确定所述调度请求对应 的各数据服务所在的小表,若所述小表调度器保存有所述小表的数据服务的状态信息,则 根据所述状态信息发送对应小表的调度响应;否则文件调度器接收包括对数据服务进行读取操作的调度请求,及所述小表调度器发送的 所述调度请求对应的各数据服务所在的小表后,确定所述调度请求对应的各数据服务的状 态信息,根据所述状态信息发送调度响应,具体包括若所述状态为空闲时,发送同意对各数据服务进行读取或写入操作的调度响应,并修 改所述各数据服务的状态信息为读取或写入;若所述状态为写入状态,则发送不同意对各数据服务进行操作的调度响应,或者发送 同意对正在执行写操作的数据服务进行读取操作的调度响应;若所述状态为写入状态且所述调度请求中携带优先信息,则发送同意对数据服务进行读取操作的调度响应,并修改所述各数据服务的状态信息为读取;若所述状态为读取状态且所述调度请求为写入操作,则正在执行读取操作的数据服务 执行完毕后,发送同意对数据服务进行写入操作的调度响应,并修改所述各数据服务的状 态信息为写入;或者发送同意对数据服务进行写入操作的调度响应,并将正在执行读取操 作的数据服务转移至进行写入操作的数据服务上,并修改所述各数据服务的状态信息为写 入;若所述状态为读取状态且所述调度请求为读取操作,发送同意对数据服务进行读取操 作的调度响应;所述小表调度器接收所述调度响应后,确定各数据服务所在的小表的状态信息,发送 对应小表的调度响应,具体包括将提供数据服务所在的小表的状态信息修改为与提供数 据服务的状态信息一致。6. 根据权利要求1-5中任一项所述的方法,其特征在于,在所述步骤A之前,还包括 任务调度器接收任务后,确定所述任务的操作类型和所述任务对应的数据服务,向所述数据调度器发送所述调度请求;其中,所述操作类型包括读取、写入操作。7. 根据权利要求6所述的方法,其特征在于,在所述步骤B之后,还包括 任务调度器接收同意对各数据服务进行读取操作的调度响应后,所述任务对所述数据服务进行读取操作,包括所述任务调度器将所述任务调度到所述数据服务所在节点或相 邻节点或其他节点,进行所述读取操作。8. 根据权利要求6或7所述的方法,其特征在于,还包括所述任务对所述数据服务进行读取操作完成后,所述任务调度器向所述数据调度器发 送状态更新消息,以通知所述数据调度器将对应的各数据服务状态更新为空闲状态;所述任务对所述数据服务进行写入操作完成后且没有其它任务时,所述任务调度器向 所述数据调度器发送状态更新消息,以通知所述数据调度器将对应的各数据服务状态更新 为空闲状态;所述任务对所述数据服务进行写入操作完成后且写入操作的数据服务上同时执行的 读取操作未完成时,所述任务调度器向所述数据调度器发送状态更新消息,以通知所述数 据调度器将对应的各数据服务状态更新为读取状态。9. 根据权利要求1-5中任一项所述的方法,其特征在于,所述步骤A之前,还包括 任务调度器接收任务后,确定所述任务的操作类型和所述任务对应的数据服务;向预先设置的全局调度器发送所述调度请求,所述全局调度器向所述数据调度器发送所述调度 请求;其中,所述操作类型包括读取、写入操作。10. 根据权利要求9所述的方法,其特征在于,所述数据调度器包括小表调度器和文件 调度器,所述步骤B具体包括小表调度器接收所述调度请求后,确定所述调度请求对应的各数据服务所在的小表, 并将所述小表发送至所述全局调度器;所述全局调度器向所述文件调度器发送所述调度请求及对应的各数据服务所在的小表;所述文件调度器接收所述调度请求及所述小表后,确定所述调度请求对应的各数据服 务的状态信息,根据所述状态信息发送调度响应,具体包括若所述状态为空闲时,发送同意对各数据服务进行读取/写入操作的调度响应,并修 改所述各数据服务的状态信息为对应的读取/写入;若所述状态为写入状态,则发送不同意对各数据服务进行操作的调度响应,或者发送 同意对正在执行写操作的数据服务进行读取操作的调度响应;若所述状态为写入状态且所述调度请求中携带优先信息,则发送同意对数据服务进行 ...

【专利技术属性】
技术研发人员:钱岭郭磊涛赵鹏徐萌罗治国
申请(专利权)人:中国移动通信集团公司
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1