CN116974465A - 数据加载方法、装置、设备及计算机存储介质 - Google Patents

数据加载方法、装置、设备及计算机存储介质 Download PDF

Info

Publication number
CN116974465A
CN116974465A CN202310605678.1A CN202310605678A CN116974465A CN 116974465 A CN116974465 A CN 116974465A CN 202310605678 A CN202310605678 A CN 202310605678A CN 116974465 A CN116974465 A CN 116974465A
Authority
CN
China
Prior art keywords
data
storage
service
service data
loading
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.)
Pending
Application number
CN202310605678.1A
Other languages
English (en)
Inventor
查冲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Tencent Computer Systems Co Ltd
Original Assignee
Shenzhen Tencent Computer Systems Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Tencent Computer Systems Co Ltd filed Critical Shenzhen Tencent Computer Systems Co Ltd
Priority to CN202310605678.1A priority Critical patent/CN116974465A/zh
Publication of CN116974465A publication Critical patent/CN116974465A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请实施例公开了一种数据加载方法、装置、设备及计算机存储介质,将本申请实施例应用于云存储技术中,可以有效提升数据加载的效率。其中,方法包括:接收对业务数据的数据加载请求,数据加载请求包括业务数据所在数据存储空间的存储类型;当存储类型包括云存储时,从本地缓存空间中查询业务数据的存储路径;本地缓存空间中的存储路径,是通过从数据存储空间中确定业务数据的存储位置,并预先将用于指示存储位置的存储路径,缓存至本地缓存空间得到的;若成功查询到业务数据的存储路径,则基于查询到的存储路径,从数据存储空间中加载业务数据。

Description

