基于消息传递的跨编程语言异构数据计算架构研究

本文提出了一种基于消息传递的跨编程语言异构数据计算架构,解决了分布式计算框架对编程语言的依赖问题。通过使用Go语言、KCP协议和容器引擎,实现高性能的消息传递和计算环境隔离,支持多种编程语言的分布式计算,适用于计算量较大的任务。在性能测试中,系统显示了良好的加速效率。
摘要由CSDN通过智能技术生成

摘  要

当前各大公司在数据采集、加工、分析领域仍有数据融合、数据拉通的安全保障要求,通常采用分布式计算的方式来解决,但仍然面临多方数据规范不统一、技术栈差异较大等问题。聚焦异构数据分布式计算框架研究,提出了一种基于消息传递的跨编程语言的异构数据计算架构,并在实际的数据环境中进行模拟测试,对实际应用效果进行验证,为后续再生产环境中的推广应用提供了全面的研究论述。

   0 1   

 概 述

随着信息技术和互联网产业的蓬勃发展,传统的单机计算很难满足逐渐增大的计算能力,在这种背景下,无数的计算机从业者投身其中,提出了许多优秀的并行计算和分布式计算体系架构,在实际应用中最为灵活的一种便是基于消息传递的分布式计算架构。

采用消息传递技术[1],使用标准输入输出流进行信息收发,可提供稳定、可靠的跨编程语言的分布式计算服务。消息传递架构主要以通信为核心,各个计算节点大多相互独立,拥有独立的内存地址空间,各节点之间通过网络收发数据进行数据共享[2]。最常见的是基于消息传递接口(MPI)的并发编程模型框架[3]。消息传递架构主要依赖网络通信(暂时不讨论单机的进程通信式并行计算),可连通同一网络内大量的计算节点,非常适用于大规模集群式的分布式计算。

目前的分布式计算框架过于依赖编程语言。虽然MPI在设计之初考虑到了跨编程语言、跨平台,但是从目前已有的成熟框架来看,不同的框架均有自己特定的编程语言。以MPICH为例,只可使用C/C++或Fortran进行编程[4]。对于交叉学科的研究人员来说,一旦选定了框架,即选定了编程语言,无形中增加了他们的学习成本。针对一些专业性强的小众编程语言而言,以NCL(The NCAR Command Language,是一种专门为科学数据处理以及数据可视化设计的高级语言,很适合用在气象数据的处理和可视化上[5])为例,它在气象学和地理学中有着非凡的意义,但是其并不支持分布式计算,也没有相关的分布式计算框架。因此,想要加速一个NCL程序只有2种解决方案,一是使用其他支持分布式计算的语言重构代码,二是增强单机的性能。这在一定程度上增加了科研人员改进的难度。所以,一个能实现真正跨编程语言的分布式并行计算框架显得非常重要。

   0 2   

  • 16
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

罗思付之技术屋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值