信息备份的系统和方法.pdf

上传人:111****112 文档编号:648440 上传时间:2018-03-01 格式:PDF 页数:58 大小:2.75MB
返回 下载 相关 举报
摘要
申请专利号:

CN02813650.0

申请日:

2002.07.03

公开号:

CN1524224A

公开日:

2004.08.25

当前法律状态:

撤回

有效性:

无权

法律详情:

发明专利申请公布后的视为撤回|||实质审查的生效|||公开

IPC分类号:

G06F11/14

主分类号:

G06F11/14

申请人:

计算机联合思想公司;

发明人:

普雷卡什·维韦卡

地址:

美国纽约

优先权:

2001.07.06 US 60/303,450

专利代理机构:

中国国际贸易促进委员会专利商标事务所

代理人:

吴丽丽

PDF下载: PDF下载
内容摘要

本发明的备份和恢复信息的系统包括至少一个存储设备、一个允许和拒绝一些请求访问所述至少一个存储设备的设备的全局锁定请求的主服务器和至少一个包括一些存储与所述至少一个存储设备内的存储媒体有关的信息的内部清单的辅服务器,所述至少一个辅服务器向所述主服务器请求全局锁定。其中,所述全局锁定得到所述主服务器允许后,所述至少一个辅服务器检查它自己的内部清单,确定访问所述至少一个存储设备是否能得到允许。

权利要求书

1: 一种备份和恢复信息的系统,所述系统包括: 至少一个存储设备; 对一些请求访问所述至少一个存储设备的设备允许和拒绝全局 锁定的主服务器;以及 至少一个包括一些存储与所述至少一个存储设备内的存储有关 的信息的内部清单的辅服务器,所述至少一个辅服务器向所述主服务 器请求全局锁定,其中在所述全局锁定被所述主服务器允许后,所述 至少一个辅服务器检查它自己的内部清单,确定访问所述至少一个存 储设备是否能得到允许。
2: 如在权利要求1中所述的系统,其中:如果确定访问所述至少 一个存储设备能得到允许,所述至少一个辅服务器将所述至少一个存 储设备的至少一部分标为被锁定,并将相应信息存储在它自己的内部 清单内,而且将相应信息传送给所述主服务器和任何其他辅服务器以 存储在它们各自的内部清单内,表示所述至少一个存储设备的这个部 分被锁定。
3: 如在权利要求2中所述的系统,其中:所述至少一个辅服务器 将相应信息传送给任何其他辅服务器后,释放全局锁定,使得该全局 锁定对任何辅服务器或所述主服务器可用。
4: 如在权利要求3中所述的系统,其中:所述至少一个辅服务器 释放全局锁定后,所述至少一个辅服务器开始将信息备份入所述至少 一个存储设备的所述至少一部分或者从所述至少一个存储设备的所述 至少一部分恢复信息。
5: 如在权利要求4中所述的系统,其中:所述至少一个辅服务器 完成将信息备份入所述至少一个存储设备的所述至少一部分或从所述 至少一个存储设备的所述至少一部分恢复信息后,所述至少一个辅服 务器再次请求全局锁定,从而它因此能更新所述主服务器和任何其他 辅服务器。
6: 如在权利要求5中所述的系统,其中:所述至少一个辅服务器 被再次授予全局锁定后,所述至少一个辅服务器将信息发送给所述主 服务器和任何其他辅服务器,通知它们更新它们各自的内部清单,以 取消锁定所述至少一个存储设备的所述至少一部分。
7: 如在权利要求1中所述的系统,所述系统还包括一个连接所述 至少一个存储设备、所述主服务器和所述多个辅服务器的网络。
8: 如在权利要求7中所述的系统,其中:所述网络包括一个存储 域网。
9: 一种允许和拒绝对一个网络上的服务器进行访问以将信息备份 到一个存储设备和从这个存储设备恢复信息的方法,所述服务器包括 一个主服务器和一些辅服务器,所述方法包括: 从一个辅服务器向所述主服务器发送一个对全局锁定的请求, 所述辅服务器包括一些存储与所述存储设备内的存储有关的信息的内 部清单; 确定网络上的任何其他服务器是否具有全局锁定;以及 根据网络上的任何其他服务器是否具有全局锁定对所述辅服务 器允许和拒绝全局锁定, 其中,在全局锁定被所述主服务器允许时,所述至少一个辅服 务器检查它自己的内部清单,确定访问所述至少一个存储设备是否能 得到允许。
10: 如在权利要求9中所述的方法,其中:如果确定访问所述至少 一个存储设备能得到允许,所述至少一个辅服务器将所述至少一个存 储设备的至少一部分标为被锁定,并将相应信息存储在它自己的内部 清单内,而且将相应信息传送给所述主服务器和任何其他辅服务器以 存储在它们各自的内部清单内,表示所述至少一个存储设备的这个部 分被锁定。
11: 如在权利要求10中所述的方法,其中:所述至少一个辅服务 器将相应信息传送给任何其他辅服务器后,释放全局锁定,使得该全 局锁定对任何辅服务器或所述主服务器可用。
12: 如在权利要求11中所述的方法,其中:所述至少一个辅服务 器释放全局锁定后,所述至少一个辅服务器开始将信息备份入所述至 少一个存储设备的所述至少一部分或者从所述至少一个存储设备的所 述至少一部分恢复信息。
13: 如在权利要求12中所述的方法,其中:所述至少一个辅服务 器完成将信息备份入所述至少一个存储设备的所述至少一部分或从所 述至少一个存储设备的所述至少一部分恢复信息后,所述至少一个辅 服务器再次请求全局锁定,从而它因此能更新所述主服务器和任何其 他辅服务器。
14: 如在权利要求13中所述的方法,其中:所述至少一个辅服务 器被再次授予全局锁定后,所述至少一个辅服务器将信息发送给所述 主服务器和任何其他辅服务器,通知它们更新它们各自的内部清单, 以取消锁定所述至少一个存储设备的所述至少一部分。
15: 如在权利要求9中所述的方法,其中:所述网络包括一个存储 域网。
16: 一种包括允许和拒绝对一个网络上的服务器进行访问以将信 息备份到一个存储设备和从这个存储设备恢复信息的计算机可执行代 码的计算机记录媒体,所述服务器包括一个主服务器和一些辅服务 器,所述计算机记录媒体包括: 从一个辅服务器向所述主服务器发送一个对全局锁定的请求的 代码,所述辅服务器包括一些存储与所述存储设备内的存储有关的信 息的内部清单; 确定网络上的任何其他服务器是否具有全局锁定的代码;以及 根据网络上的任何其他服务器是否具有全局锁定对所述辅服务 器允许和拒绝全局锁定的代码, 其中,在所述全局锁定被所述主服务器允许时,所述至少一个 辅服务器检查它自己的内部清单,确定访问所述至少一个存储设备是 否能得到允许。
17: 如在权利要求16中所述的计算机记录媒体,所述计算机记录 媒体还包括如果确定访问所述至少一个存储设备能得到允许,控制所 述至少一个辅服务器将所述至少一个存储设备的至少一部分标为被锁 定,并将相应信息存储在它自己的内部清单内的代码和将相应信息传 送给所述主服务器和任何其他辅服务器以存储在它们各自的内部清单 内,表示所述至少一个存储设备的这部分被锁定的代码。
18: 如在权利要求17中所述的计算机记录媒体,其中:所述至少 一个辅服务器将相应信息传送给任何其他辅服务器后,释放全局锁 定,使得该全局锁定对任何辅服务器或所述主服务器可用。
19: 如在权利要求18中所述的计算机记录媒体,所述计算机记录 媒体还包括控制所述至少一个辅服务器,使得所述至少一个辅服务器 释放全局锁定后开始将信息备份入所述至少一个存储设备的所述至少 一部分或者从所述至少一个存储设备的所述至少一部分恢复信息的代 码。
20: 如在权利要求19中所述的计算机记录媒体,所述计算机记录 媒体还包括控制所述至少一个辅服务器,使得所述至少一个辅服务器 完成将信息备份入所述至少一个存储设备的所述至少一部分或从所述 至少一个存储设备的所述至少一部分恢复信息后再次请求全局锁定, 从而它因此能更新所述主服务器和任何其他辅服务器的代码。
21: 如在权利要求20中所述得计算机记录媒体,所述计算机记录 媒体还包括控制所述至少一个辅服务器,使得所述至少一个辅服务器 被再次授予全局锁定后将信息发送给所述主服务器和任何其他辅服务 器,通知它们更新它们各自的内部清单,以取消锁定所述至少一个存 储设备的所述至少一部分的代码。

说明书


