存储空间的分配方法

文档序号:6402992阅读:443来源:国知局
专利名称:存储空间的分配方法
技术领域
本发明一般地涉及计算机技术领域,更具体地来说,涉及一种存储空间的分配方法。
背景技术
存储器的主要功能是存储程序和各种数据,并能在计算机运行过程中高速、自动地完成程序或数据的存取。存储器是具有“记忆”功能的设备。过去计算机系统只包含很有限的常用存储设备,通过将这些存储设备安装到不同的地方来访问它们,这些不同安装点的存储空间是不能互通的,在使用有限的存储设备之前必须对它们有一个明确的规划,否则使用过程中可能出现无法预料的问题,比如空间不足等。随着越来越多的存储设备加入到系统中,这种一对一的结构明显不能满足用户的需求,甚至无法创建一个超过磁盘大小的分区,即使磁盘总量远大于该分区的大小。Linux系统中的DM (Device Mapper)技术可以解决这类问题,它是Linux2.6内核提供的一种从逻辑设备到物理设备的映射框架机制,在该机制下,用户可以很方便的根据自己的需要制定实现存储资源的管理策略。在现有技术中,当某项应用需要一部分存储空间的时候,往往是预先从后端存储系统中划分出一部分足够大的空间预先分配给该项应用,即使这项应用暂时不需要使用这么大的存储空间,但由于这部分存储空间已经被预留了出来,其它应用程序无法利用这些已经部署但闲置的存储容量。这种分配模式一方面使闲置的存储数量不断增加,存储空间利用率低,相应地提高了系统成本;另一方面用户不得不购买更大的存储容量,从而进一步增加了成本。

发明内容
针对现有技术中存储空间利用率低,系统成本高的缺陷,本发明提出了能够解决上述缺陷的一种存储空间的分配方法。根据本发明的实施例,提供了一种存储空间的分配方法,包括:在用户写操作期间,当有限物理存储空间不足时,从共享物理存储空间中查找空闲物理盘区并将数据写入空闲物理盘区;以及为用户分配扩展物理存储空间,并将数据转移至扩展物理存储空间。优选地,在用户写操作之前,为用户分配第一逻辑存储空间并建立第一逻辑存储空间中的有限逻辑存储空间与有限物理存储空间的第一映射关系。优选地,建立第一逻辑存储空间中的有限逻辑存储空间与有限物理存储空间的第一映射关系,进一步包括:建立有限逻辑存储空间的多个逻辑盘区与有限物理存储空间的多个物理盘区的第一映射关系并进行存储。 优选地,从共享物理存储空间中查找空闲物理盘区并将数据写入空闲物理盘区,进一步包括:申请共享物理存储空间并查找空闲物理盘区;建立查找到的空闲物理盘区与第二逻辑存储空间中的逻辑盘区的第二映射关系并进行存储;以及根据第二映射关系将数据写入空闲物理盘区中,其中,第一逻辑存储空间包括第二逻辑存储空间。优选地,为用户分配扩展物理存储空间并将数据转移至扩展物理存储空间,进一步包括:为用户分配扩展物理存储空间,建立扩展逻辑存储空间的多个逻辑盘区与扩展物理存储空间的多个物理盘区的第三映射关系并进行存储;以及根据第二映射关系和第三映射关系将数据从空闲物理盘区转移至扩展物理存储空间,其中,第一逻辑存储空间包括扩展逻辑存储空间。优选地,当将数据写入空闲物理盘区中时,在空间分配表中将空闲物理盘区的状态标记为非空闲状态;或者当将数据从空闲物理盘区转移至扩展物理存储空间时,在空间分配表中将空闲物理盘区的状态标记为空闲状态。优选地,将第一映射关系、第二映射关系以及第三映射关系存储在映射表中。优选地,在为用户分配的物理存储空间充足以后,根据第一映射关系和第三映射关系分别将用户要写入的数据从有限逻辑存储空间映射到有限物理存储空间以及从扩展逻辑存储空间映射到扩展物理存储空间。优选地,根据第一映射关系和第三映射关系分别将用户要读取的数据从有限物理存储空间映射到有限逻辑存储空间以及从扩展物理存储空间映射到扩展逻辑存储空间。优选地,有限逻辑存储空间和扩展逻辑存储空间之和小于或等于第一逻辑存储空间。利用本发明的存储空间的分配方法,将用户所申请的存储空间和实际分配存储空间进行分离,使得系统可以使用相对较小且利用率高的存储空间来满足用户对大容量存储空间的预配置需求。当用户使用的空间增加时,系统可动态增加分配给用户的存储容量。从而大幅提高了存储空间的利用率,减少了对存储空间的需求,相应地降低了成本。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。在附图中:

