CN101853179B - 基于插件执行任务分解的通用分布式动态运算技术 - Google Patents
基于插件执行任务分解的通用分布式动态运算技术 Download PDFInfo
- Publication number
- CN101853179B CN101853179B CN2010101731576A CN201010173157A CN101853179B CN 101853179 B CN101853179 B CN 101853179B CN 2010101731576 A CN2010101731576 A CN 2010101731576A CN 201010173157 A CN201010173157 A CN 201010173157A CN 101853179 B CN101853179 B CN 101853179B
- Authority
- CN
- China
- Prior art keywords
- management module
- plug
- service end
- data
- end plug
- 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.)
- Expired - Fee Related
Links
Images
Abstract
本发明涉及一种基于插件执行任务分解的通用分布式动态运算技术。本技术的操作步骤包括:(1)数据分块处理,(2)数据块分配,(3)执行数据运算命令,(4)结果组合、整理,(5)结果显示。所述技术是任务是基于插件模式运行的,其首先通过控制台插件管理模块运行任务插件,并接收用户输入的大型运算数据,经过分块处理后,针对分解后的数据块进行合理的分配,然后通过分布任务调度模块把M组服务端插件管理模块上传到远节点计算机中,并在各个服务端插件管理模块执行数据运算命令,最后将得出的准确的运算结果块组合、整理,并把最终结果显示到控制台终端。这样大大加快了数据运算的速度。与现有的技术相比,本发明的技术与实际应用情况密切结合,且易于实现,能够对大型数据进行高速、高效的运算,并能满足实际运用的要求。
Description
技术领域
本发明涉及一种基于插件执行任务分解的通用分布式动态运算技术,属于计算机应用技术领域。
背景技术
随着计算机网络,特别是Internet的迅猛发展,传统的信息系统概念发生了巨大的变化,这些变化突出地表现在信息的存储、传递、发布以及获取方式所发生的革命性变革。与此同时,基于网络的分布式信息系统在各个领域都得到了广泛的应用,在整个社会生活中亦正发挥着日益突出的作用。然而随着高性能技术应用需求的迅猛发展,传统的分布式运算,仅单纯地把所有的计算机组合起来共同解决一个大型的应用问题,已经不再能够很好地满足人们的需求。
随着协作网络的加快应用,有效的资源共享技术也变成非常重要的问题。于是,一种新型的分布式运算技术应运而生,它在传统的分布式运算基础上实现了在全球Internet范围内所有资源的有效聚合和广泛共享。正如Web标准和技术能够实现全球范围内文档的透明存取一样,新型分布式运算技术能够实现计算资料的透明存取。
尽管如此,在实现本发明的过程中,我们还是发现目前现有的技术中存在着不足之处:
新型分布式运算在动态、跨机构的虚拟组织中给人们提供了协调资源共享和协同解决问题的能力;然而以上的优势对于一名网络技术工作者来说,却是远远不够的。至此,为了能够更好地为网络技术工作者服务,我们发明了“基于插件执行任务分解的通用分布式动态运算技术”。
发明内容
为了减低网络技术工作者在分布式运算过程中的代码工作量,减少由各种算法所引起的重复工作量,。本发明实施例提供了一种基于插件执行任务分解的通用分布式动态运算技术。以此大力提高分布式运算技术的工作效率所述技术方案如下:
基于插件执行任务分解的通用分布式动态运算技术,其特征主要表现在分布式运算的核心过程,任务是基于插件模式运行的:(1)通过控制台插件管理模块运行任务插件,并接收用户输入的大型运算数据,经过分块处理,得出多个大小相等的数据块;(2)将处理完成的数据块进行分组传送至分布任务调度模块,并通过建立中间介质‘控制数据集’来判断数据块个数和服务端插件管理模块个数的变化,同时也确定数据块组的数目和服务端插件管理模块组的数目;进而分布任务调度模块把M组服务端插件管理模块上传到远节点计算机;(3)根据控制台插件管理模块和服务端插件管理模块间相互通信的关系,进行小组数据块的传输工作及运算工作;(4)组合并整理多个运算结果;(5)在控制台终端显示最终运算结果。其具体操作步骤如下:
(1)数据分块处理
①运行任务插件:控制台插件管理模块运行任务插件;
②接收源数据:控制台插件管理模块接收用户请求处理的源数据;
③数据分块处理:控制台插件管理模块针对获取的源数据进行原始信息提取、源数据包大小、时间和帧头信息分块;
④数据块组数目:控制台插件管理模块将分割后的数据块分成N组,N为大于等于1的自然数;每一组至少包含一个数据块,而且每组中的数据块数量相等(最后一组除外);
⑤数据块传送:控制台插件管理模块将数据块逐个传送至分布任务调度模块。
(2)数据块分配
①判断服务端插件管理模块的通信状况:为了清楚了解数据块从分布任务调度模块到服务端插件管理模块的传输进度以及分布式运算的工作进度,需要实时准确判断分布任务调度模块与服务端插件管理模块是否处于正常通信中;
②控制数据集的建立:服务端插件管理模块建立控制数据集以便更好地传输数据块;
③控制数据集的变更:分布任务调度模块实时监测每个服务端插件管理模块是否处于正常通信,随时准备变更控制数据集、重新标记控制数据集,并将变更后的控制数据集传送至已成功通信的每个服务端插件管理模块;
④服务端插件管理模块分组:分布任务调度模块将所有的服务端插件管理模块分成多个小组;
⑤服务端插件管理模块组数目:服务端插件管理模块组数目为M,每一组至少包含一个服务端插件管理模块,而且每组中服务端插件管理模块数目相等(最后一个除外);
⑥数据块的分配:分布任务调度模块分配N组数据块至M组服务端插件管理模块,每个服务端插件管理模块中分配的数据块数目相等(最后一个除外);
⑦上传插件:分布任务调度模块把M组服务端插件管理模块上传到远节点计算机。
(3)执行数据运算命令
①服务端插件管理模块与控制台插件管理模块的通信;服务端插件管理模块通过网络与控制台插件管理模块通信;
②执行数据运算命令:控制台插件管理模块下发数据运算命令至服务端插件管理模块,由服务端插件管理模块执行N组数据块的运算命令,直至运算完毕。
(4)结果组合、整理
①结果块排列:分布任务调度模块接收到M组所述服务端插件管理模块的运算结果块,每个运算结果块带有相应的块号,则按照块号依次排列;
②结果组合、整理:分布任务调度模块将所有的运算结果块进行融合并整理。
(5)结果显示
控制台插件管理模块接收到分布任务调度模块融合后的最终运算结果,将其显示在控制台插件管理模块终端。
以下是对本发明的技术作进一步的说明:
所述的源数据,是通过用户对大型数据计算的需求采集得来的,因此其计算量通常比较大;在进行显示计算结果前,一般需要对源数据进行分块处理。源数据分块处理包括以下过程:原始信息提取、源数据包大小、时间和帧头信息分块。由于本发明技术包含了控制台插件管理模块将数据块逐个传送至分布任务调度模块这个步骤,因此将源数据按照数据包的大小、时间或帧头信息分块是非常必要的,本技术中采用的这种数据分块方法,网络利用率高,既保证了数据传输的完整性,又为数据的快速、安全传送打下了良好的基础,也促进了数据传送的实时性和安全性。
所述的服务端插件管理模块通信状况判断,是指当分布任务调度模块判断出某个服务端插件管理模块通信不成功或不成功时,即变更控制数据集、重新标记控制数据集,并将变更后的控制数据集传输到已成功通信的服务端插件管理模块中。这里对变更后的控制数据集进行标记是按照其变化的次序来标记的。
注:(1)以上所述控制数据集是指包括各个服务端插件管理模块间,相互通信所用到的必要数据和反映控制数据集变化的标记,且各个服务端插件管理模块之间能够通过控制数据集相互通信。
(2)以上所述N是指经过分割后的数据块组数;M是指服务端插件管理模块组数目。
所述的数据块分配:
1)分布任务调度模块首先将需要传输的内容分成多个长度适合的块;然后将每个数据块加上标记、块号、时间截等附加信息,打包放在待发的缓冲区,因此当分布任务调度模块从缓冲区获取M个数据块时,可以在M个数据块标上与M组服务端插件管理模块一一对应的组号,然后按照组号分别传输至各组中的所有服务端插件管理模块,最终将M组的服务端插件管理模块上传到远节点计算机中。
2)如果等待数据块的服务端插件管理模块在超过约定接收时间内仍然未能收到指定的数据块,则根据最新的控制数据集,向上一级别的分布任务调度模块发出补块请求,要求该分布任务调度模块向其补发所缺失的数据块。上级别的分布任务调度模块在收到补块请求后,判断该请求为合法请求时,则查找所请求的数据块,如找到则重发,如找不到则转告原因,从而达到提供服务保证机制的目的。
所述的执行数据运算命令,是当用户将需要大量计算的数据字符串输入至控制台插件管理模块输入框时,系统会从字符串命令中提取命令码,对输入参数进行合法性检查;如该字符串通过合法性检查,则被下发至服务端插件管理模块;如该字符串未能通过合法性检查,则被返回控制台插件管理模块,并被告知错误原因。
所述的最终结果组合、整理并显示,是当分布任务调度模块接收到带有相应块号的M组服务端插件管理模块的运算结果块时,按照块号依次排列。排列过程中,首先判断是否存在重复块号或者存在补偿位,重复块号则删除;存在补偿位则发放该号码的数据块至任意服务端插件管理模块进行重新运算,直至返回结果块。接着将所有的运算结果块进行融合,最终将经过融合的运算结果传送至控制台插件管理模块,并显示出结果;
本发明与现有的分布式运算技术相比较,具有如下突出特点和显著优点:
(1)针对传统分布式运算,对数据的分配进行了有针对性的分析,运算的结果更具针对性、效率更高、速度更快、结果更全面。
(2)采用插件框架执行模式的分布式运算,大大增强了功能的实用性,减少了数据分配的盲目性。
(3)根据数据块块号排列的形式进行分布式运算,是建立在信息互换的基础上,工作分配更合理。
附图说明:
图1为本发明技术的操作程序框图。
图2为本发明技术的所有插件结构设计图。
图3为本发明技术中分布任务调度模块通信命令处理流程图。
图4为本发明技术中的服务端插件执行流程图。
图5为本发明技术中的服务端插件执行示意图。
图6为本发明技术的整体框架模型图。
具体实践方式:
实施例:
为了更好的理解本发明的技术方案,现结合附图中的图表就具体实施进行进一步详细描述如下:
参加图1,本基于插件执行任务分解的通用分布式动态运算技术的具体操作步骤如下:
(1)数据分块处理——(控制台插件管理模块操作步骤)
①运行任务插件:控制台插件管理模块运行任务插件。
②接收源数据:模块对输入的数据进行接收,如图2中A区所示。
③数据分块处理:在分块处理阶段,对接收到的数据进行原始信息提取、源数据包大小、时间和帧头信息分块,从而得到多个大小相等的数据块。得到的数据块可能存在分组方面的差异,为了达到后续数据传送时能够与图2中C区的服务端插件管理模块个数相匹配,就要对处理后的数据块进行分组。
④数据块组个数:根据上述得到的多个数据块,得出与服务端插件管理模块相匹配的组数目,如图2中A区所示。
⑤数据块传送:分组完成的数据块被分别传送至分布任务调度模块。
(2)数据块分配——(分布任务调度模块操作步骤)
①判断服务端插件管理模块的通信状况:本发明中,运用通信命令处理的方式得到远节点(被植入服务端插件管理模块且被远程控制的计算机)中服务端插件管理模块个数,其通信命令处理流程如图3所示。由于远节点间是靠服务端插件管理模块相互通信的,因此还可以检测出远节点的具体位置,如图6中E区所示。
②控制数据集的建立:传输数据块时,通过建立控制数据集作为其中间介质,如图2中B区所示。
③控制数据集的变更:每一次更改数据块个数或服务端插件管理模块个数,即变更控制数据集。
④服务端插件管理模块分组:将所有已经连接上的服务端插件管理模块进行分组。
⑤服务端插件管理模块组个数:根据上述得到的数据块组数,从而得出最佳服务端插件管理模块的组数目。
⑥数据块的分配:将分配完成的每一组数据块传输到相对应的服务端插件管理模块组中。
⑦插件上传:上传M组服务端插件管理模块到远节点计算机中。
(3)执行数据运算命令——(服务端插件管理模块操作步骤)
①服务端插件管理模块与控制台插件管理模块的通信:使每一组服务端插件管理模块均能与控制台通信并连接,如图6中E区所示。
②执行数据运算命令:针对下发至各组服务端插件管理模块的每个数据块进行数据运算,运算流程如图4所示,运算示意如图5所示。
(4)结果组合、整理——(服务端插件管理模块操作步骤)
①结果块排列:运算完毕,每个结果块进行排列,如图2中C区所示。
②结果组合、整理:根据排列完成的多个结果块,进行组合、整理成一个结果,如图2中C区所示。
(5)结果显示——(控制台插件管理模块操作步骤)
在控制台终端显示最终运算结果,如图2中A区、如图6中D区所示。
Claims (1)
1.一种基于插件执行任务分解的通用分布式动态运算方法,其特征主要表现在分布式运算的核心过程,任务是基于插件模式运行的,包括以下步骤:A.通过控制台插件管理模块运行任务插件,并接收用户输入的大型运算数据,经过分块处理,得出多个大小相等的数据块;B.将处理完成的数据块进行分组传送至分布任务调度模块,并通过建立中间介质‘控制数据集’来判断数据块个数和服务端插件管理模块个数的变化,同时也确定数据块组的数目和服务端插件管理模块组的数目;进而分布任务调度模块把M组服务端插件管理模块上传到远节点计算机;C.根据控制台插件管理模块和服务端插件管理模块间相互通信的关系,进行小组数据块的传输工作及运算工作;D.组合并整理多个运算结果;E.在控制台终端显示最终运算结果;该通用分布式动态运算方法的具体操作步骤如下:
(1)数据分块处理
①运行任务插件:控制台插件管理模块运行任务插件;
②接收源数据:控制台插件管理模块接收用户请求处理的源数据;
③数据分块处理:控制台插件管理模块针对获取的源数据进行原始信息提取、源数据包大小、时间和帧头信息分块;
④数据块组数目:控制台插件管理模块将分割后的数据块分成N组,N为大于等于1的自然数;每一组至少包含一个数据块,而且每组中的数据块数量相等,最后一组除外;
⑤数据块传送:控制台插件管理模块将数据块逐个传送至分布任务调度模块;
(2)数据块分配
①判断服务端插件管理模块的通信状况:为了清楚了解数据块从分布任务调度模块到服务端插件管理模块的传输进度以及分布式运算的工作进度,需要实时准确判断分布任务调度模块与服务端插件管理模块是否处于正常通信中;
②控制数据集的建立:服务端插件管理模块建立控制数据集以便更好地传输数据块;所述控制数据集包括与各个服务端插件管理模块间相互通信所需用到的必要数据和反映控制数据集变化的标记,且各个服务端插件管理模块之间能够通过控制数据集相互通信;
③控制数据集的变更:分布任务调度模块实时监测每个服务端插件管理模块是否处于正常通信,随时准备变更控制数据集、重新标记控制数据集,并将变更后的控制数据集传送至已成功通信的每个服务端插件管理模块;
④服务端插件管理模块分组:分布任务调度模块将所有的服务端插件管理模块分成多个小组;
⑤服务端插件管理模块组数目:服务端插件管理模块组数目为M,每一组至少包含一个服务端插件管理模块,而且每组中服务端插件管理模块数目相等,最后一个除外;
⑥数据块的分配:分布任务调度模块分配N组数据块至M组服务端插件管理模块,每个服务端插件管理模块中分配的数据块数目相等,最后一个除外;
⑦上传插件:分布任务调度模块把M组服务端插件管理模块上传到远节点计算机;
(3)执行数据运算命令
①服务端插件管理模块与控制台插件管理模块的通信:服务端插件管理模块通过网络与控制台插件管理模块通信;
②执行数据运算命令:控制台插件管理模块下发数据运算命令至服务端插件管理模块,由服务端插件管理模块执行N组数据块的运算命令,直至运算完毕;
(4)结果组合、整理
①结果块排列:分布任务调度模块接收到M组所述服务端插件管理模块的运算结果块,每个运算结果块带有相应的块号,则按照块号依次排列;
②结果组合、整理:分布任务调度模块将所有的运算结果块进行融合并整理;
(5)结果显示
控制台插件管理模块接收到分布任务调度模块融合后的最终运算结果,将其显示在控制台插件管理模块终端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101731576A CN101853179B (zh) | 2010-05-10 | 2010-05-10 | 基于插件执行任务分解的通用分布式动态运算技术 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101731576A CN101853179B (zh) | 2010-05-10 | 2010-05-10 | 基于插件执行任务分解的通用分布式动态运算技术 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101853179A CN101853179A (zh) | 2010-10-06 |
CN101853179B true CN101853179B (zh) | 2012-09-26 |
Family
ID=42804685
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010101731576A Expired - Fee Related CN101853179B (zh) | 2010-05-10 | 2010-05-10 | 基于插件执行任务分解的通用分布式动态运算技术 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101853179B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103077192B (zh) * | 2012-12-24 | 2016-09-21 | 中标软件有限公司 | 一种数据处理方法及其系统 |
US9858052B2 (en) | 2013-03-21 | 2018-01-02 | Razer (Asia-Pacific) Pte. Ltd. | Decentralized operating system |
CN104468638B (zh) * | 2013-09-12 | 2018-04-03 | 北大方正集团有限公司 | 一种分布式数据处理方法及系统 |
CN106383738B (zh) * | 2016-09-30 | 2019-10-11 | 北京百度网讯科技有限公司 | 任务处理方法和分布式计算框架 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1996854A (zh) * | 2006-12-22 | 2007-07-11 | 中国建设银行股份有限公司 | 不同应用系统间数据交换的统一处理系统及方法 |
CN101453448A (zh) * | 2007-11-29 | 2009-06-10 | 上海千镭星电子科技有限公司 | 一种嵌入式网络数据库系统 |
CN101667034A (zh) * | 2009-09-21 | 2010-03-10 | 北京航空航天大学 | 一种易扩展的、支持异构集群的监控系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050060608A1 (en) * | 2002-05-23 | 2005-03-17 | Benoit Marchand | Maximizing processor utilization and minimizing network bandwidth requirements in throughput compute clusters |
-
2010
- 2010-05-10 CN CN2010101731576A patent/CN101853179B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1996854A (zh) * | 2006-12-22 | 2007-07-11 | 中国建设银行股份有限公司 | 不同应用系统间数据交换的统一处理系统及方法 |
CN101453448A (zh) * | 2007-11-29 | 2009-06-10 | 上海千镭星电子科技有限公司 | 一种嵌入式网络数据库系统 |
CN101667034A (zh) * | 2009-09-21 | 2010-03-10 | 北京航空航天大学 | 一种易扩展的、支持异构集群的监控系统 |
Also Published As
Publication number | Publication date |
---|---|
CN101853179A (zh) | 2010-10-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101853179B (zh) | 基于插件执行任务分解的通用分布式动态运算技术 | |
CN102902669A (zh) | 基于互联网系统的分布式信息抓取方法 | |
CN202816041U (zh) | 纸币冠字号码采集查询系统 | |
CN105138603A (zh) | 一种从HPUX平台向KUX平台迁移的Oracle数据库迁移工具 | |
CN103346902B (zh) | 数据采集调度的方法及系统 | |
CN104615684A (zh) | 一种海量数据通信并发处理方法及系统 | |
CN104615765A (zh) | 一种移动用户上网记录的数据处理方法及装置 | |
CN102982409A (zh) | 一种生物信息学高性能计算平台的信息化管理设计方法 | |
CN104750008A (zh) | 一种ZigBee网络中的农业机器人无线遥控系统 | |
CN106934484A (zh) | 一种基于pda的现场运维日工作规划方法 | |
CN103530247B (zh) | 一种基于多服务器节点间总线访问的优先权调配方法 | |
CN104899332A (zh) | 一种Sybase数据库跨平台迁移方法和系统 | |
CN106776014A (zh) | 异构计算中的并行加速方法及系统 | |
CN102148848A (zh) | 一种数据的管理方法和系统 | |
CN100462936C (zh) | 通用串行总线主机控制器快速测试系统及其方法 | |
CN103019852B (zh) | 一种适用于大规模集群的mpi并行程序负载问题三维可视化分析方法 | |
CN101217564B (zh) | 简单对象存取协议的并行通信系统及其实现方法 | |
CN102541539B (zh) | 一种基于m2m的供应链智能面板设计方法 | |
CN110879753B (zh) | 基于自动化集群资源管理的gpu加速性能优化方法和系统 | |
CN104346441A (zh) | 一种配电网信息数据动态集成交互方法 | |
CN110502337A (zh) | 针对Hadoop MapReduce中混洗阶段的优化系统及方法 | |
CN105357317A (zh) | 一种基于多客户端轮循排队的数据上传方法及系统 | |
CN102253861A (zh) | 一种分步运算插件的执行方法 | |
CN203191786U (zh) | 多传感器动态数据融合控制系统 | |
CN112256427A (zh) | 一种基于改进分支限界法的大规模资源快速分配装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120926 Termination date: 20150510 |
|
EXPY | Termination of patent right or utility model |