【技术实现步骤摘要】
本专利技术实施例涉及存储技术,尤其涉及一种存储设备间移动数据的方法、控制器和存储系统。
技术介绍
一体化存储(UnifiedAccessingStorage,以下简称:UAS)系统中可以包括多种不同特性的存储设备,如可以包括动态随机访问存储器(DynamicRandomAccessMemory,以下简称:DRAM)、非易失性存储器(Non-VolatileMemory,以下简称:NVM)、基于Flash的固态硬盘(Flash-basedSolidStateDisk,以下简称:Flash-basedSSD)、磁盘(HardDisk,以下简称:HDD)等。这些不同特性的存储设备都通过内存总线或者其它互连方式连接到CPU。一体化存储系统对不同特性的存储设备进行统一编址,CPU可以寻址到整个存储系统的各个地址空间,从而可以针对一体化存储系统中的各个存储设备进行存取访问。为了更好地利用一体化存储系统的性能,需要支持应用程序在一体化存储系统的不同存储设备间移动数据。因此,如何使应用程序能够在一体化存储系统的不同存储设备间移动数据,成为亟待解决的技术问题。
技术实现思路
本专利技术实施例提供一种存储设备间移动数据的方法、控制器和存储系统。第一方面,提供一种存储设备间移动数据的方法,包括:一体化存储UAS控制器接收用户空间库发送的数据移动请求,所述数据移动请求包括源存储设备的源地址、目的存储设备的目的地址以及 ...
【技术保护点】
一种存储设备间移动数据的方法,其特征在于,包括:一体化存储UAS控制器接收用户空间库发送的数据移动请求,所述数据移动请求包括源存储设备的源地址、目的存储设备的目的地址以及所需移动的数据大小,所述数据移动请求为所述用户空间库接收到应用程序对所述用户空间库中的数据移动应用程序接口API的调用请求时发送的;所述UAS控制器根据所述源地址、目的地址以及数据大小,将待移动数据从所述源存储设备移动到目的存储设备。
【技术特征摘要】
1.一种存储设备间移动数据的方法,其特征在于,包括:
一体化存储UAS控制器接收用户空间库发送的数据移动请求,所述数
据移动请求包括源存储设备的源地址、目的存储设备的目的地址以及所需移
动的数据大小,所述数据移动请求为所述用户空间库接收到应用程序对所述
用户空间库中的数据移动应用程序接口API的调用请求时发送的;
所述UAS控制器根据所述源地址、目的地址以及数据大小,将待移动
数据从所述源存储设备移动到目的存储设备。
2.根据权利要求1所述的方法,其特征在于,所述UAS控制器接收用
户空间库发送的数据移动请求,所述数据移动请求包括源存储设备的源地
址、目的存储设备的目的地址以及所需移动的数据大小,包括:
所述UAS控制器接收用户空间库发送的寄存器写请求,所述寄存器写
请求包括源存储设备的源地址、目的存储设备的目的地址以及所需移动的数
据大小;
所述UAS控制器将所述源地址、目的地址以及数据大小写入寄存器;
所述UAS控制器根据所述源地址、目的地址以及数据大小,将待移动
数据从所述源存储设备移动到目的存储设备,包括:
所述UAS控制器从所述寄存器中读取所述源地址、目的地址以及数据
大小,并根据所述源地址、目的地址以及数据大小,将待移动数据从所述源
存储设备移动到目的存储设备。
3.根据权利要求1所述的方法,其特征在于,所述UAS控制器接收用
户空间库发送的数据移动请求,所述数据移动请求包括源存储设备的源地
址、目的存储设备的目的地址以及所需移动的数据大小,包括:
所述UAS控制器接收用户空间库发送的数据移动操作指令,所述数据
移动操作指令包括源存储设备的源地址、目的存储设备的目的地址以及所需
移动的数据大小。
4.根据权利要求2或3所述的方法,其特征在于,所述UAS控制器根
据所述源地址、目的地址以及数据大小,将待移动数据从所述源存储设备移
动到目的存储设备之后,还包括:
所述UAS控制器向寄存器中写入移动操作完成信息,以使所述用户空间
库在接收到所述应用程序对所述用户空间库中的检查API的调用请求时读取
\t所述移动操作完成信息并向所述应用程序通知数据移动操作完成。
5.根据权利要求1~4中任一项所述的方法,其特征在于,所述UAS控
制器根据所述源地址、目的地址以及数据大小,将待移动数据从所述源存储
设备移动到目的存储设备,包括:
所述UAS控制器将所述源地址转换为源物理地址,并将所述目的地址
转换为目的物理地址;
所述UAS控制器确定从所述源物理地址开始的所述数据大小的数据块
为待移动数据;
所述UAS控制器将所述待移动数据从所述源物理地址移动到所述目的
物理地址。
6.根据权利要求5所述的方法,其特征在于,若所述源物理地址为一
个源存储设备的物理地址,且所述目的物理地址为一个目的存储设备的物理
地址,则:
所述UAS控制器将所述待移动数据从所述源物理地址移动到所述目的
物理地址,包括:
所述UAS控制器从所述源存储设备读取所述待移动数据,并根据所述
目的物理地址将读取的所述待移动数据写入所述目的存储设备中;
或者,
所述UAS控制器从所述源存储设备读取所述待移动数据,并将读取的
所述待移动数据缓存到所述UAS控制器的缓存空间中;从所述缓存空间中
读取所述待移动数据,并根据所述目的物理地址将读取的所述待移动数据写
入所述目的存储设备中。
7.根据权利要求5所述的方法,其特征在于,若所述源物理地址为一
个源存储设备的物理地址,且所述目的物理地址包含至少两个目的存储设备
的物理地址;或者,若所述源物理地址包含至少两个源存储设备的物理地
址,且所述目的物理地址为一个目的存储设备的物理地址;或者,若所述源
物理地址包含至少两个源存储设备的物理地址,且所述目的物理地址包含至
少两个目的存储设备的物理地址,则:
所述UAS控制器将所述待移动数据从所述源物理地址移动到所述目的
物理地址,包括:
所述UAS控制器将移动操作拆分为一个源存储设备对应一个目的存储
设备的移动子操作;
所述UAS控制器针对每个移动子操作,从所述源存储设备读取所述待
移动数据,并根据所述目的物理地址将读取的所述待移动数据写入所述目的
存储设备中;或者,所述UAS控制器从源存储设备读取所述待移动数据,
并将读取的所述待移动数据缓存到所述UAS控制器的缓存空间中,从所述
缓存空间中读取所述待移动数据,并根据所述目的物理地址将读取的所述待
移动数据写入目的存储设备中。
8.根据权利要求5所述的方法,其特征在于,若所述源物理地址包含
一个源存储设备中的至少两个非连续的物理地址,所述目的物理地址为一个
目的存储设备中的连续物理地址;或者,所述源物理地址为一个源存储设备
中的连续物理地址,所述目的物理地址包含一个目的存储设备中的至少两个
非连续的物理地址;或者,所述源物理地址包含一个源存储设备中的至少两
个非连续的物理地址,所述目的物理地址包含一个目的存储设备中的至少两
个非连续的物理地址,则:
所述UAS控制器将所述待移动数据从所述源物理地址移动到所述目的
物理地址,包括:
所述UAS控制器将移动操作拆分为所述源物理地址中的每一个物理地
址对应所述目的物理地址中的每一个物理地址的移动子操作;
所述UAS控制器针对每个移动子操作,从所述源存储设备读取对应物
理地址的待移动数据,并根据对应目的物理地址将读取的所述待移动数据写
入所述目的存储设备中;或者,所述UAS控制器从源存储设备读取对应物
理地址的待移动数据,并将读取的待移动数据缓存到所述UAS控制器的缓
存空间中,从所述缓存空间中读取待移动数据,并根据对应目的物理地址将
读取的所述待移动数据写入目的存储设备中。
9.根据权利要求6~8中任一项所述的方法,其特征在于,若所述目的
存储设备是以数据块粒度存储的设备,则所述UAS控制器将所述待移动数
据写入目的存储设备,包括:
所述UAS控制器根据所述数据块粒度大小,对所述待移动数据进行数
据块划分;
若划分得到的数据块均为所述数据块粒度大小,则所述UAS控制器将
划分得到的各个数据块写入目的存储设备;
若划分得到的数据块包括N个数据块粒度大小的数据块和1个小于数据
块粒度大小的数据块,则所述UAS控制器将划分得到的所述N个数据块写
\t入目的存储设备,并将所述1个小于数据块粒度大小的数据块填充为满足数
据块粒度大小的数据块并写入目的存储设备。
10.根据权利要求5~9中任一项所述的方法,其特征在于,所述UAS控
制器确定从所述源物理地址开始的所述数据大小的数据块为待移动数据之
前,还包括:
所述UAS控制器确定所述源物理地址和目的物理地址是否超出可操作
的地址范围;
若超出,则所述UAS控制器向所述用户空间库发送地址越界报告;
若未超出,则所述UAS控制器执行确定从所述源物理地址开始的所述
数据大小的数据块为待移动数据的步骤。
11.根据权利要求1~10...
【专利技术属性】
技术研发人员:夏飞,陈明宇,蒋德钧,熊劲,
申请(专利权)人:华为技术有限公司,中国科学院计算技术研究所,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。