图1为根据本发明的实施例的分配给用户的存储空间的示图;图2为根据本发明的实施例的存储空间的分配方法的整体流程图;图3为根据本发明的实施例的申请共享物理存储空间并写入数据的具体流程图;以及图4为根据本发明的实施例的分配扩展物理存储空间并将数据移入的具体流程图。
具体实施例方式以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。图1为根据本发明的实施例的根据本发明的实施例的分配给用户的存储空间的示图。参考图1,在用户写操作之前,为用户分配第一逻辑存储空间100并建立第一逻辑存储空间100中的有限逻辑存储空间102与有限物理存储空间112的第一映射关系。建立第一逻辑存储空间100中的有限逻辑存储空间102与有限物理存储空间112的第一映射关系进一步包括:建立有限逻辑存储空间102的多个逻辑盘区与有限物理存储空间的多个物理盘区的第一映射关系并进行存储。如图1所示,有限物理存储空间112包括多个物理盘区PE (Physical Extend),第一逻辑存储空间100包括多个逻辑盘区LE (Logical Extend)并且有限逻辑存储空间102包括多个逻辑盘区LE。以物理存储空间中的物理盘区PE和逻辑存储空间中的逻辑盘区LE为单位建立物理存储空间与逻辑存储空间之间的映射关系。具体地,通过管理员LVM2 (Linux Volume Manager2version)为用户分配存储空间时,首先为用户分配足够大的逻辑存储空间100,将逻辑存储空间中的一部分102与有限物理存储空间112建立第一映射关系,并且将该第一映射关系存储在映射表中。在建立映射关系以后,用户可以使用有限物理存储空间112。也就是说,如果没有建立逻辑存储空间与物理存储空间的映射关系,则用户无法使用物理存储空间进行读写操作。图2为根据本发明的实施例的存储空间的分配方法的整体流程图。存储空间的分配方法200包括以下步骤。在步骤202中,在用户写操作期间,当有限物理存储空间不足时,从共享物理存储空间中查找空闲物理盘区并将数据写入空闲物理盘区。具体地,当管理员为用户分配的有限物理存储空间112不能满足用户的读写需求时,在共享物理存储空间108中查找到一个或几个空闲物理盘区PE并且将数据临时写入查找到的一个或几个空闲物理盘区PE中。在步骤204中,为用户分配扩展物理存储空间,并将数据转移至扩展物理存储空间。具体地,当有限物理存储空间112不足时,管理员将整个扩展物理存储空间110中的一部分作为扩展物理存储空间分配给用户,并将临时写入查找到的空闲物理盘区PE中的数据转移至扩展物理存储空间 。利用本发明实施例的存储空间的分配方法,可以在用户申请存储空间时,为用户分配有限的存储空间,并且在有限的存储空间不能满足用户需求时,由管理员再次为用户分配存储空间并且不会影响用户的读写操作。从而提高了存储空间的利用率,减少了对存储空间的需求,从而避免了在为用户分配足够大的存储空间以后,造成大量存储空间闲置并无法利用的缺点,相应地降低了用户的使用成本。下文中,将参照图3和图4详细描述存储空间的分配方法。图3为根据本发明的实施例的申请共享物理存储空间并写入数据的具体流程图,以及图4为根据本发明的实施例的分配扩展物理存储空间并将数据移入的具体流程图。在用户写操作期间,当有限物理存储空间不足时,从共享物理存储空间中查找空闲物理盘区并将数据写入空闲物理盘区的具体流程图300包括以下具体步骤。在步骤302中,申请共享物理存储空间并查找空闲物理盘区,具体地,申请可以由多个用户共同使用的共享物理存储空间108并且在共享物理存储空间的空间分配表中查找空闲物理盘区,也就是说,未被任何用户使用的物理盘区。空间分配表存储共享物理存储空间的多个物理盘区的使用状态,即,空闲状态或非空闲状态。在一个实施例中,可以通过逻辑I表示空闲状态,并且通过逻辑O表示非空闲状态。当有用户使用该物理盘区时,在空间分配表中将该物理盘区的状态标记为0,相反,当没有用户使用该物理盘区时,将该物理盘区的状态标记为I。在另一个实施例中,可以通过逻辑O表示空闲状态,并且通过逻辑I表示非空闲状态。当有用户使用该物理盘区时,在空间分配表中将该物理盘区的状态标记为1,相反,当没有用户使用该物理盘区时,将该物理盘区的状态标记为O。在步骤304中,建立查找到的空闲物理盘区与第二逻辑存储空间106中的逻辑盘区的第二映射关系并进行存储。具体地,如图1所示,在查找到的共享物理存储空间108中的空闲物理盘区和第二逻辑存储空间中的逻辑盘区之间的建立第二映射关系(如图1的点线所示)并且将该第二映射关系存储在映射表中。在步骤306中,根据第二映射关系将数据写入空闲物理盘区中,其中,第一逻辑存储空间100包括第二逻辑存储空间106。具体地,根据第二映射关系,将数据临时存储在空闲物理盘区中并且将该空闲物理盘区标记为非空闲状态以避免其他用户向该物理盘区写入数据所导致的数据丢失,从而不会影响用户的读写操作。参考图4,为用户分配扩展物理存储空间并将数据转移至扩展物理存储空间的流程图400进一步包括以下具体步骤。在步骤402中,为用户分配扩展物理存储空间,建立扩展逻辑存储空间的多个逻辑盘区与扩展物理存储空间的多个物理盘区的第三映射关系并进行存储。具体地,参考图1,将整个扩展逻辑存储空间104中的一部分作为扩展逻辑存储空间,将整个扩展物理存储空间110的一部分作为扩展物理存储空间,并且在扩展逻辑存储空间和扩展物理存储空间之间建立第三映射关系,即,建立扩展逻辑存储空间的多个逻辑盘区与扩展物理存储空间的多个物理盘区的第三映射关系并将该第三映射关系存储在映射表中。第一逻辑存储空间100包括扩展逻辑存储空间,S卩,整个扩展逻辑存储空间104的一部分。在步骤404中,根据第二映射关系和第三映射关系将数据从空闲物理盘区转移至扩展物理存储空间。具体地,根据第二映射关系,将临时写入在共享物理存储空间中的数据转移至扩展物理存储空间并且在空间分配表中将之前标记为非空闲状态的物理盘区再次标记为空闲状态,从而释放共享物理存储空间便于其他用户使用。因此,提高了共享物理存储空间的利用率。例 如,在一个实施例中,存储空间的利用率提高了大约60%至80%,减少20%的存储空间的浪费。这种为用户分配扩展物理存储空间的步骤执行多次,但是为用户分配的扩展物理存储空间小于扩展逻辑存储空间。此外,有限逻辑存储空间以及扩展逻辑存储空间之和小于或等于第一逻辑存储空间。具体地,为用户扩展存储空间具有大小限制,即,由于用户的物理存储空间不足,多次为用户分配扩展物理存储空间的情况下,最初分配的有限物理存储空间和扩展的物理存储空间之和应该小于最初分配的第一逻辑存储空间。此外,在为用户分配的物理存储空间充足以后,根据第一映射关系和第三映射关系分别将用户要写入的数据从有限逻辑存储空间映射到有限物理存储空间以及从扩展逻辑存储空间映射到扩展物理存储空间。具体地,当为用户分配的有限物理存储空间充足时,可以进行正常写入操作,即,根据第一映射关系将用户要写入的数据从有限逻辑存储空间映射到有限物理存储空间。当为用户分配的有限物理存储空间不足时,为用户分配了扩展物理存储空间以后,用户可以进行读写操作的物理存储空间充足时,根据第三映射关系将用户要写入的数据从扩展逻辑存储空间映射到扩展物理存储空间。用户在读取操作期间,不涉及存储空间是否充足的问题,可以直接进行读取操作。具体地,根据第一映射关系和第三映射关系分别将用户要读取的数据从有限物理存储空间映射到有限逻辑存储空间以及从扩展物理存储空间映射到扩展逻辑存储空间。利用本发明的实施例的存储空间的分配方法,通过在最初为用户分配存储空间时分配有限存储空间,在用户存储空间不足时,将数据临时存储在共享存储空间中,并且再次为用户分配扩展存储空间以后,将临时存储在共享存储空间的数据转移至扩展存储空间,从而避免了用户的存储空间太大,而导致大量闲置存储空间的浪费。因此大幅提高了存储空间的利用率,降低了系统的存储设备的成本。此外,及时释放用户临时存储数据的共享存储空间,相应地提高了共享存储空间的利用率。以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均 应包含在本发明的保护范围之内。
权利要求
1.一种存储空间的分配方法,其特征在于,包括: 在用户写操作期间,当有限物理存储空间不足时,从共享物理存储空间中查找空闲物理盘区并将数据写入所述空闲物理盘区;以及 为所述用户分配扩展物理存储空间,并将所述数据转移至所述扩展物理存储空间。
2.根据权利要求1所述的分配方法,其特征在于,在所述用户写操作之前,为所述用户分配第一逻辑存储空间并建立所述第一逻辑存储空间中的有限逻辑存储空间与所述有限物理存储空间的第一映射关系。
3.根据权利要求2所述的分配方法,其特征在于,建立所述第一逻辑存储空间中的所述有限逻辑存储空间与有限物理存储空间的第一映射关系,进一步包括: 建立所述有限逻辑存储空间的多个逻辑盘区与所述有限物理存储空间的多个物理盘区的所述第一映射关系并进行存储。
4.根据权利要求2所述的分配方法,其特征在于,从所述共享物理存储空间中查找所述空闲物理盘区并将所述数据写入所述空闲物理盘区,进一步包括: 申请所述共享物理存储空间并查找所述空闲物理盘区; 建立查找到的空闲物理盘区与第二逻辑存储空间中的逻辑盘区的第二映射关系并进行存储;以及 根据所述第二映射关系将所述数据写入所述空闲物理盘区中,其中,所述第一逻辑存储空间包括所述第二逻辑存储空间。
5.根据权利要求4所述的分配方法,其特征在于,为所述用户分配所述扩展物理存储空间并将所述数据转移至所述扩展物理存储空间,进一步包括: 为所述用户分配所述扩展物理存储空间,建立所述扩展逻辑存储空间的多个逻辑盘区与所述扩展物理存储空间的多个物理盘区的第三映射关系并进行存储;以及 根据所述第二映射关系和所述第三映射关系将所述数据从所述空闲物理盘区转移至所述扩展物理存储空间,其中,所述第一逻辑存储空间包括所述扩展逻辑存储空间。
6.根据权利要求5所述的分配方法,其特征在于,当将所述数据写入所述空闲物理盘区中时,在空间分配表中将所述所述空闲物理盘区的状态标记为非空闲状态;或者 当将所述数据从所述空闲物理盘区转移至所述扩展物理存储空间时,在空间分配表中将所述空闲物理盘区的状态标记为空闲状态。
7.根据权利要求5所述的分配方法,其特征在于,将所述第一映射关系、所述第二映射关系以及所述第三映射关系存储在映射表中。
8.根据权利要求7所述的分配方法,其特征在于,在为所述用户分配的物理存储空间充足以后, 根据所述第一映射关系和所述第三映射关系分别将所述用户要写入的数据从所述有限逻辑存储空间映射到所述有限物理存储空间以及从所述扩展逻辑存储空间映射到所述扩展物理存储空间。
9.根据权利要求7所述的分配方法,其特征在于,根据所述第一映射关系和所述第三映射关系分别将所述用户要读取的数据从所述有限物理存储空间映射到所述有限逻辑存储空间以及从所述扩展物理存储空间映射到所述扩展逻辑存储空间。
10.根据权利要求5所述的分配方法,其特征在于,所述有限逻辑存储空间和所述扩展逻辑存储空间之 和小于或等于所述第一逻辑存储空间。
全文摘要
本发明提供了一种存储空间的分配方法,包括在用户写操作期间,当有限物理存储空间不足时,从共享物理存储空间中查找空闲物理盘区并将数据写入所述空闲物理盘区;以及为用户分配扩展物理存储空间,并将数据转移至扩展物理存储空间。因此,提高成存储空间的利用率,减少了对存储空间的需求,从而降低了成本。
文档编号G06F12/02GK103218305SQ20131017374
公开日2013年7月24日 申请日期2013年5月10日 优先权日2013年5月10日
发明者边国伟, 袁清波, 苗艳超, 刘新春, 邵宗有 申请人:曙光信息产业(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1