数据加载方法、装置、设备及计算机存储介质
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据加载方法、装置、设备及计算机存储介质。
背景技术
计算机技术领域中,数据加载是指:从存储空间内读取数据的过程。在具体应用场景下,数据加载至少涉及一种存储类型的存储空间,而不同存储类型的存储空间,对数据加载效率所带来的影响也有所不同。
在传统的数据加载方法中,当业务数据被分散存储至多个本地存储空间时,数据加载设备需要基于多个存储目录才能实现业务数据的加载,使得整体的数据加载的效率较低。当业务数据被存储于云存储空间时,数据加载设备通常需要消耗较长时间从该云存储空间中确定业务数据的存储路径,以基于读取的存储路径实现业务数据的加载,进而导致数据加载效率低下。有鉴于此,如何使得数据加载效率得到有效提升便成为了当下的研究热点。
发明内容
本申请实施例提供了一种数据加载方法、装置、设备及计算机存储介质,可有效提升数据加载的效率。
一方面,本申请实施例提供了一种数据加载方法,包括:
接收对业务数据的数据加载请求,所述数据加载请求包括所述业务数据所在数据存储空间的存储类型;
当所述存储类型包括云存储时,从本地缓存空间中查询所述业务数据的存储路径;所述本地缓存空间中的存储路径,是通过从所述数据存储空间中确定所述业务数据的存储位置,并预先将用于指示所述存储位置的存储路径,缓存至所述本地缓存空间得到的;
若成功查询到所述业务数据的存储路径,则基于查询到的存储路径,从所述数据存储空间中加载所述业务数据。
再一方面,本申请实施例提供了又一种数据加载方法,包括:
接收对业务数据的数据加载请求,所述数据加载请求包括所述业务数据所在数据存储空间的存储类型;
当所述存储类型包括本地存储时,从本地缓存空间中查询所述业务数据的存储目录,所述存储目录用于指示所述业务数据所在的多个数据存储空间所映射的逻辑存储空间;其中,一个存储目录用于指示一个逻辑存储空间,一个逻辑存储空间映射至少两个数据存储空间;
若成功查询到所述业务数据的存储目录,则从所述存储目录指示的逻辑存储空间所映射的多个数据存储空间中,加载所述业务数据的数据片段;
对加载的各个数据片段进行组合,得到所述业务数据。
再一方面,本申请实施例提供了一种数据加载装置,包括:
第一接收单元,用于接收对业务数据的数据加载请求,所述数据加载请求包括所述业务数据所在数据存储空间的存储类型;
第一查询单元,用于当所述存储类型包括云存储时,从本地缓存空间中查询所述业务数据的存储路径;所述本地缓存空间中的存储路径,是通过从所述数据存储空间中确定所述业务数据的存储位置,并预先将用于指示所述存储位置的存储路径,缓存至所述本地缓存空间得到的;
第一加载单元,用于若成功查询到所述业务数据的存储路径,则基于查询到的存储路径,从所述数据存储空间中加载所述业务数据。
再一方面,本申请实施例还提供了又一种数据加载装置,包括:
第二接收单元,用于接收对业务数据的数据加载请求,所述数据加载请求包括所述业务数据所在数据存储空间的存储类型;
第二查询单元,用于当所述存储类型包括本地存储时,从本地缓存空间中查询所述业务数据的存储目录,所述存储目录用于指示所述业务数据所在的多个数据存储空间所映射的逻辑存储空间;其中,一个存储目录用于指示一个逻辑存储空间,一个逻辑存储空间映射至少两个数据存储空间;
第二加载单元,用于若成功查询到所述业务数据的存储目录,则从所述存储目录指示的逻辑存储空间所映射的多个数据存储空间中,加载所述业务数据的数据片段;
数据组合单元,用于对加载的各个数据片段进行组合,得到所述业务数据。
再一方面,本申请实施例还提供了一种数据加载设备,包括:
处理器,所述处理器用于实现一条或多条计算机程序;
计算机存储介质,所述计算机存储介质存储有一条或多条计算机程序,所述一条或多条计算机程序适于由所述处理器加载并实现如第一方面的数据加载方法,或第二方面的数据加载方法。
再一方面,本申请实施例还提供了一种计算机存储介质,所述计算机存储介质存储有一条或多条计算机程序,所述一条或多条计算机程序适于由处理器加载并实现如第一方面的数据加载方法,或第二方面的数据加载方法。
再一方面,本申请实施例提供了一种程序产品,该程序产品包括计算机程序,所述计算机程序适于由处理器加载并执行如第一方面的数据加载方法,或第二方面的数据加载方法。
本申请实施例中,当数据加载设备从云存储空间加载业务数据时,业务数据在云存储空间中的存储路径已被预先缓存至本地缓存空间。因此,数据加载设备在接收到数据加载请求时,可以从本地缓存空间中读取存储路径,而无需通过构建与云存储空间之间的网络连接实现从云存储空间中确定业务数据的存储路径。由于从本地缓存空间中读取存储路径的复杂度通常低于从云存储空间确定存储路径的复杂度,因此本申请实施例可以在一定程度上通过降低存储路径的查询复杂度,节省业务数据的存储路径的查询时长,进而提升数据加载的效率。当数据加载设备从本地存储空间加载业务数据时,数据加载设备从本地缓存空间中查询到的业务数据的存储目录,用于指示一个逻辑存储空间,而该逻辑存储空间与多个本地存储空间具有映射关系,使得数据加载设备可以通过一个存储目录实现从多个本地存储空间中加载业务数据。也就是说,在本申请实施例中,若业务数据划分成数据片段分散存储在多个本地存储空间,数据加载设备在加载该业务数据时,只需要获取一个整合后的存储目录,而无需从多个本地存储空间中分别获取相关数据片段的存储目录,可以减少数据加载的时间复杂度,从而提升数据加载的效率,同时在一定程度上降低数据加载设备对业务数据的存储目录的管理难度和使用难度。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本申请实施例提供的一种数据加载方案的原理示意图;
图1b是本申请实施例提供的一种数据加载方案的应用逻辑示意图;
图2是本申请实施例提供的一种数据加载方法的示意流程图;
图3是本申请实施例提供的一种更新存储路径的原理示意图;
图4是本申请实施例提供的一种应用不同数据淘汰策略的效果对比示意图;
图5是本申请实施例提供的又一种数据加载方法的示意流程图;
图6是本申请实施例提供的一种数据加载装置的结构示意图;
图7是本申请实施例提供的又一种数据加载装置的结构示意图;
图8是本申请实施例提供的一种数据加载设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请实施例所提供的方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。需要说明的是,本申请实施例中描述的各个具体实施例只是本申请一部分实施例,而不是全部的实施例。基于本申请中的各个实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例可以广泛应用于多种数据加载场景,以提升数据加载的效率,进而提升数据处理业务执行过程中的数据处理效率。具体来说,本申请实施例提出了一种数据加载方案,该数据加载方案针对不同存储类型的数据存储空间提出了不同的数据加载策略,以实现对不同数据存储空间的数据加载效率进行有效提升。
在一个具体实施例中,该数据加载方案的原理可以参见图1a所示。由图1a可见,该方案指出:当业务数据所在的数据存储空间包括云存储空间(即存储类型为云存储的数据存储空间)时,意味着数据加载设备需要基于云存储空间实现业务数据的加载。在此情况下,数据加载设备将从本地缓存空间中查询业务数据的存储路径,进而在成功查询到该业务数据的存储路径之后,基于查询到的存储路径,从云存储空间中加载业务数据。
其中,业务数据的存储路径用于指示该业务数据在云存储空间中的存储位置。此外,本地缓存空间中的存储路径,是数据加载设备预先从云存储空间中确定业务数据的存储位置之后,将用于指示该存储位置的存储路径缓存至该本地缓存空间中的,使得数据加载设备在接收到数据加载请求时,可以从本地缓存空间中读取存储路径,而无需通过构建与云存储空间之间的网络连接实现从云存储空间中确定业务数据的存储路径。由于从本地缓存空间中读取存储路径的复杂度通常低于从云存储空间确定存储路径的复杂度,因此本方案可以在一定程度上通过降低存储路径的查询复杂度,节省业务数据的存储路径的查询时长,进而提升数据加载的效率。
此外,该方案还指出:当业务数据所在的数据存储空间包括本地存储空间(即存储类型为本地存储的数据存储空间)时,意味着数据加载设备需要从本地存储空间中执行业务数据的加载。在此情况下,数据加载设备将从本地缓存空间中查询业务数据的存储目录,该存储目录用于指示业务数据所在的多个本地存储空间所映射的逻辑存储空间。那么,数据加载设备可以在成功查询到业务数据的存储目录之后,从查询到的存储目录指示的逻辑存储空间所映射的各个数据存储空间中,加载业务数据的数据片段,并最终通过对加载的各个数据片段进行组合,得到业务数据。
值得一提的是,在本方案的实际应用中,一个存储目录只用于指示一个逻辑存储空间,而一个逻辑存储空间可以映射到至少两个本地存储空间。也就是说,在本方案中,可以将数据划分成数据片段分散存储在至少两个本地存储空间,并且数据加载设备在从这至少两个本地存储空间加载该数据时,只需要获取一个整合后的存储目录,而无需从多个本地存储空间中分别获取相关数据片段的存储目录,可以减少数据加载的时间复杂度,从而提升数据加载的效率,同时在一定程度上降低数据加载设备对数据的存储目录的管理难度和使用难度。
综上可见,在数据处理场景下采样本数据加载方案,可以有效提升数据加载的效率,并且通过提升数据加载的效率,可以进一步实现对数据处理过程中数据处理效率的提升。
在一个实施例中,本申请实施例提供的数据加载方案可以应用于多种复杂数据处理场景,并且,在复杂数据处理场景下应用该数据加载方案时,可以实现对数据加载以及数据存储的优化,从而对数据处理过程进行全链路优化,以此提升数据处理的效率。其中,复杂数据处理场景是指:不仅包括将处理数据存储至本地存储空间的存储任务,还包括从云存储空间加载业务数据的加载任务的数据处理场景。示例性地,复杂数据处理场景可以包括但不限于如下一种或两种:
(1)数据加载设备在执行数据处理的过程中,需要从云存储空间加载业务数据,并且数据处理过程中产生的处理数据需要缓存至本地存储空间的数据处理场景。具体如:大模型优化场景。大模型优化场景是指:基于人工智能技术,采用训练物料对参数量较大的数据处理模型(或称:大模型)进行模型优化的场景。
在大模型优化场景下,数据加载设备可以具体包括异构设备。异构设备是指由多个不同种类的设备组成的设备集。在实际应用中,异构设备可以具体如GPU(GraphicProcessing Unit,图形处理器)。大模型优化场景下的业务数据可以指初始的训练数据,数据处理过程中产生的处理数据可以包括:模型优化过程中产生的模型参数和/或中间训练数据等。其中,中间训练数据可以具体理解为:在模型优化过程中产生的,需要被作为后续模型优化过程中的训练数据的数据。此外,示例性地,训练物料可以包括业务数据和/或数据处理过程中产生的中间训练数据。
(2)在数据处理流程启动时,数据加载设备需要先将云存储空间的业务数据缓存至本地存储空间,再在需要对业务数据进行数据处理时,从本地存储空间加载该业务数据以进行相关数据处理的数据处理场景。
为了便于清楚地理解本申请实施例,以下结合图1b所示的应用逻辑,对上述复杂数据处理场景(2)下的数据处理逻辑及有益效果进行详细阐述。在图1b中,由101标记的方框用于指示数据加载设备,该数据加载设备中存在本地缓存空间和N个本地存储空间,N为大于1的整数。其中,本地存储空间与本地缓存空间分别由不同的存储介质所提供。如:本地缓存空间可以由CPU(Central Processing Unit,中央处理器)提供,而本地存储空间由本地磁盘所提供。此外,图1b中由102标记的方框用于指示云端存储系统,该云端存储系统可以包括n个云存储空间,n为正整数。实际应用中,云端存储系统可以具体为分布式存储系统。所谓的分布式存储系统,是指:将数据分散存储在多台独立的存储设备上。采用分布式存储系统来存储数据,可以满足大规模存储应用的需要,进而使得本申请实施例可以应用于更广泛的数据处理场景。
如图1b所示,在复杂数据处理场景下,对于数据加载链路,数据加载设备可以从云端存储系统的各个云存储空间中,预先确定该云存储空间中各个数据的存储位置,并将用于指示该存储位置的存储路径,缓存至数据加载设备的本地缓存空间。其中,此处的“预先”是指:在接收到对业务数据的数据加载请求之前,或者说,是指:在数据加载设备触发执行对业务数据的数据加载之前。此外,对于数据存储链路,数据加载设备还可以对其包含的N个本地存储空间中的多个本地存储空间进行存储资源整合,以得到与这多个本地存储空间具有映射关系的逻辑存储空间,并采用一个存储目录来指示该逻辑存储空间,且该存储目录被数据加载设备缓存在本地缓存空间中。可选地,数据加载设备可以在对业务数据执行数据存储之前,对多个本地存储空间进行存储资源整合,也可以在对业务数据进行数据存储的过程中,对多个本地存储空间进行存储资源整合。
在具体执行数据处理的过程中,数据加载设备接收到对业务数据的数据加载请求,则触发执行从云存储空间中加载业务数据。具体来说,数据加载设备先从本地缓存空间中查询业务数据的存储路径,进而基于该存储路径,从云存储空间中加载业务数据至该数据加载设备的本地存储空间。其中,将业务数据加载至本地存储空间,即是指将业务数据存储至本地存储空间。此外,在将业务数据存储至本地存储空间时,具体地,数据加载设备先指定该业务数据的存储目录,进而确定由该存储目录指示逻辑存储空间所映射的多个本地存储空间,并将加载到的业务数据分散存储至这多个本地存储空间,以此实现将业务数据存储在指定的存储目录下。其中,一个本地存储空间可以用于存储该业务数据的至少一个数据片段。
值得一提的是,当本地缓存空间中不存在数据加载设备指定的存储目录时,数据加载设备可以触发执行上述对多个本地存储空间的存储资源整合,得到该存储目录指示的逻辑存储空间的操作(即:在数据存储过程中,对多个本地存储空间进行存储资源整合)。进一步可选地,在成功得到该存储目录指示的逻辑存储空间后,数据加载设备可以将该存储目录缓存至本地缓存空间。
不难看出,在上述复杂数据处理场景(2)下,对于业务数据的加载,数据加载设备是从本地缓存空间中读取的存储路径,避免了通过构建与云存储空间之间的网络连接实现从云存储空间中确定业务数据的存储路径,从而降低了数据加载设备读取业务数据的存储路径的复杂度,使得业务数据的存储路径的查询时长得到节省,进而提升了数据加载的效率。
在上述复杂数据处理场景(2)下,对于业务数据的缓存,数据加载设备采用的存储目录所指示的逻辑存储空间映射了多个本地存储空间。因此,将业务数据存储在该存储目录下,实际上可以基于该多个本地存储空间的剩余存储容量来实现,使得一个存储目录对应的总存储容量较为充足。那么,在需要对数据量较大的业务数据进行本地存储时,数据加载设备则不易出现由于单个本地存储空间的剩余存储容量不足而导致业务数据存储失败的情况,提升了业务数据的存储成功率。
同理可以理解,在上述复杂数据处理场景(1)所提及的大模型优化场景下,应用本申请实施例所提供的数据加载方案,使得在训练物料包括大规模数据时,数据加载设备可以采用多个分散本地存储空间对大规模数据进行本地存储,以使得对训练物料中大规模数据进行存储和加载时均可以具备较高的速率,进而提升模型优化的效率。其中,大规模数据即数据量较大的单个数据。可选地,大规模数据可以具体为初始的训练数据,也可以为模型优化过程中产生的模型参数和/或中间训练数据。由于本方案可以对多个本地存储空间进行存储资源整合,以实现对大规模数据的存储,使得实际的大模型优化过程中,可以避免由被优化的数据处理模型不断变大(及模型参数不断增加),而导致数据加载设备无法实现对数据处理模型的相关存储,进而需要重新选择或采购数据加载设备的问题,在一定程度上可以节省大模型优化过程中的成本支出,同时提升大模型优化的效率。
此外,若该大规模数据被存储于云存储空间,则数据加载设备在进行模型优化时,可以通过缓存该大规模数据在云存储空间的存储路径,以基于缓存的存储路径实现对训练物料中大规模数据的高效加载,进而提升模型优化的效率。当训练物料包含大量的小规模数据(即数据量较小的单个训练数据)时,数据加载设备可以基于存储资源整合得到的逻辑存储空间,实现对大量的小规模数据的本地存储,以此使得在需要频繁加载训练数据的情况下,数据加载设备能保持较高的训练数据的加载效率,进而提升模型优化的效率。综上可见,将本申请实施例所提供的数据加载方案应用于大模型优化场景,可以有效提升模型优化的效率。
基于上述描述,当本申请实施例应用于大模型优化场景时,可以先对数据加载设备进行初始化。其中,初始化可以包括对至少两个本地存储空间的存储资源整合,还可以包括构建本地缓存空间,以采用本地缓存空间对云存储空间中业务数据的存储路径进行缓存。如此,大模型优化过程所采用的源训练物料可以通过云存储空间存储,而大模型优化过程所产生的中间物料(如模型参数、中间训练数据等),则可以在整合后的本地存储空间执行缓存。由于云存储空间的存储容量易于扩展,因此,采用云存储空间存储源训练物料,可以为大模型的优化过程提供充足的训练物料,使得模型优化效果可以得到一定提升。此外,由于中间物料可能被频繁读取或存储,因此采用整合后的本地存储空间存储中间物料,可以提升中间物料的存储和读取效率,进而实现对模型优化过程全链路优化,有效提升模型优化的效率。
在本申请的具体实施例中,数据加载设备可以包括终端设备和服务器中的一种或两种。
当数据加载设备包括终端设备时,数据加载设备内可以运行用于实现数据处理业务的应用程序,而该应用程序是基于本申请实施例提供的数据加载方案所提供的原理而开发的。当然,终端设备内还可以运行其他各式各样的应用程序,如图像处理类的应用程序、多媒体播放类的应用程序以及导航类应用程序等。其中,终端设备可以具体包括但不限于:智能手机、平板电脑、笔记本电脑、台式计算机、车载终端、智能电视、游戏机等。
当数据加载设备包括服务器时,服务器可以为数据处理业务提供数据计算服务以及数据存储服务等支撑服务。示例性地,该数据处理业务可以由客户端(或应用程序)提供,而服务器可以与提供该数据处理业务的客户端(或应用程序)建立通信连接,使得服务器可以基于通信连接提供数据计算服务以及数据存储服务等支撑服务。其中,该服务器可以具体包括但不限于独立的物理服务器,多个物理服务器构成的服务器集群或者分布式系统,以及提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器等中的一种或多种,本申请实施例对此不作具体限制。
请参见图2,图2是本申请实施例提出的一种数据加载方法的示意流程图。该数据加载方法是基于上述数据加载方案的原理所提出的,因而该数据加载方法可以由上述提及的数据加载设备来执行。如图2所示,该数据加载方法可以具体包括步骤S201-S203:
S201、接收对业务数据的数据加载请求,数据加载请求包括业务数据所在数据存储空间的存储类型。
在具体实施例中,业务数据是指数据处理过程中所需要采用的数据,该数据可以被预先存储至数据存储空间中。业务数据所在数据存储空间的存储类型,可以包含于数据加载请求中,以使得数据加载设备可以基于数据加载请求中的存储类型,确定对业务数据进行加载时所采用的加载逻辑。
此外,值得一提的是,在具体实现中,数据加载请求还可以包含或携带业务数据的描述信息,以使得数据加载设备在接收到数据加载请求之后,可以通过对数据加载请求进行解析得到描述信息,进而将描述信息所指示的业务数据作为需要加载查询的业务数据。其中,示例性地,业务数据的描述信息可以包括但不限于以下一种或多种:业务数据的数据标识、业务数据的存储路径、业务数据的数据产生时间等。数据加载请求包括业务数据的存储路径,可以使得数据加载设备能够直接基于该业务数据的存储路径,从数据存储空间中加载业务数据。其中,示例性地,该业务数据的存储路径,可以由生成该数据加载请求的客户端所指定。
在具体应用中,本申请实施例中的数据加载请求,可以是数据加载设备在检测到数据处理操作(如数据查询操作、数据更新操作等)时,基于触发该操作的查询对象的数据处理需求而生成的。可选地,数据加载请求也可以是与数据加载设备具有通信连接的其他设备生成的。在生成数据加载请求之后,可以通过该通信连接将数据加载请求发送至数据加载设备,从而使得数据加载设备可以对该数据加载请求进行响应,执行业务数据的加载。
在实际应用中,业务数据的数量可以为一个或多个。当业务数据的数量为多个时,业务数据所在数据存储空间的数量可以为至少一个。若数据存储空间的数量具体为多个,则不同的数据存储空间可以具有不同的存储类型,也可以具有相同的存储类型,本申请实施例对此不作限制。
可以理解,业务数据在不同存储类型的数据存储空间中进行存储时,数据存储设备所采用不同的存储技术不同,使得业务数据的存储方式也不同。也就是说,数据存储空间的存储类型,可以用于确定业务数据在数据存储空间中的存储方式。可选地,数据存储设备可以是数据加载设备,也可以是不同于数据加载设备的其他设备。
以数据存储设备与数据加载设备为同一设备为例,具体地,针对存储类型为云存储的数据存储空间,数据加载设备将采用云技术(Cloud technology)中的云存储技术,对业务数据进行云端存储。此存储类型的数据存储空间可以被称为云存储空间,云存储空间被部署于云端服务器中,由云端服务器中存储介质提供存储资源。针对存储类型为本地存储的数据存储空间,数据加载设备将采用本地存储技术,对业务数据进行本地存储。此存储类型的数据存储空间可以被称为本地存储空间,本地存储空间被部署于数据加载设备中,由该数据加载设备中的存储介质提供存储资源。
为了便于理解云存储空间,以下对本申实施例中涉及到的云技术的原理进行大致阐述。
云技术是指:在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。也就是说,云技术是基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称。实际应用中,云技术可以具体包括云计算技术、云存储技术及云安全技术等。
其中,云计算(Cloud computing)是一种计算模式,通过将计算任务分布在大量计算机设备构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。在云技术中,用于提供资源的网络可以被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用。
云存储(Cloud storage)是在云计算概念上延伸和发展出来的一个新的概念。分布式云存储系统(以下简称存储系统)是指:通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点),通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。在本申请实施例中,当数据存储空间为云存储空间时,该数据存储空间可以存在于分布式云存储系统中。
S202、当存储类型包括云存储时,从本地缓存空间中查询业务数据的存储路径;本地缓存空间中的存储路径,是通过从数据存储空间中确定业务数据的存储位置,并预先将用于指示存储位置的存储路径,缓存至本地缓存空间得到的。
其中,当存储类型包括云存储时,数据存储空间则包括云存储空间,因此可以理解,步骤S202以及步骤S203均是指数据加载设备从云存储空间加载业务数据的步骤,并且无特殊说明的情况下,后续关于步骤S202以及步骤S203的相关实施例中所提及的数据存储空间,均是指云存储空间。
在具体实施例中,存储路径可以用于指示业务数据在数据存储空间中的具体位置,以使得数据加载设备可以直接通过业务数据的存储路径定位到业务数据。可选地,存储路径也可以理解为存储目录,用于指示业务数据在数据存储空间中所处文件夹的位置。在此情况下,数据加载设备可以基于存储路径,定位到业务数据所在文件夹,该文件夹下可以具体存在一个或多个数据。
其中,业务数据的存储路径,可以被预先缓存至数据加载设备的本地缓存空间,使得数据加载设备在从数据存储空间加载业务数据时,可以从本地缓存空间中查询业务数据的存储路径,而无需从云存储空间进行业务数据的存储路径的查询。由于该查询通常需要在该云存储空间中对业务数据的索引进行锁操作,以通过锁操作,降低多个数据处理事务同时对业务数据进行访问的概率,从而保障业务数据的一致性和完整性。实际应用中,锁操作的执行通常需要耗费较多设备资源以及处理时间,因此,本申请实施例通过从本地缓存空间查询业务数据的存储路径,可以避免锁操作,从而可以节省业务数据的存储路径的查询时间,提升数据加载的效率。
在一种实现方式中,数据加载设备从本地缓存空间中查询业务数据的存储路径的目的是:获取业务数据的存储路径。在此情况下,数据加载请求还可以包括业务数据的数据标识,而本地缓存空间中业务数据的存储路径与该业务数据的数据标识进行关联存储,以使得数据加载设备可以基于数据标识从本地缓存空间中查询业务数据的存储路径。
在又一种实现方式中,基于步骤S201的描述可知,数据加载请求中可以存在业务数据的存储路径。在此情况下,数据加载设备从本地缓存空间中查询业务数据的存储路径,是指:从本地存储空间中查询数据加载请求所包括的业务数据的存储路径。查询业务数据的存储路径的目的是:确定数据加载请求所包括的业务数据的存储路径,是否为该业务数据在数据存储空间中的存储位置所指示的存储路径。
示例性地,若查询成功,则确定数据加载请求所包括的业务数据的存储路径,为该业务数据在数据存储空间中的存储位置所指示的存储路径,进而确定数据加载设备能够在数据存储空间中获取到该业务数据。若查询失败,则确定数据加载请求所包括的业务数据的存储路径,不是该业务数据在数据存储空间中的存储位置所指示的存储路径,进而确定数据加载设备不能在数据存储空间中获取到该业务数据,从而无需发起对数据存储空间的访问,可以有效降低对数据存储空间进行无效访问的次数,从而提升数据加载的成功率和整体加载效率。
实际应用中,业务数据的存储路径用于指示业务数据在数据存储空间中的存储位置。可选地,业务数据的存储路径也可以理解为业务数据的存储目录。在此情况下,业务数据的存储路径所指示的存储位置处,可以存在一个或多个数据,而业务数据存在于这一个或多个数据中。
在一种实现方式中,业务数据的存储路径所指示的存储位置,可以通过从数据存储空间中查询业务数据来确定。具体来说,当需要确定业务数据的存储位置时,数据加载设备可以先从数据存储空间中查询该业务数据,若查询成功,则将查询到该业务数据的位置作为业务数据的存储位置,而用于指示该存储位置的存储路径则被作为业务数据的存储路径。
也就是说,本地缓存空间中所存储的存储路径(如业务数据的存储路径),是数据加载设备从数据存储空间中确定业务数据的存储位置之后,将用于指示该存储位置的存储路径进行缓存得到的。其中,本地缓存空间是指存在于数据存储设备内部的存储空间。可选地,本地缓存空间可以由数据加载设备中的CPU提供。
在本申请实施例的具体实现中,业务数据可以是私有数据,也可以是公有数据。私有数据可以存储于数据存储空间中的私有目录下,而公有数据则可以存储于数据存储空间中的公有目录下。
其中,私有数据是指与有限的对象进行共享的数据,私有目录则是指允许有限的对象进行访问的存储目录。在对私有数据(或私有目录)进行访问之前,通常需要对发起访问的对象进行身份验证(或称权限验证),若对该对象的身份验证通过,则允许该对象从数据存储空间中访问该私有数据(或私有目录)。对应地,公有数据是指:与无限的对象进行共享的数据。也就是说,允许任何对象进行访问的数据被称为公有数据,允许任何对象进行访问的存储目录被称为公有目录。
那么,数据加载设备将业务数据的存储路径缓存至本地缓存空间的一种可行方式,可以参见如下描述:
数据加载设备先获取业务数据的数据共享类型,该数据共享类型用于指示该业务数据是否为私有数据。若该数据共享类型指示业务数据为私有数据,则对本地缓存空间所属的处理设备(即数据加载设备)进行权限验证处理。当对数据加载设备的权限验证通过时,从数据存储空间中确定业务数据的存储位置,进而获取用于指示该存储位置的存储路径,最终将获取到的存储路径缓存至本地缓存空间。
在实际应用中,业务数据的数据共享类型可以与该业务数据的数据标识关联存储(对采用的存储空间不作限制),因而在一种可行的实现方式中,数据加载设备在获取业务数据的数据共享类型时,可以基于业务数据的数据标识,从相应的存储空间中查询得到。其中,与业务数据的数据标识关联存储的数据共享类型,可以是由该业务数据的所有者指定的,也可以是由数据加载设备对业务数据进行风险评估后,基于得到的风险评估结果所确定的。
基于此,不难理解,在又一种可行的实现方式中,数据加载设备在获取业务数据的数据共享类型时,也可以先获取业务数据,以对业务数据进行风险评估得到风险评估结果,进而基于得到的风险评估结果来确定该业务数据的数据共享类型。其中,风险评估结果用于指示该业务数据泄露所可能导致的风险等级,风险等级高于预设等级时,数据处设备可以设置该业务数据的数据共享类型用于指示:该业务数据为私有数据。反之,则设置该业务数据的数据共享类型用于指示:该业务数据为公有数据。
S203、若成功查询到业务数据的存储路径,则基于查询到的存储路径,从数据存储空间中加载业务数据。
其中,当数据加载请求包括业务数据的存储路径时,若数据加载设备成功查询到业务数据的存储路径,则表明数据加载设备可以基于该业务数据的存储路径,从数据存储空间中成功加载业务数据。在此情况下,从数据存储空间中加载业务数据将具备较高的成功率,从而可以在一定程度上提升数据加载的整体效率。当数据加载请求不包括业务数据的存储路径时,若数据加载设备成功查询到业务数据的存储路径,则表明数据存储空间中存储有该业务数据,进而表明数据加载设备可以基于查询到的存储路径,从数据存储空间中成功加载业务数据。
在具体实施例中,当业务数据的存储路径存在更新时,数据加载设备可以在本地缓存空间中对存储的业务数据的存储路径进行同步更新。示例性地,更新存储路径的原理可以参见图3。如图3所示,数据加载设备可以基于Hook(钩子)技术,在数据存储空间中针对路径更新事件进行Hook注册。若数据存储空间反馈的注册结果指示该Hook注册成功,则数据加载设备将可以采用该Hook对数据存储空间的路径更新事件进行Hook。
其中,路径更新事件是指:对数据存储空间中的数据(如业务数据)的存储路径进行更新的事件。Hook是一种数据处理机制,对数据存储空间的路径更新事件进行Hook,使得数据存储空间中发生路径更新事件时,数据加载设备可以收到路径更新通知。示例性地,路径更新通知可以包括业务数据更新后的存储路径,使得数据加载设备可以基于路径更新通知中的存储路径,及时在本地缓存空间中对原有存储的存储路径进行更新。
在本申请实施例中,数据加载设备在基于查询到业务数据的存储路径,从数据存储空间中加载该业务数据时,可以先获取业务数据的属性信息,该属性信息用于指示业务数据所具备的性质,具体如数据量、数据类型及数据共享类型等。其中,数据加载设备获取的属性信息至少包括数据量及数据类型中的一种。进一步地,数据加载设备可以根据属性信息,对该业务数据进行资源消耗量预估,以得到对该业务数据进行数据加载时所消耗的参考资源量,进而可以为该业务数据分配数据处理资源,最终采用分配的数据处理资源实现对业务数据的加载。
其中,数据处理资源可以包括但不限于数据存储资源和数据计算资源中的一种或两种,分配的数据处理资源的资源量为针对该业务数据确定出的参考资源量。同理地,可以理解,在本申请实施例中,数据加载设备在将业务数据存储至数据存储空间,或者对业务数据进行其他数据处理(如特征提取、数据增强、数据传输等)时,也可以先预估该业务数据的数据处理所需消耗的资源量,进而分配相应资源量的数据处理资源,以采用分配的数据处理资源实现业务数据的数据处理。
本申请实施例可以应用于对数据处理模型的模型优化场景中,以实现对训练数据的高效加载。其中,数据处理模型可以是基于人工神经网络构建的神经网络模型。人工神经网络可以用于反映人类大脑的行为,使得基于人工神经网络构建的神经网络模型,可以通过采用训练数据基于人工智能(Artificial Intelligence,AI)技术对其进行优化,使其不断学习到更好的数据处理模式,以达到优异的数据处理效果。示例性地,数据处理模型可以具体包括但不限于:自然语言处理模型(如语音处理模型、文本处理模型)和图像处理模型等。
其中,人工智能技术是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,基于人工智能可以使机器具有感知、推理与决策的功能。具体来说,人工智能技术可以利用数字计算机或者利用数字计算机控制的机器来模拟、延伸和扩展人的智能,使得数字计算机或相关机器能够感知环境、获取知识。那么,也就是说,基于人工智能可以实现利用数字计算机或相关机器使用其学习到的知识来获得最佳结果的理论、方法、技术及应用系统。
在实际应用中,人工智能技术涉及的领域广泛,其既包括硬件层面的技术也包括软件层面的技术。具体地,人工智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术一般包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习技术等技术。
其中,自然语言处理(Natural Language Processing,NLP)是计算机科学领域与人工智能领域中的一个重要方向,主要用于研究能实现人与计算机之间用自然语言(即人们日常使用的语言)进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,基于自然语言处理技术所构建的自然语言处理模型,可以用于反映人类大脑的行为,以有效解决当前人工智能、机器学习和深度学习领域的常见语言处理问题。
为了尽可能地提升采用人工智能技术对数据处理模型进行模型优化后所得到的、优化后的数据处理模型的泛化能力,本申请实施例提出了一种训练数据选取规则。该规则指出:在对数据处理模型进行相邻的两轮模型优化时,采用不同的训练数据来进行。也就是说,假设第x轮模型优化所采用的训练数据为训练数据集a中的各个训练数据,第x+1轮模型优化所采用的训练数据为训练数据集b中的各个训练数据,则训练数据集a和训练数据集b的交集为空集。其中,x为正整数。
以下结合具体示例,对本申请实施例在模型优化场景下的相关实现方式进行详细阐述。在本示例中,业务数据包括对数据处理模型进行第i轮模型优化所采用的训练数据,i为大于1的整数。业务数据所在的数据存储空间,至少包括多个训练数据,并且可选地,数据存储空间所包括的多个训练数据,可以包括在启动对数据处理模型的第i轮模型优化之前存储的训练数据,也可以包括在对数据处理模型进行历史模型优化过程中存储的训练数据。其中,在历史模型优化过程中存储的训练数据,具体可以包括:历史模型优化过程中所采用的训练数据。历史模型优化过程是指:位于第i轮模型优化之前的模型优化过程。也就是说,历史模型优化过程至少包括第i-1轮模型优化的模型优化过程。
其中,当数据存储空间包括历史模型优化过程采用的多个训练数据时,为了使得数据加载设备在从数据存储空间中获取业务数据时,具备较高的命中率,本申请实施例针对数据存储空间提出了一种适用于训练数据的数据淘汰策略。该数据淘汰策略的原理为:训练数据在数据存储空间中先进后出。具体来说,该数据淘汰策略指出:当数据存储空间中的剩余存储容量不足以存储新的训练数据时,将最晚存储至该数据存储空间的训练数据删除,以使得新的训练数据可以被存储至数据存储空间。
以存储第i-1轮模型优化所采用的多个训练数据为例,这多个训练数据在数据存储空间中的一种存储方式,可以示意性如下描述:
数据加载设备在采用多个训练数据,对数据处理模型进行第i-1轮模型优化之后,遍历第i-1轮模型优化所采用的多个训练数据。其中,遍历是指:逐个访问这多个训练数据,直至每个训练数据均被访问。在遍历过程中,数据加载设备可以获取当前遍历的目标训练数据的数据量。当目标训练数据的数据量,小于或等于数据存储空间的剩余存储容量时,将目标训练数据存储至数据存储空间。当目标训练数据的数据量,大于数据存储空间的剩余存储容量时,将数据存储空间中存储时间最晚的训练数据删除,以将目标训练数据存储至数据存储空间。其中,若存储时间最晚的训练数据被删除后,目标训练数据仍不足以被存储至数据存储空间,则数据加载设备可以继续从当前的数据存储空间(即删除了相关训练数据后的数据存储空间)中,删除当前的数据存储空间中存储时间最晚的训练数据,直至数据存储空间可以存储目标训练数据。
可选地,当目标训练数据的数据量大于数据存储空间的剩余存储容量时,数据加载设备还可以继续执行上述对多个训练数据的遍历,直至被访问的目标训练数据的数据量小于或等于数据存储空间的剩余存储容量。若遍历结束后,上述多个训练数据中不存在训练数据被存储至数据存储空间,则从这多个训练数据中选取部分训练数据,并将数据存储空间中存储时间最晚的训练数据删除,直至数据存储空间的剩余存储容量大于或等于选取出的部分训练数据的数据量,进而实现对选取的部分训练数据的存储。其中,选取的部分训练数据,可以示例性地包括:这多个训练数据中,数据量小于或等于数据量阈值的一个或多个训练数据。
其中,数据量阈值可以是预先设置的固定值,也可以是根据第i-1轮模型优化所采用的多个训练数据中,各个训练数据的数据量确定的数值。可选地,数据加载设备可以将第i-1轮模型优化所采用的多个训练数据中,数据量最小训练数据的数据量作为数据量阈值,使得数据加载设备可以将数据量最小训练数据,确定为可以选取的训练数据。当然,可选地,数据加载设备可以将第i-1轮模型优化所采用的多个训练数据中,任一训练数据的数据量作为数据量阈值。或者,数据加载设备根据第i-1轮模型优化所采用的多个训练数据中,各个训练数据的数据量进行某种数学运算(如加权平均运算),以将数学运算结果作为数据量阈值,本申请实施例对此不作限制。
值得说明的是,在实际应用中,数据加载设备可以在数据存储空间中并行存储训练数据。因此,本申请实施例中,数据存储空间中可以存在存储时间相同的多个训练数据。也就是说,数据存储空间中存储时间最晚的训练数据的数量,可以为一个或多个。在此情况下,数据加载设备从数据存储空间中删除存储时间最晚的训练数据,具体可以是删除这一个或多个训练数据中的所有训练数据,也可以是删除这一个或多个训练数据中的部分训练数据,本申请实施例对此不作限制。
此外,针对上述目标训练数据(或上述选取的部分训练数据)的存储,在具体的实施例中,数据加载设备可以指定目标训练数据的存储路径。此时,数据加载设备可以先从本地缓存空间中,查询指定的存储路径是否存在。若存在,则基于该存储路径在数据存储空间中存储该目标训练数据;若不存在,则在数据存储空间中为该目标训练数据分配该存储路径,以使得目标训练数据可以被存储在该存储路径所指示的存储位置。
基于上述提出的训练数据的存储方式,在本申请实施例中,数据加载请求可以包括业务数据的存储路径,该存储路径是由数据加载请求的发起对象所指定的。具体地,此处的存储路径可以理解为存储目录,该存储目录下可以存在多个训练数据。那么,数据加载请求所包括的存储路径,可以与上述第i-1轮模型优化所采用的训练数据的存储路径相同。在此情况下,加载业务数据(即第i轮模型优化所采用的训练数据)的方式可以是:基于查询到的存储路径,从数据存储空间中,确定除第i-1轮模型优化所采用的多个训练数据之外的其他训练数据,进而从确定出的其他训练数据中,选取一个或多个训练数据作为业务数据,并加载该业务数据。
由于第i-1轮模型优化所采用的训练数据是通过上述先进后出的淘汰策略被存储至数据存储空间的,因此,当数据存储空间的剩余存储容量不足时,可以保证对第i-1轮中较少的训练数据进行存储,从而使得数据加载设备在从数据存储空间中选取业务数据时,可以具备更多的候选数据,也就可以提升业务数据的选取成功率,进而使得业务数据的命中率也得到一定提升。
为了验证先进后出的淘汰策略的应用效果,相关人员分别在数据存储空间中应用了先进后出的淘汰策略和先进先出的淘汰策略,其应用结果的效果对比图可以如图4所示。基于图4可见,先进后出的数据淘汰策略在数据加载场景下所体现的命中率,优于先进先出的数据淘汰策略在数据加载场景下所体现的命中率。
本申请实施例中,当数据加载设备从云存储空间加载业务数据时,业务数据在云存储空间中的存储路径已被预先缓存至本地缓存空间。因此,数据加载设备在接收到数据加载请求时,可以从本地缓存空间中读取存储路径,而无需通过构建与云存储空间之间的网络连接实现从云存储空间中确定业务数据的存储路径。由于从本地缓存空间中读取存储路径的复杂度通常低于从云存储空间确定存储路径的复杂度,因此本方案可以在一定程度上通过降低存储路径的查询复杂度,节省业务数据的存储路径的查询时长,进而提升数据加载的效率。
请参见图5,图5是本申请实施例提出的又一种数据加载方法的示意流程图。该数据加载方法仍然是基于上述数据加载方案的原理所提出的,因而该数据加载方法可以由上述提及的数据加载设备来执行。如图5所示,该数据加载方法可以具体包括步骤S501-S504:
S501、接收对业务数据的数据加载请求,数据加载请求包括业务数据所在数据存储空间的存储类型。
在一个具体的实施例中,步骤S501中提及的业务数据、数据加载请求以及数据存储空间的存储类型等相关术语,可以参见步骤S201中相关实施例的阐述,本申请实施例在此不做赘述。
S502、当存储类型包括本地存储时,从本地缓存空间中查询业务数据的存储目录,存储目录用于指示业务数据所在的多个数据存储空间所映射的逻辑存储空间;其中,一个存储目录用于指示一个逻辑存储空间,一个逻辑存储空间映射至少两个数据存储空间。
需要特别说明的是,当存储类型包括本地存储时,数据存储空间则包括本地存储空间,因此可以理解,步骤S502至步骤S504均是指数据加载设备从本地存储空间加载业务数据的步骤,并且无特殊说明的情况下,后续关于步骤S502至步骤S504的相关实施例中所提及的数据存储空间,均是指本地存储空间。
在本申请实施例中,数据加载设备可以通过对至少两个数据存储空间进行存储资源整合,得到一个逻辑存储空间。该逻辑存储空间与这至少两个数据存储空间具备映射关系,使得用户侧可以基于逻辑存储空间,从与之映射的至少两个数据存储空间中进行业务数据的数据加载,或业务数据的数据存储。也就是说,逻辑存储空间是指:基于至少两个数据存储空间抽象出来的虚拟空间。在具体实现中,一个逻辑存储空间可以采用一个存储目录来指示,该存储目录下可以用于存储一个或多个数据(如业务数据)。可以理解,在该存储目录下存储的数据,实际上是存储至与该存储目录指示的逻辑存储空间相映射的至少两个数据存储空间中的。在此情况下,不仅可以实现将业务数据统一存储在一个存储目录,还可以实现基于一个存储目录对业务数据的跨盘存储,有效地便捷了用户侧对存储目录的调用和管理。
在一种可行的实现方式中,数据加载设备可以在对业务数据进行数据存储的过程中,构建得到逻辑存储空间。具体来说,数据加载设备可以在接收到对业务数据的数据存储请求后,获取业务数据的数据量,以及,N个数据存储空间中每个数据存储空间的剩余存储容量。其中,N为大于1的整数,且示例性地,N可以是该数据加载设备中存在的数据存储空间的总数量。若业务数据的数据量大于N个数据存储空间中,每个数据存储空间的剩余存储容量,则从这N个数据存储空间中选取多个数据存储空间,以将选取的多个数据存储空间进行存储资源整合,得到选取的多个数据存储空间所映射的逻辑存储空间。
其中,选取的多个数据存储空间的剩余存储容量总和,大于或者等于业务数据的数据量,以使得可以采用本地存储的方式实现对完整的业务数据的存储。可以理解,得到的逻辑存储空间,用于映射存储业务数据所采用的多个数据存储空间。那么,在存储业务数据时,数据加载设备可以先对业务数据进行分片,得到业务数据的多个数据片段,进而将多个数据片段存储至该逻辑存储空间所映射的多个数据存储空间中。其中,一个数据片段存储于一个数据存储空间中,而一个数据存储空间可以用于存储一个或多个数据片段。
示例性地,对业务数据进行分片处理得到的数据片段的数量,可以与该逻辑存储空间所映射的数据存储空间的数量相同。此外,数据加载设备还可以将用于指示该逻辑存储空间的存储目录,存储至本地缓存空间中,而该逻辑存储空间对应的存储目录,即为业务数据的存储目录。
在具体应用中,在对选取的多个数据存储空间进行存储资源整合,以得到相应的逻辑存储空间时,由于用于指示该逻辑存储空间的存储目录为业务数据所在的存储目录,因此数据加载设备可以先获取为业务数据指定的存储目录,进而构建获取到的存储目录所指示的逻辑存储空间,与选取的多个数据存储空间之间的映射关系,以此确定选取的多个数据存储空间所映射的逻辑存储空间。
可选地,数据加载设备也可以在对业务数据进行数据存储之前(如对数据加载设备进行初始化,以投入执行数据处理时),构建得到逻辑存储空间。基于上述构建业务数据的存储目录所指示的逻辑存储空间的方式,不难理解,在此情况下,数据加载设备构建得到逻辑存储空间的方式可以如下:
数据加载设备先获取需要构建的一个或多个存储目录,并且针对每个存储目录,从数据加载设备中选择至少两个数据存储空间,以构建该存储目录与这至少两个数据存储空间的空间标识之间的映射关系,使得该存储目录可以用于指示由这至少两个数据存储空间所整合得到的逻辑存储空间,进而基于该存储目录实现采用至少两个数据存储空间进行数据存储。
S503、若成功查询到业务数据的存储目录,则从存储目录指示的逻辑存储空间所映射的多个数据存储空间中,加载业务数据的数据片段。
其中,本申请实施例可以应用于对数据处理模型的模型优化场景中,以实现对训练数据的高效加载。在模型优化场景下,选取训练数据的规则、数据存储空间中训练数据的数据淘汰策略、数据存储空间中训练数据的存储时机,均可以参见上述步骤S203中关于模型优化场景的相关实施例所提出的原理,本申请实施例在此不再赘述。
此外,为了便于清楚地理解本申请实施例,以下结合具体示例,对本申请实施例在模型优化场景下的相关实现方式进行大致阐述。在本示例中,业务数据包括对数据处理模型进行第i轮模型优化所采用的训练数据,i为大于1的整数。业务数据所在的数据存储空间,至少包括多个训练数据。并且可选地,数据存储空间所包括的多个训练数据,可以包括在启动对数据处理模型的第i轮模型优化之前存储的训练数据,也可以包括在对数据处理模型进行历史模型优化过程中存储的训练数据。其中,在历史模型优化过程中存储的训练数据,具体可以包括:历史模型优化过程中所采用的训练数据。历史模型优化过程是指:位于第i轮模型优化之前的模型优化过程。也就是说,历史模型优化过程至少包括第i-1轮模型优化的模型优化过程。
以将第i-1轮模型优化所采用的多个训练数据,存储至业务数据所在数据存储空间为例,对数据存储的具体实现方式进行详细阐述。其中,将第i-1轮模型优化所采用的多个训练数据存储至业务数据所在数据存储空间,是指:这多个训练数据的存储目录与业务数据的存储目录相同。那么,存储这多个训练数据时所采用的数据存储空间,即为业务数据的存储目录指示的逻辑存储空间所映射的多个数据存储空间。为了便于描述,以下称业务数据的存储目录指示的逻辑存储空间所映射的多个数据存储空间为多个目标存储空间。
具体来说,在数据加载设备对数据处理模型进行第i-1轮模型优化后,可以获取对数据处理模型进行第i-1轮模型优化所采用的多个训练数据。进一步地,数据加载设备可以遍历多个训练数据,并获取当前遍历的目标训练数据的数据量,以及该多个目标存储空间的总剩余存储容量。当目标训练数据的数据量大于总剩余存储容量时,将最晚存储至该多个目标存储空间中的训练数据的数据片段删除,并将目标训练数据分片存储至该多个目标存储空间。当目标训练数据的数据量小于或等于总剩余存储容量时,将目标训练数据分片存储至该多个目标存储空间。
可选地,当目标训练数据的数据量大于总剩余存储容量时,数据加载设备还可以继续执行上述对多个训练数据的遍历,直至被访问的目标训练数据的数据量小于或等于总剩余存储容量。若遍历结束后,上述多个训练数据中不存在训练数据被存储至该多个目标存储空间,则从这多个训练数据中选取部分训练数据,并将最晚存储至该多个目标存储空间中的训练数据的数据片段删除,直至该多个目标存储空间的总剩余存储容量,大于或等于选取出的部分训练数据的数据量,进而实现对选取的部分训练数据的存储。其中,选取的部分训练数据,可以示例性地为:这多个训练数据中,数据量小于或等于数据量阈值的训练数据。数据量阈值的确定方式可以参见上述步骤S203中的相关实施例,本申请在此不再赘述。并且,需要说明的是,此处的数据量阈值和步骤S203中采用用的数据量阈值可以相同,也可以不同。
那么,针对本场景下业务数据的数据加载,数据加载请求还可以包括业务数据的存储目录。该存储目录具体可以是:与这多个目标存储空间相映射的逻辑存储空间的存储目录。基于此,数据加载设备在加载业务数据时,可以先从业务数据的存储目录指示的逻辑存储空间所映射的多个数据存储空间中,确定除多个训练数据以外的其他训练数据的数据片段。进一步地,可以从确定出的其他训练数据的数据片段中,选取参考训练数据的数据片段,进而将选取的参考训练数据的数据片段,作为业务数据的数据片段。最终,通过从业务数据的存储目录指示的逻辑存储空间所映射的多个数据存储空间中,加载业务数据的数据片段,实现对业务数据的加载。
S504、对加载的各个数据片段进行组合,得到业务数据。
在具体实现中,加载的各个数据片段可以关联有拼接标识,拼接标识用于指示各个数据片段之间的拼接顺序。那么,数据加载设备可以基于各个数据片段关联的拼接标识所指示的拼接顺序,对各个数据片段进行拼接,最终得到业务数据。
在本申请实施例中,当数据加载设备从本地存储空间加载业务数据时,数据加载设备从本地缓存空间中查询到的业务数据的存储目录,用于指示一个逻辑存储空间,而该逻辑存储空间与多个本地存储空间具有映射关系,使得数据加载设备可以通过一个存储目录实现从多个本地存储空间中加载业务数据。也就是说,在本申请实施例中,若业务数据划分成数据片段分散存储在多个本地存储空间,数据加载设备在加载该业务数据时,只需要获取一个整合后的存储目录,而无需从多个本地存储空间中分别获取相关数据片段的存储目录,可以减少数据加载的时间复杂度,从而提升数据加载的效率,同时在一定程度上降低数据加载设备对业务数据的存储目录的管理难度和使用难度。
基于图2的数据加载方法,本申请实施例提出了一种数据加载装置。该数据加载装置可以是运行于数据加载设备中的一个计算机程序。在具体实施例中,该数据加载装置可以用于执行图2所示的数据加载方法的相关步骤。请参见图6,该数据加载装置至少包括:第一接收单元601、第一查询单元602以及第一加载单元603。其中:
第一接收单元601,用于接收对业务数据的数据加载请求,所述数据加载请求包括所述业务数据所在数据存储空间的存储类型;
第一查询单元602,用于当所述存储类型包括云存储时,从本地缓存空间中查询所述业务数据的存储路径;所述本地缓存空间中的存储路径,是通过从所述数据存储空间中确定所述业务数据的存储位置,并预先将用于指示所述存储位置的存储路径,缓存至所述本地缓存空间得到的;
第一加载单元603,用于若成功查询到所述业务数据的存储路径,则基于查询到的存储路径,从所述数据存储空间中加载所述业务数据。
在一种实施方式中,所述业务数据包括对数据处理模型进行第i轮模型优化采用的训练数据,i为大于1的整数;所述数据加载请求还包括所述业务数据的存储路径;所述数据加载装置还包括第一存储单元604,第一存储单元604可以具体用于执行:
在对数据处理模型进行第i-1轮模型优化后,获取对所述数据处理模型进行第i-1轮模型优化所采用的多个训练数据;
遍历所述多个训练数据,并获取当前遍历的目标训练数据的数据量;
当所述目标训练数据的数据量,大于所述数据存储空间的剩余存储容量时,将所述数据存储空间中存储时间最晚的训练数据删除,并将所述目标训练数据存储至所述数据存储空间;
当所述目标训练数据的数据量,小于或等于所述数据存储空间的剩余存储容量时,将所述目标训练数据存储至所述数据存储空间;
所述第一加载单元603在用于基于查询到的存储路径,从所述数据存储空间中加载所述业务数据时,可以具体用于执行:
基于所述查询到的存储路径,从所述数据存储空间中确定除所述多个训练数据以外的其他训练数据;
从确定出的其他训练数据中,选取一个或多个训练数据;
将选取出的一个或多个训练数据作为所述业务数据,并加载所述业务数据。
在又一种实施方式中,第一加载单元603可以具体用于执行:
获取所述业务数据的属性信息,所述属性信息包括数据量及数据类型中的至少一种;
根据所述属性信息对所述业务数据进行资源消耗量预估,得到对所述业务数据进行数据加载时所消耗的参考资源量;
为所述业务数据分配数据处理资源,并采用分配的数据处理资源,从所述数据存储空间中加载所述业务数据;其中,所述数据处理资源的资源量为所述参考资源量。
在又一种实施方式中,数据加载装置还可以包括第一存储单元604,该第一存储单元604可以用于执行:
获取所述业务数据的数据共享类型;
若所述数据共享类型指示所述业务数据为私有数据,则对所述本地缓存空间所属的处理设备进行权限验证处理;
若对所述处理设备的权限验证通过,则从所述数据存储空间中确定所述业务数据的存储位置;
获取用于指示所述存储位置的存储路径,并将获取到的存储路径缓存至所述本地缓存空间。
根据本申请的一个实施例,图2所示的数据加载方法中的各个步骤,可以由图6所示的数据加载装置中的各个单元来执行。例如,图2中的步骤S201可以由数据加载装置中的第一接收单元601来执行,步骤S202可以由数据加载装置中的第一查询单元602来执行,步骤S203可以由数据加载装置中的第一加载单元603来执行。
根据本申请的再一个实施例,图6所示的数据加载装置中的各个单元可以是基于逻辑功能划分的,且各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者,其中的某个(某些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请实施例的技术效果的实现。在本申请的其他实施例中,上述数据加载装置也可以包括其他单元,在实际应用中,这些功能也可以由其他单元协助实现,并且可以由多个单元协助实现。
根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如上述数据加载设备的通用通信设备上,运行能够执行如图2所示的方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图6所示的数据加载装置,以及来实现本申请实施例中相应的数据加载方法。其中,计算机程序可以记载于例如计算机存储介质上,并通过计算机存储介质装载于上述数据加载设备中,并在其中运行。
本申请实施例中,当数据加载装置从云存储空间加载业务数据时,业务数据在云存储空间中的存储路径已被预先缓存至本地缓存空间。因此,数据加载装置在接收到数据加载请求时,可以从本地缓存空间中读取存储路径,而无需通过构建与云存储空间之间的网络连接实现从云存储空间中确定业务数据的存储路径。由于从本地缓存空间中读取存储路径的复杂度通常低于从云存储空间确定存储路径的复杂度,因此本申请实施例可以在一定程度上通过降低存储路径的查询复杂度,节省业务数据的存储路径的查询时长,进而提升数据加载的效率。
基于图5的数据加载方法,本申请实施例提出了又一种数据加载装置。该数据加载装置可以是运行于数据加载设备中的一个计算机程序。在具体实施例中,该数据加载装置可以用于执行图5所示的数据加载方法的相关步骤。请参见图7,该数据加载装置至少包括:第二接收单元701、第二查询单元702、第二加载单元703以及数据组合单元704。其中:
第二接收单元701,用于接收对业务数据的数据加载请求,所述数据加载请求包括所述业务数据所在数据存储空间的存储类型;
第二查询单元702,用于当所述存储类型包括本地存储时,从本地缓存空间中查询所述业务数据的存储目录,所述存储目录用于指示所述业务数据所在的多个数据存储空间所映射的逻辑存储空间;其中,一个存储目录用于指示一个逻辑存储空间,一个逻辑存储空间映射至少两个数据存储空间;
第二加载单元703,用于若成功查询到所述业务数据的存储目录,则从所述存储目录指示的逻辑存储空间所映射的多个数据存储空间中,加载所述业务数据的数据片段;
数据组合单元704,用于对加载的各个数据片段进行组合,得到所述业务数据。
在一种实施方式中,图5的数据加载方法所对应的数据加载装置还可以包括第二存储单元705,第二存储单元705可以具体用于执行:
响应于所述业务数据的数据存储请求,获取所述业务数据的数据量,以及N个数据存储空间中每个数据存储空间的剩余存储容量,N为大于1的整数;
若所述业务数据的数据量大于所述每个数据存储空间的剩余存储容量,则从所述N个数据存储空间中选取多个数据存储空间;其中,选取的多个数据存储空间的剩余存储容量总和大于或者等于所述业务数据的数据量;
将选取的多个数据存储空间进行存储资源整合,得到所述选取的多个数据存储空间所映射的逻辑存储空间;
对所述业务数据进行分片,得到所述业务数据的多个数据片段,并将所述多个数据片段存储至所述选取的多个数据存储空间中;
将用于指示所述选取的多个数据存储空间所映射的逻辑存储空间的存储目录,存储至所述本地缓存空间中。
在又一种实施方式中,图5的数据加载方法所对应的数据加载装置还可以包括第二存储单元705,第二存储单元705可以具体用于执行:
获取为所述业务数据指定的存储目录;
构建获取到的存储目录所指示的逻辑存储空间与所述选取的多个数据存储空间之间的映射关系;
确定所述选取的多个数据存储空间所映射的逻辑存储空间。
在又一种实施方式中,所述业务数据包括对数据处理模型进行第i轮模型优化采用的训练数据,i为大于1的整数;所述数据加载请求还包括所述业务数据的存储目录;图5的数据加载方法所对应的数据加载装置还可以包括第二存储单元705,第二存储单元705可以具体用于执行:
在对数据处理模型进行第i-1轮模型优化后,获取对所述数据处理模型进行第i-1轮模型优化所采用的多个训练数据;
遍历所述多个训练数据,并获取当前遍历的目标训练数据的数据量,以及所述多个数据存储空间的总剩余存储容量;
当所述目标训练数据的数据量大于所述总剩余存储容量时,将最晚存储至所述多个数据存储空间中的训练数据的数据片段删除,并将所述目标训练数据分片存储至所述多个数据存储空间;
当所述目标训练数据的数据量小于或等于所述总剩余存储容量时,将所述目标训练数据分片存储至所述多个数据存储空间;
第二加载单元703在执行加载所述业务数据的数据片段时,具体用以执行:
若成功查询到所述业务数据的存储目录,则从所述业务数据的存储目录指示的逻辑存储空间所映射的多个数据存储空间中,确定除所述多个训练数据以外的其他训练数据的数据片段;
从确定出的其他训练数据的数据片段中,选取参考训练数据的数据片段;
将选取的参考训练数据的数据片段,作为所述业务数据的数据片段;
从所述业务数据的存储目录指示的逻辑存储空间所映射的多个数据存储空间中,加载所述业务数据的数据片段。
根据本申请的一个实施例,图5所示的数据加载方法中的各个步骤,可以由图7所示的数据加载装置中的各个单元来执行。具体来说,图5中的步骤S501可以由数据加载装置中的第二接收单元701来执行,步骤S502可以由数据加载装置中的第二查询单元702来执行,步骤S503可以由数据加载装置中的第二加载单元703来执行,步骤S504可以由数据加载装置中的数据组合单元704来执行。
根据本申请的再一个实施例,图7所示的数据加载装置中的各个单元可以是基于逻辑功能划分的,且各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者,其中的某个(某些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请实施例的技术效果的实现。在本申请的其他实施例中,上述数据加载装置也可以包括其他单元,在实际应用中,这些功能也可以由其他单元协助实现,并且可以由多个单元协助实现。
根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如上述数据加载设备的通用通信设备上,运行能够执行如图5所示的方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图7所示的数据加载装置,以及来实现本申请实施例中相应的数据加载方法。其中,计算机程序可以记载于例如计算机存储介质上,并通过计算机存储介质装载于上述数据加载设备中,并在其中运行。
在本申请实施例中,当数据加载装置从本地存储空间加载业务数据时,数据加载装置从本地缓存空间中查询到的业务数据的存储目录,用于指示一个逻辑存储空间,而该逻辑存储空间与多个本地存储空间具有映射关系,使得数据加载装置可以通过一个存储目录实现从多个本地存储空间中加载业务数据。也就是说,在本申请实施例中,若业务数据划分成数据片段分散存储在多个本地存储空间,数据加载装置在加载该业务数据时,只需要获取一个整合后的存储目录,而无需从多个本地存储空间中分别获取相关数据片段的存储目录,可以减少数据加载的时间复杂度,从而提升数据加载的效率,同时在一定程度上降低数据加载装置对业务数据的存储目录的管理难度和使用难度。
基于上述方法实施例以及装置实施例的相关描述,本申请实施例还提供了一种数据加载设备,并且该数据加载设备可以用于运行数据处理客户端。请参见图8,该数据加载设备至少包括处理器801以及计算机存储介质802,且处理器801以及计算机存储介质802通过总线或其他方式连接。
其中,上述提及的计算机存储介质802是数据加载设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机存储介质802既可以包括数据加载设备中的内置存储介质,当然也可以包括数据加载设备所支持的扩展存储介质。计算机存储介质802提供存储空间,该存储空间存储了数据加载设备的操作系统。并且,在该存储空间中还存放了适于被处理器801加载并执行的一条或多条的计算机程序,这些计算机程序可以是一个或一个以上的程序代码。
需要说明的是,此处的计算机存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器的存储介质。处理器801(或称CPU(Central Processing Unit,中央处理器))是数据加载设备的计算核心以及控制核心,其适于实现一条或多条计算机程序,具体适于加载并执行一条或多条计算机程序从而实现相应方法流程或相应功能。
在一个实施例中,可以由处理器801加载并执行计算机存储介质802中存放的一条或多条计算机程序,以实现上述有关图2所示的方法实施例中的相应方法步骤。在此情况下,计算机存储介质802中的一条或多条计算机程序可以由处理器801加载并执行如下步骤:
接收对业务数据的数据加载请求,所述数据加载请求包括所述业务数据所在数据存储空间的存储类型;
当所述存储类型包括云存储时,从本地缓存空间中查询所述业务数据的存储路径;所述本地缓存空间中的存储路径,是通过从所述数据存储空间中确定所述业务数据的存储位置,并预先将用于指示所述存储位置的存储路径,缓存至所述本地缓存空间得到的;
若成功查询到所述业务数据的存储路径,则基于查询到的存储路径,从所述数据存储空间中加载所述业务数据。
在一种实施方式中,所述业务数据包括对数据处理模型进行第i轮模型优化采用的训练数据,i为大于1的整数;所述数据加载请求还包括所述业务数据的存储路径;处理器801可以具体用于加载并执行:
在对数据处理模型进行第i-1轮模型优化后,获取对所述数据处理模型进行第i-1轮模型优化所采用的多个训练数据;
遍历所述多个训练数据,并获取当前遍历的目标训练数据的数据量;
当所述目标训练数据的数据量,大于所述数据存储空间的剩余存储容量时,将所述数据存储空间中存储时间最晚的训练数据删除,并将所述目标训练数据存储至所述数据存储空间;
当所述目标训练数据的数据量,小于或等于所述数据存储空间的剩余存储容量时,将所述目标训练数据存储至所述数据存储空间;
所述处理器801在用于加载并执行基于查询到的存储路径,从所述数据存储空间中加载所述业务数据时,可以具体用于加载并执行:
基于所述查询到的存储路径,从所述数据存储空间中确定除所述多个训练数据以外的其他训练数据;
从确定出的其他训练数据中,选取一个或多个训练数据;
将选取出的一个或多个训练数据作为所述业务数据,并加载所述业务数据。
在又一种实施方式中,处理器801可以具体用于加载并执行:
获取所述业务数据的属性信息,所述属性信息包括数据量及数据类型中的至少一种;
根据所述属性信息对所述业务数据进行资源消耗量预估,得到对所述业务数据进行数据加载时所消耗的参考资源量;
为所述业务数据分配数据处理资源,并采用分配的数据处理资源,从所述数据存储空间中加载所述业务数据;其中,所述数据处理资源的资源量为所述参考资源量。
在又一种实施方式中,处理器801可以具体用于加载并执行:
获取所述业务数据的数据共享类型;
若所述数据共享类型指示所述业务数据为私有数据,则对所述本地缓存空间所属的处理设备进行权限验证处理;
若对所述处理设备的权限验证通过,则从所述数据存储空间中确定所述业务数据的存储位置;
获取用于指示所述存储位置的存储路径,并将获取到的存储路径缓存至所述本地缓存空间。
本申请实施例中,当数据加载设备从云存储空间加载业务数据时,业务数据在云存储空间中的存储路径已被预先缓存至本地缓存空间。因此,数据加载设备在接收到数据加载请求时,可以从本地缓存空间中读取存储路径,而无需通过构建与云存储空间之间的网络连接实现从云存储空间中确定业务数据的存储路径。由于从本地缓存空间中读取存储路径的复杂度通常低于从云存储空间确定存储路径的复杂度,因此本申请实施例可以在一定程度上通过降低存储路径的查询复杂度,节省业务数据的存储路径的查询时长,进而提升数据加载的效率。
在又一个实施例中,可以由处理器801加载并执行计算机存储介质802中存放的一条或多条计算机程序,以实现上述有关图5所示的方法实施例中的相应方法步骤。在此情况下,计算机存储介质802中的一条或多条计算机程序可以由处理器801加载并执行如下步骤:
接收对业务数据的数据加载请求,所述数据加载请求包括所述业务数据所在数据存储空间的存储类型;
当所述存储类型包括本地存储时,从本地缓存空间中查询所述业务数据的存储目录,所述存储目录用于指示所述业务数据所在的多个数据存储空间所映射的逻辑存储空间;其中,一个存储目录用于指示一个逻辑存储空间,一个逻辑存储空间映射至少两个数据存储空间;
若成功查询到所述业务数据的存储目录,则从所述存储目录指示的逻辑存储空间所映射的多个数据存储空间中,加载所述业务数据的数据片段;
对加载的各个数据片段进行组合,得到所述业务数据。
在一种实施方式中,处理器801可以具体用于加载并执行:
响应于所述业务数据的数据存储请求,获取所述业务数据的数据量,以及N个数据存储空间中每个数据存储空间的剩余存储容量,N为大于1的整数;
若所述业务数据的数据量大于所述每个数据存储空间的剩余存储容量,则从所述N个数据存储空间中选取多个数据存储空间;其中,选取的多个数据存储空间的剩余存储容量总和大于或者等于所述业务数据的数据量;
将选取的多个数据存储空间进行存储资源整合,得到所述选取的多个数据存储空间所映射的逻辑存储空间;
对所述业务数据进行分片,得到所述业务数据的多个数据片段,并将所述多个数据片段存储至所述选取的多个数据存储空间中;
将用于指示所述选取的多个数据存储空间所映射的逻辑存储空间的存储目录,存储至所述本地缓存空间中。
在又一种实施方式中,处理器801可以具体用于加载并执行:
获取为所述业务数据指定的存储目录;
构建获取到的存储目录所指示的逻辑存储空间与所述选取的多个数据存储空间之间的映射关系;
确定所述选取的多个数据存储空间所映射的逻辑存储空间。
在又一种实施方式中,所述业务数据包括对数据处理模型进行第i轮模型优化采用的训练数据,i为大于1的整数;所述数据加载请求还包括所述业务数据的存储目录;处理器801可以具体用于加载并执行:
在对数据处理模型进行第i-1轮模型优化后,获取对所述数据处理模型进行第i-1轮模型优化所采用的多个训练数据;
遍历所述多个训练数据,并获取当前遍历的目标训练数据的数据量,以及所述多个数据存储空间的总剩余存储容量;
当所述目标训练数据的数据量大于所述总剩余存储容量时,将最晚存储至所述多个数据存储空间中的训练数据的数据片段删除,并将所述目标训练数据分片存储至所述多个数据存储空间;
当所述目标训练数据的数据量小于或等于所述总剩余存储容量时,将所述目标训练数据分片存储至所述多个数据存储空间;
处理器801在加载并执行“加载所述业务数据的数据片段”时,可以具体用于加载并执行:
若成功查询到所述业务数据的存储目录,则从所述业务数据的存储目录指示的逻辑存储空间所映射的多个数据存储空间中,确定除所述多个训练数据以外的其他训练数据的数据片段;
从确定出的其他训练数据的数据片段中,选取参考训练数据的数据片段;
将选取的参考训练数据的数据片段,作为所述业务数据的数据片段;
从所述业务数据的存储目录指示的逻辑存储空间所映射的多个数据存储空间中,加载所述业务数据的数据片段。
在本申请实施例中,当数据加载设备从本地存储空间加载业务数据时,数据加载设备从本地缓存空间中查询到的业务数据的存储目录,用于指示一个逻辑存储空间,而该逻辑存储空间与多个本地存储空间具有映射关系,使得数据加载设备可以通过一个存储目录实现从多个本地存储空间中加载业务数据。也就是说,在本申请实施例中,若业务数据划分成数据片段分散存储在多个本地存储空间,数据加载设备在加载该业务数据时,只需要获取一个整合后的存储目录,而无需从多个本地存储空间中分别获取相关数据片段的存储目录,可以减少数据加载的时间复杂度,从而提升数据加载的效率,同时在一定程度上降低数据加载设备对业务数据的存储目录的管理难度和使用难度。
本申请实施例还提供了一种计算机存储介质,该计算机存储介质中存储了上述图2或图5所示的数据加载方法对应的一条或多条计算机程序,当处理器加载并执行该一条或多条计算机程序,可以实现实施例中对相应数据加载方法的描述,本申请实施例在此不再赘述。对应地,对采用相同方法的有益效果的描述,在此也不再赘述。此外,值得一提的是,计算机程序可以被部署在一个或多个能够相互通信的设备上执行。
此外,需要说明的是,根据本申请实施例的一个方面,还提供了一种程序产品或计算机程序,该程序产品包括计算机程序,该计算机程序存储在计算机存储介质中。数据加载设备中的处理器从计算机存储介质读取该计算机程序,然后执行该计算机程序,进而使得该数据加载设备能够执行上述图2或图5所示的数据加载方法的相关实施例中,针对各方面的各种可选方式所提出的实现方法。
本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,而计算机程序可存储于计算机存储介质中,并且该计算机程序在执行时,可包括上述数据加载方法的全部实施例相关的流程。其中,计算机存储介质可包括磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
另外,可以理解的是,以上所揭露的仅为本申请的局部实施例而已,当然不能以此来限定本申请之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或局部流程,并依本申请权利要求所作的等同变化,仍属于本申请所涵盖的范围。
还需要特别说明的是,本申请实施例中的相关数据收集(如训练数据的收集),在实例应用时应该严格根据相关法律法规的要求,并且,若涉及到获取对象信息相关的数据时,应当获得该对象主体的知情同意或单独同意(或具备相关数据采集合法性基础)。此外,还应当在法律法规及对象主体的授权范围内,开展后续数据使用及处理行为。

Claims (12)

1.一种数据加载方法,其特征在于,包括:
接收对业务数据的数据加载请求,所述数据加载请求包括所述业务数据所在数据存储空间的存储类型;
当所述存储类型包括云存储时,从本地缓存空间中查询所述业务数据的存储路径;所述本地缓存空间中的存储路径,是通过从所述数据存储空间中确定所述业务数据的存储位置,并预先将用于指示所述存储位置的存储路径,缓存至所述本地缓存空间得到的;
若成功查询到所述业务数据的存储路径,则基于查询到的存储路径,从所述数据存储空间中加载所述业务数据。
2.根据权利要求1所述的方法,其特征在于,所述业务数据包括对数据处理模型进行第i轮模型优化采用的训练数据,i为大于1的整数;所述数据加载请求还包括所述业务数据的存储路径;所述方法还包括:
在对数据处理模型进行第i-1轮模型优化后,获取对所述数据处理模型进行第i-1轮模型优化所采用的多个训练数据;
遍历所述多个训练数据,并获取当前遍历的目标训练数据的数据量;
当所述目标训练数据的数据量,大于所述数据存储空间的剩余存储容量时,将所述数据存储空间中存储时间最晚的训练数据删除,并将所述目标训练数据存储至所述数据存储空间;
当所述目标训练数据的数据量,小于或等于所述数据存储空间的剩余存储容量时,将所述目标训练数据存储至所述数据存储空间;
所述基于查询到的存储路径,从所述数据存储空间中加载所述业务数据,包括:
基于所述查询到的存储路径,从所述数据存储空间中确定除所述多个训练数据以外的其他训练数据;
从确定出的其他训练数据中,选取一个或多个训练数据;
将选取出的一个或多个训练数据作为所述业务数据,并加载所述业务数据。
3.根据权利要求1所述的方法,其特征在于,从所述数据存储空间中加载所述业务数据的方式包括:
获取所述业务数据的属性信息,所述属性信息包括数据量及数据类型中的至少一种;
根据所述属性信息对所述业务数据进行资源消耗量预估,得到对所述业务数据进行数据加载时所消耗的参考资源量;
为所述业务数据分配数据处理资源,并采用分配的数据处理资源,从所述数据存储空间中加载所述业务数据;其中,所述数据处理资源的资源量为所述参考资源量。
4.根据权利要求1所述的方法,其特征在于,将所述业务数据的存储路径缓存至所述本地缓存空间的方式包括:
获取所述业务数据的数据共享类型;
若所述数据共享类型指示所述业务数据为私有数据,则对所述本地缓存空间所属的处理设备进行权限验证处理;
若对所述处理设备的权限验证通过,则从所述数据存储空间中确定所述业务数据的存储位置;
获取用于指示所述存储位置的存储路径,并将获取到的存储路径缓存至所述本地缓存空间。
5.一种数据加载方法,其特征在于,包括:
接收对业务数据的数据加载请求,所述数据加载请求包括所述业务数据所在数据存储空间的存储类型;
当所述存储类型包括本地存储时,从本地缓存空间中查询所述业务数据的存储目录,所述存储目录用于指示所述业务数据所在的多个数据存储空间所映射的逻辑存储空间;其中,一个存储目录用于指示一个逻辑存储空间,一个逻辑存储空间映射至少两个数据存储空间;
若成功查询到所述业务数据的存储目录,则从所述存储目录指示的逻辑存储空间所映射的多个数据存储空间中,加载所述业务数据的数据片段;
对加载的各个数据片段进行组合,得到所述业务数据。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
响应于所述业务数据的数据存储请求,获取所述业务数据的数据量,以及N个数据存储空间中每个数据存储空间的剩余存储容量,N为大于1的整数;
若所述业务数据的数据量大于所述每个数据存储空间的剩余存储容量,则从所述N个数据存储空间中选取多个数据存储空间;其中,选取的多个数据存储空间的剩余存储容量总和大于或者等于所述业务数据的数据量;
将选取的多个数据存储空间进行存储资源整合,得到所述选取的多个数据存储空间所映射的逻辑存储空间;
对所述业务数据进行分片,得到所述业务数据的多个数据片段,并将所述多个数据片段存储至所述选取的多个数据存储空间中;
将用于指示所述选取的多个数据存储空间所映射的逻辑存储空间的存储目录,存储至所述本地缓存空间中。
7.根据权利要求6所述的方法,其特征在于,所述将选取的多个数据存储空间进行存储资源整合,得到所述选取的多个数据存储空间所映射的逻辑存储空间,包括:
获取为所述业务数据指定的存储目录;
构建获取到的存储目录所指示的逻辑存储空间与所述选取的多个数据存储空间之间的映射关系;
确定所述选取的多个数据存储空间所映射的逻辑存储空间。
8.根据权利要求5所述的方法,其特征在于,所述业务数据包括对数据处理模型进行第i轮模型优化采用的训练数据,i为大于1的整数;所述数据加载请求还包括所述业务数据的存储目录;所述方法还包括:
在对数据处理模型进行第i-1轮模型优化后,获取对所述数据处理模型进行第i-1轮模型优化所采用的多个训练数据;
遍历所述多个训练数据,并获取当前遍历的目标训练数据的数据量,以及所述多个数据存储空间的总剩余存储容量;
当所述目标训练数据的数据量大于所述总剩余存储容量时,将最晚存储至所述多个数据存储空间中的训练数据的数据片段删除,并将所述目标训练数据分片存储至所述多个数据存储空间;
当所述目标训练数据的数据量小于或等于所述总剩余存储容量时,将所述目标训练数据分片存储至所述多个数据存储空间;
加载所述业务数据的数据片段的方式包括:
若成功查询到所述业务数据的存储目录,则从所述业务数据的存储目录指示的逻辑存储空间所映射的多个数据存储空间中,确定除所述多个训练数据以外的其他训练数据的数据片段;
从确定出的其他训练数据的数据片段中,选取参考训练数据的数据片段;
将选取的参考训练数据的数据片段,作为所述业务数据的数据片段;
从所述业务数据的存储目录指示的逻辑存储空间所映射的多个数据存储空间中,加载所述业务数据的数据片段。
9.一种数据加载装置,其特征在于,包括:
第一接收单元,用于接收对业务数据的数据加载请求,所述数据加载请求包括所述业务数据所在数据存储空间的存储类型;
第一查询单元,用于当所述存储类型包括云存储时,从本地缓存空间中查询所述业务数据的存储路径;所述本地缓存空间中的存储路径,是通过从所述数据存储空间中确定所述业务数据的存储位置,并预先将用于指示所述存储位置的存储路径,缓存至所述本地缓存空间得到的;
第一加载单元,用于若成功查询到所述业务数据的存储路径,则基于查询到的存储路径,从所述数据存储空间中加载所述业务数据。
10.一种数据加载装置,其特征在于,包括:
第二接收单元,用于接收对业务数据的数据加载请求,所述数据加载请求包括所述业务数据所在数据存储空间的存储类型;
第二查询单元,用于当所述存储类型包括本地存储时,从本地缓存空间中查询所述业务数据的存储目录,所述存储目录用于指示所述业务数据所在的多个数据存储空间所映射的逻辑存储空间;其中,一个存储目录用于指示一个逻辑存储空间,一个逻辑存储空间映射至少两个数据存储空间;
第二加载单元,用于若成功查询到所述业务数据的存储目录,则从所述存储目录指示的逻辑存储空间所映射的多个数据存储空间中,加载所述业务数据的数据片段;
数据组合单元,用于对加载的各个数据片段进行组合,得到所述业务数据。
11.一种数据加载设备,其特征在于,包括:
处理器,所述处理器用于实现一条或多条计算机程序;
计算机存储介质,所述计算机存储介质存储有一条或多条计算机程序,所述一条或多条计算机程序适于由所述处理器加载并实现如权利要求1-4任一项所述的数据加载方法,或实现如权利要求5-8任一项所述的数据加载方法。
12.一种计算机存储介质,其特征在于,所述计算机存储介质存储有一条或多条计算机程序,所述一条或多条计算机程序适于由处理器加载并实现如权利要求1-4任一项所述的数据加载方法,或实现如权利要求5-8任一项所述的数据加载方法。
CN202310605678.1A 2023-05-25 2023-05-25 数据加载方法、装置、设备及计算机存储介质 Pending CN116974465A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310605678.1A CN116974465A (zh) 2023-05-25 2023-05-25 数据加载方法、装置、设备及计算机存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310605678.1A CN116974465A (zh) 2023-05-25 2023-05-25 数据加载方法、装置、设备及计算机存储介质

Publications (1)

Publication Number Publication Date
CN116974465A true CN116974465A (zh) 2023-10-31

Family

ID=88473873

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310605678.1A Pending CN116974465A (zh) 2023-05-25 2023-05-25 数据加载方法、装置、设备及计算机存储介质

Country Status (1)

Country Link
CN (1) CN116974465A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117389998A (zh) * 2023-12-13 2024-01-12 北京汉勃科技有限公司 基于大模型的数据存储方法和装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117389998A (zh) * 2023-12-13 2024-01-12 北京汉勃科技有限公司 基于大模型的数据存储方法和装置
CN117389998B (zh) * 2023-12-13 2024-03-12 北京汉勃科技有限公司 基于大模型的数据存储方法和装置

Similar Documents

Publication Publication Date Title
CN104731516B (zh) 一种存取文件的方法、装置及分布式存储系统
KR20200139780A (ko) 그래프 데이터 처리 방법, 그래프 데이터 계산 태스크들을 공개하는 방법 및 디바이스, 저장 매체 및 컴퓨터 장치
US11296940B2 (en) Centralized configuration data in a distributed file system
CN111901294A (zh) 一种构建在线机器学习项目的方法及机器学习系统
CN113209633A (zh) 镜像的处理方法、装置、电子设备及可读存储介质
CN110347651A (zh) 基于云存储的数据同步方法、装置、设备及存储介质
CN110334297A (zh) 终端页面的加载方法、终端、服务器及存储介质
CN111143039B (zh) 一种虚拟机的调度方法、装置及计算机存储介质
CN103442090A (zh) 一种数据分散存储的云计算系统
US20180218276A1 (en) Optimizing Application Performance Using Finite State Machine Model and Machine Learning
CN108777718B (zh) 一种业务系统通过客户端访问读多写少系统的方法和装置
US20140115098A1 (en) Methods, systems, and media for stored content distribution and access
CN116974465A (zh) 数据加载方法、装置、设备及计算机存储介质
CN103607424A (zh) 一种服务器连接方法及服务器系统
CN109376125A (zh) 一种元数据存储方法、装置、设备及计算机可读存储介质
CN110245129A (zh) 一种分布式全局数据去重方法和装置
CN112000285A (zh) 强一致存储系统、数据强一致存储方法、服务器及介质
CN114003562A (zh) 一种目录遍历方法、装置、设备及可读存储介质
CN110502472A (zh) 一种大量小文件的云存储优化方法及其系统
CN112988062B (zh) 一种元数据读取限制方法、装置、电子设备及介质
WO2021210123A1 (ja) スケジューリング方法、スケジューラ、gpuクラスタシステムおよびプログラム
CN112631994A (zh) 数据迁移方法及系统
CN115238006A (zh) 检索数据同步方法、装置、设备及计算机存储介质
CN108960378A (zh) 一种数据下载方法、系统、装置和存储介质
CN112131142B (zh) 一种数据集快速缓存的方法、系统、设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication