用于提取和编目指定文件活动数据的系统和方法与流程

文档序号:31870290发布日期:2022-10-21 18:56阅读:158来源:国知局
用于提取和编目指定文件活动数据的系统和方法与流程

1.本公开的示例涉及用于提取和编目指定文件活动数据的技术和过程。


背景技术:

2.主机(mainframe)计算是当今由世界上最大的一些公司所使用的计算平台。主机通常处理许多工作负荷,诸如应收帐款、总账、薪资单以及特定商业需求所需的各种应用。这些工作负荷通常被称为作业。
3.主机是包括数据库和数据集(例如,文件)的复杂环境。这些数据通常驻留在直接存取存储装置(dasd)或磁盘驱动器(disk drive)上。除了dasd以外,主机应用还依赖于一个或多个磁带驱动器(tape drive)/设备来存储这些数据的部分。(多个)磁带驱动器可以是主机应用内的重要信息的初级存储库。当今的磁带可以是必须安装在硬件上以便读取的物理磁带,或者是仿真物理磁带的基于磁盘存储的虚拟磁带。


技术实现要素:

4.实施例包括一种用于在中断发生的情况下恢复数据处理能力的系统,该系统包括处理器、可由处理器访问的存储装置、用户目录程序,用户目录程序当由处理器执行时,配置系统以存储由系统利用的数据的索引。系统还包括系统管理工具(smf)程序和虚拟目录程序,smf程序当由处理器执行时,配置系统以创建将目录活动跟踪为smf数据的smf审计记录,虚拟目录程序当由处理器执行时,配置系统以在时间线上截取smf数据的部分。这些部分对应于数据文件的创建、删除和修改,并且在时间线上编目smf数据的所截取的部分。在检测到中断之后,处理器基于来自用户目录程序的所存储的索引和来自虚拟目录程序的smf数据的所截取的部分的组合来恢复系统的数据处理能力。
5.实施例包括一种用于在中断发生的情况下恢复数据处理能力的非暂时性计算机可读介质,非暂时性计算机可读介质包括在介质中包含的用户目录程序,用户目录程序当由处理器执行时,配置系统以存储由系统利用的数据的索引。非暂时性计算机可读介质还包括在介质中包含的系统管理工具(smf)程序和在介质中包含的虚拟目录程序,系统管理工具程序当由处理器执行时,配置系统以创建将目录活动跟踪为smf数据的smf审计记录,虚拟目录程序当由处理器执行时,配置系统以在时间线上截取smf数据的部分。这些部分对应于数据文件的创建、删除和修改,并且在时间线上编目smf数据的所截取的部分。在检测到中断之后,处理器基于来自用户目录程序的所存储的索引和来自虚拟目录程序的smf数据的所截取的部分的组合来恢复系统的数据处理能力。
6.示例的额外目的、优点和新颖特征将部分地在下面的描述中进行阐述,并且将部分地在检查以下内容和附图后将变得对于本领域技术人员而言显而易见或者可以通过对示例的生产或操作来习得。本公开主题的目的和优点可以借助于所附权利要求中特别指出的方法学、手段和组合来实现和获得。
附图说明
7.附图描绘了根据本公开概念的一个或多个实现方式,这些实现方式仅是示例性的而非限制性的。在附图中,类似附图标号指代相同的或类似的元件。
8.图1是用于读取和写入dasd和磁带以及创建和记录系统管理工具数据(system management facility data)的过程的示例的过程流程图。
9.图2是用于读取和写入dasd和磁带以及从所提取的smf数据中选择和提取用于在3d虚拟目录中编目的系统管理工具数据的过程的示例的过程流程图。
10.图3是示出与用户目录(usercatalog)相比存储在3d虚拟目录中的信息的界面的示例。
11.图4是可被配置为服务器和/或主机的计算机的简化功能框图。
12.图5是个人计算机或其它工作站或终端装置的简化功能框图。
具体实施方式
13.在以下详细描述中,通过示例的方式阐述了许多具体细节,以便提供对相关教导的透彻理解。然而,对于本领域普通技术人员应该显而易见的是,本公开教导可以在没有这些细节的情况下进行实践。在其它示例中,公知的方法、流程、组件和/或电路已经以相对较高的级别且不详细地进行了描述,以便避免不必要地模糊本公开教导的一些方面。
14.在示例主机(mainframe)环境中,作业(job)是指令处理器执行特定功能的程序或作业步骤的集合。当作业被表示为作业控制语言(jcl)语句的序列时,每一个作业步骤由引用程序并由表示待处理数据集的dd“数据定义”语句支持的exec语句定义。虽然作业包括一个或多个程序或作业步骤,但是单个作业步骤又可以表示包括一个或多个步骤、功能和/或分别执行某种形式处理的其它组件的流程、程序和/或其它过程。因此,作业步骤是作业内的单个条目,但不限于执行单个处理步骤。作业还通常称作批量作业(batch job),这是由于jcl的集合由处理器批量处理。在该主机环境中,作业被连续地处理。这些作业定期地引用数据集(例如,文件)作为他们处理的一部分。这样,在任何给定时间点,某一数量的作业可以打开某一数量的数据集,并且可以处理与那些打开的数据集相关的数据。此外,数据集可以由多于一个作业访问,尽管通常不用于同时写入。虽然每个单独的作业可以知道在任何给定时间点该作业已经打开了哪个(哪些)数据集,但是主机环境和/或用于管理主机环境的应用可能不知道在该时间点哪个(哪些)数据集被打开和/或哪个作业正在处理哪个(哪些)数据集。因此,如果发生中断主机环境或主机环境内的任意数量作业的处理的灾难或一些其它事件,则面临主机环境的恢复处理能力的(多个)个人、(多个)组和/或(多个)组织将不知道哪个(哪些)数据集受到灾难或其它事件的影响。确定由特定主机应用利用的各种复制的存储系统内和之中的不一致性是困难的,这是由于关于作业和/或作业步骤开始和结束的时间以及数据集打开和关闭的时间的详细信息不容易获得。
15.因此,具有一种在时间线上跟踪指定数据的活动和位置的系统将是有益的(例如,dataset.one在日期1的卷1中创建,随后从日期2的卷1中删除,等)。实现这一点的一个示例是一种系统,包括处理器、可由处理器访问的多个存储装置、系统管理工具(system management facility,smf)程序和虚拟目录程序,当smf程序由处理器执行时,smf程序配置系统以提取和存储将数据文件的创建、删除和修改编目为smf数据的数据。当由处理器执
行时,虚拟目录程序配置系统以:在时间线上截取smf数据的部分,这些部分对应于用户指定的数据文件的活动;在时间线上编目smf数据的所选部分;并且响应于用户的请求输出smf数据的所选部分,smf数据的所选部分标识在时间线上对用户指定的数据文件的创建、删除和修改。虚拟目录程序的重点集中在跟踪数据集动作(例如,创建、更新、删除、重命名等)上,并且由数据集的名称和数据集的时间戳来索引。因此,虚拟目录程序以数据集为键,并且呈现所请求数据集的时间维度描绘以及如何利用它们。
16.下面描述的示例改进了确定哪个(哪些)数据集当前被打开以及哪个(哪些)作业当前正在处理哪个(哪些)数据集的能力。在一个示例中,利用系统记录来确定哪个作业当前正在处理哪个数据集。例如,每当开始或终止作业时,生成系统管理工具(smf)记录。例如,每当作业内的作业步骤终止时,也生成smf记录。此外,例如,每当虚拟存储访问方法(vsam)数据集被编目或删除时,以及每当非vsam数据集被编目或删除时,生成smf记录。
17.特定smf数据被虚拟目录程序截取并存储在虚拟目录中。smf数据的这种截取和存储的示例性实施例在此被称为“3d virtual katalog
tm”。在主机环境中的处理发生灾难或其它中断的事件中,不是隔离和解析整个smf数据集(例如,来自环境中的不同系统的smf数据集),而是检查3d虚拟目录中的数据以确定相关数据的存储历史。以这种方式,可以定位作业和/或数据集,使得可以采取适当的动作以便从适当的位置恢复主机环境中的处理。
18.如图1所示,ibm主机,也称为“z平台”,包括运行z/os操作系统的cpu/zos 102,其执行读取和写入dasd 104和磁带(tape)106的作业/任务100,并利用用户目录(usercatalog)系统108来考虑驻留在通常被配置到系统的多个存储装置之中的数据。这些用户目录是数据工具产品(dfp)的组件,并且是操作系统(os)的整合组件。作为系统操作的一部分,作业和任务运行以创建、修改或删除系统上的数据,并且目录将该活动记录在目录结构中以用于引用完整性。目录本身是索引文件,使得如果数据存在于存储环境中,则可以快速地定位数据。icf是描述该工具的首字母缩写词。icf代表集成目录工具。所有存储均基于数据(例如,sys2.dataset.one、sys3.dataset.two和sys3.dataset.three)包含在卷中的概念工作,该卷是磁带卷(tape volume)106或磁盘卷(disk volume)104,也称为dasd、直接存取存储装置。磁带106和dasd 104之间的区别在于dasd存储对系统是在线的,而磁带数据更通常是离线的,并且当其被过程或任务请求时,使其在线。dasd卷可包含多个还称为数据集的文件。多个任务能够同时访问同一卷上的磁盘数据集,由于通常存在到达同一dasd卷上的数据的多条路径。另一方面,磁带专用于一次被分配给单个任务。磁带数据能够在类似dasd的卷上堆叠多个数据集。然而,一次仅1个任务能访问磁带卷上的1个单个的数据集。磁带数据以线性或顺序方式处理。任何数据集的主要相关信息是数据集的名称、数据所驻留的(多个)卷,以及在磁带数据的情况下,是线性磁带中的位置、数据所驻留的文件序列(file sequence)。下面示出了用于dasd和磁带数据集的目录条目的示例:
19.目录记录中的一些关键字段包括:bcs,即,基本目录结构。目录条目中的每个记录部分地包括以下字段:
20.dataset name(数据集名称):这是键(key),并且对于每个数据集仅存在1个记录
21.device type(装置类型):数据所驻留的装置类型。例如:3390dasd装置
22.volume serial(卷序列号):每个卷是使用字符或数字的六位数字长度
23.file sequence(文件序列):数据集的相对位置,特别是连续的磁带
24.volume sequence(卷序列):扩展到多个卷的数据集的卷的相对位置。这确保了以正确的时间顺序读取数据。
25.示例
[0026][0027]
在上述示例中,我们看到4个数据集,其中,2个dasd(磁盘)和2个磁带数据集。2个磁盘数据集驻留在3390dasd装置上,并占据卷prd001上的空间。第三和第四数据集是磁带数据集,并且驻留在单个卷100000上。文件序列描绘了数据在磁带卷上的相对位置。磁盘卷维护若干卷结构,这些卷结构指示数据实际驻留在卷上的何处,这些将是vtoc、vtoc索引以及vvds。在两种情况下,目录保持跟踪数据驻留的(多个)卷。卷序列表示与特定数据集相关联的卷的顺序。有时,数据集超过其被写入的卷的容量,并且需要更多的卷来包含该数据集。在这种情况下,卷的链被分组在一起,卷序列限定了应被访问的卷的顺序。
[0028]
示例
[0029][0030]
所有目录活动由smf任务114通过smf数据存储110来捕获。具体地说,smf数据经由跟踪目录活动的smf任务114在操作系统内进行创建。因此,目录任务112保持跟踪用户目录108中的系统上的所有数据的位置,并且smf任务114将smf审计记录写入到跟踪目录活动的smf存储110。更具体地说,在数据集被创建、修改(向数据集添加卷)或删除时,目录服务创建目录活动的审计日志作为数据集。
[0031]
示例
[0032]
数据集删除动作smf类型17定义活动smf类型61删除/去编目活动smf类型65更改活动smf类型66重命名smf类型18
[0033]
数据集沿着时间线尺度存在的位置的可追究性(accountability)是有益的。在正常任务活动的过程中,数据被读取、创建并且使用过的数据被删除。有时,必须从沿着时间线(例如:星期二16:00)获取的备份中恢复数据。常规的用户目录108结构不足,因为它仅允
许用户经由用户终端(未示出)来确定数据当前在哪里。另一方面,下面描述的3d虚拟目录202沿着时间线记录该活动。
[0034]
具体地说,图2所示的与ibm主机一起实现的vkat任务204和3d虚拟目录202是与z/os系统用户目录108并行运行的唯一工具(例如,程序),并且提供记录与z/os用户目录108维护的信息共存的数据集活动的维度(dimension)。通过将用户目录中维护的信息与3d虚拟目录202中维护的信息进行配对,系统可以考虑当前数据集位置以及已经被删除和/或更改以容纳更多卷的数据集的位置。当存在卷(数千个)的备份并且用户需要知道在特定时间点何时以及何处存在数据时,该信息是有价值的。
[0035]
目录环境包括多个用户目录108以负责z/os环境中的所有数据,而3d虚拟目录202自系统启动时开始随数据改变而跟踪数据。在操作中,由cpu 102执行的3d虚拟目录任务vkat任务204截取与用户目录活动有关的smf数据,并且填充/维护3d虚拟目录202。3d虚拟目录202中的关键字段包括数据集名和详述数据集的每个活动的时间的活动时间戳。3d虚拟目录任务可以维护锚控制块,并移除旧记录以保持系统被正确且有效地管理。其结果是,3d虚拟目录202占据z/os目录108空间本身的一部分空间。3d虚拟目录202是具有键(key)的键索引数据结构(keyed indexed data strucutre),该键包括数据集本身的名称以及正被监测的数据集的活动的时间戳。所监测的数据集可以是所有数据集的部分,或者根据系统的用户的要求而被设置为所有数据集。监测过程将扫描来自smf 110的目录活动记录,并将该活动记录在3d虚拟目录202自身中。用户可以经由用户终端(未示出)浏览与数据集或多个数据集相关联的记录,以确定在自系统启动以来的任何特定时间,该数据在何时以及在何处存在。只要系统正在读取smf活动记录,或者只要用户想要考虑数据集活动,该收集就将继续。
[0036]
3d虚拟目录结构的主要字段部分地包括以下字段:
[0037]
dataset name(数据集名称):这是键,并且对于每个数据集仅存在1个记录
[0038]
activity timestamp(活动时间戳):目录活动发生的日期和时间event(事件):改变所监测数据集的捕获事件,例如:
[0039]
·
创建/编目
[0040]
·
删除/去编目
[0041]
·
重命名
[0042]
·
添加的卷
[0043]
device type(装置类型):数据所驻留的装置类型,例如:3390dasd装置
[0044]
volume serial(卷序列号):每个卷是使用字符或数字的六位数字长度
[0045]
file sequence(文件序列):数据集的相对位置,特别是连续的磁带
[0046]
volume sequence(卷序列):扩展到多个卷的数据集的卷的相对位置。这确保了以正确的时间顺序读取数据。
[0047]
通常,数据集名称和活动时间戳是用于为3d虚拟目录202中的每个记录创建唯一键的字段。
[0048]
除了维护与利用虚拟3d目录监测的数据集相关的记录以外,系统还维护定义系统正记录的时间跨度的锚控制块记录。保留参数(retention parameter)定义了系统应该向前多久保持虚拟3d目录信息。在周期性的基础上,系统执行维护以移除超过保留期的较旧
记录。例如,如果系统被配置为用于7天保留,则维护阶段可以移除超过保留阈值的记录,并且调整锚控制块以反映当前调整的时间值。
[0049]
与用户目录108相比,存储在3d虚拟目录202中的信息的类型的示例在图3中示出。已知用户目录108自身仅提供关于数据的有限信息。然而,图3中所示的3d虚拟目录界面显示302从用户目录108(无圆圈的信息)和3d虚拟目录202(有圆圈的信息)中提取信息,以提供正被监测的数据集的完整画面。这包括显示关于何时和何处(例如,什么卷)sys2.dataset.one被创建以及被删除的信息,关于何时sys3.dataset.two被重命名的信息,以及关于何时和何处(例如,什么卷)sys3.dataset.three被扩展的信息。出于解释的目的,下面描述了在操作中的3d虚拟目录202的三个具体示例:
[0050]
示例1
[0051]
1.sys3.dataset.six在系统上1天,在4月1日与4月2日之间,某人想恢复在卷备份发生时该数据集的拷贝。
[0052]
用户目录:不包含该数据集的记录
[0053]
3d虚拟目录:包含以下:
[0054][0055]
从包含在3d虚拟目录202中的信息中,用户知道数据集在2个卷prod01和prod02上从4月1日9:00至4月2日23:00存在。
[0056]
示例2
[0057]
2.在4月15日从用户目录中删除老数据集test.old.dsn。
[0058]
用户目录:不包含该数据集的记录
[0059]
3d虚拟目录:包含以下:
[0060][0061]
从3d虚拟目录202,用户能够看到数据集存在于test 21上直到4月15日上午7:21为止
[0062]
示例3
[0063]
3.查找现有的老数据集test.old.dataset.two
[0064]
用户目录:
[0065][0066]
3d虚拟目录:包含以下:
[0067][0068][0069]
当前z/os用户目录108示出了数据集被分配给2个卷dev201/dev202,3d虚拟目录202添加了维度,该维度示出了数据集最初是单个卷数据集,其在3月9日上午09:00增长到2个卷。3d虚拟目录202添加用户否则将不知道的维度。
[0070]
将提供工具的集合以列出来自3d虚拟目录202的信息。这些程序将被设计成与标准接口交互,诸如:
[0071]
·
目录搜索界面
[0072]
·
idcams列表工具
[0073]
·
目录定位服务
[0074]
在通过标准接口提供来自目录本身的标准信息之后,将提供时间线上的细节,将来自3d虚拟目录202的通过smf收集而捕获的字段包括在内。该数据将从当前时间跨越回到记录在锚控制块中的时间范围。3d虚拟目录202提供了包括定位在数据集的整个生命周期的特定时间数据集驻留在哪些卷的益处。
[0075]
图4和5提供了计算机硬件平台的功能框图说明。图4示出了网络或主计算机平台,通常可以用于实现服务器和/或主机,其包括但不限于磁带系统402、dasd 404、用户输入/输出406、通信端口408和系统处理器410,系统处理器410包括cpu、存储器、操作系统、应用、批量作业、smf等。图5描绘了具有用户界面元件的计算机,可以用于实现个人计算机或其它类型的工作站或终端装置,然而图5的计算机如果被适当编程也可以用作服务器。在该示例中,图5中的计算机包括监视器500、键盘502、鼠标504、通信端口506、数据库508、用户i/o 510、ram 512、rom 514、cpu 516等。相信如图4和图5所示的这种设备的结构和一般操作从高级图示中应该是不言而喻的。
[0076]
应该注意,主机例如包括用于分组数据通信的数据通信接口和输入/输出(i/o)控制器。i/o控制器管理与各种i/o元件和存储工具的通信。存储工具包括一个或多个直接存取存储装置(dasd)和/或一个或多个磁带系统。这种存储工具提供了用于管理批量处理和应用的数据、作业的存储。主机包括内部通信总线,该内部通信总线提供通信端口、i/o控制器和一个或多个系统处理器之间的通信通道。每个系统处理器包括一个或多个中央处理单
元(cpu)和与每个cpu相对应的本地存储器、以及可用于任何cpu的共享存储器。由系统处理器执行的操作系统(os)管理当前运行的各种作业和应用,以执行适当的处理。os还提供系统管理工具(smf)和开放出口点(open exit point),以用于管理主机的操作以及当前运行的各种作业和应用。这种主机的硬件元件、操作系统、作业和应用程序本质上是常规的。当然,主机功能可以以分布式方式在多个类似平台上实现以分布处理负荷,和/或可以跨一个或多个类似的平台进行复制,以提供处理的冗余。这样,图4还描绘了复制的环境。尽管未示出复制环境的细节,但是这种复制环境通常包含与已经关于图4的主机描述的组件类似的组件。
[0077]
还应该注意,诸如pc的计算机型用户终端装置类似地包括数据通信接口、cpu、主存储器以及用于存储用户数据和各种可执行程序的一个或多个大容量存储装置。各种类型的用户终端装置还将包括各种用户输入和输出元件。例如,计算机可以包括:键盘和光标控制/选择装置,诸如鼠标、跟踪球或触摸板;以及用于视觉输出的显示器。这种用户终端装置的硬件元件、操作系统和编程语言本质上也是常规的。
[0078]
因此,上面概述的用于记录在主机计算环境内执行的作业内的每个步骤开始和结束的时间的方法的各个方面可以包含为编程。本技术的程序方面可以被认为是通常以可执行代码和/或相关联的数据的形式的“产品”或“制品”,其被承载在一种类型的机器可读介质上或在一种类型的机器可读介质中体现。“存储”型介质包括计算机、处理器等的任何或所有有形存储器或其相关联的模块,诸如各种半导体存储器、磁带驱动器、磁盘驱动器等,其可以在任何时间为软件编程提供非暂时性存储。软件的全部或部分有时可以通过全球信息网络(例如,)或各种其它电信网络来传输。例如,这种通信可以使得能够将软件从一个计算机或处理器加载到另一个计算机或处理器中,例如,从管理服务器或主计算机加载到将执行各种作业的主机平台中。因此,可以承载软件元素的另一类型的介质包括光、电和电磁波,诸如通过有线和光陆线网络以及通过各种空中链路跨本地装置之间的物理接口使用的。如在此所使用的,除非限制为非暂时性的、有形的“存储”介质,否则诸如计算机或机器“可读介质”的术语指的是参与向处理器提供指令以供执行的任何介质。
[0079]
非易失性存储介质包括例如光盘或磁盘,诸如任何计算机中的任何存储装置等,诸如可用于为企业应用保存数据集和程序。易失性存储介质包括动态存储器,诸如这种计算机平台的主存储器。因此,计算机可读介质的常见形式包括例如:软盘、软磁盘、硬盘、磁带、任何其它磁介质、cd-rom、dvd或dvd-rom、任何其它光介质、穿孔卡片纸带、任何其它具有孔图案的物理存储介质、ram、prom和eprom、flash-eprom、任何其它存储器芯片或盒式磁带、或者计算机可以从其读取编程代码和/或数据的任何其它介质。许多这些形式的计算机可读介质可以参与将一个或多个指令的一个或多个序列承载到处理器以供执行。
[0080]
还应该理解,除了已经在此阐述的特定的含义以外,在此使用的术语和表述具有相对于其相应的探索和研究的各自的范围的与这样的术语和表述相一致的普通的含义。诸如第一和第二等关系术语可以仅用将一个实体或动作与另一实体或动作区分开,而不必要求或暗示这样的实体或动作之间的任何实际的此类关系或顺序。术语“包括”、“包含”或任何其它其变型均旨在涵盖非排他性包含,因此,包括元素列表的过程、方法、物品或设备不仅包括这些元素,而且还可以包括未明确列出的或这类过程、方法、物品或设备所固有的其它元素。在没有进一步限制的情况下,以“一”或“一个”开头的元素并不妨碍在包含该元素
的过程、方法、物品或设备中存在其它相同元素。
[0081]
除非另有说明,否则本说明书(包括所附权利要求书)中列出的任何和所有测量、值、额定值、位置、大小、尺寸和其它规格均为近似值,并不精确值。它们旨在具有与它们所涉及的功能以及它们所涉及的领域中的习惯相一致的合理范围。
[0082]
虽然上文已描述了被认为是最佳模式的内容和/或其它示例,但是应该理解,可在其中作出各种修改,且本文所公开的主题可以各种形式和示例来实施,并且其可以应用于许多应用中,在此仅描述了其中的一些应用。所附权利要求书旨在要求保护落入本构思的真实范围内的任何和所有修改和变型。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1