数据加载方法、装置及存储介质、计算设备、计算系统制造方法及图纸

技术编号:28836635 阅读:34 留言:0更新日期:2021-06-11 23:33
本发明专利技术提供一种数据加载方法、装置及存储介质、计算设备、计算系统,该方法包括:计算集群中的目标计算设备将从外部存储系统中获取的数据存入到其内存空间中,该内存空间被设置为支持以RDMA方式访问的模式,以得到由计算集群中各计算设备中处于该模式的内存空间构成的分布式内存系统。响应于目标计算设备中的目标进程触发的数据加载请求,目标计算设备将其中的目标存储空间设置为支持以RDMA方式访问的模式,根据需加载数据在分布式内存系统中的存储地址将从分布式内存系统中获取的需加载数据加载到目标存储空间。利用计算集群本地的内存资源构建一个基于RDMA的分布式内存系统,以通过RDMA方式加载数据,提高了数据加载速度。

【技术实现步骤摘要】
数据加载方法、装置及存储介质、计算设备、计算系统
本专利技术涉及互联网
,尤其涉及一种数据加载方法、装置及存储介质、计算设备、计算系统。
技术介绍
为了应对海量数据的处理任务,分布式系统应用而生。在由众多计算设备构成的分布式计算集群中,每个计算设备每次可以从存储有海量数据的外部存储系统中读取一些数据并进行数据计算处理。另外,随着数据集规模的增加,海量的数据可以采用Hadoop分布式文件系统(HadoopDistributedFileSystem,简称HDFS)、对象存储(ObjectStorageService,简称OSS)系统等存储系统进行存储。上述计算集群中的各计算设备每次加载数据的时候,都需要通过网络端口访问远程的存储系统以加载其中存储的数据。在数据加载过程中,由于网络端口的吞吐有限,会造成输入输出(IO)瓶颈,使得数据加载的延迟较大。
技术实现思路
本专利技术实施例提供一种数据加载方法、装置及存储介质、计算设备、计算系统,用以提高数据加载速度。第一方面,本专利技术实施例提供一种数据加载方法,应用于计算集群中的目标计算设备,所述目标计算设备是所述计算集群中任一个计算设备,所述方法包括:将从外部存储系统中获取的数据存入到所述目标计算设备的内存空间中,所述内存空间被设置为支持以远程直接数据存取方式访问的模式,以得到由所述计算集群中各计算设备中处于所述模式的内存空间构成的分布式内存系统;响应于所述目标计算设备中用于执行数据计算任务的目标进程触发的数据加载请求,将所述目标计算设备中的目标存储空间设置为支持以远程直接数据存取方式访问的模式;确定与所述数据加载请求对应的需加载数据在所述分布式内存系统中的存储地址,根据所述存储地址从所述分布式内存系统中加载所述需加载数据到所述目标存储空间中,以使所述目标进程从所述目标存储空间中读取所述需加载数据。第二方面,本专利技术实施例提供一种数据加载装置,位于计算集群中的目标计算设备,所述目标计算设备是所述计算集群中任一个计算设备,所述装置包括:缓存模块,用于将从外部存储系统中获取的数据存入到所述目标计算设备的内存空间中,所述内存空间被设置为支持以远程直接数据存取方式访问的模式,以得到由所述计算集群中各计算设备中处于所述模式的内存空间构成的分布式内存系统;配置模块,用于响应于所述目标计算设备中用于执行数据计算任务的目标进程触发的数据加载请求,将所述目标计算设备中的目标存储空间设置为支持以远程直接数据存取方式访问的模式;加载模块,用于确定与所述数据加载请求对应的需加载数据在所述分布式内存系统中的存储地址,根据所述存储地址从所述分布式内存系统中加载所述需加载数据到所述目标存储空间中,以使所述目标进程从所述目标存储空间中读取所述需加载数据。第三方面,本专利技术实施例提供一计算设备,所述计算设备是计算集群中任一个计算设备,所述计算设备包括:存储器、处理器;其中,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如下步骤:将从外部存储系统中获取的数据存入到所述计算设备中的内存空间,所述内存空间被设置为支持以远程直接数据存取方式访问的模式,以得到由所述计算集群中各计算设备中处于所述模式的内存空间构成的分布式内存系统;响应于所述计算设备中用于执行数据计算任务的目标进程触发的数据加载请求,将所述计算设备中的目标存储空间设置为支持以远程直接数据存取方式访问的模式;确定与所述数据加载请求对应的需加载数据在所述分布式内存系统中的存储地址,根据所述存储地址从所述分布式内存系统中加载所述需加载数据到所述目标存储空间中,以使所述目标进程从所述目标存储空间中读取所述需加载数据。第四方面,本专利技术实施例提供了一种非暂时性机器可读存储介质,非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使处理器至少可以实现如第一方面所述的数据加载方法。第五方面,本专利技术实施例提供了一种计算系统,包括:由多个计算设备构成的计算集群和外部存储系统;所述计算集群中的目标计算设备用于:将从所述外部存储系统中获取的数据存入到所述目标计算设备的内存空间中,所述内存空间被设置为支持以远程直接数据存取方式访问的模式,以得到由所述计算集群中各计算设备中处于所述模式的内存空间构成的分布式内存系统;响应于所述目标计算设备中用于执行数据计算任务的目标进程触发的数据加载请求,将所述目标计算设备中的目标存储空间设置为支持以远程直接数据存取方式访问的模式;确定与所述数据加载请求对应的需加载数据在所述分布式内存系统中的存储地址,根据所述存储地址从所述分布式内存系统中加载所述需加载数据到所述目标存储空间中,以使所述目标进程从所述目标存储空间中读取所述需加载数据;其中,所述目标计算设备是所述计算集群中任一个计算设备。在本专利技术实施例中,假设使用由多个计算设备构成的计算集群以分布式方式来完成某种数据计算任务(如模型训练任务)。为完成该数据计算任务,计算集群中的各计算设备需要从存储有海量数据的外部存储系统中加载数据到本地,以完成数据计算任务。为提高数据加载速度,从而提高数据计算任务的处理效率,在本专利技术实施例提供的解决方案中,首先,将各计算设备的内存空间(部分内存空间)设置为支持以远程直接数据存取(RemoteDirectMemoryAccess,简称RDMA)方式访问的模式,这样由各计算设备中的处于RDMA模式下的内存空间构成了一个分布式内存系统;其次,将外部存储系统中存储的数据存储到该分布式内存系统中;之后,当某个计算设备在执行数据计算任务的过程中需要加载数据时,将该计算设备中的一块目标存储空间设置为支持以RDMA方式访问的模式,以通过RDMA的方式将从分布式内存系统中获取的需加载数据直接加载到目标存储空间中以供数据计算任务使用。在上述方案中,充分利用计算集群中各计算设备本地的内存资源,构建一个基于RDMA的分布式内存系统,并将外部存储系统中的数据离线缓存到分布式内存系统中,以便后续通过RDMA方式直接加载分布式内存系统中的数据,相比于从远程的外部存储系统加载数据的方式,可以获得更快的数据加载速度。在数据加载过程提供内存级的数据IO访问,通过RDMA方式将所需数据直接拉取到计算单元(即计算单元对应的上述目标存储空间)中,降低数据加载延迟。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为一种传统的数据加载场景的示意图;图2为本专利技术实施例提供的一种计算系统的示意图;图3为本专利技术实施例提供的一种数据加载方法的流程图;图4为本专利技术实施例提供的一种数据加载场景的示意图;图5为本专利技术实施例提供的另一种数据加载场景的示意图;<本文档来自技高网...

