《用于在存储器中分配管理数据集的系统和方法.pdf》由会员分享,可在线阅读,更多相关《用于在存储器中分配管理数据集的系统和方法.pdf(19页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103970671 A (43)申请公布日 2014.08.06 C N 1 0 3 9 7 0 6 7 1 A (21)申请号 201410041298.0 (22)申请日 2014.01.28 13/757,638 2013.02.01 US 14/071,625 2013.11.04 US G06F 12/02(2006.01) (71)申请人国际商业机器公司 地址美国纽约阿芒克 (72)发明人 K.B.达吉恩 D.C.里德 E.里奥斯 M.D.史密斯 (74)专利代理机构北京市柳沈律师事务所 11105 代理人黄剑飞 (54) 发明名称 用于在存储器中分配管理。
2、数据集的系统和方 法 (57) 摘要 本发明涉及一种在第二被管理空间中分配用 于在第一被管理空间中的数据集的附加请求存储 空间的系统和方法。接收用于在所述存储器的第 一管理空间中的所请求的数据集的对附加存储空 间的请求。修正量的存储空间至少包括当前被分 配给第一被管理空间中的所请求数据集的空间量 以及所请求附加存储空间。如果所述修正量的存 储空间超过所述值,在所述存储器的第二被管理 空间中的所分配存储空间中分配所述修正量的存 储空间。将所述数据集存储在第二被管理空间中 的所分配存储空间中。 (30)优先权数据 (51)Int.Cl. 权利要求书3页 说明书9页 附图6页 (19)中华人民共和国。
3、国家知识产权局 (12)发明专利申请 权利要求书3页 说明书9页 附图6页 (10)申请公布号 CN 103970671 A CN 103970671 A 1/3页 2 1.一种在存储器中分配管理数据集的系统,包括: 处理器;以及 计算机可读存储介质,具有可由所述处理器执行以便执行操作的代码,所述操作包 括: 接收对附加存储空间的请求,以便分配给存储在所述存储器的第一管理空间中的所请 求的数据集; 确定用于所请求数据集的修正量的存储空间,该修正量的存储空间至少包括当前被分 配给第一被管理空间中的所请求数据集的空间量以及所请求附加存储空间; 确定所述修正量的存储空间是否超过一个值; 响应于确定所。
4、述修正量的存储空间超过所述值,在所述存储器的第二被管理空间中的 所分配存储空间中分配所述修正量的存储空间;以及 将所述数据集存储在第二被管理空间中的所分配存储空间中。 2.如权利要求1所述的系统,其中所述第一和第二被管理空间被配置在存储器的卷 中,其中所述操作还包括: 确定在第一被管理空间中分配所请求的附加存储空间是否会导致具有数据集的卷的 第一被管理空间中的卷条件的结束,其中,响应于确定出现所述卷条件的结束,执行所述确 定所述修正量、确定所述修正量超过所述值、以及在所述第二被管理空间中分配所述被分 配存储空间的操作,所述卷条件的结束响应于在所述第一被管理空间中分配所请求附件存 储空间而出现。。
5、 3.如权利要求1所述的系统,其中所述值包括断点值,用于确定是把正被添加到所述 存储器的新数据集存储到第一被管理空间还是第二被管理空间,其中如果正被添加的所述 新数据集需要比所述断点值少的空间,则所述新数据集存储在第一被管理空间,以及其中 如果正被添加的所述新数据集需要比所述断点值多的空间,则所述新数据集存储在第二被 管理空间,其中数据被分配使用第一存储单元被分配在第一数据集中,以及数据使用第二 存储单元分配在第二被管理空间中,其中第二存储单元包括多倍第一存储单元。 4.如权利要求3所述的系统,其中第一被管理空间包括按照磁道和磁柱面管理的磁道 管理空间,并且存储在所述磁道管理空间中的数据集占用。
6、整数倍磁道,并且其中第二被管 理空间包括按照多个磁柱面单元管理的磁柱面管理空间,并且存储在所述磁柱面管理空间 中的数据集占用整数倍磁柱面。 5.如权利要求1所述的系统,其中所述对附加存储空间的请求来自于一种访问方法, 该方法寻求将数据添加到所述附加存储空间中的所请求数据集中,其中所述操作还包括: 确定用于所请求数据集的第一被管理空间中的所分配存储空间中的偏移;以及 将所述偏移传递给所述访问方法,其中所述访问方法开始写入所述数据,以便在所述 第二被管理空间中以所述偏移添加到所请求的数据集。 6.如权利要求5所述的系统,其中所述操作还包括: 将存储在第一被管理空间中的所请求数据集迁移到用于将被存储。
7、在第二被管理空间 中的所述偏移之前的所请求数据集的、第二被管理存储空间中的所分配的存储空间。 7.如权利要求1所述的系统,其中所述操作还包括: 在所述卷表中指示以执行对所请求数据集的合并; 权 利 要 求 书CN 103970671 A 2/3页 3 关闭所请求数据集; 响应于关闭所请求数据集,确定所述卷表是否指示用于所请求数据集的合并;以及 响应于所述卷表指示合并,将当前分配给第一被管理空间中的所请求数据集的空间中 的数据迁移到第二被管理空间中的所分配存储空间中。 8.一种在存储器中管理数据集的方法,包括: 接收对附加存储空间的请求,以便分配给存储在所述存储器的第一被管理空间中的所 请求数据。
8、集; 确定用于所请求数据集的修正量的存储空间,该修正量的存储空间至少包括当前被分 配给第一被管理空间中的所请求数据集的空间量以及所请求附加存储空间; 确定所述修正量的存储空间是否超过一个值; 响应于确定所述修正量的存储空间超过所述值,在所述存储器的第二被管理空间中的 所分配存储空间中分配所述修正量的存储空间;以及 将所述数据集存储在第二被管理空间中的所分配存储空间中。 9.如权利要求8所述的方法,其中所述第一和第二被管理空间被配置在存储器的卷 中,其中所述操作还包括: 确定在第一被管理空间中分配所请求的附加存储空间是否会导致具有所述数据集的 卷的第一被管理空间中的卷条件的结束,其中,响应于确定。
9、出现所述卷条件的结束,执行所 述确定所述修正量、确定所述修正量超过所述值、以及在所述第二被管理空间中分配所分 配存储空间的操作,所述卷条件的结束响应于在所述第一被管理空间中分配所请求附件存 储空间而出现。 10.如权利要求8所述的方法,其中所述值包括断点值,用于确定是把正被添加到所述 存储器的新数据集存储到第一被管理空间还是第二被管理空间,其中如果正被添加的所述 新数据集需要比所述断点值少的空间,则所述新数据集存储在第一被管理空间,以及其中 如果正被添加的所述新数据集需要比所述断点值多的空间,则所述新数据集存储在第二被 管理空间,其中数据被分配使用第一存储单元被分配在第一数据集中,以及数据使用。
10、第二 存储单元分配在第二被管理空间中,其中第二存储单元包括多倍第一存储单元。 11.如权利要求10所述的方法,其中第一被管理空间包括按照磁道和磁柱面管理的磁 道管理空间,并且存储在所述磁道管理空间中的数据集占用整数倍磁道,并且其中第二被 管理空间包括按照多个磁柱面单元管理的磁柱面管理空间,并且存储在所述磁柱面管理空 间中的数据集占用整数倍磁柱面。 12.如权利要求8所述的方法,其中所述对附加存储空间的请求来自于一种访问方法, 该方法寻求将数据添加到所述附加存储空间中的所请求数据集中,其中所述操作还包括: 确定用于所请求数据集的第一被管理空间中的所分配存储空间中的偏移;以及 将所述偏移传递给所述。
11、访问方法,其中所述访问方法开始写入所述数据,以便在所述 第二被管理空间中以所述偏移添加到所请求的数据集。 13.如权利要求12所述的方法,其中所述操作还包括: 将存储在第一被管理空间中的所请求数据集迁移到用于将被存储在第二被管理空间 中的所述偏移之前的所请求数据集的、第二被管理存储空间中的所分配的存储空间。 14.如权利要求8所述的方法,其中所述操作还包括: 权 利 要 求 书CN 103970671 A 3/3页 4 在所述卷表中指示以执行对所请求数据集的合并; 关闭所请求数据集; 响应于关闭所请求数据集,确定所述卷表是否指示用于所请求数据集的合并;以及 响应于所述卷表指示合并,将当前分配给。
12、第一被管理空间中的所请求数据集的空间中 的数据迁移到第二被管理空间中的所分配存储空间中。 15.如权利要求9所述的方法,包括: 响应于确定所述卷条件的结束不会导致第一被管理空间中的卷条件的结束,在第一被 管理空间中分配用于所请求数据集的所请求附加存储空间。 16.如权利要求9所述的方法,其中存储所请求数据集的所述卷包括第一卷,还包括: 响应于确定用于所请求数据集的存储空间小于所述值,将所请求数据集扩展到第二卷 的第一被管理空间。 17.如权利要求9所述的方法,其中存储所请求数据集的所述卷包括第一卷,还包括: 确定在第二被管理空间中分配所述修正量的存储空间是否会导致卷条件的结束,其中 响应于确定。
13、在第二被管理空间中分配所述修正量的存储空间不会导致卷条件的结束,执行 在第一卷中的第二被管理空间中的所分配存储空间中分配所述修正量的存储空间;以及 响应于确定在第二被管理空间中分配所述修正量的存储空间会导致卷条件的结束,在 第二卷的第二被管理空间中的所分配存储空间中分配所述修正量的存储空间。 18.如权利要求12所述的方法,其中所述确定所述偏移包括: 确定用于所请求数据集的第二被管理空间中的所分配存储空间的起始位置; 确定在第一被管理空间中的当前分配给所请求数据集的空间所需要的存储位置的数 量;以及 在所述起始位置加所确定的存储位置的数量处确定在第二被管理空间中的所分配存 储空间中的预先存在的。
14、数据末端位置。 19.如权利要求18所述的方法,其中所述对附加存储空间的请求用于一种写清气,使 得写数据添加到所请求数据集,其中在第二被管理空间中的所分配存储空间中存储所请求 数据集还包括: 将所述写数据写入用于所请求数据集的、第二被管理空间中的所分配存储空间。 权 利 要 求 书CN 103970671 A 1/9页 5 用于在存储器中分配管理数据集的系统和方法 技术领域 0001 本发明涉及一种用于在第二管理空间中分配用于第一管理空间中的数据集的附 加请求存储空间的计算机程序产品、系统以及方法。 背景技术 0002 在某种计算机环境中,多个主机系统可以在诸如互联存储设备的存储系统中配置 的。
15、容积中配置数据集,该互联存储设备例如直接访问存储设备(DASD)、冗余独立磁盘阵列 (RAID)、简单磁盘簇(JBOD)等等。数据集由一些盘区(extent)构成,这些盘区可以包括任 何聚集的轨道和数据存储单元。国际商用机器公司的操作系统采用卷目录表(VTOC) 来提供关于配置在卷中的盘区的数据集的信息,其中VTOC表示用于存储器中卷的轨道的 位置、盘区以及数据集。对于虚拟存储访问方法(VSAM)数据集,操作系统提供存储 在数据集中的VSAM卷数据集(VVDS),以便提供关于VSM关键字序列数据集的信息。(Z/OS 是IBM在美国或其它国家的注册商标)。 0003 某些卷可以配置为扩展地址卷(。
16、EAV),扩展地址卷被划分为磁道管理空间以及磁 柱面管理空间(cylinder-managed space)。在磁道管理空间中,卷上的存储空间按照磁道 和磁柱面管理,并且每个数据集占用整数倍磁道。磁道管理空间还存在于非-EAV卷中。在 磁柱面管理空间中,卷中的数据仅仅在包括磁柱面的单元中被管理。断点值(BPV)可以用 来确定对数据集的请求是否指向磁道管理空间或磁柱面管理空间,使得如果尺寸大于BPV, 则系统优选磁柱面管理空间用于该盘区。该规则适用于针对适合于磁柱面管理空间的数据 集的初级或次级空间的每个请求。如果磁柱面管理空间不足,则系统使用磁道管理空间或 使用这两种类型的空间。当盘空间的尺寸。
17、小于所述断点值,则系统优选使用磁道管理空间。 如果空间不足,则系统使用磁柱面管理空间或使用这两种类型的空间。 发明内容 0004 本发明提供了一种用于在第二被管理空间中分配用于第一被管理空间中的数据 集的附加被请求存储空间的计算机程序产品、系统和方法。接收对附加存储空间的请求以 便分配给在存储器中的第一被管理空间中存储的所请求的数据集。确定用于所请求数据集 的修正量的存储空间,该修正量的存储空间至少包括当前被分配给第一被管理空间中的所 请求数据集的空间量以及所请求附加存储空间。确定所述修正量的存储空间是否超过一个 值。响应于确定所述修正量的存储空间超过所述值,在所述存储器的第二被管理空间中的 。
18、所分配存储空间中分配所述修正量的存储空间。所述数据集存储在第二被管理空间中的所 分配存储空间中。 附图说明 0005 图1图释了计算环境的实施例。 0006 图2图释了卷存储空间的实施例。 说 明 书CN 103970671 A 2/9页 6 0007 图3图释了卷表的实施例。 0008 图4图释了数据集记录的实施例。 0009 图5图释了目录项的实施例。 0010 图6A和6B图释了处理对用于数据集的附加存储空间的请求的操作的实施例。 0011 图7图释了处理数据集的关闭的操作的实施例。 0012 图8图释了其中可以实现所述实施例的计算环境。 具体实施方式 0013 所描述的实施例提供了用于。
19、在第二被管理空间中分配用于驻留第一被管理空间 中的数据集的附加存储空间。与卷的第二被管理空间相比,第一被管理空间用于存储比较 小的数据。如果当前分配的空间和附加请求空间超过一个值,则被用于确定是否将数据存 储在第二被管理空间,随后在第二被管理空间中分配空间以便存储用于所述数据集的当前 被分配的数据和被写入附加请求空间的数据。要写入的新数据可以按照第二被管理空间中 的被分配存储中间中的一定偏移写入所述数据集中的预先存在数据将被存储的位置之后 的位置。用于第一被管理空间中的数据集的该预先存在数据可以在随后的时间被迁移,诸 如在数据集关闭以便不能进行对数据集的当前访问时。 0014 图1图释了计算环。
20、境的实施例。控制单元2,诸如存储控制单元或服务器,通过主 机(未示出)管理对存储器8中的卷6中的数据集4的访问。存储在存储器8中以及作为目 录10a加载到控制单元2的目录10提供关于存储在被配置为存储器8中的存储空间的卷 6中的数据集4的信息。数据集4包括用于将被存储在数据的同一逻辑位置中的数据的集 合,诸如来自单一应用、用户、企业等的数据。数据集4可以由分离的文件或记录构成,或者 包括单一文件或记录。数据集4可以包括索引(indexed)数据集,该索引数据集根据被用于 在数据集4中定位记录的主关键词被编索引。数据集索引提供了每个索引数据集10的索 引。例如,在IBM z/OS DFSMS实现。
21、中,数据集可以包括用于IBM虚拟存储访问方法(VSAM) 存储的关键词排序数据集(KSDS),其中,KSDS数据集中的每个记录都具有用于在数据集4 中定位记录的唯一关键词。 0015 控制单元2包括卷管理器12,用于管理数据集4在卷6中的存储。 0016 每个卷6包括卷表14,其具有卷6所具有的关于卷6的信息,包括磁轨以及磁轨的 盘区与数据集4的映射。卷表14可以存储在卷6中,诸如在该卷的第一较少记录中,如在 卷目录表(VTOC)中的情况一样,或者可以存储为卷6之外的元数据。控制单元2可以维持 卷表14a的副本以便用来管理卷6中的数据集4。在z/OS实用中,卷表14可以包括关于 数据集在卷6中。
22、的位置的信息,诸如数据集中的盘区与卷中的存储位置的映射。在替换实 施例中,卷表14可以包括其他类型的文件分配数据结构,其提供数据与存储位置的映射, 或者逻辑和/或物理存储位置。采用这种方式,卷表14提供数据与卷6中的数据集4的映 射。卷表14可以包括用于每个卷6的卷表记录,包括卷名称和表示具有配置在卷6中的盘 区的数据集的数据集记录。每个数据集记录可以具有用于卷6中的每个数据集4的信息, 包括一个或多个分派给数据集4的一个或多个盘区。所述盘区提供了与卷6中的磁道的映 射。目录10还可以包括关于分配到卷6的数据集4的附加信息,诸如分配尺寸。 0017 存储器8可以包括一个或多个诸如互联的存储设备。
23、(例如配置为DASD、RAID、 说 明 书CN 103970671 A 3/9页 7 JBOD、虚拟设备等等)的已知存储设备,作为固态存储设备(SSD),由固态电子设备构成,诸 如电可擦除可编程只读存储器(EEPROM)、闪存、闪盘、随机存取存储器(RAM)驱动器、存储 级内存(SCM)等等、磁盘、光盘、磁带等等。 0018 控制单元2经过连接器16与存储器8通讯,连接器16可以包括一个或多个网络, 诸如局域网(LAN)、存储区域网(SAN),广域网(WAN)、端对端网、无线网络等等。或者,连接 器16可以包括总线接口,诸如外设部件互连标准(PCI)总线或串行接口。操作系统4可以 包括已知的。
24、适当操作系统,诸如国际商用机器公司操作系统。(IBM 和z/OS是美国和外国IBM的商标)。 0019 图2提供了卷存储空间6的实施例,配置为第一被管理空间30a和第二被管理空 间30b。第一被管理空间30a可以用于存储尺寸小于断点值(BPV)尺寸的数据集4a而第二 被管理空间30b可以用来存储尺短大于断点值尺寸的数据集4b。在一个实施例中,数据被 分配在第一被管理空间30a中的第一存储单元中以及分配在第二被管理空间30b中的第二 存储单元中,以便第二存储单元包括多个第一存储单元,使得与第一被管理空间30a相比, 较大的存储分配单元被用于第二被管理空间30b。 0020 例如,在卷6包括扩展地。
25、址卷(EAV)的实施例中,卷可以配置为其中配置了磁道的 多个磁柱面。在这种实施例中,第一被管理空间30a可以包括磁道管理空间,其中数据管理 在磁道中和磁柱面中,并且每个数据集4a占用整数倍的磁道。第二被管理空间30b可以 包括仅仅被管理成多个磁柱面单元磁柱面管理空间,其中每个数据集4b占用整数倍个多 磁柱面单元。某些卷6可以被配置为EAV卷,具有第一被管理空间30a和第二被管理空间 30b,而其他卷可以被配置为仅仅具有磁道管理空间。与第二被管理空间30b不同,第一被 管理空间30a可以被分派卷6中的不同地址范围。 0021 图3图释了维持在用于一个卷6i的卷表14i的实例的信息的结构。卷表实例。
26、14i 包括卷名称50,也被称之为卷序列号,例如VOLSER,其提供了卷的唯一标识。卷名称50可 以包括在卷6i中的卷表14i的名称中。卷表实例14i还包括一个或多个数据集记录541 54n,表示具有配置在由卷表实例14i所代表的卷6i中的盘区的数据集。卷表14i还包括 一个或多个空闲空间记录56,标识了卷6i中可获得磁道的范围。 0022 图4图释了数据集记录54的实施例,诸如包括在卷表24中的数据集54154n。 每个数据集记录54包括数据集名称60和分配给数据集54的一个或多个盘区62。盘区62 提供了对由卷表20所标识的卷12中的磁道的映射。在映射中表示的磁道可以表达为盘、 磁柱面、头。
27、部以及记录位置(CCHHR)。数据集54还可以包括盘区合并标志64,表示第一被 管理空间30a中的数据集60的盘区是否需要被迁移到所指示的新位置66,其可以包括含有 数据集60的当前卷6或另一个卷的第二被管理空间30b。 0023 此处所使用的参考标记“n”可以指代其所附的元素的任何数量的实例,并且可以 在用于不同元件时指代相同或不同熟练的实例。 0024 数据集目录10提供了关于具有在一个或多个卷20中的盘区的数据集的信息。图 5图释了目录10中目录项80的实施例,包括数据集名称82以及一个或多个卷84,其中数 据集82分配空间。卷84可以按照来自所述卷的盘区被分派到数据集82的顺序列表,并。
28、且 指示基本卷名称或别名卷名称。每个卷84可以识别被分配给数据集82的卷中的盘区86。 用于一个卷84的盘区86可以按照被分配给数据集82的顺序列表。目录10可以通过包括 说 明 书CN 103970671 A 4/9页 8 数据集名称的关键词进行组织以便容许对数据集名称进行搜索,从而获得用于数据集名称 的项目80。 0025 当创建数据集4时,主机或控制单元2可以在目录10中创建项目(entry)80。主 机随后可以定位第一卷并将盘区赋予该卷,并且在目录项80中指明所分配的盘区86用于 所创建的数据集10。如果被分派给所述卷的当前盘区被充满的话,卷84将会被用于分派更 多盘区。而且,如果被分。
29、派给数据集的当前卷被充满的话,可以为数据集分派新卷。 0026 图6A和6B图释了由卷管理器12执行来处理对数据集4的附加空间的请求的操 作的实施例。响应于处理来自访问方法的对附加存储空间的请求(框100),以便将数据写入 第一被管理空间30a中的数据集,卷管理器12确定(框102)用于所请求数据集的修正量存 储空间,该修正量存储空间至少包括当前被分配给第一被管理空间30a中的所请求数据集 4a的空间量以及所请求的附加存储空间。如果(在框104处)在第一被管理空间30a中分 配的附加存储空间量不会导致具有数据集4a的卷4a中的卷条件的结束,那么卷管理器12 就在第一被管理空间30a中分配(在框。
30、106处)用于所请求数据集4a的所请求的附加存储 空间。 0027 如果在第一被管理空间30a中分配的附加存储空间量会导致具有数据集4a的卷 4a中的卷条件的结束,那么卷管理器12则确定(在框108处)所述修正量存储空间是否会 超过一个值。在一个实施例中,该比较值可以包括数据集尺寸的断点值(BPV),其确定数据 集是被存储在第一被管理空间30a还是第二被管理空间30b中,如果(在框108处)修正量 存储空间不超过所述值,则卷管理器12启动(在框110)处理以便执行EOV处理,从而将数 据集4a扩展到附加卷的第一被管理空间30a中。或者,在当所述修正量存储空间不超过所 述BPV时预先存在的数据可。
31、能保持在第一被管理空间30a中的同时,数据集可以被扩展到 第二被管理空间30b以便存储所请求的附加存储空间。 0028 如果(在框108处)修正量存储空间超过该值时,那么卷管理器12确定(在框112 处)在卷6的第二被管理空间30b中分配修正量存储空间是否会导致具有数据集4a的卷6 的卷条件结束。如果不会有卷的结束,那么卷管理器12就在具有数据集4a的当前卷6的 第二被管理空间30b中的所分配存储空间中分配(在框114处)修正量存储空间。如果(从 框112的“是”分支开始)会有卷的结束的情况,那么卷管理器12就在附加(新)卷的第二被 管理空间30b中的所分配存储空间中分配(在框114处)修正量。
32、存储空间,因为在具有所请 求数据集4a的当前卷中没有足够的存储空间。 0029 在第二被管理空间30b中分配修正量存储空间之后(从框114或116开始),控制 前进到框118以便设置新位置66来指示第二被管理空间30b中的所分配存储空间按以及 具有所分配存储空间的(当前或附加)卷。盘区合并标志64被设置(在框120处)来指示将 第一被管理空间30a中的所请求数据集4a中的预先存在数据合并到第二被管理空间30b 中的新位置66。 0030 在框114或116处在第二被管理空间30b中分配所请求附加存储空间以及设置新 位置66和盘区合并标志64之后,控制前进到图6B中的框122,以便确定用于所请求。
33、数据 集的所分配存储空间在第二被管理空间30b中的偏移,该偏移是所述访问方法将开始把用 于所请求存储空间的写入数据进行写入的偏移。该偏移可以紧随第二被管理空间30b中的 所分配存储空间中的一个位置,该位置是第一被管理空间30a中当前预先存在数据将要被 说 明 书CN 103970671 A 5/9页 9 存储的位置。为了确定该偏移,卷管理器12确定(在框122处)当前或新卷的第二被管理空 间30b中的所分配存储空间的起始位置。卷管理器12确定(在框124处)在第一被管理空 间30a中当前被分配给数据集4的空间所需要的存储位置的数量并根据起始位置加上所确 定存储位置的数量确定(在框126处)在所。
34、分配存储空间中预先存在数据末端位置。该偏移 被设置为(在框128处)紧随第二被管理空间30b中的预先存在数据末端位置的存储位置。 卷管理器12将该偏移传递(在框130处)给访问方法,以便是用来将数据写入在所述偏移开 始的数据集。 0031 卷管理器12还可以更新(在框132处)卷表14和用于所请求数据集的数据集记录 54,以便指示在第二被管理空间30b中的用于写入数据的附加分配存储空间。附加分配存 储空间可以被指示在用于数据集的新盘区信息62中,以便指示在第二被管理空间30b中的 存储地址以及具有附加分配的卷。在第二被管理空间30b中分配用于数据集4的附加数据 的空间后,未来分配请求将被扩展到。
35、第二被管理空间30b。 0032 在图6A和6B的实施例中,附加空间正被搜寻用于数据集4以便容纳来自写请求 的写入数据。在替代实施例中,除了写请求的操作可以要求被分配给数据集的附加空间或 将数据集4a扩展到第二被管理空间30b。 0033 在一个实施例中,图6A和6B的操作可以通过在检测到添加附加存储空间会超过 断点值时执行卷结束(EOV)例程来执行。当EOV例程望城,卷表12在框132处被更形以便 指示用于保留在第一被管理空间30a中的数据集4的数据需要被迁移。在替换实施例中, 在第二被管理空间30b中分配用于数据集4的附加存储空间的图6A和6B的操作可以被 执行为操作中除了EOV操作的部分。
36、,或者可以被执行为通过添加附加存储空间是否会达到 EOV以便在第二被管理空间30b中分配用于整个数据集4的空间。 0034 图7图释了由卷管理器12执行来处理管理数据集4的操作的实施例。在访问方 法之后处理(在方框150处)数据集4的关闭时,控制单元2或主机已经完成了对数据集4 的存取,卷管理器12确定(在框152处)盘区合并标志64指示在第一被管理空间30a中合 并数据集4的部分。如果没有,即没有设置盘区合并标志64,那么卷管理器12关闭数据集 4。如果设置盘区合并标志64,卷管理器12确定(在框156处)用于依然保持在第一被管理 空间30a中的数据集的数据的新位置66。卷管理器12按照顺序。
37、将在第一被管理空间30a 中的当前分配给所请求数据集的空间中的数据迁移(在框158处)到在第二被管理存储空间 30b中的从第二被管理空间30b中的所分配存储空间的开头开始被分配给所请求数据集4 的空间中。卷表14被更新以便指明在第二被管理空间30b中的被分配用于数据集4的迁 移数据的位置。 0035 在迁移之后,第二被管理空间30b容纳数据集2的所有数据。因为图6A和6B的 EOV操作不必移动第一被管理空间30a中的预先存在的数据并且该数据知道该数据集被关 闭为止才会被迁移,因此向第二被管理空间30b的迁移不会就数据集4进行操作的访问方 法的性能造成影响。 0036 所描述的实施例提供了一些技。
38、术,当将附加空间添加到一数据集导致数据集的尺 寸适合于第二被管理空间时,该技术用来为将用于对当前分配在第一被管理空间中的数据 集的访问请求的附加存储空间分配到第二被管理空间中的存储空间。在这种情况下,存储 空间被分配在第二被管理空间中以便容纳在第一被管理空间中当前被分配给所请求数据 说 明 书CN 103970671 A 6/9页 10 集的空间以及所请求的附加存储空间。为该访问方法提供偏移以便在第一被管理空间中的 数据被移动到所分配的存储空间之前向第二被管理空间中的所分配空间进行写入。用于第 一被管理空间中的数据集的数据可以之后迁入,诸如在数据集关闭时,使得在偏移量之前 存储第一被管理空间中。
39、的用于数据集的当前存在数据。 0037 图8图释了计算机系统302的实施例,其可以包括控制单元2的设备。可替代地, 控制单元2可以实现为硬件和/或软件的组合。控制单元2和存储其8可以实现在云计算 环境中,其中控制单元2和存储器8向所连接的主机提供存储服务。计算机节点302仅仅 是适当的计算节点的一个实例,并不是为了建议对在此所描述的本发明的实施例的功能性 的或用户的范围的任何限定。无论如何,计算机节点302能够被实施和/或执行在此以上 所提到的人任何功能。 0038 计算机节点302可以以多个其他通用或专用计算机系统环境或配置进行操作。可 以适用于用于计算机节点302的已知计算机系统、环境、和。
40、/或配置的实例包括但不限于个 人计算机系统、服务器计算机系统、薄客户机、厚客户机、手持或膝上设备、多处理器系统、 基于微处理器系统、机顶盒、可编程客户电子设备、网络PC、微计算机系统、框架计算机系 统、以及分布式云计算环境,其可以包括任何上述系统或设备等。 0039 计算机节点302可以描述成计算机系统可执行指令的总体语境中,诸如程序模 块,可以有计算机系统执行。通常,程序模块包括能够执行特定任务或实施特定抽象数据类 型的例程、程序、对象、组元、逻辑、数据结构等等。计算机节点302可以实践在分布式与计 算环境中,其中人物采用通过通讯网络连接的远程处理设备来执行。在分布式云计算环境 中,程序模块。
41、可以定位在包括内存存储设备的本地或远程计算机系统存储介质中。 0040 如图8所示,计算机节点302显示为通用计算机设备形式。计算机系统/服务器 302的组件包括但不限于一个或多个处理器或处理单元304、系统存储器306连接包括系统 存储器306的各种系统组件到处理器304的总线308 0041 总线308代表了任何即总类型总线结构中的一种或多种,包括存储器总线或存储 器控制器、外围总线、加速图形端口以及处理器或使用各种总新架构的任何种类的本地总 线。举例而非限制性地来说,这种架构包括工业标准架构(ISA)总线、微信道架构(MCA)总 线、增强ISA(EISA)总线、视频电子标准协会(VESA。
42、)本地总线以及外围组件互联(PCI)总 线。 0042 计算机节点302通常包括多种计算机系统可读介质。这种介质可以是计算机节点 302可以反问的任何可获得介质,并且其包括易失性和非易失性介质、可移除和不可以处介 质,并且可以用于存储程序和程序所使用的数据。 0043 系统存储器306可以包括具有易失性存储器形式的计算机系统可读介质,诸如随 机存取存储器(RAM)310和/或超高速缓存存储器312。计算机节点302还可以包括其他可 移除/非可移除、易失性/非易失性计算机系统存储介质。仅仅举例来说,存储系统313可 以提供来对不可移除、非易失性磁性介质(未示出并且通常称之为“硬盘”)进行读写。尽。
43、管 没有示出,可以提供对不可移除、非易失性磁盘(例如,“软盘”)进行读写的磁盘驱动器、对 诸如CD-ROM、DVD-ROM或其他光学介质的不可移除、非易失性光盘进行读写的光盘驱动器。 在这些实例中,每个都可以通过一个或多个数据介质接口连接到总线308。如下面将会进一 步描述的,存储器306可以包括至少一个程序产品,其具有一组(例如至少一个)程序模块, 说 明 书CN 103970671 A 10 7/9页 11 其被配置为执行本发明的实施例的功能。 0044 具有一组(至少一个)程序模块316的程序/实用程序314可以通过例如但不限 于操作系统、一个或多个应用程序、其他程序模块以及程序数据而被。
44、存储在存储器306中。 操作系统、一个或多个应用程序、其他程序模块以及程序数据中的每一个或其组合可以包 括网络环境的实现方式。程序模块316通过执行在此描述的发明的实施例的功能和/或方 法,诸如登录(logging)程序8的操作。 0045 计算机节点302还可以与一个或多个外部设备318进行通信,诸如键盘、指点设 备、显示器等等;使得用户能够与o计算机节点302进行交互的一个或多个设备;和/或能 够使得计算机系统/服务器302能够与一个或多个其他计算机设备通讯的任何设备(例如, 网卡、调制解调器等等)。这种通讯能够经由输入/输出(I/O)接口322来实现。还有,计 算机节点302能够经由网络。
45、适配器324与一个或多个网络通讯,诸如局域网(LAN)、广域网 (WAN)、和/或公共网络(例如英特网)。如所描绘的,网络适配器324经由总线308与计算 机系统/服务器302的其他组件通讯。需要理解的是,尽管没有示出,其他硬件和/或软件 组件可以与计算机系统/服务器302结合使用。实例包括但不限于微代码、设备驱动器、冗 余处理单元、外部盘驱动器阵列、RAID系统、磁带驱动器、以及数据文档存储系统等等。 0046 所属技术领域的技术人员知道,本发明的各个方面可以使用标准程序和/或工程 技术生成软件、固件、硬件或者任何上述的组合实现为系统、方法或计算机程序产品。因此, 本发明的各个方面可以具体实。
46、现为以下形式,即:完全的硬件实施方式、完全的软件实施方 式(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为 “电路”、“模块”或“系统”。此外,在一些实施例中,本发明的各个方面还可以实现为在一个 或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读 的程序代码。 0047 可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算 机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限 于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算 机可读存储介质的更具体的例子(非穷举的列表。
47、)包括:具有一个或多个导线的电连接、便 携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器 (EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者 上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的 有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。 0048 计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号, 其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但 不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信。
48、号介质还可以是 计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者 传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。 0049 计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限 于无线、有线、光缆、RF等等,或者上述的任意合适的组合。 0050 可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的计算 机程序代码,所述程序设计语言包括面向对象的程序设计语言诸如Java、Smalltalk、C+ 说 明 书CN 103970671 A 11 8/9页 12 等,还包括常规的过程式程序设计语言诸如“C”语言或类似的程序设计语。
49、言。程序代码可 以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、 部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。 在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络包括局域网(LAN) 或广域网(WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务 提供商来通过因特网连接)。 0051 下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和 /或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中 各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算 机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些计算 机程序指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图 和/或框图中的一个或多个方框中规定的功能/动作的装置。 0052 也可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、 其它可编程数据处理装置、或其他设备以特。