信息备份的系统和方法

    本发明要求2001年7月6日提出的临时申请N0.60/303,450的优先权,该申请在这里列为参考予以引用。

    【技术领域】

    本发明与备份系统有关,具体地说,与提供信息备份的系统和方法有关。

    背景技术

    备份存储设备用来备份服务器及其他网络计算机或设备的信息。备份存储设备经常用来备份各种类型的信息,包括例如文件、数据库、系统信息和文件等。

    在一个备份存储设备由多个主机设备共享时,就可能在访问这个存储设备对它进行读、写时出现一些问题。图1A示出了一个包括备份存储设备的局域网(LAN)的例子。这个LAN包括通过网络9互连的一个或多个工作站5a-5n、一个或多个服务器6a-6n和至少一个备份存储设备7。工作站5a-5n和服务器6a-6n各可以采用不同的操作系统。备份存储设备7可以是例如一个诸如磁带库之类的磁带设备。如果诸如工作站5a-5n或服务器6a-6n之类的主机设备共享同一个存储设备7,每个操作系统就可能试图将数据存储在存储设备7上同一位置处。在这种情况下,一个主机设备所需的数据可能会被另一个主机设备后来写入的数据覆盖。此外,有些操作系统可能将特定信息存储在存储设备7的一些特定地址。另一些操作系统可能要求任何所连接的存储设备具有存储在同一个存储区域的一个或多个部分内的标识信息。这导致在提供这种共享存储媒体中出现冲突和困难。可以用一个控制器来控制对存储设备7的访问。然而,如果这个控制器失效,存储系统的数据就可能永远丢失。

    可以配置多个存储设备来备份主机设备上的数据。然而,以高效率和有效的方式管理多个存储设备为多个主机进行备份和恢复要耗费许多时间和资源,而且要占用LAN或广域网(WAN)不少带宽。

    可用一个存储域网(storage area network,SAN)来释放LAN或WAN地带宽。SAN是一种由共享存储设备组成的高速存储网。SAN使所有的存储设备对LAN或WAN上的所有主机所用,从而节约了宝贵的LAN或WAN带宽。

    图1b示出了一种SAN环境。这个SAN包括多个分布式服务器2a-2n,通过高速网3与一个或多个诸如备份库(backup library)4a-4n之类的存储设备连接。备份设备4a-4n可以包括例如一些存储库,各有多个存储媒体、一个捡取器(picker)和一个或多个对存储媒体进行读、写的读/写装置。分布式服务器2a-2n和备份设备4a-4n可以通过一个可以包括各种高速交换机和/或网桥的高速/大容量网3互连。在这种环境内,有几种服务器2a-2n和备份设备4a-4n可以共享的方式。例如,服务器2a-2n中的一个服务器可以对所有其他服务器起着允许访问备份设备4a-4n的总仲裁器的作用。这种系统通常称为主/从系统。在主/从系统内,智能设在主设备,主设备对什么时候和是否允许服务器访问一个备份设备具有自行决定和决策权。主设备创建和维护有关网络上每个设备的状态的信息。

    这种主/从系统的一个问题是如果主设备崩溃就可能需要大量的时间和劳力来将另一个服务器配置为主设备。所有其他服务器要一直等到系统管理人员指定和配置了另一个主服务器。新的主设备然后重新对网络进行清点,建立有关网络上每个设备的状态的信息。这可能要耗费大量时间和费用。

    另一种方法是在这些服务器之间分割对一个备份设备的访问,使得每个服务器只能访问库内分割给它的那些驱动器(drive)和存储槽(slot)。然而,这种系统可能使备份设备得不到充分利用。

    在许多备份操作中,备份应用(backup application)将数据从主存储设备读至服务器存储器,进行必要的格式化后发送给适当的备份存储设备。这些处理牵涉到大量占用CPU、IO通道和系统存储器。很可能在进行备份操作时服务器就不能执行任何其他应用的处理。这是系统管理人员所以要在服务器上的应用负荷处在最低的时间执行备份的原因之一。如果能执行备份操作而不需要大量占用服务器系统从而甚至在进行信息备份期间也释放服务器,这将是十分有益的。

    【发明内容】

    本发明的备份和恢复信息的系统包括:至少一个存储设备;对一些请求访问所述至少一个存储设备的设备允许和拒绝全局锁定(global lock)的主服务器;以及至少一个包括一些存储与所述至少一个存储设备内的存储有关的信息的内部清单的辅服务器,所述至少一个辅服务器向所述主服务器请求全局锁定,其中在所述全局锁定被所述主服务器允许后,所述至少一个辅服务器检查它自己的内部清单,确定访问所述至少一个存储设备是否能得到允许。

    如果确定访问所述至少一个存储设备能得到允许,所述至少一个辅服务器将所述至少一个存储设备的至少一部分标为被锁定,并将相应信息存储在它自己的内部清单内,而且将相应信息传送给所述主服务器和任何其他辅服务器以存储在它们各自的内部清单内,表示所述至少一个存储设备的这个部分被锁定。所述至少一个辅服务器将相应信息传送给任何其他辅服务器后,可以释放全局锁定,使得该全局锁定对任何辅服务器或主服务器可用。所述至少一个辅服务器释放全局锁定后,可以开始将信息备份入所述至少一个存储设备的所述至少一部分或者从所述至少一个存储设备的所述至少一部分恢复信息。所述至少一个辅服务器完成将信息备份入所述至少一个存储设备的所述至少一部分或从所述至少一个存储设备的所述至少一部分恢复信息后,可以再次请求全局锁定,使它因此能更新所述主服务器和任何其他辅服务器。所述至少一个辅服务器被再次授予全局锁定后,可以将信息发送给所述主服务器和任何其他辅服务器,通知它们更新它们各自的内部清单,以取消锁定所述至少一个存储设备的所述至少一部分。所述系统可以还包括一个连接所述至少一个存储设备、所述主服务器和所述多个辅服务器的网络。这个网络可以包括一个存储域网(storage area network)。

    本发明还揭示了一种允许和拒绝对一个网络上的服务器进行访问以将信息备份到一个存储设备和从这个存储设备恢复信息的方法,所述服务器包括一个主服务器和一些辅服务器,所述方法包括:从一个辅服务器向所述主服务器发送一个对全局锁定的请求,所述辅服务器包括一些存储与所述存储设备内的存储有关的信息的内部清单;确定网络上的任何其他服务器是否具有全局锁定;以及根据网络上的任何其他服务器是否具有全局锁定对所述辅服务器允许和拒绝全局锁定,其中,在全局锁定被所述主服务器允许时,所述至少一个辅服务器检查它自己的内部清单,确定访问所述至少一个存储设备是否能得到允许。

    如果确定访问所述至少一个存储设备能得到允许,所述至少一个辅服务器将所述至少一个存储设备的至少一部分标为被锁定,并将相应信息存储在它自己的内部清单内,而且将相应信息传送给所述主服务器和任何其他辅服务器以存储在它们各自的内部清单内,表示所述至少一个存储设备的这个部分被锁定。所述至少一个辅服务器将相应信息传送给任何其他辅服务器后,可以释放全局锁定,使得该全局锁定对任何辅服务器或主服务器可用。所述至少一个辅服务器释放全局锁定后,可以开始将信息备份入所述至少一个存储设备的所述至少一部分或者从所述至少一个存储设备的所述至少一部分恢复信息。所述至少一个辅服务器完成将信息备份入所述至少一个存储设备的所述至少一部分或从所述至少一个存储设备的所述至少一部分恢复信息后,可以再次请求全局锁定,使它因此能更新所述主服务器和任何其他辅服务器。所述至少一个辅服务器被再次授予全局锁定后,可以将信息发送给所述主服务器和任何其他辅服务器,通知它们更新它们各自的内部清单,以取消锁定所述至少一个存储设备的所述至少一部分。这个网络可以包括一个存储域网。

    本发明还揭示了一种包括允许和拒绝对一个网络上的服务器进行访问以将信息备份到一个存储设备和从这个存储设备恢复信息的计算机可执行代码的计算机记录媒体,所述服务器包括一个主服务器和一些辅服务器,所述计算机记录媒体包括:从一个辅服务器向所述主服务器发送一个对全局锁定的请求的代码,所述辅服务器包括一些存储与所述存储设备内的存储有关的信息的内部清单;确定网络上的任何其他服务器是否具有全局锁定的代码;以及根据网络上的任何其他服务器是否具有全局锁定对所述辅服务器允许和拒绝全局锁定的代码,其中,在所述全局锁定被所述主服务器允许时,所述至少一个辅服务器检查它自己的内部清单,确定访问所述至少一个存储设备是否能得到允许。

    如果确定访问所述至少一个存储设备能得到允许,代码可以控制所述至少一个辅服务器将所述至少一个存储设备的至少一部分标为被锁定,并将相应信息以存储在它自己的内部清单内,而且代码可以将相应信息传送给所述主服务器和任何其他辅服务器存储在它们各自的内部清单内,表示所述至少一个存储设备的这部分被锁定。

    所述至少一个辅服务器将相应信息传送给任何其他辅服务器后,可以释放全局锁定,使得该全局锁定对任何辅服务器或主服务器可用。

    可以提供代码,控制所述至少一个辅服务器,使得所述至少一个辅服务器释放全局锁定后,开始将信息备份入所述至少一个存储设备的所述至少一部分或者从所述至少一个存储设备的所述至少一部分恢复信息。

    可以提供代码,控制所述至少一个辅服务器,使得所述至少一个辅服务器完成将信息备份入所述至少一个存储设备的所述至少一部分或从所述至少一个存储设备的所述至少一部分恢复信息后,再次请求全局锁定,使它因此能更新所述主服务器和任何其他辅服务器。

    可以提供代码,控制所述至少一个辅服务器,使得所述至少一个辅服务器被再次授予全局锁定后,将信息发送给所述主服务器和任何其他辅服务器,通知它们更新它们各自的内部清单,以取消锁定所述至少一个存储设备的所述至少一部分。

    【附图说明】

    参考以下结合附图所作的详细说明可以更好地理解本发明和更完全地评价本发明和本发明的许多从属优点。在这些附图中:

    图1A为LAN环境的方框图;

    图1B为SAN环境的方框图;

    图2为例示可以应用本发明的系统和方法的网络环境的方框图;

    图3为例示可以应用本发明的系统和方法的SAN环境的方框图;

    图4和5为允许用户配置系统的屏幕显示;

    图6为例示一个所配置的系统的方框图;

    图7-12为允许用户在一个作业队列内建立作业的屏幕显示;

    图13为允许用户备份一个远程服务器的屏幕显示;

    图14为示出本发明的系统和方法的服务器所用的各个引擎的方框图;

    图15为说明按照一个实施例设计的多流注备份的流程图;

    图16为说明无服务器备份的方框图;

    图17-19为说明各种无服务器备份的方式的流程图;

    图20为示出文件和文件的数据块的示意图;

    图21和22为允许用户配置库的GUI;以及

    图23-25为说明无服务器备份操作的流程图。

    【具体实施方式】

    在说明附图所示的本发明的优选实施例中,为了清晰起见用了专用术语。然而,本发明并不局限于这样选择的这些具体技术名词,可以理解,每个具体组成部分包括所有以类似方式工作的在技术上等效的组成部分。

    本发明的系统和方法能在局域网(LAN)环境内以及在包括例如存储域网(SAN)环境在内的其他各种环境内实现。

    图2例示了将进一步予以说明的一些所揭示的实施例的硬件和软件环境。该系统包括通过一个或多个网络互连的一个或多个工作站10a-10n、一个或多个服务器11a-11n和一个或多个备份设备13a-13n。工作站10a-10n和服务器11a-11n可以采用相同或不同的操作系统。工作站10a-10n可以包括一个或多个台式计算机、膝上型计算机、大型机等。在图2所示的实施例中,网络是一个LAN环境,而工作站10a-10n、服务器11a-11n和备份系统13a-13n通过LAN 15互连。

    除了以上说明的LAN环境之外或者作为以上说明的LAN环境的替代环境,可以配置一个SAN环境。在SAN环境内,工作站10a-10n可以通过如上面对图2所说明的LAN与多个服务器12a-12n中的一个或多个服务器连接。然而,在SAN环境内,服务器12a-12n通过网络16与一个或多个备份存储设备14a-14n连接,如图3所示。如下面还要详细说明的那样,可以将服务器12a-12n分配给一些各包括一些分布式服务器、一个主服务器和一些备份存储设备的服务器组。网络1 6是一个高速网,可以包括一个由一些交换机和网桥组成的形成一个光纤信道网的一部分的系统。SAN形成一个传送数据的高速、大带宽系统。高速网16可以是例如光纤信道网、共享SCSI系统或SSA型系统。

    虽然在这里将只就一个服务器组进行说明,但SAN上可以挂有多个服务器组。主服务器控制SAN服务器组内所有服务器的信息流动。这防止了在有两个服务器同时试图分配同一个设备或媒体的情况下而引起的冲突。

    光纤信道适配器和光纤信道库可以接到网络16上,这些信道适配器和光纤信道库称为节点。节点可以连接到交换机/集线器上,建成一个环。光纤信道环有时也称为光纤信道仲裁回路,包括由一个光纤信道集线器连接的一些节点,从而每个节点都能与其他各节点通信。节点在加电或最初接到环上时向环注册登录。这在环上引起一个挂在环上的所有其他节点都接收到的事件,使每个节点都知道新的节点。环上每个节点分配有一个由制造商给出的世界范围内独有的地址或ID,使各节点在环上登录时可以被识别。一些连接到一个集线器上的诸如磁带库之类的备份设备运用知道网络存储设备的应用,因此这些应用能访问这些设备而不会与也访问这些设备的其他应用相互干扰。

    在这里所说明的SAN环境内,按照本发明设计的软件系统安装在服务器12a-12n上。系统配置成指定主服务器和分布式服务器,将每个服务器分配给一个组。例如,按照一个实施例,为用户提供了一个诸如图4所示的显示屏面。这个显示屏面包括配置在左侧的面板20,用来显示主服务器和分布式服务器配置的树形图。显示屏面右侧的面板22示出了所有装有本软件而还没有被分入任何服务器组的可用服务器。用户首先通过移动光标(未示出)从列在显示屏面右侧的清单中选取一个服务器再点击“创建主服务器”按钮24,选择主服务器。主服务器也可以通过移动光标从左侧面板中选取该服务器再点击“删除主服务器”按钮26来撤消。主服务器选定后,选择分布式服务器分配给主服务器,形成一个服务器组。从屏面的右侧窗口中选择一个分布式服务器再点击“分配分布式服务器”按钮28就可以选择一个分布式服务器。为了从一个组中删除一个分布式服务器,可以选取左侧面板内这个服务器的名称再点击“移除分布式服务器”按钮30。重复这个过程直到将服务器组配置成如用户所要求的。

    然后,将存储设备分配给这个服务器组。这个过程在主服务器上执行。例如,为了为一个服务器组分配共享库,从主服务器计算机选取“设备组配置”对话。这给出一个诸如图5所示的窗口,在左侧面板32内列有各个服务器组,而在右侧面板34内列有一些可用的存储媒体设备。虽然本发明将主要参照以磁带库作为存储媒体设备进行说明,但除了磁带库之外可以用其他类型的存储媒体设备作为替代或附加存储媒体设备。在右侧的“可用设备”面板34内示出目前还没有分配给一个组的磁带库。为了将一个磁带库分配给一个组,可以点击列在“可用设备”面板34内的一个库并选取。然后,用户将左侧面板32内用户希望添加库的组加亮。接着,点击“分配”按钮36。于是,这个库将从右侧面板34移到左侧面板32内这个设备组之下。重复以上步骤可以为这个组添加其他一些库。结束时,点击“确定”按钮38。

    图6示出了这样配置的服务器组的例子。网络现在包括主服务器13、分布式服务器15a-15n和存储媒体设备16a-16n。

    每个服务器维护一个列有需要执行的作业的作业队列。图7示出了作业队列的一个例子。点击“作业队列”标签40,在窗口部42内示出了作业队列,如图所示。作业队列标识了作业所涉及的服务器、作业编号、作业ID、每个作业的状态和每个作业的执行时间,如图所示。

    在运行或计划运行一个作业时,由用户将它提交给作业队列。本发明的系统不断扫描作业队列,搜索执行准备就绪的作业。可以通过从作业队列中选取作业点击不同的控制选项来控制作业。例如,用户可以给有将作业状态改变为“保持”或“就绪”(如果当前处在保持状态的话)的选项。“保持”意味着作业尚未计划执行。“就绪”是指作业可以执行。用户也可以用预先保存的脚本(script)迅速地将一个作业提交给作业队列。脚本是一个保存至一个文件的作业。脚本含有作业的原来的源、目的地、选项和调度信息。可以修改作业,为一个现有的作业添加选项或附加的源,而不需创建新作业。可以重新安排作业,迅速改变作业的执行日期、时间或状态。这也使用户可以重新提交一个仍在作业队列内的“完成”的作业。例如,用户可能希望这样做,如果这个作业在它初次运行时没有成功的话。用户也可以从作业队列中取消一个活活动业(active job),将它重新安排到它的下一个定时间隔。可以取消和从作业队列中完全删除一个作业。删除一个作业将中断和从作业队列中完全删去这个作业,不会对它重新安排。如果用户又希望恢复这个作业,用户可以重建这个作业(如果先前没有将它保存至一个脚本文件(script file)的话)。

    用户可以通过将作业添加到作业队列内来建立需执行的作业。备份管理器(backup manager)允许在作业队列内添加作业。例如,用户可以设置每个作业的源、目的地和调度信息。通过指定源,用户可以指定他们希望备份的项目。通过指定目的地,用户可以指定他们希望在哪里备份源信息。通过指定调度信息,用户可以指定他们希望什么时候执行备份。备份管理器包括一个备份向导(backupwizard),用来为用户提供选择选项和指定作业队列信息的各种窗口。利用备份向导可以指定源、目的地和调度信息。

    例如,备份向导启动后,请求用户通过键入服务器名、用户名和口令,指定他们希望备份的源或服务器。系统确认这信息后,就给出一个诸如图8所示的窗口100。如图所示,浏览器显示一个计算机树型结构101,从中用户可以选择需备份的域,计算机、媒体卷(驱动器)、共享部份、目录和文件。例如,为了备份整个服务器计算机,用户加亮“我的计算机”,然后点击“下一步”按钮104。于是,系统显示一个诸如图9所示的窗口106,请求用户通过选择备份媒体来选择备份目的地。选择了备份媒体后,用户点击“下一步”按钮104。于是,用户看到如图10所示的备份选项屏面108。这个屏面使用户可以通过选择需备份的文件的范围自定义备份作业。例如,用户可以选择“全部备份”110或“增量备份”112。如果选择增量备份,将只对是新的(或者自上次备份后有改变的)文件进行备份。这个屏面还使用户可以设置是否带“验证”114和/或“压缩”116的备份。点击“下一步”按钮104后,用户可以看到一个如图11所示的窗口118。这个窗口示出了所输入的信息,请求用户核实信息。如果信息不正确,用户可以点击“后退”按钮103退回上一步,修改任何输入项。如果用户对这信息满意,用户点击按钮104,从而可以看到一个如图12所示的窗口120。窗口120使用户可以选择备份作业需“立即运行”122还是需在指定日期与时间运行的“调度”124。如果选择“调度”按钮124,用户就可以看到一系列选项,用来选择启动日期/时间,重复方法,重复间隔(例如:月,日,小时,分钟)和不进行备份作业的日子(如果有的话)。

    本发明的系统因此提供了一种容易和直观的调度备份作业的方式。本发明的系统还允许从一个本地服务器对另一服务器组内或者不与任何服务器组关联的远程服务器/计算机进行备份。远程计算机应装有一个适当的代理(agent),以便可以被本地服务器识别,从而需备份的数据可以提取出来予以备份。远程计算机上的代理浏览目标目录,并封装需以大型数据分组的脉冲传送给本地服务器的数据。然后,本地服务器准备出需存储到指定的存储设备上的数据。

    每个代理还可以包括一个标识哪些本地服务器能通过本代理备份或恢复数据的访问控制表(ACL)。访问控制表可以标识拒绝或允许通过代理备份/恢复数据的特定用户和/或IT地址。

    本发明的系统提供了一种安全系统,它依赖于用户具有在部署代理的节点上登录的登录证书。从本地服务器至具有代理的计算机(代理节点)的连接只有在用户已登录访问这个代理节点时才建立。本发明的系统还提供了一种附加的安全级别,因为用户应该可以物理访问代理节点(在登录访问之上),以便成功地对这个节点进行操作。

    ACL为一个特定的代理节点规定了可以与它连接和访问它的功能的那些系统服务器(在企业网上)。这功能设置在驻有代理和需要物理本地节点访问予以操作的节点上。ACL允许这个节点的用户设置一个列出可以访问代理的服务器的清单或不可以代理访问代理的服务器的清单。默认时,可以将ACL设置成允许所有的服务器访问代理。

    为了改变一个特定的代理的ACL,用户在本地登录到这个节点上,通过一个代理管理实用程序对ACL进行操作。用户可以调用代理管理实用程序,通过访问控制表对话框添加或取消访问请求。

    下面将参考图13说明添加一个需备份的远程服务器的例子。向本地服务器的用户示出一个备份管理器屏面130。在这个例子中,需备份的远程服务器为一个运行Windows NT的服务器。用户加亮窗口132内的“Windows NT/Windows 2000 System”,如图所示,然后在上点击。于是,用户可以看到选项“增加机器”和“使用自动发现来增加”,如图所示。点击“使用自动发现来增加”,将查找具有适当代理的计算机。例如,在这个例子中,如果选择“使用自动发现来增加”,系统将查找挂在网络上的具有Windows NT/Windows2000系统代理的计算机。如图所示选择“增加机器”,用户将看到一系列对话框,使用户可以键入远程服务器/计算机的主机名、请求使用户有权浏览这个远程服务器/计算机和对它执行备份的用户名和口令和使用户可以设置备份的目的地。

    本发明的系统的每个服务器可以包括一些执行备份、恢复等各种功能的引擎(engine)。例如,如图14所示,每个服务器可以包括一个作业引擎136、一个磁带引擎138和一个数据库引擎140。这些引擎分担本发明的系统的工作负荷,处理和监视备份和恢复操作和更新有关活动日志和数据库内性能的信息。

    作业引擎在指定的日期和时间处理作业队列内的作业。作业引擎扫描作业队列搜索一个运行准备就绪的作业,将它发送给适当的处理器。每个运行作业引擎的服务器都可以配置成适合每个用户的需要。作业引擎因此控制作业队列内作业的执行时间。它定期对作业队列进行扫描,发出到达执行日期和时间的作业。作业引擎的各种特征可以由用户控制。例如,通过选择一个选择配置菜单,可以配置各个选项。例如,如上面所指出的那样,作业引擎经常对作业队列进行扫描,搜索应执行的作业。缺省时,每10秒对作业队列扫描一次。为了改变这个时间间隔,用户可以将时间间隔指定为1-999秒。已完成的作业的滞留时间也可以控制。也就是说,最终状态为“完成”的作业将在作业队列内留存一段在此字段内指定的时间。作为默认,“完成”的作业在保留24小时后再从队列中删去,除非它们是循环作业。为了改变这时间,可以输入0至999之间的数码。

    本发明的系统还可以包括一个用户能查看的活动日志。活动日志含有有关所有系统活动的信息。作为默认,在活动日志内示出在运行本发明的系统时出现的注解、警告和差错。为了改变在活动日志内能维护的消息的类型,用户可以指定以下这些值:“无”,不显示消息;“错误”,只显示运行本发明的系统时出现的错误;“警告和错误”,显示运行本发明的系统时出现的警告和错误;“注解、警告和错误”(默认值),显示运行本发明的系统时出现的所有注解、警告和差错;“调试”,显示可供排除故障用的调试信息。

    磁带引擎负责对存储设备进行的通信和控制。磁带引擎选择作业所需的设备。也就是说,磁带引擎标识所有与系统连接的存储设备,在作业启动时予以激活。最好不要改变磁带引擎的配置。除了用于排除故障之外,通常采用默认配置。然而,本发明的系统提供了一些磁带引擎选项。如果将“级别”选项保持在默认(“无”),用户就不需要指定任何其他事项。然而,如果需要,可以用以下这些值:“无”(默认),没有信息被记录。如果保持默认,在作业状态管理器内不会出现磁带引擎日志。如果设置为“详细资料”,存储设备发送的每个消息将登入日志,系统监视磁带引擎和将接收到的所有信息都登入日志。如果选择“引擎日志”,在作业状态管理器内将出现磁带引擎日志。如果指定“输出”和如上面所注释的那样设置“详细资料”,用户可以指定他们希望将消息发送到哪里。用户可以指定下列其中之一:“屏面和文件两者”,而在这样的情况下,消息录在磁带引擎日志内,也发送给DOS框(磁带引擎消息窗口)。如果指定“只屏面”,消息只发送给磁带引擎消息窗口。如果指定“只文件”,消息只录在磁带引擎日志内。用户可以在作业状态管理器内查看磁带引擎日志。

    系统内执行的所有操作都由数据库引擎记录。数据库引擎负责维护系统已备份或拷贝的文件、目录、驱动器和计算机的历史。数据库引擎还负责维护已由系统处理的作业的有关信息,诸如作业类型、日志、最终结果和作业开始和结束时间之类。数据库引擎还维护系统所用的媒体的历史,诸如它的类型、名称、第一次格式化日期、期满日期和媒体上的会话(session)。数据库引擎存储所处理的所有作业的统计信息。所保存的一些作业信息包括已备份、拷贝和恢复的文件和目录、本发明的系统已处理的作业、用于作业的存储设备和媒体。

    用户可以通过用户接口控制各个数据库引擎选项。例如,“所需的最小空闲磁盘空间(兆字节)”选项使用户可以指定用户希望为系统数据库保留的最小磁盘空间(以兆字节计)。作为默认,指定5MB的磁盘空间。为了改变所需的磁盘空间,用户可以指定一个在1至10之间的数码。可以将“启用数据库修剪”选项设置成在数据库修剪已接通时可以删去在一个会话中备份或拷贝的文件和目录的有关信息。作为默认,选择这个选项,以释放数据库文件内的空间。然而,用户可以发现为了保存详细信息供以后恢复用将这个选项设置成关闭是有益的。然而,应指出的是不修剪数据库就意味着数据库可能很快装满。“修剪日前的数据库记录”选项只有在“启用数据库修剪”选项已打开时才有效。用户可以指定记录应在数据库内保存多长时间后才删去。作为默认,记录将在数据库内保存30天后删去(如果启用了该选项)。为了改变这个时间长度,用户可以指定一个在1至365之间的数码。“在时运行数据库修剪”选项只有在“启用数据库修剪”选项已打开时才有效。这个选项使用户可以指定需运行修剪操作的时间。作为默认,将在12:00 AM时进行修剪(如果启用了该选项)。也可以提供一个“仅在修剪时删除与媒体有关的数据库记录”选项。在用户重新格式化或擦除一个媒体时,本发明的系统将删除属于这个磁带的数据库内的记录。然而,执行这个特别步骤可能要花费大量时间。因此,用户可以选择“仅在修剪时删除与媒体有关的数据库记录”选项,将删除这些记录推迟到执行修剪时执行。“现在提交数据库修剪”选项使用户可以立即向作业队列提交一个具有指定的参数的数据库修剪作业。“启用远程数据库”选项使服务器能用一个远程数据库作为它的数据库,无论这个远程数据库是什么类型的。这个数据库可用来向一个本地计算机提交一个恢复作业。在这里也执行对远程数据库的配置。用户键入服务器名、登录名、口令和用户想要启用的远程数据库的服务器操作系统类型。

    本发明的系统还可以包括若干其他类型的管理系统的管理器。恢复管理器(Restore manager)用来恢复已由本发明的系统备份的数据。用户可以设置调度和管理恢复操作的策略。恢复管理器可以执行数据的完全或部分恢复。

    数据库管理器(Database manager)显示来自数据库的信息,诸如本发明的系统处理的作业、所用的媒体和系统正在使用的设备之类。

    作业状态管理器(Job Status manager)监视来自作业状态管理器窗口的所有暂挂、完成和活动的作业。作业状态管理器还响应用户请求重新安排暂挂或完成的作业、提交新的作业、删除作业和停止活活动业。每个完成的作业都配有日志信息。

    设备管理器(Devices manager)显示有关存储设备和媒体的信息。设备管理器允许用户改变驱动器压缩模式和执行诸如压缩、格式化、擦除、弹出和保持之类的媒体功能。

    报告管理器(Report manager)根据数据库内的数据产生报告。各种报告包括有关调度策略、媒体错误、会话、备份设备和媒体策略的信息。

    媒体池管理器(Media Pool manager)管理、创建和维护为备份标识方便对媒体的逻辑建组,以便高效率地安排对媒体的维护和再用。用户可以设计适合具体存档要求的媒体循环再用方案。一些报告详细列出循环方案中所用的媒体池的媒体信息,包括媒体状态和会话信息。

    警告管理器(Alert manager)用各种通信方法向一个组织内的人员发送有关在本发明的系统运行期间出现的事件的消息。

    每当运行一个备份作业,系统将有关已备份的计算机、目录和文件和所用的媒体记录在它的数据库内。这使用户不论何时要恢复文件都可以确定它们的位置。作为默认,每当用户对系统主目录进行备份时,数据库信息也得到备份。用户可以选择在每个备份作业中都也对数据库文件进行备份,无论是否选择对系统主目录备份。

    本发明的系统还提供一些可用于管理文件的实用程序。例如,如果数据库内的数据由于任何原因受到损坏,就可以执行数据库恢复。恢复数据库(Recover Database)实用程序使用户可以用一个数据库备份将信息恢复到数据库,盖写现有的数据库文件。用户可以在诸如火灾、水灾或计算机崩溃期间之类的任何丢失数据库文件时用这个实用程序。有一些高级数据库恢复选项可用,包括指定恢复数据库的日期的选项。在这种情况下,将用在这个日子或这个日子之前建立的数据库会话来备份。另一个选项使用户可以为作业指定一些媒体选项。另一个选项使用户可以在恢复作业前和/或后运行一些命令或批处理文件。还提供了一个使用户可以确定记录在作业队列日志内的详细资料的级别的选项。

    可以提供一个允许将信息插入数据库内一些空存储槽的融合(merge)实用程序。这个功能使用户可以用数据库所驻留的服务器外的另一个服务器来恢复数据。例如,如果用本发明的系统将一个数据库备份建在另一个计算机上,用户就可以用融合实用程序使媒体信息进入系统主目录的数据库内。融合实用程序因此使用户可以得到一个含有一个或多个备份会话的媒体并将信息从这个媒体附加至一个现有的数据库。这在详细信息已从数据库内修剪掉的情况下是有益的。高级融合选项包括一个为作业指定一些媒体选项的选项、一个在作业前和/或后运行一些命令或批处理文件的选项、一个确定用户希望在作业队列日志内记录的详细资料的级别的选项和一个发送有关操作中的事件的消息的选项。

    扫描(Scan)功能提供有关任何媒体备份会话的信息。每个选来备份的源保存在媒体上,作为一个独立的会话。用户可以扫描单个会话或整个媒体。扫描作业的结果可以在作业队列内看到。这个功能在用户试图恢复一个服务器和需要发现数据库的最近备份以便予以恢复的情况下特别有益。如果用户想要一个列有已备份的文件的清单,他们也可以用这个扫描功能。高级扫描选项包括一个为作业指定一些媒体选项的选项、一个为作业指定一些常规选项以扫描具有CRC检验的文件或可以进行数据库记录的选项、一个在作业前和/或后运行一些命令或批处理文件的选项、一个确定用户希望在作业队列日志内记录的详细资料的级别的选项和一个发送有关操作中的事件的消息的选项。

    比较(compare)功能将一个媒体会话的内容与一个计算机上的文件相比较。比较作业的结果也可以在作业队列内看到。用户在备份后可以用这个功能检验将所有文件拷贝至媒体的备份是否有有错。高级比较选项包括一个为作业指定一些媒体选项的选项、一个指定是否启用数据库记录的选项、一个在作业前和/或后运行一些命令或批处理文件的选项、一个确定用户希望在作业队列日志内记录的详细资料的级别的选项和一个发送有关操作中的事件的消息的选项。

    计数(count)功能对一个计算机上的文件和目录进行计数。计数功能的结果可以在作业队列内看到。在一个拷贝作业后可以用这个选项检验拷贝功能将所有文件从一个磁盘拷贝到另一个磁盘上是否有错。高级计数选项包括一个指定是否启用数据库记录的选项、一个在作业前/或后运行一些命令或批处理文件的选项、一个确定用户希望在作业队列日志内记录的详细资料的级别的选项、一个在对文件计数前扫描文件搜索病毒的选项和一个发送有关操作中的事件的消息的选项。

    清除(purge)功能使用户可以从一个计算机删除文件和目录。结果可以在作业队列内看到。这个清除功能使用户可以从一个计算机删除文件和目录。高级清除选项包括一个为作业指定一些常规选项以删除目录或启用数据库记录的选项、一个在作业前和/或后运行一些命令或批处理文件的选项、一个确定要在作业队列日志内记录的详细资料的级别的选项和一个发送有关操作中的事件的消息的选项。

    拷贝(copy)功能使用户可以将文件从一个位置拷贝到另一个位置。例如,用户可以在一个本地计算机上运行拷贝作业,将文件和目录存储在另一个将要给媒体备份的计算机上。拷贝选项确定在拷贝操作期间或拷贝操作后出现的有关动作。例如,提供了一个选项,用来指定什么时候重试打开文件和文件共享选项。还提供了一个选项,用来指定是否启用数据库记录。另一个选项用来在目的地媒体上建立源计算机的一个镜像。提供了一个选项,用来从源计算机拷贝文件和目录和删除所有在源计算机上没有出现的文件和目录。还提供了一个选项,用来在将一些文件复制到目的地计算机后从源计算机删除这些文件。一个选项可用来将供文件访问用的文件级安全信息拷贝到一些NTFS卷上。还提供了一个选项,用来在作业运行前和/或后运行一些命令或批处理文件。一个选项使用户可以确定他们想要在作业队列日志内记录的详细资料。另一个选项用来在拷贝文件前扫描文件搜索病毒。另一个选项用来发送有关在操作中的事件的消息。

    本发明的系统允许采用多流注(multiple streaming)通过并行运行一些存储操作对数据进行备份。也就是说,本发明的系统可以配置成根据磁带设备的可用性自动或响应用户所选的选项为一个备份作业形成多个备份流。这种方法通过将数据分布在一些并行的数据流内,大大地减少了备份操作所需的时间。数据灾难性丢失后也可以更快得到恢复,因为所有可用的设备可以一起工作以恢复所有或大部分备份数据。

    多流注因此使用户可以通过将单个备份作业分成使用两个或更多个磁带设备的多个作业利用系统上所有可用的磁带设备。结果,多流注与串行方法相比增大了整个备份吞吐量。如果在系统内有一个以上驱动器和一个以上媒体卷可用,用户就可以选择采用多流注。

    多流注对本地设备和远程设备都可起作用。采用多流注选项的对远程源的备份在节点(计算机)级予以支持。用户可以利用所有的存储媒体设备,或者可以只指定单个存储媒体设备组(如果系统内有多种存储媒体设备的话)。如果系统装有一个库选项(如下面将要说明的那样),多流注(在选择了该选项时)将运用所有可用的库设备。如果没装有库选项,用户可以将存储媒体设备分成一些独立的组。

    所生成的流(从作业)的总数将取决于可用的存储媒体设备的数目,如果它是一个转换器(changer)的话;否则,将取决于存储媒体设备组的数目。

    多流注对于正规文件在媒体卷级执行(两个媒体卷可以同时在两个独立的设备上运行),而对于本地数据库服务器在数据库级执行。多流注对于优选共享文件夹、远程数据库服务器和Windows NT/2000客户机代理在节点级执行。

    系统可以使与挂在系统上的设备/组的个数一样多的作业同时运行。在选择了一个多流注选项的情况下,在用户创建一个主作业时,这个主作业将为可用的各个媒体卷或存储媒体设备触发一些从作业。一个作业在一个媒体卷上完成时,另一个作业再执行,直到不再有作业要运行为止。

    在应用多流注时,用户可能希望选择一个媒体池,以防磁带被盖写。独立的磁带设备应按正规驱动器配置成一些独立的组。对于具有转换器的磁带系统来说,它们可以配置成处在同一个组内。撤消一个主作业,意味着撤消所有的从作业。用户可以撤消主作业或任何一个从作业,以完全撤消整个多流注作业。如在这里所说明的那样,在一个作业列入作业队列后,在这个作业执行前或后可以执行一些操作。例如,可以将一些消息发送给各工作人员之类。这些操作称为前/后操作。在主作业级支持前/后操作和注释。也就是说,前/后操作将不对每个从作业执行。而是,前/后操作在分成从作业的整个作业运行前或后执行。每个从作业在作业队列内将具有一个默认的作业说明,呈现为:MULTI STREAM[JOB[MID]]SUBJOB[SID],其中MID为主作业ID而SID为序列ID。如果系统只有一个存储媒体设备,就略去这个多流注选项。为了在多流注作业情况下达到最佳性能,可以使用具有多个各配有至少256MB内存的处理器的高端服务器计算机。

    图15为说明按照本发明的一个实施例设计的多流注备份方法的流程图。在步骤S2,用户创建一个主备份作业。在步骤S4,作业引擎扫描作业队列,根据所安排的作业运行日期和时间搜索运行准备就绪的作业。在步骤S6,根据所安排的启动时间确定是否有一个作业要运行。如果不是一个主作业要运行的时间(步骤S6的确定结果为No),作业引擎继续扫描作业队列,直到到达主作业要运行的时间(步骤S6的确定结果为Yes)。在步骤S8,系统将这个主作业拆成多个较小的从作业,每个从作业与单个源实体(文件系统、数据库等)的备份/恢复相应。然后,系统将这些较小的从作业发送给作业队列(步骤S10)。在步骤S12,作业引擎继续扫描作业队列,搜索作业。这一直继续到检测到新的从作业(步骤S14的确定结果为Yes)。在检测到新的从作业时,作业引擎与磁带引擎通信,确定是否有一个磁带设备可以用来进行备份(无循环,步骤S16)。这一直继续到确定有一个磁带设备可用。一旦确定有一个磁带设备可用(步骤S16的确定结果为Yes),就对每个具有一个可用的存储设备的作业启动这些较小的从作业(步骤S18)。每个从作业完成时,返回给磁带引擎指出这个从作业所占用的磁带设备又成为可用的信息(步骤S20)。作业引擎于是扫描作业队列,搜索下一个从作业,这过程一直重复到所有的从作业都得到执行。在步骤S20确定是否所有的作业都已完成。如果没有完成(步骤S20的确定结果为No),过程再扫描作业队列,搜索一个要执行的从作业(步骤S12)。如果每个从作业都已完成(步骤S20的确定结果为Yes),过程结束(步骤S22),于是完成了这个主作业。在这时候,可以执行任何后作业操作。

    本发明的系统也能执行无服务器备份(serverless backup),这为系统管理人员解决了许多与传统的备份有关的问题。无服务器备份使用户可以执行对系统CPU的影响几乎为零的备份,而且使服务器上的应用在备份正在进行的同时继续运行。无服务器备份不需要备份窗口,可以给出最高的可能备份/恢复性能,而且使应用可以在备份正在执行的同时继续访问数据。

    无服务器备份用工业标准的扩展拷贝命令(extended copycommand)实现,支持具有支持扩展拷贝命令的设备的SAN环境。

    采用扩展拷贝命令,无服务器备份实际上将服务器完全排除在数据备份传送路径之外,达到直接从磁盘向磁带或从磁带到磁盘的数据传送。启动数据传送是在服务器级发生的唯一活动,实际数据传送在SAN上数据移动器(Data Mover)级进行。按照本发明设计的无服务器备份用一些“数据移动器”在磁盘和磁带之间传送数据。数据移动器是支持扩展拷贝命令的设备,不需要总是将数据带至服务器,从而获得最短的数据通路。这显著地提高了备份性能,达到最高的可能备份/恢复速度。这使应用可以在备份正在进行的同时继续访问服务器。这个功能不需要备份窗口,使系统管理者可以在任何时间执行备份。

    图16示出了无服务器备份的系统的一个例子。如图所示,这个系统包括服务器150a-150n、磁盘阵列152和备份存储媒体154,它们都挂在SAN上,由一个可以包括一些路由器、网桥等的高速网络160互连在一起。磁盘阵列152能存储来自各个工作站(未示出)的数据。

    SAN支持可以将数据直接从磁盘阵列152发送给备份存储媒体154而不必经过服务器的“扩展拷贝”。如图16中箭头A所示,备份数据的数据通路起于磁盘阵列152,穿过网络160到达备份存储媒体154。由于这个数据通路不包括服务器的使用,因此备份可以认为是无服务器的。

    唯一牵涉到服务器的是接收有关备份的数据。例如,服务器可以与系统各部分通信,获取有关备份的元数据(metadata)等。服务器还可以用来启动和控制备份过程,但是要备份的数据直接从磁盘阵列152移动到备份存储媒体154而不经过任何服务器的CPU。

    无服务器备份的一个方面是以分析每个媒体卷的文件映射表(file-mapping table)为基础。图23为说明按照本发明的一个实施例设计的无服务器备份的情况的流程图。系统首先打开NT文件系统(NTFS)根目录和结构(步骤S70),分析对于每个文件的分配表的根目录和结构(步骤S72),得出每个文件的属性(步骤S74)。根据对每个文件的属性的检验,系统确定文件是驻留的(resident)还是非驻留的(步骤S76)。如果文件是驻留的(步骤S76的确定结果为Yes),将整个属性备份(步骤S80)。如果不是驻留的(步骤S76的确定结果为No),系统将文件属性以及属于这文件的数据块备份(步骤S78),因此为驻留在媒体卷上的所有文件映射整个媒体卷,以获得完整的数据保护。在一个支持文件分配表(FAT)的文件系统的系统上,系统可以通过解释FAT模式来解释这些块。所得到的方案是采用能提供文件级恢复的扩展拷贝技术的无服务器备份。

    如图24所示,对于NTFS,本发明的系统打开一个媒体卷(步骤S82),读入引导扇区(步骤S82),得到基本输入输出系统(BIOS)的参数块(BPB)(步骤S86)。然后,系统按索引分配缓存器(IndexAllocation Buffer)确定扇区大小、簇大小、文件记录段大小(步骤S88)。

    首先,系统根据索引根条目遍历根目录(根据根目录的文件引用,系统读取根目录的文件记录段)(步骤S90),确定它是否为一个文件(步骤S92)。如果是一个文件(步骤S92的确定结果为Yes),系统就检查这个文件的属性(安全性、数据属性等),备份相应的属性值。然后,确定文件是驻留的还是非驻留的(步骤S96)。如果值是一个驻留值(步骤S96的确定结果为Yes),系统就备份含有这个属性的文件记录段。如果是非驻留的(步骤S98的确定结果为No),系统就得出LCN/VCN(运行表),将这信息存储起来(步骤S100)。

    如果不是一个文件(步骤S92的确定结果为No),就执行其他步骤(步骤S102)。例如,如果根条目是索引节点,系统就考察索引分配属性。如果它是一个目录,系统就遍历整个目录。于是,系统将根据位图添加所有还不在这表内的其他簇。

    如图25所示,对于FAT/FAT32,系统打开媒体卷(步骤S104),读入引导扇区(步骤S106),得到BPB(步骤S108)。系统读入根目录(步骤S110),根据根内每个条目,系统可以对它进行各种分析。例如,如果它是一个子目录(步骤S112),系统就确定这个目录的簇链(步骤S114),读入这个子目录(步骤S116)并进行遍历(步骤S118)。如果它是一个文件(步骤S112),系统就利用一个FAT表确定这个文件的簇链(步骤S120)。

    对于快照(snapshot)的情况,在备份前,系统对媒体卷的高速缓存进行清仓。然后,系统冻结媒体卷(例如,取一个快照)。在备份分析阶段期间,一个快照驱动器将原始数据返回到一个无服务器/图像,用于实际数据备份。对于无服务器系统来说,由于数据移动发生于原始磁盘,因此数据移动器不能归还原始数据。因此,在无服务器备份最后,系统可以请求快照驱动器给出这些经修改的簇的所有原始数据,系统将在恢复期间应用这信息。

    图17示出了执行无服务器备份的系统流程的另一个例子。为了完成无服务器备份,本发明的系统获取磁盘阵列152或部分磁盘阵列的一个静态图(static view)(步骤S40),将磁盘设备上的数据块映射到它们所属的文件(步骤S42),再将数据直接从磁盘阵列152移动到备份存储媒体154(步骤S44)上。

    为了得到磁盘阵列内数据的静态图,本发明的系统可以使用一个备份镜像系统。图18示出了用备份镜像系统得到磁盘阵列内数据的静态图的流程的例子。首先,建立镜像(步骤S46)。然后,中止任何写磁盘阵列的应用(步骤S48),再分割镜像(步骤S50)。

    得到一个静态拷贝的另一种方式是利用一个快照。在这种情况下,如图19所示,系统首先中止任何写磁盘的应用(步骤S52),然后生成快照(步骤S54)。

    系统现在有了要备份的磁盘阵列的静态图。在数据从磁盘阵列152传送给备份存储媒体154时,数据可以作为数据块传送而不是作为文件传送。因此,为了最后恢复文件,系统生成一个标识哪些块属于哪些文件的表或映射。例如,如图20所示,文件A由数据块A、B和C组成。文件B由数据块D、B和F组成。在生成快照或分割镜像时,这些映射将保持不变,直到生成另一个分割镜像或快照。本发明的系统为文件A和文件B生成记录数据块关联的表或映射。在用户然后试图例如恢复文件A时,本发明的系统查出与文件A关联的块予以恢复。从磁盘阵列152发送给备份存储媒体154的那些数据块用扩展拷贝命令直接传送。

    在从无服务器备份系统恢复数据时,用户具有是在恢复整个驱动器的图像级恢复数据还是在恢复逐个文件或目录的文件级恢复数据的选项。

    图像级恢复将整个图像从备份存储媒体154拷贝回磁盘阵列152上。文件级恢复就象非无服务器恢复那样,将所选文件从备份存储媒体154拷贝到磁盘阵列152上。

    为了执行图像级无服务器恢复,本发明的系统生成数据所要恢复成的一个快照或分割镜像。然后,本发明的系统用扩展拷贝命令将备份数据直接从备份存储媒体154恢复到磁盘152上。

    在以上所说明的实施例中,在取驱动器的快照或图像时中止任何写驱动器的应用。然而,也可以不中止写驱动器的应用,本发明的系统还能等待一个可取的时段,在这个时段内取快照或图像。例如,系统可以使驱动器152同步,等待一个对驱动器152写休止的时段。作为默认,系统寻找的在冻结驱动器(例如,取快照)前的写休止时段为3秒。然而,这个时段可以由用户按需要修改。如果不能发现所规定的写休止时段(3秒),同步在规定的超时时段(例如80秒)后超时,冻结请求失败。规定的写休止时段是驱动器上应出现的驱动器可安全冻结前的休止状态的秒数。超时时段也可以由用户按需要修改。认为驱动器可安全冻结后,就可以执行对驱动器快速拍摄或成像。这样,就不用迫使一些应用中途停止它们可以执行的过程。

    本发明的系统还可以包括一些管理一个或多个磁带库的GUI。库是一个含有带有一个诸如机器人捡取器之类的自动媒体运载系统的一个或多个磁带驱动器的设备,允许备份大量数据而不用人工干预。一个库可以包括各种包括条型码ID(如果库支持条型码ID的话)的组成部分。本发明的系统可以用条型码ID通过读取附在媒体上的条型码迅速确定各个媒体的位置。库还可以包括一个或多个存储仓(magazine)(或磁带存储器(bin)),存储一组或多组存储媒体(诸如磁带媒体)。机器人捡取器可以在存储槽和驱动器之间移动存储媒体单元。库可以包括一个或多个在一个在计算机或服务器与存储媒体之间传送(备份或恢复)数据的设备内的驱动器。一个库可以含有一个或多个驱动器,以及从一个到几百个存储仓。较小的库有时称为自动装载器(autoloader)或转换器(changer)。作为在这里使用的,所谓“库”是指具有任何容量的库。

    一个库可以认为与单个存储驱动器类似。然而,一个主要差别是库通常使用至少两个SCSI ID,一个用于库本身而另一个用于库的驱动器。一些库可以使用单个SCSI ID。在一个库只用一个SCSI ID时,这个库和库驱动器可以各分配有一个逻辑单元号(LUN),以便区分驱动器和库。单个SCSI ID实际上分成两个ID。使用一个库与使用一些独立存储单元相比有一些优点。例如,使用一个库,在备份和恢复操作期间就不需要人工干预。此外,库可以含有多个存储驱动器和大量媒体,因此具有提供大容量的能力。

    本发明的系统能支持具有多个驱动器的库和具有单个驱动器的库。本发明的系统也可以支持多个库。本发明的系统允许用户从一个位置跟踪和控制库的初始化过程。对于多驱动器的库,磁带引擎用所有的驱动器执行初始化过程。本发明的系统还允许多个同时的设备管理功能,包括从任何规定的存储槽的存储驱动器清洁。还为各种库设备管理功能提供了支持,包括存储槽区格式化、存储槽区擦除(迅速和长时间的)、引入/导出、存储槽编目、存储仓安装、存储仓卸下、库驱动器清洁。本发明的系统能利用一个库的所有可用驱动器。如果有多个驱动器可用,一些设备管理功能可以同时执行。

    本发明的系统可以通过读取可以附在媒体上的条型码迅速确定各个媒体的位置。安装完成和首次启动磁带引擎后,对整个库进行编目和记录。本发明的系统提供允许安排库清空的设备配置,如果库支持这个功能的话。可以将库分组。库组采用与设备组(例如服务器组)相同的概念,只是库组是基于存储槽的。可以选择一个库内的任何存储槽形成一个库组。如果库用完了所装的磁带,用户可以插入一个新磁带,而本发明的系统将能将这个磁带标识为这个预先规定的组的一部分。本发明的系统可以对新的媒体编目,使用户可以将新的媒体插入一个库内,然后继续备份或恢复操作而不中断。如果多驱动器库内有一个驱动器损坏,可以将这个损坏的驱动器标为离线。这使磁带引擎可以用库内剩下的没有损坏的驱动器继续进行操作。本发明的系统可以按用户的偏好用名称或存储槽号搜索一个媒体。本发明的系统提供了对大型库的支持,允许以一个清单向用户显示一个具有1000个以上的存储槽的转换器。存储槽可以用大图标、小图标、详细资料和列表四种方式显示。

    库可以用一个设备配置菜单配置。首先,从设备配置菜单中选择一个磁带库。于是出现一个库设置屏面。如果磁带引擎正在运行,就会出现一个窗口让用户停止这个引擎。为了配置一个库设备,应该停止磁带引擎。如果这个库支持设备序列号,驱动器应该已是配置好的,因此将在库设备清单内出现。如果驱动器没有自动地分配给这个库,可以手动予以分配。这可以通过首先加亮驱动器和库再点击“分配”按钮来完成。将一个驱动器分配给一个库使本发明的系统知道在这个库内存在这个驱动器。如果手动分配驱动器,多驱动器库内的驱动器应该按正确次序分配。例如,通常库由厂商配置成第一个库驱动器具有最低的SCSI ID号而最后一个库驱动器具有最高的SCSIID号。当然,并不是必需要这样。

    然后,出现下一个设置窗口。用户加亮这个库再点击“特性”按钮,于是出现一个特性对话框。如果装有条形码读出器,特性对话框允许用户指定哪个存储槽容纳清洁磁带(如果有的话)。

    配置库后,本发明的系统运行编目。在这个阶段,用户可以将驱动器标为在线或离线。这样,可以将损坏的驱动器(在一个多驱动器库内)标为离线,因此本发明的系统可以用剩下的未损坏的驱动器继续操作。在驱动器得到修复或替换时,通过再执行上述库设置程序很容易使它返回在线。

    本发明的系统还包括一个适应很大范围的存储要求的虚拟库(virtual library)功能。这个虚拟库功能使物理库配置成一些较小的虚拟(逻辑)库而仍然共享相同的机器人、引入/导出存储槽和清洁媒体。虚拟库功能提供将大型库配置成一些较小的使用户能产生RAID级设备和/或独立磁带库的各种组合的虚拟库的灵活性。

    可以用一个虚拟库配置实用程序来创建所有的虚拟库。这个实用程序允许用户定义虚拟库和它们的参数,包括库所需的存储槽和驱动器的数目。最小,一个虚拟库应该具有至少一个存储槽和一个与之关联的驱动器。

    用户可以用以下步骤创建一个虚拟库。首先,用户选择设备配置菜单。点击下一步按钮后,显示一个设备配置对话框。用户可以选择虚拟库,然后点击下一步按钮。于是显示一个屏面,使用户可以从一个可用库窗口中选择需配置入一个虚拟库的库。选取后,在详细资料栏内显示与这个父物理库关联的特征。还显示与适配卡、SCSI总线、SCSI ID和LUN关联的信息。此外,还有一栏显示这个虚拟库可用的存储槽的总数。从所显示的库树中,用户可以选择需与新创建的虚拟库关联的驱动器。驱动器可以用任何次序分配给一个虚拟库,但是虚拟库之间不能共享驱动器。此外,每个虚拟库应具有分配给它的至少一个驱动器和一个存储槽。用户然后选择需分配给这个虚拟库的存储槽的数目。于是在虚拟库窗口内显示这个新创建的虚拟库。如果一个特定的库在这个步骤后仍然具有未分配的驱动器,这个可用资源将在一个“可用库”窗口内显示。可以将配合工作的整个物理库配置成虚拟库。一个所选物理库的所有驱动器和存储槽都可使用。

    本发明的系统允许将一个库内的这些存储槽分成一些组。将存储槽分成组允许几种类型的作业同时运行。此外,如果在一个组内有几个存储槽可用,你可以让这个库为你横跨组内的媒体。作为默认,第一次启动本发明的系统时,每个挂到计算机上的库内的所有存储槽自动地分配给这个库组。例如,有两个库挂的到计算机上,就有两个库组。第一个库内的所有存储槽分配给GROUP0,而第二个库内的所有存储槽分配给GROUP1。可以保持这些库组的名称,或者用户可以对它们重新分组和重新命名。由于将一个库内的每个存储槽看作一个虚拟存储驱动器,因此每个存储槽可以被分配它本身的组。

    本发明的系统允许用户用一个GUI对库进行配置。用户可以通过启动一个“设备管理器”配置一个库(或修改对一个库的配置)。系统提取库设备信息后,用户可以选择一个“设备”窗口,找到和选择他们希望配置的库设备。用户将看到一个诸如图21所示的屏面。为了配置一个设备,在出现一个“设备组配置”窗口时,用户点击“设备”标签161。“设备”窗口(图22)有两个子窗口。左侧窗口160列出了各个组而右侧窗口162列出了各个可用的设备。用户可以从“组”清单中取出驱动器放入“可用设备”清单内。例如,为了将驱动器从“组”清单移动到“可用设备”清单,用户可以点击他们希望移动的设备然后点击“移除”按钮164。这使得这个驱动器可用于用户要将它配置入的任何库。然后,用户点击“库”标签166,你移动的磁带驱动器于是就在前一标签的“可用设备”清单内,而转换器在“组”清单内。

    为了创建一个新的组,用户可以点击“组”的清单内的转换器,再点击“新建”按钮168。于是出现一个“新建组”对话框。于是用户为这个组键入一个为8个字符或少一些的组名,选定开始和结束的存储槽范围,再点击“确定”。也可以用“分配”按钮170以类似的方式分配组。

    本发明的系统和方法能在SAN环境内工作,SAN内连接的每个服务器维护SAN内共享存储设备的信息,决定它想要对设备的媒体和磁带驱动器做什么和让其他服务器知道它的决定及共享它所启动的设备内状态的任何改变。

    如上对图6所述,回路内有一个服务器指定为主服务器,而剩下的服务器指定为分布式服务器。主服务器13负责对通过SAN连接的各设备进行初始化和清点。主服务器13还运行一个称为“快照(snapshot)”的全局锁定(global lock)过程,以同步各个服务器对存储设备的访问。分布式服务器15a-15n从主服务器13取得设备信息的详细资料,并初始化各自的内部结构。所有的服务器都启动运行后,它们就是独立的,其智能足以作出它们自己的决定。服务器之间的通信通过一个在SAN内所有服务器上激活的对等系统层进行。

    如果一个服务器(例如分布式服务器15b)希望备份数据和决定使用备份存储设备16a内的一个驱动器和媒体,它首先向在主服务器13上运行的“快照”过程请求全局锁定。如果没有别的服务器保持这锁定,请求服务器就得到这锁定,可以安全地继续它的操作。否则它必须一直等待到它可以得到这全局锁定。一旦服务器15b能得到锁定,它就检查它的内部清单,确定这个驱动器和媒体是否已被任何其他服务器或它自己锁定。如果它们还没有被锁定,服务器15b就将这个驱动器和媒体标为被锁定,通过它的对等系统将这信息传送给SAN上的其他服务器。然后,它释放全局锁定,使得其他服务器能对其他驱动器和媒体作它们想要作的事。当一个服务器将媒体从存储槽移动到驱动器或从驱动器移动到存储槽时,它针对这个活动更新其他服务器,使它们可以更新它们的内部清单。在对媒体格式化(或重新格式化)的情况下,该信息传送给所有的其他服务器。服务器15b结束了它的操作后,它将再请求全局锁定,然后告诉所有的其他服务器取消锁定这个驱动器和媒体。服务器15b也将从它自己的内部清单中取消锁定它们,于是释放全局锁定。

    如果主服务器13崩溃,由于所有的其他服务器都知道这些设备的状态,因此任何其他服务器都可以立刻提升为主服务器。

    本发明可以方便地用一个或多个按照本说明书给出的原理予以编程的普通通用数字计算机和/或服务器实现。熟练的程序员根据本发明的原理可以很容易地编制出适当的软件编码。本发明也可以通过配备一些专用集成电路或互连一个具有一些普通组成部分电路的适当网络实现。

    从以上所揭示的原理来看,本发明的众多其他修改和变动都是可行的。因此,可以理解,在所附权利要求书所给出的范围内,本发明可以用在这里具体说明的之外的方式实现。

信息备份的系统和方法.pdf_第1页
第1页 / 共58页
信息备份的系统和方法.pdf_第2页
第2页 / 共58页
信息备份的系统和方法.pdf_第3页
第3页 / 共58页
点击查看更多>>
资源描述

《信息备份的系统和方法.pdf》由会员分享,可在线阅读,更多相关《信息备份的系统和方法.pdf(58页珍藏版)》请在专利查询网上搜索。

本发明的备份和恢复信息的系统包括至少一个存储设备、一个允许和拒绝一些请求访问所述至少一个存储设备的设备的全局锁定请求的主服务器和至少一个包括一些存储与所述至少一个存储设备内的存储媒体有关的信息的内部清单的辅服务器,所述至少一个辅服务器向所述主服务器请求全局锁定。其中,所述全局锁定得到所述主服务器允许后,所述至少一个辅服务器检查它自己的内部清单,确定访问所述至少一个存储设备是否能得到允许。。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1