[发明专利]基于微内核操作系统的分布式流式数据处理方法及系统在审
| 申请号: | 201910672072.3 | 申请日: | 2019-07-24 |
| 公开(公告)号: | CN110532072A | 公开(公告)日: | 2019-12-03 |
| 发明(设计)人: | 程学旗;李冰;张志斌;郭嘉丰;钟巧灵 | 申请(专利权)人: | 中国科学院计算技术研究所 |
| 主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50 |
| 代理公司: | 11006 北京律诚同业知识产权代理有限公司 | 代理人: | 祁建国;张燕华<国际申请>=<国际公布> |
| 地址: | 100080 北*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 有向无环图 内核操作系统 用户定义函数 任务逻辑 作业代码 算子 微内核操作系统 处理延迟 工作节点 技术进步 视图转换 系统镜像 作业调度 数据处理 端到端 关联度 体积小 流式 吞吐量 空闲 合并 转换 分配 | ||
本发明提出一种基于微内核操作系统的分布式流式数据处理方法及系统,包括:获取包含用户定义函数的作业代码,并以该用户定义函数作为节点将该作业代码转换为有向无环图,并根据该有向无环图中算子之间的关联度,将该有向无环图中算子进行合并,得到任务逻辑视图;根据分布式微内核操作系统的物理执行环境,将该任务逻辑视图转换为执行图,该分布式微内核操作系统中工作节点收到该执行图,并将该执行图内的作业任务与作业调度分配至空闲CPU内核执行。与现有技术相比,本发明具有端到端处理延迟低,且吞吐量高,系统镜像体积小,启动时间短的技术进步。
技术领域
本发明涉及分布式流式数据处理领域,并特别涉及一种基于微内核操作系统的分布式流式数据处理方法及系统。
背景技术
当前流式计算(流式数据处理)引擎主流集群应用部署模式如图1中(a)所示,在物理硬件层使用虚拟化技术以消除硬件差异,复用计算资源并支持动态扩容。虚拟化层之上安装操作系统,并于操作系统之上安装容器服务,以提供良好的运维环境。此运行模式中,所有用户应用以容器形式运行于容器服务中。操作系统的功能只是为容器服务提供资源调度等必要支撑,但由于虚拟化技术已包含资源管理等功能,操作系统层变得冗余。因此为减少传统操作系统无关组件带来的性能开销和消除操作系统与虚拟化层资源调度的冲突,图1中(b)为微内核操作系统部署模式示意图,将用户应用直接在虚拟化层运行,形成绕过操作系统的部署模式。该模式适用于对延时敏感的流式处理系统。
目前,所有计算引擎(例如Spark、Storm、Apache Flink等)均不支持绕过操作系统部署模式,依托传统操作系统造成了不必要的性能开销,影响计算引擎性能。此外,由于C++等本地化编译语言可移植性较差,难以解决用户作业在集群中批量部署问题,大多数计算引擎选择使用JVM技术实现,其内存访问及垃圾回收机制带来了无关的性能开销。
现有流计算引擎使用通用操作系统部署,通用操作系统的设计理念是为了支持众多的软件和硬件配置,众多的硬件和功能支持使操作系统体积变得庞大,造成了不小的计算资源开销。此外,为了集群计算资源统一管理,流计算引擎往往使用虚拟化技术部署,虚拟化管理器必须模拟时钟中断以使通用操作系统可以正常工作,这使得系统在没有负载时也会消耗计算资源,造成资源浪费。
发明内容
本发明的目的是提高现有系统在大规模集群环境下的资源利用率,提出了一种支持微内核(Unikernel)操作系统的流式计算引擎。
针对现有技术的不足,本发明提出一种使用微内核技术部署流式计算引擎;技术效果:可绕过传统操作系统,直接部署于虚拟化层或裸机,减少了传统操作系统无关组件带来的性能开销,解决了传统操作系统调度与虚拟化层调度冲突问题,并支持分布式环境下的快速部署与启动。
具体来说本发明公开了一种基于微内核操作系统的分布式流式数据处理方法,其中包括:
步骤1、获取包含用户定义函数的作业代码,并以该用户定义函数作为节点将该作业代码转换为有向无环图,并根据该有向无环图中算子之间的关联度,将该有向无环图中算子进行合并,得到任务逻辑视图;
步骤2、根据分布式微内核操作系统的物理执行环境,将该任务逻辑视图转换为执行图,该分布式微内核操作系统中工作节点收到该执行图,并将该执行图内的作业任务与作业调度分配至空闲CPU内核执行。
所述的基于微内核操作系统的分布式流式数据处理方法,其中该有向无环图包括:多个计算节点及数据在计算节点间流动的规则。
所述的基于微内核操作系统的分布式流式数据处理方法,其中该步骤1包括:
步骤11、从该多个计算节点选择一个计算节点作为当前节点;
步骤12、判断该当前节点的算子入度是否为1且该当前节点允许算子融合,若是则执行步骤13,否则执行步骤14;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910672072.3/2.html,转载请声明来源钻瓜专利网。