【技术保护点】
1.一种数据加载方法,其特征在于,应用于计算集群中的目标计算设备,所述目标计算设备是所述计算集群中任一个计算设备,所述方法包括:/n将从外部存储系统中获取的数据存入到所述目标计算设备的内存空间中,所述内存空间被设置为支持以远程直接数据存取方式访问的模式,以得到由所述计算集群中各计算设备中处于所述模式的内存空间构成的分布式内存系统;/n响应于所述目标计算设备中用于执行数据计算任务的目标进程触发的数据加载请求,将所述目标计算设备中的目标存储空间设置为支持以远程直接数据存取方式访问的模式;/n确定与所述数据加载请求对应的需加载数据在所述分布式内存系统中的存储地址,根据所述存储地址从所述分布式内存系统中加载所述需加载数据到所述目标存储空间中,以使所述目标进程从所述目标存储空间中读取所述需加载数据。/n

【技术特征摘要】
1.一种数据加载方法,其特征在于,应用于计算集群中的目标计算设备,所述目标计算设备是所述计算集群中任一个计算设备,所述方法包括:
将从外部存储系统中获取的数据存入到所述目标计算设备的内存空间中,所述内存空间被设置为支持以远程直接数据存取方式访问的模式,以得到由所述计算集群中各计算设备中处于所述模式的内存空间构成的分布式内存系统;
响应于所述目标计算设备中用于执行数据计算任务的目标进程触发的数据加载请求,将所述目标计算设备中的目标存储空间设置为支持以远程直接数据存取方式访问的模式;
确定与所述数据加载请求对应的需加载数据在所述分布式内存系统中的存储地址,根据所述存储地址从所述分布式内存系统中加载所述需加载数据到所述目标存储空间中,以使所述目标进程从所述目标存储空间中读取所述需加载数据。


2.根据权利要求1所述的方法,其特征在于,所述数据加载请求中包括需加载的数据量和目标计算单元对应的存储部件;
其中,所述目标存储空间位于所述目标计算单元对应的存储部件中,所述需加载数据是与所述需加载的数据量对应的数据。


3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
存储用户通过配置接口输入的配置信息,以根据所述配置信息生成所述数据加载请求,所述配置信息包括所述需加载的数据量和所述目标计算单元对应的存储部件。


4.根据权利要求2所述的方法,其特征在于,所述目标计算单元对应的存储部件包括如下任一种:中央处理器对应的内存、图形处理器对应的显存。


5.根据权利要求1所述的方法,其特征在于,所述确定与所述数据加载请求对应的需加载数据在所述分布式内存系统中的存储地址,包括:
获取数据存储记录,所述数据存储记录中描述了数据标识与数据在分布式内存系统中的存储地址之间的对应关系;
根据所述数据存储记录确定需加载数据在所述分布式内存系统中的存储地址。


6.根据权利要求1所述的方法,其特征在于,所述数据计算任务包括:模型训练任务,所述数据包括:模型的训练数据。


7.一种数据加载装置,其特征在于,位于计算集群中的目标计算设备,所述目标计算设备是所述计算集群中任一个计算设备,所述装置包括:
缓存模块,用于将从外部存储系统中获取的数据存入到所述目标计算设备的内存空间中,所述内存空间被设置为支持以远程直接数据存取方式访问的模式,以得到由所述计算集群中各计算设备中处于所述模式的内存空间构成的分布式内存系统;

【专利技术属性】
技术研发人员:刘小丽董建波李豪曹政
申请(专利权)人:阿里云计算有限公司
类型:发明
国别省市:浙江;33

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

1