CN1295638C - 一种用于操作数据库的方法及相应的数据存储/检索库 - Google Patents

一种用于操作数据库的方法及相应的数据存储/检索库 Download PDF

Info

Publication number
CN1295638C
CN1295638C CNB018232280A CN01823228A CN1295638C CN 1295638 C CN1295638 C CN 1295638C CN B018232280 A CNB018232280 A CN B018232280A CN 01823228 A CN01823228 A CN 01823228A CN 1295638 C CN1295638 C CN 1295638C
Authority
CN
China
Prior art keywords
slot
medium
order
transfer equipment
parts
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
CNB018232280A
Other languages
English (en)
Other versions
CN1527985A (zh
Inventor
布莱恩·G·谷特曼
伦纳德·G·吉森诺夫斯基
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1527985A publication Critical patent/CN1527985A/zh
Application granted granted Critical
Publication of CN1295638C publication Critical patent/CN1295638C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0622Securing storage systems in relation to access
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0637Permissions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0686Libraries, e.g. tape libraries, jukebox
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/002Programmed access in sequence to a plurality of record carriers or indexed parts, e.g. tracks, thereof, e.g. for editing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/36Monitoring, i.e. supervising the progress of recording or reproducing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B17/00Guiding record carriers not specifically of filamentary or web form, or of supports therefor
    • G11B17/22Guiding record carriers not specifically of filamentary or web form, or of supports therefor from random access magazine of disc records
    • G11B17/228Control systems for magazines
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/40Combinations of multiple record carriers
    • G11B2220/41Flat as opposed to hierarchical combination, e.g. library of tapes or discs, CD changer, or groups of record carriers that together store one title

Abstract

数据存储库(102)的特征在于多用途插槽(110、112、114、116),所述插槽均被构造成接纳介质驱动器(152)(可针对以可移动方式加载到介质驱动器的介质读/写数据),命令转发端口(可传送来自主机的介质传送信号到共享机器人介质传送设备(118)),或各种其它模块。机器人设备(118)被编程以识别各个插槽(110-116)是否为空,其是否被填充诸如介质驱动器(152)或命令转发端口(150)的部件,并且之后与占用方适当地通信。

Description

一种用于操作数据库的方法及相应的数据存储/检索库
技术领域
本发明涉及自动数据存储设备库,用于管理便携数据存储介质针对介质驱动器的加载,卸出和传送,以及库主机和这种驱动器中加载的介质之间的数据交换。更具体地,本发明涉及具有机器人(robotic)介质传送设备和以多用途插槽为特征的数据存储库,所述多用途插槽被构造成接收(1)介质驱动器,在操作中可以针对以可拆卸方式载入介质驱动器的介质进行数据读和/或写,(2)命令转发端口,在操作中可以从主机向机器人设备传送命令信号,或(3)各种其它类型的模块。机器人设备被编程以识别哪个类型的模块占用每个插槽,或插槽是否为空,并且恰当地与占用方(occupant)通信。
背景技术
当今最普及的大容量存储系统中的一种是数据存储″库″。通常,数据存储库意味着大量普通容纳的便携(″活动″)数据存储介质,其中通过机器人介质传送设备在各种存储柜,输入/输出区和介质驱动器中间移动数据存储介质。这些库因许多原因而变得普及。首先,相对于诸如磁盘驱动器的其它存储格式,通常为磁带或光学介质的便携数据存储介质通常相当廉价。此外,通过简单地增加更多的介质项目(media item),库易于扩充以容纳更多数据。另外,多数库易于用新设备更新。例如,新的介质驱动器可以被引入到库中以补充或替换现有的介质驱动器。
今天,一些不同的公司制造这种库,每种型号具有各种不同的功能和工作原理。数据存储设备库的一个著名制造商是国际商用机器公司(IBM)。虽然大量不同的IBM库已得到广泛使用和商业成功,然而IBM工程师仍在寻找改进其库产品的各个方面的途径。
一个重点是降低成本,尤其是通过设计可容易地重构和尽可能共享部件的库,来削减硬件成本。然而,设计执行多个功能或响应多个主单元的部件通常是困难的。经常地,这个灵活性级别需要增加笨重的层次以协调或监视软件代码,这样会最终降低库的其它无关方面的性能。例如,在许多情况下,开发允许多个不兼容主机管理介质项目的共享库存的软件会不可避免地非常困难或代价高昂。
在其它情况下,共享部件会需要包含不同主机的分立端口,于是增加了共享部件的硬件成本。此外,当多个部件共享总线或其它功能时,某些构造出现不兼容性,从而导致降低或损失数据可用性。于是,在其寻求合并部件或降低数据存储库中硬件费用时,工程师面临大量艰巨的挑战。在Basham等人于1997年9月16日提交、标题为″AUTOMATED DATA STORAGE LIBRARY WITH CONTROLPATH TO SHARED ROBOTIC DEVICE VIA MEDIA DRIVE″,且现在授权为美国专利____的美国专利申请08/931,856中提出了一个解决上述问题的方案。这里完整地参考引用了该专利。
Basham等人公开了以主计算机和介质驱动器之间的双用数据/控制路径为特征的数据存储库。这个路径在主机和驱动器之间传送控制信号和数据,并且从主机向连接到驱动器的机器人介质传送设备传送机器人控制信号。虽然这个方案提供了各种益处,然而IBM工程师仍在寻找新的方式以降低库成本和改进客户重新配置库的自由度。在这点上,一个可能考虑的领域是开发一种系统,该系统是充分可重构的,然而使客户除了普通驱动器功能之外不必因购买能够传送机器人控制信号的特殊双用介质驱动器而发生费用。从市场的角度看,相关问题是已经选择利用传统介质驱动器型号建立库的客户可能因其需要至少一个独特的介质驱动器类型,即除了普通驱动器功能之外能够向库的机器人介质传送设备传送主机命令的专用双用介质驱动器,而拒绝使用Basham等人的库。于是仍然需要进一步的改进以降低成本和提高配置数据存储设备库的灵活性。
发明内容
概括地讲,本发明涉及具有机器人介质传送设备并且以多用途插槽为特征的数据存储库,其中每个多用途插槽被构造成接收占用方,例如介质驱动器(针对以可拆卸方式载入介质驱动器的介质读和/或写数据)或命令转发端口(从主机向机器人介质传送设备传送命令信号)。本发明还考虑在插槽中插入和使用其它模块,例如双功能介质驱动器/转发端口,交换机,集线器,网关,路由器,网络存储器,以太网单元,DASD,主机,存储仿真器等等。机器人介质传送设备被编程以识别哪个类型的模块(如果存在)占用每个插槽,并且恰当地与任何占用方通信。
提供电缆,连接器或其它联结器以便自动或人工地将占用插槽的任何介质驱动器或命令转发端口(或其它模块)电连接到机器人介质传送设备,并且可选地电连接到主机(如果适用)。对于每个插槽,机器人设备确定每个插槽的状态,包含占用每个插槽的模块的类型,或插槽是否为空。对于命令转发端口占用的每个插槽,机器人设备通过命令转发端口从主机接收介质传送命令,并且执行这些命令以便在包含介质存储柜,介质驱动器等等的指定介质位置中间移动介质项目。对于介质驱动器占用的每个插槽,机器人设备可以交换各种配置信息,系统管理消息,或根本不交换任何信息。
如上所述,本发明的一个设备涉及例如数据存储库的设备。也可以通过若干其它形式实现本发明。例如,可以实现本发明以提供可在数据存储库中工作的方法。在另一个实施例中,可以实现本发明以提供信号承载介质,所述信号承载介质有形地体现可被数字数据处理设备执行、以在如这里描述的数据存储库中操作的机器可读指令程序。另一个实施例涉及具有多个电互连导电元件的逻辑电路,所述导电元件被构造成在这里描述的数据存储库中操作。
本发明为其用户提供了若干明显的优点。显然,本发明保护了客户的数据存储库投资,因为命令转发端口可以被升级以便使用新的和不同的主机互连和/或协议进行外部通信,同时保留与机器人设备的相同类型的内部通信。于是,通过根据需要升级命令转发端口,客户可以将机器人设备与技术标准或技术自身的改变隔离。因此,对库的主机接口的改变不必使机器人设备过时。本发明的另一个优点在于,数据存储库容纳各种不同的插槽占用方,并且在这种占用方的数量和类型,主机到机器人设备的连接的数量和类型等等方面可以被重新配置。在这点上,本发明是可伸缩的,因为客户可能在任何时候增加(或减少)命令转发端口的数量以适应主机的增加(或减少);此外,在不必使库中的空间为任何端口专用的情况下也可得到这个益处。因此,本发明是灵活的,因为任何指定插槽均可以容纳命令转发端口或介质驱动器(或其它模块),从而提供在一个库系统内增加主机连接,数据访问设备或逻辑库的优点。
并且,由于机器人介质传送设备通过分立的命令转发端口与分立的主机通信,并且可以被构造成为非重叠主机访问而对介质项目的主体进行分区,本发明避免了在常规情况下需要操作共享部件的主机软件的复杂化。并且,在安装多个命令转发端口的情况下,本发明还具有为机器人设备提供冗余路径的优点,这在到达机器人设备的期望路径出现故障或不可用时是非常有用的。并且,由于插槽可以容纳不同和甚至不兼容的命令转发端口,本发明的库是有益的,因为它允许共享单独的机器人介质传送设备和公共的介质项目库存,尽管具有不兼容主机,应用软件和/或通信协议的异构混合体。
作为另一个优点,具有多个对应于分立主机的分立命令转发端口简化了库中介质项目的分区。也就是,机器人介质传送设备可以使每个命令转发端口与不同的介质项目分区关联,从而将通过指定命令转发端口到达的所有介质传送命令限制到对应分区上。这简化了主机处理,因为每个主机对其自身得知的″库″享有独占访问,虽然这个″库″实际上是介质项目整体的更小分区。此外,通过防止不同主机因非一致地使用共享介质项目而彼此扰乱,分区有助于保护库的安全性和完整性。与针对每个主机使用完全分立的库的方式(也会保护库的安全性和完整性)相比,分区的方式通过共享库容,机架,机器人机构和其它公共库基础设施而得到某种程度的经济性。
本发明还提供了通过以下描述可以理解的若干其它优点和益处。
附图说明
图1A是基于本发明的数据存储库的硬件部件和互连的模块图。
图1B是基于本发明的示例性命令转发端口的硬件部件和互连的模块图。
图2是基于本发明的数字数据处理机的模块图。
图3示出了基于本发明的示例性信号承载介质。
图4的流程图示出了操作本发明的数据存储库的序列。
具体实施方式
在阅读以下结合附图的详细描述之后,本领域的技术人员可以更加理解本发明的性质、目的和优点。
硬件部件和互连
介绍
本发明的一个方面涉及数据存储/检索库,通过图1A的库102示例出数据存储/检索库。库102被连接到一或多个主机104,包括图解例子中的两个主机106,108。库102包含若干插槽110、112、114、116,机器人介质传送设备118(″机器人设备″)和各种用于介质项目的存储柜120。各个插槽110-116被构造成至少接纳(1)介质驱动器,例如152,在操作中可以针对以可拆卸方式载入介质驱动器的介质读和/或写数据,(2)命令转发端口,例如150,在操作中可以从主机向机器人设备传送介质传送命令,或(3),各种其它类型的模块(未示出)。机器人设备118被编程以识别哪个类型的模块占用每个插槽110-116(或任意插槽是否为空),并且恰当地与占用方通信。
存储柜
库102管理″活动″或″便携″数据存储介质,例如磁带、光带、光盘、移动磁盘驱动器存储器、CD-ROM、数字视盘(DVD)、紧凑快擦写或智能介质、插件式电路模块或其它适当格式介质的定位和存取。某些这样的存储介质可以被自包含在便携容器或″盒″中。为了通指任何这样的存储介质,这里称之为介质的″项目(item)″。
存储柜120容纳介质项目。储柜120可以包括机架、插槽、机柜、框架或任何用于保存库102中实现的类型的介质项目的设备。储柜120也可以包含一或多个机架、入口、门、隔室或其它输入/输出构造,以辅助机器人设备118从库102输出介质项目,或接收从外部引入库102的介质项目。
存储柜120,介质项目或其组合可以被逻辑分成各个分区120a-120c,如下所述。
主机
主机106、108包括大型计算机、计算机工作站、个人计算机、计算机网络、服务器、数据输入终端、网络设备、网络家电或其它能够向插槽110-116的适当配置的占用方(例如命令转发端口)提供介质传送命令,并且能够与其它插槽110-116中容纳的介质驱动器交换机器可读数据的装置,其中所述占用方容纳在插槽110-116中。作为特定的例子,主机106、108可以包括诸如IBM RS/6000服务器的计算机。
插槽和连接器
插槽110-116包括开口、插座、外壳、机架、机柜、框架或其它接纳介质驱动器和命令转发端口的构造。作为特定的例子,插槽110-116可以包括尺寸适于接纳5.25英寸形式的磁带驱动器(例如IBM 3570型磁带驱动器)的刚性隔间(bay)。
在一个实施例中,每个插槽包含主机连接器,如110a、112a、114a、116a所示。当被插到插槽中时,每个插槽的主机连接器被构造成以自动、可拆卸和电气方式连接到介质驱动器或命令转发端口。主机连接器110a-116a被电连接到外部库连接器122-128,所述外部库连接器用于通过主机电缆107、109人工连接到主机106、108。更具体地,在配置库102以进行操作时,通过将主机电缆(例如107、109)连接到插槽的对应外部库连接器(例如122、I 24),每个占用的插槽(例如110、112,如图所示)被连接到主机中的一个。
可选地,插槽连接器110a-116a可人工而不是自动地被连接到其占用方。在另一个实施例中,可以省略一或多个插槽的连接器110a-116a,在这种情况下,这些插槽的占用方被人工连接到其相应的主机,例如通过连接插槽占用方的固定装置和外部连接器122-128或主机自身之间的电缆。
主机电缆107、109可以包括任何适当的用于传送信号的装置,例如具有一或多个导电构件的总线(例如导线、同轴电缆、双绞线、导电轨线等等),无线通信链路(例如无线频率或其它电磁信号、红外通信等等),光纤通信或其它适当路径。此外,根据需要,电缆107、109可以使用串行、并行或其它利用数字或模拟信号的通信格式。
对于电缆109,目的是在主机106和介质驱动器152之间前后传导数据,其中针对装配到驱动器152的介质项目读/写这种数据。因而,电缆109也可以传送来自主机106的命令到介质驱动器,例如读取、写入、回绕、前进、卸出等等。电缆107的目的是通过命令转发端口150在主机106和机器人设备118之间传导高层指令(″介质传送命令″)。介质传送命令构成被主机根据需要用来使机器人设备检索、移动和放置各个介质项目的指令。必要时,电缆107也可以向主机106传送机器人设备118返回的应答信号。
可选地,驱动器152可以包括如上述′856专利申请所述的双用介质驱动器。在这个实施例中,驱动器152的后端(即端口112b)通过端口118f被连接到机器人设备118,并且电缆109的附加功能是通过双用驱动器152在主机106和机器人设备118之间传送介质传送命令。
单独的主机可以被连接到多个插槽,以便实现多个连接,例如针对插槽中驻留的多个介质驱动器和/或命令转发端口的连接。在其中每个插槽包含主机连接器110a-116a的上述实施例中,可以选择连接器110a-116a的形状、位置、电气引出线和其它构造以接纳介质驱动器和命令转发端口上的对应连接器(未示出)或与之连接的电缆,并与之电气配偶。根据这里的公开内容,本领域技术人员可认识到各种不同的适用于此目的的连接器和/或电缆。
根据一个实施例,除了主机连接器110a-116a之外,每个插槽110-116可以包含机器人设备连接器110b-116b。机器人设备连接器110b-116b被构造成可拆卸地电连接到插入相应插槽的命令转发端口,甚至在插入命令转发端口时可自动实现这种连接。连接110-116b也可以被连接到其它插入有关插槽并且需要与机器人设备通信的部件,例如这种部件包含双用介质驱动器。在本发明的考虑在机器人设备118和例如152的介质驱动器之间交换构造相关信息(非客户数据)的一个实施例中,机器人设备连接器110b-116b也可以被构造成可拆卸地电连接到插槽中的介质驱动器。通过与命令转发端口和介质驱动器兼容的单独公共连接器或分立的连接器,可以实现各个连接器110b-116b以适应命令转发端口和介质驱动器的相应布局的任何差异。此外,取代图1A所示的直接连接,可以通过其它形式,例如一或多个环路、环、网络、交换机、多分支结构等等实现插槽110-116和机器人设备118之间的连接。作为另一个可选方案,可以省略连接器110b-116b,其中通过电缆、导线、无线连接或其它链路人工构成插槽占用方和机器人设备118之间的连接。根据这里的公开内容,本领域技术人员可认识到各种不同的适用于上述目的的连接器。
介质驱动器
介质驱动器包括用于和诸如这里提到的便携数据存储介质交换数据的机器。取决于应用的需要,各个驱动器可以是只读、只写或读/写驱动器。在图解的例子中,介质驱动器包括5.25英寸磁带驱动器。一个示例性的磁带驱动器是IBM 3570型磁带驱动器。虽然这里讨论了磁带,然而介质驱动器可以包括用于读和/或写其它可移动介质,例如光盘、移动磁盘存储器、插件式存储器模块等等的机器。
作为介质驱动器的安装和使用的一个例子,介质驱动器152被示出为安装在插槽112中。介质驱动器通过连接器112a接收主机的读和/或写请求,并且通过存取加载的介质项目并且经主机连接器112a发送或接收所请求数据,来作出响应。可选地,如果如此配置介质驱动器和机器人设备,介质驱动器可以通过机器人设备连接器112b与机器人设备118交换配置信息(非客户数据)。作为例子,这种配置信息包含状态信号、出错消息、配置数据和其它涉及驱动器和/或其操作的属性的信息。
认识到介质驱动器引出线、连接器、物理深度和其它特征方面标准化的缺乏,兼容介质驱动器可以包括被重新封装以便顺利插入和连接到插槽的商用介质驱动器。然而随着标准的演变,可以设计插槽以兼容变得标准化的引出线、连接器、尺寸和其它介质驱动器特征。
命令转发端口
在图解的例子中,各个命令转发端口(例如150)包括5.25英寸形式的、被构造成在主机中的一个(例如106)和机器人设备118之间转发信号的电子接口。更具体地,命令转发端口150在主机使用的接口格式的信号(例如主机连接器110a-116a上出现的SCSI信号)和机器人设备118使用的接口格式(例如RS-422)的信号之间进行转换。如果主机使用与机器人设备118相同的信号格式,命令转发端口150可以充当管道,或者实际包括信号传送通过(carry-through)电路。
为了更详细地讨论示例性命令转发端口的构造,参照图1B。命令转发端口150包括外壳,例如印制电路板、金属盒或其它围罩等等。在外壳内(或连接到外壳地),命令转发端口150包含控制器152,存储器154和连接器156、158。主机连接器158被构造成连接到主机连接器110a-116a;直接连接到连接器122-128或为连接到连接器122而设计的电缆;直接连接到主机106;或连接到任何其他为将端口150连接到主机106而设计的连接、机构或器件。当在其插槽110中安装端口150时,主机连接器158甚至可以构成主机连接器110a。机器人设备连接器156被构造成连接到机器人设备连接器110b;连接到为连接到连接器110b而设计的电缆;直接连接到机器人设备端口118f中的一个;或连接到任何其他为将端口150连接到机器人设备118而设计的连接、机构或器件。当在其插槽110中安装端口150时,机器人设备连接器156甚至可以构成连接器110b。控制器152包括离散电路、逻辑电路、ASIC、信号处理电路、微处理器或其它数字或模拟处理电路,以在主机连接器158上的一个信号格式和机器人设备连接器156上的另一个信号格式之间进行转换。作为一个例子,控制器152可以在SCSI或光纤(Fibre)信道信号(来自主机)和RS-422信号(在机器人设备118上)之间进行转换。某些命令转发端口可以被设计成针对与机器人设备118使用相同信号格式的主机,在这种情况下命令转发端口150包括管道,甚至可以省略控制器152和存储器154,其中将其替换成旁路或传送通过电路。存储器154包括电路存储器、非易失存储器、缓存器、存储器寄存器或任何其他被控制器152用于执行其转换任务的数字数据存储设施。必要时,存储器154可以被集成到控制器152中。
有利的是,为了合并连接器和简化插槽构造,用于库102的命令转发端口可以被构造成与介质驱动器具有相同的尺寸和连接标准,以便被插槽110-116接纳。作为命令转发端口的安装和使用的一个例子,命令转发端口150被示出为安装在插槽110中。端口150传送主机106的介质传送命令到机器人设备118,并且传送来自机器人设备118的任何返回信号回到主机106。
为了便于引用,术语″转发模块″被用来表示被构造成在一或多个主机和机器人设备之间转发介质传送命令的硬件部件。于是,″转发模块″可以包含命令转发端口、双用(组合)介质驱动器和命令转发端口单元等等。
用于插槽的其它设备
除了前面公开的命令转发端口和介质驱动器之外,本发明还涉及插槽110-116的其它占用方。例如,各个插槽可以容纳光纤信道网关、路由器、交换集线器、网络存储器、以太网、DASD或主机。另一个示例性插槽占用方是存储器仿真器,例如使得库中的介质项目在主机看来是硬盘驱动器或其它SCSI存储设备的设备。此外,插槽110-116可以容纳如上述′856专利申请所述的双用介质驱动器/转发端口。
机器人设备
机器人设备118包含控制器118d、介质处理机构118c、命令集存储器118a、分区映射118e、配置记录118b和端口118f。端口118f包括本领域已知的多导线寄存器端口,或其它适当的结构,例如串行端口、光纤链路、无线链路等等。介质处理机构118c包含伺服系统、马达、支臂、抓爪、传感器和其它机器人、机械和电气设备,以执行包含(至少)插槽110-116中的介质驱动器,存储柜120,输入/输出区域等等之间/中间的介质项目传送的功能。例如,机构118c可以包含机器人臂或其它盒处理设备。作为更具体的例子,机构118c可以包括如商用IBM 3494型数据存储库所示的存取器/抓爪。
如下所述,控制器118d包括一或多个可以利用各种不同硬件部件实现的数据处理机。作为一个可选功能,控制器118d可以因各种内务处理原因而与命令转发端口150和介质驱动器152通信,如下所述。更重要地,控制器118d允许机器人设备118响应通过主机106、108发起并且通过命令转发端口(例如150)发送到机器人设备的高层介质传送命令。作为一个例子,某些这样的命令可以包括标识具体介质项目和期望介质目的地的介质移动命令。例如,可能的介质目的地包含插槽110-116中的介质驱动器,存储柜120,输入/输出区域等等。为了图解一个示例性信号路径,控制器118d可以通过电缆107、外部连接器122、主机连接器110a、命令转发端口150、机器人设备连接器110b和端口118f从主机106接收介质传送命令。控制器118d使用这些信号产生与机构118c的设备兼容的更加特定的控制信号。这些特定控制信号包含指示进行移位、旋转、抓紧和其它具有实现期望介质移动的组合效果的动作的指令。于是,来自主机106、108的高层介质传送命令可以简单地指示机器人设备118例如从指定存储柜向介质驱动器中的一个加载介质项目。相反,控制器118d相应产生的控制信号具体指示机构118c完成垂直和水平移动,抓紧和释放动作,旋转或枢轴运动,以及任何其他适合于执行主机的高层介质移动命令的移动。
如上所述,并且如下所详述的,可以通过各种方式实现控制器118d。作为另一个选择,控制器118d可以包括插入插槽110-116中的一个并且通过端口110b-116b中的一个和端口118f中的一个与机器人设备118的其余部件通信的模块单元。在另一个实施例中,控制器118d可以包括位于诸如152的介质驱动器中的共享功能处理器。
可以通过查找表、链接表、文件、记录、数据库或任何其他在易失或非易失存储器、存储设备、硬件或任何其他装置中存储的数据结构实现命令集存储器118a、分区映射118e和配置记录118b。命令集118a包含(1)被调用以便启动或响应命令转发端口的某些命令、固件例程、子程序、软件或其它函数,和(2)被调用以便启动或响应介质驱动器的其它固件例程、命令、子程序、软件或其它函数。命令集¨8a也可以涉及其它类型的插槽占用方,例如光纤信道网关、路由器、交换机、网络存储器、主机、存储器仿真器、双用介质驱动器等等。
在本例子中,命令转发端口的命令集包括若干被调用以响应不同SCSI介质转换器命令的不同函数,这些函数用于通过向介质处理机构118c提交特定指令来执行SCSI命令。根据需要,命令集118a可以包含许多辅助命令集以适应不同厂商、样式和/或型号的介质驱动器。
配置记录118b包含各个插槽110-116的内容的记录,即其是否含有内容,介质驱动器,命令转发端口或其它占用方。配置记录118b也可以含有关于插槽内容的详细资料,例如介质驱动器的制造商、样式、型号、速度和容量。分区映射118e包含指定一或多个分区的信息,其中各个分区包含以下部件的一或多个:插槽110-116、介质项目和存储柜120之一或全部、输入/输出区域等等。配置记录还将各个介质传送命令进入节点(例如命令转发端口或双用介质驱动器)与具体分区关联。
示例性数字数据处理设备
如上所述,例如控制器118d和控制器152的计算机特征可通过各种形式实现。作为一个例子,控制器118d和处理器152之一或全部可以包括分立的数字数据处理设备,如图2的数字数据处理设备200的硬件部件和互连所示。
设备200包含连接到存储器204的处理器202,例如微处理器、工作站、个人计算机或其它处理机。在本例子中,存储器204包含快速存取存储器206以及非易失存储器208。快速存取存储器206可以包括随机访问存储器(″RAM″),并且可以被用来存储由处理器202执行的编程指令。非易失存储器208可以包括例如电池后备RAM、EEPROM、一或多个磁性数据存储盘,例如″硬盘驱动器″,磁带驱动器,或任何其他适当的存储设备。设备200还包含输入/输出210,例如线路,总线,电缆,电磁链路,或其它使处理器502与设备200外部的硬件交换数据的装置。
除上述具体描述之外,本领域技术人员(借助本发明的教导)能够发现,在不偏离本发明范围的情况下上述设备可以通过具有不同构造的机器实现。作为特定的例子,部件206、208中的一个可以被省略;此外,可以在处理器202上,甚至是在设备200外部提供存储器204。
逻辑电路
与上述数字数据处理设备相反,本发明的不同实施例使用逻辑电路而不是计算机执行的指令实现控制器118d和/或控制器152。根据应用在速度、费用、加工成本等等方面的具体需求,可以通过构造具有数千微型集成晶体管的专用集成电路(″ASIC″)来实现这个逻辑。可以通过CMOS、TTL、VLSI或其它适用构造实现这种ASIC。其它可选方案包含数字信号处理芯片(″DSP″)、离散电路(例如电阻器、电容器、二极管、电感器、和晶体管)、现场可编程门阵列(″FPGA″)、可编程逻辑阵列(″PLA″)等等。
操作
前面描述了本发明的结构特征,现在描述本发明的操作特性。如上所述,本发明的处理通常涉及机器人设备识别各个插槽110-116如何/是否被填充,以及此后以某种适当的方式与占用方通信。虽然本发明广泛适用于所有类型的介质存储驱动器和可移动数据存储介质,然而已经描述的特定结构非常适于磁带介质,并且随后的说明会集中于本发明的这种应用,但不对本发明产生任何限制。
信号承载介质
在由控制器118d和控制器152执行机器执行的程序序列的实施例中,可以通过各种形式的信号承载介质实现这些序列。在图2的背景中,这种信号承载介质可以包括例如存储器204或可被处理器202直接或间接访问的其它信号承载介质,例如磁性数据存储盘300(图3)。无论是包含在存储器204、磁盘300还是其它地方,指令均可以被存储在各种机器可读数据存储介质上。某些例子包含直接存取存储器(例如传统″硬盘驱动器″、廉价盘的冗余阵列(″RAID″)或其它直接访问存储设备(″DASD″)),诸如磁带或光带的串行存取存储器,电子非易失存储器(例如ROM、EPROM或EEPROM),电池后备RAM,光学存储器(例如CD-ROM、WORM、DVD、数字光带),纸张″打孔″卡,或其它适当的信号承载介质,包含模拟或数字传输介质,模拟和通信链路,和无线通信。在本发明的图解实施例中,机器可读指令可以包括从诸如″C″,汇编语言等等编译而成的软件对象代码。
逻辑电路
与上述信号承载介质相反,通过使用逻辑电路而不是处理器执行指令,可以实现本发明的方法。在这个实施例中,在控制器118d和/或控制器152中实现逻辑电路,并且逻辑电路被构造成执行操作以实现本发明的方法。如上所述,通过使用许多不同类型的电路可以实现逻辑电路。
总体操作序列
图4示出了进一步图解本发明的方法的一个例子的序列400。概括地讲,在这个序列中,一或多个介质驱动器和/或命令转发端口被加到库102中,之后库102根据这个配置进行操作,以满足主机的数据存储/检索需要。为了易于解释,在如上所述图1的系统的环境中描述图4的例子,但本发明不限于此。
在步骤402,技术人员、安装工程师、系统管理员或其它操作人员向一或多个插槽加载命令转发端口或介质驱动器。如上所述,本发明考虑到用于插槽的各种其它设备,虽然当前的讨论(为了便于图解)侧重于命令转发端口和介质驱动器。在图1A图解的例子中,操作人员用命令转发端口150填充插槽110,并且用介质驱动器152填充插槽112。在步骤404,操作人员初始化库102的配置。这涉及向机器人设备118提交适当命令,所述命令可能来自以下部件中的一个:主机106、108中的一个,触发器,自动配置序列,单独从主机连接到机器人设备的系统管理员控制台(未示出),等等。如果库第一次启动,步骤404触发库102的第一次配置;如果库先前已经配置和操作,但是步骤402改变了插槽110-116的内容,则步骤404触发库102的重新配置。除了提供用于配置或重新配置的指令之外,步骤404的命令可以包含其它信息,例如库102中的不同分区的标识。各个分区可以包含一或多个以下部件:一或多个介质驱动器,输入/输出区,存储柜120中的介质项目(由介质项目的序号、在储柜120中的行/列位置、储柜120的预定子部分120a-120c或其它方式标识),或其它库部件。除了分区的内容之外,步骤404还在各个分区,和用于从主机向机器人设备118传送介质传送命令(涉及该插槽的分区)的一或多个具体插槽、命令转发端口或双用介质驱动器之间进行映射。可选地,不同于分别在分区和插槽之间进行映射,插槽可以被包含在分区定义中。
响应步骤404,机器人设备118确定插槽110-116的状态(步骤406)。也就是,对于各个插槽,机器人设备118确定插槽是否被占用或为空,并且如果被占用,确定其中驻留什么类型的占用方。在图解的实施例中,机器人设备118确定各个插槽占用方是介质驱动器还是命令转发端口。根据应用,机器人设备118可以识别其它占用方类型,例如光纤信道网关、路由器、交换机、集线器、网络存储器、以太网、DASD、主机、存储器仿真器、双用介质驱动器等等。通过实际检测各个插槽的占用方的某种属性,或通过得到插槽状态的通知,可以执行步骤406。在检测方案的一个例子中,机器人设备118通过适当的机器人设备端口110b-116b与各个插槽的占用方交换消息。在这个实施例中,机器人设备118可以利用不同命令集的代表性样本尝试与插槽占用方通信。在与插槽占用方成功通信之后,机器人设备118可以使用现在确认的命令集进行更加具体的通信,例如确定介质驱动器的制造商、样式、型号、速度、存储容量和其它信息。在″检测″方案的不同例子中,机器人设备118不是交换消息,而是检测插槽占用方的电气配置,例如通过检测当插槽被填充命令转发端口或介质驱动器时出现的电气上拉或下拉。通过插槽的可选机械和电气结构实现这种上拉或下拉,本领域技术人员借助这里公开的内容可想到各种这样的结构。在另一个实施例中,机器人设备118针对插槽占用方操作光学读取器(未示出),例如检测区分条码的条码读取器或光传感器,反射传感器,非反射传感器,或其它可见指示器。在另一个不同的实施例中,机器人设备118使用接触方式识别占用方类型,例如通过实验性地用机器人手指或探测器接触插槽占用方,或通过实验性地尝试向各个插槽的占用方加载介质项目。通过使用基于RF、感应、或其它电场或磁场的扫描,另一个实施例使用磁性、″智能卡″或其它无线读取器识别插槽占用方。在根据上述任务(或其组合)中的一个确定插槽状态之后,机器人设备118在配置记录118b中存储结果。
与上述相比,通过具体通知机器人设备118有关库的配置的信息,可以执行步骤406。在这个实施例中,操作人员人工检查各个插槽110-116,并且使用系统控制台向机器人设备118发送这种信息,甚至直接在配置记录118b中存储结果。在这个实施例中,通过接收这种输入,或通过检查包含这种输入的配置记录118b,机器人设备确定插槽的状态(步骤406)。
总之,在当前图解例子中步骤406的结果包含机器人设备118识别命令转发端口150位于插槽110中,介质驱动器152位于插槽112中,和插槽114、116为空。在步骤407,机器人设备118实现任何适用的分区方案。如果被实现,各个分区定义库中仅被那些通过命令转发端口或双用介质驱动器连接到该分区的主机独占使用的设施集合。各个分区包含设施集合,该设施集合可以包含任何以下部件:一或多个存储柜120、一或多个介质项目、一或多个插槽110-116或其组合。在当前图解的例子中,定义分区,使得主机106与端口150、介质驱动器152和某些介质项目关联。
机器人设备118可以通过各种方式得知期望的分区。例如,机器人设备118可以查询配置记录118b以确定在步骤404是否发出分区指令。在另一个实施例中,机器人设备118可以自动识别期望分区,如以下参考文献中所示:
1.美国专利6,185,165,标题为″Positionable Vision Indicatorsfor Configuring Logical Libraries″,2001年2月2日提交。
2.美国专利6,044,442,标题为″External Partitioning of anAutomated Data Storage Library into Multiple Virtual Libraries forAccess by a Plurality of Hosts″,2000年3月28日提交。这里完整地参考引用了上述专利的整个内容。
在得知任何适用的分区方案之后,机器人设备118当执行机器人设备命令或读/写请求时会实施这个方案,如下所述。
在步骤407之后,库102(尤其是机器人设备118)操作准备就绪(步骤408)。在步骤410,主机106根据需要通过命令转发端口150提交介质传送命令,以指示机器人设备得到介质项目并向介质驱动器152加载介质项目。在步骤412,主机向介质驱动器152提交读/写请求,以指示介质驱动器针对其中加载的介质项目进行读取、写入、前进、回绕,以及执行其它操作。
在步骤414,机器人设备118根据需要与插槽110、112的占用方通信。例如,机器人设备118可以从命令转发端口150接收介质传送命令。在这种情况下,机器人设备118针对适当命令集118a评估接收的命令(步骤416),并且如果命令是适当的,机器人设备118采取任何保证的动作(步骤418)。例如,如果在步骤414接收到加载命令,则机器人设备118在步骤416通过将其与命令转发端口命令集相比较来验证加载命令及其语法。如果加载命令是适当的,则机器人设备118执行适当函数(例如)以便在步骤418将期望介质项目加载到介质驱动器152中。
有利的是,如果机器人设备118在步骤414接收到审计、库存或其它主机命令以得知存储柜120的内容(步骤410),机器人设备118(步骤418)只返回分配给命令转发端口150的分区的内容,其中从该命令转发端口150接收到审计、库存或其它命令。于是,主机106不能″看见″其它主机的分区的内容,从而减少了在不同主机中间扰乱介质项目的可能性。类似地,机器人设备(在步骤418)拒绝或不执行加载或操作其它分区的介质项目的主机命令。机器人设备118可以拒绝主机命令,例如通过经与发起主机相关的命令转发端口返回出错消息。
另外,在步骤416,机器人设备118根据任何适用的分区方案评估步骤414的输入。例如,如果命令涉及命令发起方的分区以外的介质项目,机器人设备118可以拒绝执行介质传送命令。在可选实施例中,插槽占用方可以履行某些或所有分区执行责任。在这个实施例中,机器人设备118在创建分区(步骤407)之后利用(recruit)插槽占用方以实施分区。也就是,机器人设备118根据需要向插槽占用方传递分区信息,插槽占用方同意或拒绝针对建立的分区的介质传送命令。更具体地,由于每个插槽与一个分区相关,机器人设备118指示每个插槽占用方仅执行涉及与该插槽相关的分区下的介质项目或存储柜的命令。可以通过这种方式利用的插槽占用方的某些例子包含命令转发端口(例如150)、双用介质驱动器或任何其他被主机调用以便向机器人设备118传送介质传送命令的模块。必要时,还可以利用这种设备对介质传送命令实施其它限制,例如拒绝具有不恰当语法的命令,拒绝不认识的命令等等。
步骤410、412、414被并行示出,但这不对本发明产生任何限制,因为主机存储请求、介质传送命令和机器人设备通信可以按照几乎无限的顺序发生。此外,根据所进行的数据存储操作,可以根据需要重复步骤410、412和414中的每个。
其它实施例
虽然上述公开内容示出了本发明的若干图解实施例,然而本领域的技术人员应当理解,在不偏离所附权利要求书定义的本发明范围的前提下,这里可以进行各种改变和修改。此外,虽然可以单一地描述或要求保护本发明的要素,然而可以考虑多个要素,除非明确指出涉及单一要素的限制。另外,本领域技术人员会认识到,为了说明和提出权利要求,必须按照某种特定顺序提出操作序列,但是本发明涉及这种特定顺序之外的各种变化顺序。

Claims (27)

1.一种用于操作数据存储/检索库的方法,所述数据存储/检索库包含机器人介质传送设备和多个多用途插槽,该方法包括:
针对每个插槽,确定每个插槽的状态,所述状态包括以下条件中的一个:插槽被介质驱动器占用;插槽被转发模块占用,其中所述转发模块被构造成执行将来自一个或多个主机的介质传送命令转发到机器人介质传送设备的操作;插槽未占用;
针对每个被转发模块占用的插槽,传送设备从转发模块接收主机介质传送命令,并且响应接收的命令而执行操作,所述操作包括在介质位置之间传送介质项目,所述介质位置包括存储柜和位于插槽中的介质驱动器。
2.如权利要求1所述的方法,其中确定操作包括识别插槽是否被来自一个列表中的一个部件占用,所述列表包含下列中的一个或多个:交换机、集线器、网关、路由器、网络存储器、以太网模块、存储设备、主机、存储器仿真器、组合介质驱动器和命令转发端口。
3.如权利要求1所述的方法,其中响应接收的命令的操作还包括:
根据预定逻辑分区限制主机对库的部件的访问,其中每个分区与占用插槽的一或多个转发模块的不同集合排它地相关,每个分区确定一个或多个以下部分的不同分组:一个或多个介质项目、一个或多个介质驱动器、一个或多个介质存储位置。
4.如权利要求3所述的方法,其中限制主机访问的操作包括:
传送设备命令一个或多个插槽占用方根据预定逻辑分区限制主机访问;
被命令的插槽占用方根据预定逻辑分区限制主机访问。
5.如权利要求1所述的方法,其中
传送设备访问用于标识一个或多个分区的配置记录,其中每个分区与占用插槽的一个或多个转发模块的不同集合排它地相关,每个分区包含一个或多个以下部分的不同分组:一个或多个介质项目、一个或多个介质驱动器、一个或多个介质存储位置;
响应接收的命令的操作还包括针对所有从特定转发模块到达的介质传送命令,将主机访问限制到与该转发模块相关的分区的部件。
6.如权利要求1所述的方法,还包括:
将一个或多个介质驱动器放入所述插槽中的相应插槽。
7.如权利要求1所述的方法,还包括:
将一或多个转发模块放入所述插槽中的相应插槽。
8.如权利要求1所述的方法,其中所述确定操作包括以下步骤的至少一个:
传送设备与一个或多个插槽的占用方交换消息;
传送设备检测一个或多个插槽的占用方的电气配置;
传送设备接收指定一个或多个插槽的状态的操作人员输入;
传送设备使用光学读取器检测一个或多个插槽的占用方所表现的一或多个光学特征;
传送设备尝试向一个或多个插槽的占用方加载介质项目,并且根据尝试结果确定插槽的状态;
传送设备对一个或多个插槽的占用方的电磁标记进行无线扫描;
传送设备尝试接触一个或多个插槽的占用方,并且根据尝试接触的结果确定插槽的状态。
9.如权利要求1所述的方法,其中:
所述操作进一步包括传送设备接收库的部件和一或多个分区之间的映射,其中每个分区与一或多个转发模块排它地相关;
传送操作还包括不执行通过一个转发模块到达并且寻求访问与另一个转发模块相关的分区的库部件的主机命令。
10.一种用于操作数据存储/检索库的方法,所述数据存储/检索库包含机器人介质传送设备和多个多用途插槽,该方法包括:
针对每个插槽,确定每个插槽的状态,所述状态包括以下条件中的一个:插槽被介质驱动器占用,插槽被命令转发端口占用,插槽被组合介质驱动器和命令转发端口占用,插槽未占用;
针对每个被命令转发端口占用的插槽,并且针对每个被组合介质驱动器和命令转发端口占用的插槽,传送设备从其接收主机介质传送命令,并且响应接收的命令而执行操作,所述操作包括在介质位置之间传送介质项目,所述介质位置包括存储柜和位于其它插槽中的介质驱动器。
11.一种具有多个电气互连的导电元件的逻辑电路,被构造成执行管理数据存储/检索库的操作,所述数据存储/检索库包括机器人介质传送设备和多个多用途插槽,所述逻辑电路包括:
针对每个插槽、确定每个插槽的状态的部件,所述状态包含以下条件中的一个:插槽被介质驱动器占用;插槽被转发模块占用,其中所述转发模块被构造成执行将来自一个或多个主机的介质传送命令转发到机器人介质传送设备的操作;插槽未占用;
针对每个被转发模块占用的插槽、使传送设备从转发模块接收主机介质传送命令、并且响应接收的命令而执行操作的部件,所述操作包括在介质位置之间传送介质项目,所述介质位置包括存储柜和位于插槽的介质驱动器。
12.数据存储/检索库设备,包括:
多个多用途插槽;
被编程以执行库管理操作的机器人介质传送设备,所述机器人介质传送设备包括:
针对每个插槽、确定每个插槽的状态的部件,所述状态包含以下条件中的一个:插槽被介质驱动器占用;插槽被转发模块占用,其中所述转发模块被构造成执行将来自一个或多个主机的介质传送命令转发到机器人介质传送设备的操作;插槽未占用;
针对每个被转发模块占用的插槽、使传送设备从转发模块接收主机介质传送命令、并且响应接收的命令而执行操作的部件,所述操作包括在介质位置之间传送介质项目,所述介质位置包括介质存储柜和位于其它插槽的介质驱动器。
13.如权利要求12所述的设备,其中所述确定每个插槽的状态的部件识别插槽是否被来自一个列表中的一个部件占用,所述列表包含下列中的一个或多个:交换机、集线器、网关、路由器、网络存储器、以太网模块、存储设备、主机、存储器仿真器、组合介质驱动器和命令转发端口。
14.如权利要求12所述的设备,其中所述响应接收的命令而执行操作的部件还包括:
根据预定逻辑分区限制主机对库设备的部件的访问的部件,其中每个分区与占用插槽的一或多个转发模块的不同集合排它性相关,每个分区限定一个或多个以下部分的不同分组:一个或多个介质项目、一个或多个介质驱动器、一个或多个介质存储位置。
15.如权利要求14所述的设备,其中限制主机访问的部件包括:
使传送设备识别针对一个或多个插槽占用方的预定逻辑分区、并且指示插槽占用方根据预定逻辑分区限制主机访问库部件的部件。
16.如权利要求15所述的设备,还包括:
均驻留在插槽中的一个插槽内的一个或多个模块,每个模块被编程以便执行传送设备指令,以根据传送设备识别的逻辑分区限制主机访问库部件。
17.如权利要求12所述的设备,其中
传送设备访问用于标识一个或多个分区的配置记录,其中每个分区与占用插槽的一或多个转发模块的不同集合排它性相关,每个分区包含一个或多个以下部分的不同分组:一个或多个介质项目、一个或多个介质驱动器、一个或多个介质存储位置;
所述响应接收的命令而执行操作的部件还包括:
针对所有从特定转发模块到达的介质传送命令、将主机访问限制到与该转发模块相关的分区的部件的部件。
18.如权利要求12所述的设备,还包括:
占用所述插槽中的相应插槽的一个或多个介质驱动器。
19.如权利要求12所述的设备,还包括:
占用所述插槽中的相应插槽的一个或多个转发模块。
20.如权利要求19所述的设备,其中转发模块包括以下部件的至少一个:命令转发端口、组合介质驱动器和命令转发端口单元。
21.如权利要求12所述的设备,还包括在一或多个对应插槽中安装的以下部件中的一个或多个:交换机、集线器、网关、路由器、网络存储器、以太网模块、存储设备、主机、存储器仿真器、组合介质驱动器和命令转发端口。
22.如权利要求12所述的设备,还包括:
一个或多个转发模块,每个转发模块包括在主机介质传送命令使用的第一格式和机器人介质传送设备使用的第二格式之间进行转换的接口。
23.如权利要求12所述的设备,其中所述确定每个插槽的状态的部件包括以下部件的至少一个:
使传送设备与一个或多个插槽的占用方交换消息的部件;
使传送设备检测一个或多个插槽的占用方的电气配置的部件;
使传送设备接收指定一个或多个插槽的状态的操作人员输入的部件;
使传送设备使用光学读取器检测一个或多个插槽的占用方所表现的一个或多个光学特征的部件;
使传送设备尝试向一个或多个插槽的占用方加载介质项目、并且根据尝试结果确定插槽的状态的部件;
使传送设备对一个或多个插槽的占用方的电磁标记进行无线扫描的部件;
使传送设备尝试接触一个或多个插槽的占用方、并且根据尝试接触的结果确定插槽的状态的部件。
24.如权利要求12所述的设备,其中传送设备还包括:
命令集存储器,包含与预定介质驱动器兼容的一或多个软件功能,和与预定转发模块兼容的一个或多个软件功能。
25.如权利要求12所述的设备,其中传送设备接收库设备的部件和一个或多个分区之间的映射,其中每个分区与一个或多个转发模块排它性相关;
不执行通过一个转发模块到达并且寻求访问与另一个转发模块相关的分区的库部件的主机命令。
26.如权利要求12所述的设备,其中每个插槽包括:
尺寸适合于以可滑动方式接纳以下部件中的一个的隔间:预定配置的介质驱动器,预定配置的转发模块;
被构造成将隔间的占用方连接到传送设备的一或多个连接器。
27.数据存储/检索库设备,包括:
多个插槽装置,均用于可拆卸地接纳预定配置的占用方;
用于执行库管理操作的机器人介质传送装置,所述机器人介质传送装置包括:
针对每个插槽装置、确定每个插槽装置的状态的部件,所述状态包含以下条件中的一个:插槽装置被介质驱动器占用;插槽装置被转发模块占用,其中所述转发模块被构造成执行将来自一个或多个主机的介质传送命令转发到机器人介质传送设备的操作;插槽装置未占用;
针对每个被转发模块占用的插槽装置、从转发模块接收主机介质传送命令、并且响应接收的命令而执行操作的装置,所述操作包括在介质位置之间传送介质项目,所述介质位置包括介质存储柜和位于其它插槽装置的介质驱动器。
CNB018232280A 2001-05-10 2001-11-02 一种用于操作数据库的方法及相应的数据存储/检索库 Expired - Lifetime CN1295638C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/853,721 US6487474B1 (en) 2001-05-10 2001-05-10 Automated data storage library with multipurpose slots providing user-selected control path to shared robotic device
US09/853,721 2001-05-10

Publications (2)

Publication Number Publication Date
CN1527985A CN1527985A (zh) 2004-09-08
CN1295638C true CN1295638C (zh) 2007-01-17

Family

ID=25316734

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB018232280A Expired - Lifetime CN1295638C (zh) 2001-05-10 2001-11-02 一种用于操作数据库的方法及相应的数据存储/检索库

Country Status (10)

Country Link
US (1) US6487474B1 (zh)
EP (1) EP1388113B1 (zh)
JP (1) JP3906157B2 (zh)
KR (1) KR100530300B1 (zh)
CN (1) CN1295638C (zh)
AT (1) ATE428968T1 (zh)
CA (1) CA2446089C (zh)
DE (1) DE60138422D1 (zh)
RU (1) RU2280277C2 (zh)
WO (1) WO2002093451A1 (zh)

Families Citing this family (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8788092B2 (en) 2000-01-24 2014-07-22 Irobot Corporation Obstacle following sensor scheme for a mobile robot
US8412377B2 (en) 2000-01-24 2013-04-02 Irobot Corporation Obstacle following sensor scheme for a mobile robot
US6956348B2 (en) 2004-01-28 2005-10-18 Irobot Corporation Debris sensor for cleaning apparatus
US7010797B2 (en) * 2000-12-18 2006-03-07 Storage Technology Corporation Scalable, space efficient, high density automated library
US6918040B2 (en) * 2000-12-28 2005-07-12 Storage Technology Corporation Method and system for providing field scalability across a storage product family
US6690134B1 (en) 2001-01-24 2004-02-10 Irobot Corporation Method and system for robot localization and confinement
US7571511B2 (en) 2002-01-03 2009-08-11 Irobot Corporation Autonomous floor-cleaning robot
US6766412B2 (en) * 2001-03-31 2004-07-20 Quantum Corporation Data storage media library with scalable throughput rate for data routing and protocol conversion
US7429843B2 (en) 2001-06-12 2008-09-30 Irobot Corporation Method and system for multi-mode coverage for an autonomous robot
US8396592B2 (en) 2001-06-12 2013-03-12 Irobot Corporation Method and system for multi-mode coverage for an autonomous robot
US6813730B2 (en) * 2001-07-11 2004-11-02 Dell Products L.P. Method, computer program product, and system for detecting a peripheral device in a computer system
US6591164B1 (en) * 2001-12-13 2003-07-08 Storage Technology Corporation Library failover method using hot spare redundant picker mechanism
US20030135672A1 (en) * 2002-01-14 2003-07-17 Imation Corp. System having tape drive emulator and data cartridge carrying a non-tape storage medium
US9128486B2 (en) 2002-01-24 2015-09-08 Irobot Corporation Navigational control system for a robotic device
US7046536B2 (en) * 2002-05-29 2006-05-16 Micron Technology, Inc. Programable identification circuitry
US8386081B2 (en) 2002-09-13 2013-02-26 Irobot Corporation Navigational control system for a robotic device
US8428778B2 (en) 2002-09-13 2013-04-23 Irobot Corporation Navigational control system for a robotic device
WO2004044783A2 (en) 2002-11-08 2004-05-27 Crossroads Systems, Inc. System and method for controlling access to media libraries
US7743205B2 (en) * 2002-12-17 2010-06-22 Quantum Corporation Apparatus and method for virtualizing data storage media, such as for use in a data storage library providing resource virtualization
US7263596B1 (en) 2002-12-17 2007-08-28 Advanced Digital Information Corporation Logical library architecture for data storage applications and methods of use
US6965811B2 (en) * 2003-07-14 2005-11-15 Quantum Corporation Media drive module and storage library system
US6950723B2 (en) * 2003-08-22 2005-09-27 International Business Machines Corporation Method, system, and program for virtualization of data storage library addresses
US7332890B2 (en) 2004-01-21 2008-02-19 Irobot Corporation Autonomous robot auto-docking and energy management systems and methods
DE112005000738T5 (de) 2004-03-29 2007-04-26 Evolution Robotics, Inc., Pasadena Verfahren und Vorrichtung zur Positionsbestimmung unter Verwendung von reflektierten Lichtquellen
WO2005094173A2 (en) * 2004-04-01 2005-10-13 Victor Waiman Unattended data storage system
EP1776623B1 (en) * 2004-06-24 2011-12-07 iRobot Corporation Remote control scheduler and method for autonomous robotic device
US7428613B1 (en) 2004-06-29 2008-09-23 Crossroads Systems, Inc. System and method for centralized partitioned library mapping
US7454565B1 (en) 2004-06-29 2008-11-18 Crossroads Systems, Inc System and method for distributed partitioned library mapping
US7706917B1 (en) 2004-07-07 2010-04-27 Irobot Corporation Celestial navigation system for an autonomous robot
US8972052B2 (en) 2004-07-07 2015-03-03 Irobot Corporation Celestial navigation system for an autonomous vehicle
US7403451B2 (en) * 2004-07-15 2008-07-22 International Business Machines Corporation Media vaulting in an automated data storage library
US20060036786A1 (en) * 2004-08-13 2006-02-16 Barrett Kreiner Logical remapping of storage devices
US20060166173A1 (en) * 2005-01-27 2006-07-27 Ellis Michael B Educational method and device
US7971006B2 (en) 2005-01-28 2011-06-28 Crossroads Systems, Inc. System and method for handling status commands directed to partitioned media library
US7451291B2 (en) 2005-01-28 2008-11-11 Crossroads Systems, Inc. System and method for mode select handling for a partitioned media library
US7370173B2 (en) * 2005-01-28 2008-05-06 Crossroads Systems, Inc. Method and system for presenting contiguous element addresses for a partitioned media library
US8392021B2 (en) 2005-02-18 2013-03-05 Irobot Corporation Autonomous surface cleaning robot for wet cleaning
US8670866B2 (en) 2005-02-18 2014-03-11 Irobot Corporation Autonomous surface cleaning robot for wet and dry cleaning
US7620476B2 (en) 2005-02-18 2009-11-17 Irobot Corporation Autonomous surface cleaning robot for dry cleaning
US8046187B2 (en) * 2005-02-24 2011-10-25 International Business Machines Corporation Test systems for media drives of data storage systems
US8930023B2 (en) 2009-11-06 2015-01-06 Irobot Corporation Localization by learning of wave-signal distributions
US7788413B1 (en) * 2005-04-29 2010-08-31 Crossroads Systems, Inc. Method and system for handling commands requesting movement of a data storage medium between physical media libraries
CN101194313B (zh) * 2005-06-10 2010-05-19 精工爱普生株式会社 介质处理装置及介质处理装置的控制方法
US8069270B1 (en) * 2005-09-06 2011-11-29 Cisco Technology, Inc. Accelerated tape backup restoration
US9990133B2 (en) * 2005-09-12 2018-06-05 Oracle America, Inc. Storage library client interface system and method
US9269390B2 (en) * 2005-10-26 2016-02-23 Hewlett Packard Enterprise Development Lp Efficient error reporting from an operator control panel of a storage apparatus
US8266431B2 (en) * 2005-10-31 2012-09-11 Cisco Technology, Inc. Method and apparatus for performing encryption of data at rest at a port of a network device
EP2816434A3 (en) 2005-12-02 2015-01-28 iRobot Corporation Autonomous coverage robot
EP2466411B1 (en) 2005-12-02 2018-10-17 iRobot Corporation Robot system
ES2334064T3 (es) 2005-12-02 2010-03-04 Irobot Corporation Robot modular.
ES2623920T3 (es) 2005-12-02 2017-07-12 Irobot Corporation Sistema de robot.
KR101300492B1 (ko) 2005-12-02 2013-09-02 아이로보트 코퍼레이션 커버리지 로봇 이동성
EP2548492B1 (en) 2006-05-19 2016-04-20 iRobot Corporation Removing debris from cleaning robots
US8417383B2 (en) 2006-05-31 2013-04-09 Irobot Corporation Detecting robot stasis
US8200806B2 (en) * 2006-07-20 2012-06-12 International Business Machines Corporation Automated discovery and configuration of components on a computer network
JP4920390B2 (ja) * 2006-12-05 2012-04-18 株式会社東芝 ストレージ装置
US7562162B2 (en) * 2007-04-25 2009-07-14 At&T Intellectual Property I, L.P. Systems and methods for distributed computing utilizing a smart memory apparatus
KR101345528B1 (ko) 2007-05-09 2013-12-27 아이로보트 코퍼레이션 자동 로봇
US7925794B2 (en) * 2007-08-17 2011-04-12 At&T Intellectual Property I, L.P. Systems and methods for localizing a network storage device
US8291179B2 (en) * 2007-10-05 2012-10-16 Imation Corp. Methods for implementation of worm enforcement in a storage system
US8171244B2 (en) 2008-02-01 2012-05-01 Imation Corp. Methods for implementation of worm mode on a removable disk drive storage system
US8464074B1 (en) 2008-05-30 2013-06-11 Cisco Technology, Inc. Storage media encryption with write acceleration
US20100249952A1 (en) * 2009-03-31 2010-09-30 Schneider Electric/Square D Company Direct Control of Devices Through a Programmable Controller Using Internet Protocol
US8725780B2 (en) * 2009-06-12 2014-05-13 Imation Corp. Methods and systems for rule-based worm enforcement
US8234005B2 (en) * 2009-09-03 2012-07-31 Spectra Logic Corp. Efficient moves through drive remapping
WO2011103198A1 (en) 2010-02-16 2011-08-25 Irobot Corporation Vacuum brush
CN103491839B (zh) 2011-04-29 2017-01-18 艾罗伯特公司 用于对清洁表面进行清洁的自主移动机器人
US11471020B2 (en) 2011-04-29 2022-10-18 Irobot Corporation Robotic vacuum cleaning system
TW201317802A (zh) * 2011-10-21 2013-05-01 Acer Inc 電子系統及相關之主機裝置及管理方法
US10782890B2 (en) * 2016-09-21 2020-09-22 International Business Machines Corporation Log snapshot procedure control on an automated data storage library
US10839852B2 (en) 2016-09-21 2020-11-17 International Business Machines Corporation Log snapshot control on an automated data storage library
US10512384B2 (en) 2016-12-15 2019-12-24 Irobot Corporation Cleaning roller for cleaning robots
US10595624B2 (en) 2017-07-25 2020-03-24 Irobot Corporation Cleaning roller for cleaning robots
US10891060B2 (en) * 2018-10-31 2021-01-12 EMC IP Holding Company LLC Data storage system binding virtual volumes to host-specific protocol endpoints
US11109727B2 (en) 2019-02-28 2021-09-07 Irobot Corporation Cleaning rollers for cleaning robots

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5471561A (en) * 1992-08-08 1995-11-28 International Business Machines Corporation Automated storage library with rotatable arm and oblique angle effectors
US5546315A (en) * 1994-03-04 1996-08-13 Storage Technology Corporation Simplified storage media library subsystem
US5925119A (en) * 1997-03-28 1999-07-20 Quantum Corporation Computer architecture for automated storage library

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3801397A1 (de) * 1988-01-20 1989-08-03 Grau Gmbh & Co Holdingges Greifer
US5214768A (en) * 1989-11-01 1993-05-25 E-Systems, Inc. Mass data storage library
US5504873A (en) * 1989-11-01 1996-04-02 E-Systems, Inc. Mass data storage and retrieval system
US5287459A (en) * 1991-10-03 1994-02-15 International Business Machines Corporation Method and apparatus for reducing response time in automated library data retrieval systems
US5303214A (en) 1992-01-03 1994-04-12 International Business Machines Corporation Multi-media-type automatic libraries
JPH06236608A (ja) 1993-02-10 1994-08-23 Hitachi Ltd ライブラリシステムおよびその制御方法
US5421697A (en) * 1993-03-02 1995-06-06 Storage Technology Corporation Telescopic pick-and-place robotic mechanism
US5546366A (en) 1993-04-16 1996-08-13 International Business Machines Corporation Cartridge picker assembly and modular library system
US5513156A (en) 1993-07-23 1996-04-30 Fujitsu Limited Library apparatus
US5502811A (en) * 1993-09-29 1996-03-26 International Business Machines Corporation System and method for striping data to magnetic tape units
JP3241911B2 (ja) 1993-12-13 2001-12-25 富士通株式会社 ライブラリ装置を共用するデータ処理装置
US6298439B1 (en) * 1994-01-28 2001-10-02 International Business Machines Corporation Automated storage library for managing allocation of a peripheral data storage device in response to a multi-volume data set request
JP3037874B2 (ja) * 1994-04-29 2000-05-08 インターナショナル・ビジネス・マシーンズ・コーポレイション ライブラリ管理システム及び方法
US5570337A (en) 1994-11-07 1996-10-29 International Business Machines Corporation Modular independent libraries interconnected by a common media exchange and input apparatus
US5613154A (en) * 1994-12-20 1997-03-18 International Business Machines Corporation System and method for management of transient data storage mediums in an automated data storage library
JP3404970B2 (ja) 1995-02-28 2003-05-12 富士通株式会社 ライブラリ装置
US5794238A (en) * 1995-05-24 1998-08-11 Gural; Kenneth Method and apparatus for accessing a large scale data array
US5761161A (en) 1995-06-07 1998-06-02 International Business Machines Corporation Automated library system with vertically translating input/output station
US5878270A (en) 1995-11-17 1999-03-02 Fujitsu Limited Library apparatus and drive recognition method
US6029230A (en) * 1996-10-22 2000-02-22 International Business Machines Corporation Data storage library with media destaging and prestaging for improved response time
US6073218A (en) 1996-12-23 2000-06-06 Lsi Logic Corp. Methods and apparatus for coordinating shared multiple raid controller access to common storage devices
US6434090B1 (en) 1997-09-16 2002-08-13 International Business Machines Corporation Automated data storage library with control path to shared robotic device via media drive
US5914919A (en) * 1997-10-30 1999-06-22 International Business Machines Corporation Switching between and simultaneous control of multiple accessors by one of dual library managers
US5894461A (en) * 1997-10-30 1999-04-13 International Business Machines Corporation Selection of an active accessor in a multi-accessor automated data storage library
US6098114A (en) 1997-11-14 2000-08-01 3Ware Disk array system for processing and tracking the completion of I/O requests
US6044442A (en) 1997-11-21 2000-03-28 International Business Machines Corporation External partitioning of an automated data storage library into multiple virtual libraries for access by a plurality of hosts
US5970030A (en) * 1997-12-02 1999-10-19 International Business Machines Corporation Automated data storage library component exchange using media accessor
US6052341A (en) * 1997-12-16 2000-04-18 International Business Machines Corporation Device element allocation manager and method for a multi-library system for multiple host connections
US6105103A (en) 1997-12-19 2000-08-15 Lsi Logic Corporation Method for mapping in dynamically addressed storage subsystems
US6262863B1 (en) * 1998-07-01 2001-07-17 Storage Technology Corporation Automated storage library with rail mechanism providing flexible robot access
US6295578B1 (en) * 1999-04-09 2001-09-25 Compaq Computer Corporation Cascaded removable media data storage system
US6304798B1 (en) * 1999-11-29 2001-10-16 Storage Technology Corporation Automated data storage library with wireless robotic positioning system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5471561A (en) * 1992-08-08 1995-11-28 International Business Machines Corporation Automated storage library with rotatable arm and oblique angle effectors
US5546315A (en) * 1994-03-04 1996-08-13 Storage Technology Corporation Simplified storage media library subsystem
US5925119A (en) * 1997-03-28 1999-07-20 Quantum Corporation Computer architecture for automated storage library

Also Published As

Publication number Publication date
KR20030096308A (ko) 2003-12-24
US6487474B1 (en) 2002-11-26
KR100530300B1 (ko) 2005-11-22
CN1527985A (zh) 2004-09-08
CA2446089C (en) 2009-04-14
EP1388113A1 (en) 2004-02-11
JP2004531847A (ja) 2004-10-14
WO2002093451A1 (en) 2002-11-21
JP3906157B2 (ja) 2007-04-18
RU2280277C2 (ru) 2006-07-20
EP1388113A4 (en) 2008-04-02
EP1388113B1 (en) 2009-04-15
RU2003134144A (ru) 2005-05-27
CA2446089A1 (en) 2002-11-21
ATE428968T1 (de) 2009-05-15
DE60138422D1 (de) 2009-05-28
US20020169521A1 (en) 2002-11-14

Similar Documents

Publication Publication Date Title
CN1295638C (zh) 一种用于操作数据库的方法及相应的数据存储/检索库
US7289885B2 (en) Dual purpose media drive providing control path to shared robotic device in automated data storage library
US6338006B1 (en) Data storage library with efficient cartridge eject
CN1952950B (zh) 具有可编程i/o控制的rfid读取器
US5289589A (en) Automated storage library having redundant SCSI bus system
CN107632846A (zh) 固件升级方法及装置、机框管理模块
CN1053979C (zh) 逻辑上连续的总线的物理分隔
CN1303051A (zh) 具有高效卡盘插入的数据存储库
CN101238432A (zh) 具有用户接口的海量存储系统
US6434090B1 (en) Automated data storage library with control path to shared robotic device via media drive
EP0989550B1 (en) Recording medium library apparatus and method for operating the same
CN1900902A (zh) 用于分配虚拟导入/导出元件地址的系统和方法
JP4453981B2 (ja) 着脱可能媒体、着脱可能媒体から情報を読み取る方法、およびストレージ・ライブラリ
US7660943B2 (en) Data storage drive for automated data storage library
CN1059607A (zh) 带驱动器标识的个人计算机
CN103853688A (zh) 设备控制装置、主机装置以及主机装置的控制方法
US7533205B2 (en) Control method and system of constructing raid configuration across multiple host bus adapters
US20070127322A1 (en) Apparatus system and method for managing control path commands in an automated data storage library
CN100472421C (zh) 隐式寻址顺序介质设备的接口方法和装置
EP1132807A2 (en) Methods and arrangements for providing bi-directional control between data storage drives and automation controllers
JP3334875B2 (ja) 自動生産ラインにおける生産指示方法
JPH1139250A (ja) クラスタシステムの周辺系装置接続確認方式
JP2001101752A (ja) 情報記録再生装置およびその構成情報出力方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term

Granted publication date: 20070117

CX01 Expiry of patent term