JP2009507304A5 - - Google Patents
Download PDFInfo
- Publication number
- JP2009507304A5 JP2009507304A5 JP2008529584A JP2008529584A JP2009507304A5 JP 2009507304 A5 JP2009507304 A5 JP 2009507304A5 JP 2008529584 A JP2008529584 A JP 2008529584A JP 2008529584 A JP2008529584 A JP 2008529584A JP 2009507304 A5 JP2009507304 A5 JP 2009507304A5
- Authority
- JP
- Japan
- Prior art keywords
- search
- data
- storage element
- sequential access
- attribute
- 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.)
- Granted
Links
- 238000003860 storage Methods 0.000 claims description 220
- 238000004891 communication Methods 0.000 claims description 26
- 230000004044 response Effects 0.000 claims description 25
- UIIMBOGNXHQVGW-UHFFFAOYSA-M buffer Substances [Na+].OC([O-])=O UIIMBOGNXHQVGW-UHFFFAOYSA-M 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims 1
- 238000000034 method Methods 0.000 description 24
- 230000014509 gene expression Effects 0.000 description 10
- 230000000875 corresponding Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 5
- 238000006011 modification reaction Methods 0.000 description 5
- 230000003287 optical Effects 0.000 description 4
- 238000009826 distribution Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 239000000969 carrier Substances 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005111 flow chemistry technique Methods 0.000 description 1
- 230000002085 persistent Effects 0.000 description 1
- 238000011112 process operation Methods 0.000 description 1
- 230000000644 propagated Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000004805 robotic Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Description
本発明は、データ・ストレージおよび管理に関し、より具体的には順次アクセス・データ・ストレージ・サブシステム内で検索操作を実行するためのシステムおよび方法に関する。
データ処理システムおよび通信ネットワークがより普及するにつれて、そのようなシステムにより作り出され、そのようなネットワーク上で伝達されるデータをより効率的に格納、組織化、および利用する必要が増大してきた。そのようなデータを格納し、そのようなデータへのアクセスを提供し、そのようなデータを処理するための1つの機構がデータ・ストレージ・サブシステムである。データ・ストレージ・サブシステムは、ストレージ・コントローラまたはホスト・バス・アダプタあるいはその両方、ストレージ要素、ならびに1つ以上のホスト・データ処理システムにデータ・ストレージ・サービスを提供するために用いられる任意の必要とされる制御ソフトウェアの統合化された集積を含む。
従来のストレージ要素としては、固定式、取り外し可能式、磁気式、光学式、ランダム/ダイレクト・アクセス、または順次アクセスあるいはそれらを兼ね備えた方式でありうる機械可読媒体(例えば、固定式ディスク、CD/DVD−ROM、テープ、固体メモリ等)、ならびにそのような媒体にアクセスするために利用される媒体ローダおよびロボットが含まれる。当初実施されたように、データ・ストレージ・サブシステムは、信頼性が高く、比較的大容量で安価な順次アクセス・ストレージ要素(例えば、テープ)を含んでいた。そのような順次アクセス式データ・ストレージ・サブシステムは、主としてデータ・バックアップおよびアーカイブ操作用に使用されたし、使用され続けている。より最近では、データ・ストレージ・サブシステムは、コストを増大または信頼性を低下あるいはその両方を有する一方でより大きいアクセス速度および使用の柔軟性をもたらすディスク・ドライブ・ストレージを用いて実施されてきた。
データ・バックアップおよびアーカイブのための伝統的な使用に加え、ディスク・ドライブ式データ・ストレージ・サブシステムは、データ処理システム・クラスタ、フェイルオーバ/災害復旧、試験、データ・マイニングおよび分析等のためのデータ複製サービスを提供するために利用されてきた。順次アクセス・ストレージ要素式のデータ・ストレージ・サブシステムが、記載された強化されたデータ・ストレージおよび処理サービスのいくつかまたはすべてを提供するために用いうるのに対して、既存のシステムは、ホスト・データ処理システムにより制御または実行される入力/出力(I/O)操作(例えば、読み取りおよび書き込み操作)に依存している。
そのようなホストI/O操作は、検索操作を実行するために、ならびにそうでなければ不要なシステム・オーバーヘッドで(例えば、アプリケーション、ドライバ、またはオペレーティング・システム・ソフトウェアあるいはそれら全部)のために、大量のホスト・データ処理システム−データ・ストレージ・サブシステム通信チャネル帯域幅およびホスト・データ処理システム資源(例えば、処理要素、メモリ等)を消費する。
順次アクセス・データ・ストレージ・サブシステム内で検索操作を実行するためのシステムおよび方法が提供される。1つの実施形態によれば、データ・ストレージ・サブシステムを、通信チャネルを介してホスト・データ処理システムに通信的に接続する通信チャネル・インタフェースと、検索モジュールとを含むデータ・ストレージ・サブシステムが提供される。記載される実施形態において、検索モジュールは、通信チャネル・インタフェースを介してホスト・データ処理システムから検索属性データを受け取るように構成されており、検索属性データは、検索属性を指定する。検索モジュールはさらに、検索属性を利用して順次アクセス・ストレージ要素のデータの検索操作を実行し、検索操作の実行に応答して通信チャネル・インタフェースを介してホスト・データ処理システムに検索結果データを提供するように構成される。
本発明の第2の実施形態によれば、受け取られた検索属性データが最大検索時間を指定し、前述の検索モジュールは、最大検索時間以下の期間、検索操作を実行するように構成される。
本発明の第3の実施形態によれば、受け取られた検索属性データが論理ブロックの最大数を指定し、前述の順次アクセス・ストレージ要素のデータが、複数の論理ブロックを用いて格納される。記載される実施形態において、検索モジュールは、最大数の論理ブロック以下の、複数の論理ブロックのうちのいくつかの論理ブロックに関して前述の検索操作を実行するように構成される。
本発明の第4の実施形態によれば、提供された検索結果データは、前述の複数の論理ブロックのうちの1つの論理ブロックを指定するデータを含む。
本発明の第5の実施形態によれば、受け取られた検索属性データは、ユーザ選択された検索属性を指定する。記載される実施形態において、検索モジュールは、ユーザ選択された検索属性および少なくとも1つのデフォルト検索属性を用いて前述の検索操作を実行するように構成される。
本発明の第6の実施形態によれば、受け取られた検索属性データは、検索語および順次検索タイプを指定し、前述の検索操作は、順次アクセス・ストレージ要素のデータ内の現在の論理位置と関連付けられる。記載される実施形態において、検索モジュールは、前述の順次アクセス・ストレージ要素のデータ内での検索語の出現を指定するデータを提供するように構成され、検索語の出現は、説明された現在の論理位置に順次隣接する。
本発明の第7の実施形態によれば、受け取られた検索属性データは、検索語および概要検索(summary search)タイプを指定する。記載される実施形態において、検索モジュールは、前述の順次アクセス・ストレージ要素のデータ内での検索語の1つ以上の出現を指定するデータを提供するように構成される。
本発明の第8の実施形態によれば、受け取られた検索属性データは、検索結果の最大数をさらに指定する。記載される実施形態において、検索モジュールは、最大数の検索結果以下である、前述の順次アクセス・ストレージ要素のデータ内での検索語の出現数を指定するデータを提供するように構成される。
本発明の第9の実施形態によれば、受け取られた検索属性データは、検索語を指定し、前述の検索操作は、受動的検索操作を含む。記載される実施形態において、検索モジュールは、前述の順次アクセス・ストレージ要素に関する入力/出力操作を実行する要求の受け取りに応答して受動的検索操作を実行するように構成され、さらに前述の順次アクセス・ストレージ要素のデータ内での検索語の出現を指定する第1のデータ、および入力/出力操作を実行する要求への応答を指定する第2のデータを提供するように構成される。
本発明の第10の実施形態によれば、前述のデータ・ストレージ・サブシステムは、入力/出力動作を実行する前述の要求の受け取りに応答して前述の順次アクセス・ストレージ要素のデータの一部を格納するバッファ・ストレージ要素をさらに含む。記載される実施形態において、検索モジュールは、バッファ・ストレージ要素内に格納された前述の順次アクセス・ストレージ要素のデータの一部の前述の受動的検索操作を実行するように構成される。
本発明の第11の実施形態によれば、前述の検索モジュールは、前述の順次アクセス・ストレージ要素のデータの能動的検索操作を実行する要求の受け取りに応答して能動的検索操作を実行するように構成される。
本発明の第12の実施形態によれば、前述の検索モジュールはハードウェア処理要素を含む。記載される実施形態において、検索モジュールは、ハードウェア処理要素を利用して前述の順次アクセス・ストレージ要素のデータの一次検索操作を実行し、検索結果データをホスト・データ処理システム内の検索モジュール・ソフトウェアに提供するように構成され、検索モジュール・ソフトウェアは、検索結果データを利用して二次検索操作を実行するように構成される。
本発明のさらに別の実施形態においては、データ・ストレージ・サブシステム検索ユーザ・インタフェースを提示するステップと、データ・ストレージ・サブシステム検索ユーザ・インタフェースを介してユーザから検索属性データを受け取るステップとを含む方法が提供される。記載される実施形態において、受け取られた検索属性データは、検索モジュールおよび順次アクセス・ストレージ要素を含むデータ・ストレージ・サブシステムに提供される。記載される実施形態はさらに、データ・ストレージ・サブシステムへの検索属性データの供給に応答してデータ・ストレージ・サブシステムから検索結果データを受け取るステップを含む。
用語「ユーザ(user)」が本明細書中で本発明の1つ以上の実施形態の説明において使用されてきたが、本明細書中で用いられるような「ユーザ」は、実際の人に限定されることを意図するモノではない。むしろ、この説明の中での用語「ユーザ」は、検索操作の結果を、要求、発行、制御、あるいは消費または利用することができる任意の論理的または物理的エンティティを示すことを意図している。その結果、本発明の様々な実施形態において、「ユーザ」は、人間のオペレータ、そのような人間のオペレータに関連した資格(credential)または身分(identity)、ホストまたはシステム・アプリケーション・プログラム、オペレーティング・システム要素等を含みうる。
上記は概要であり、従って、やむを得ず、単純化、一般化および細部の省略を含んでおり、その結果、当業者は、この概要が例示的なものにすぎず、いずれにしても限定的であることを意図するものでないことを理解するであろう。やはり当業者にとり明白になるように、本明細書中で開示される操作は、ソフトウェア、ハードウェア、(例えば、ASICまたは特定目的電子回路あるいはその両方)、またはソフトウェアとハードウェアとを含む組み合わせでの実施、を含む多くの方法で実行しうる。記載されるような変更および修正は、本発明およびそのより広い態様を逸脱することなく行いうる。特許請求の範囲によってのみ規定される、本発明の他の態様、発明の特徴、および利点は、以下で述べられる非限定的な詳細な説明において明らかになる。
添付図面を参照することにより、本発明がより理解され、本発明の多くの特徴および利点が、当業者にとって明らかになるであろう。
異なる図面中での同じ参照符号の使用は、同様または同一のアイテムを示す。
以下は、本明細書中で説明される1つ以上のシステム、デバイスまたはプロセスあるいはそれら全部を実行するための少なくとも最も良く考えられた態様を述べるものである。この説明は、例示的であることを意図しており、限定的であると取られるべきではない。
以下の詳細な説明において、特定のメソッド命令(method order)、構造、要素、および接続のような多くの特定の詳細が述べられている。しかしながら、これらおよびその他の特定の詳細は、本発明の実施形態を実行するために用いられる必要がないことが理解されるべきである。他の状況において、周知の構造、要素、または接続は、省略されており、あるいはこの説明を不必要に曖昧にすることを回避するために特に詳しくは説明されていない。
本明細書中での「1つの実施形態(one embodiment)」、「ある実施形態(an embodiment)」、または「複数の実施形態(embodiments)」への言及は、その実施形態に関して説明された特定の特徴、構造、または特性が、本発明の少なくとも1つの実施形態に含まれることを示すことを意図している。本明細書中の様々な場所でのそのような語句の出現は、必ずしもすべて同じ実施形態に言及しているわけでもなく、他の実施形態と相互に排他的な別個または代替の実施形態に言及しているわけでもない。さらに、いくつかの実施形態によっては示されうるが、他の実施形態によっては示されない様々な特徴が説明される。同様に、いくつかの実施形態にとっては必要条件であるが、他の実施形態にとってはそうではない様々な必要条件が説明される。
本発明の実施形態は、ニューヨーク州アーモンクのインターナショナル・ビジネス・マシーンズ・コーポレーション(登録商標)により提供される3592 Enterprise Tape Systemのような順次アクセス・データ・ストレージ・サブシステム内で検索操作を実行するためのシステムおよび方法を提供する。他の順次アクセス・データ・ストレージ・サブシステムとしては、論理的または物理的順次アクセス・ストレージ要素を含む階層型ストレージ管理システム(HSMs:hierarchical storage management system)、やはりインターナショナル・ビジネス・マシーンズ・コーポレーション(登録商標)により提供される3494 Virtual Tape Serverのような仮想テープ・ストレージ・サブシステム、または他のリニア、暗黙アドレス・ベースの(例えば、順次)ストレージ要素もしくはデバイスあるいはそれらが含まれる。そのような実施形態は、データ・コンテンツについて要求(例えば、読み出し)または処理(例えば、検索または解析)あるいはその両方を行うことをホストに命令することなく、特定のデータ・コンテンツを含む遠隔の順次(例えば、テープ)データ・ストレージ要素内のデータ・レコードに関してホスト・データ処理システムにおいて個別のレコードごとに検索が実行されることを可能にする、インタフェース、メソッド、およびストレージ・サブシステムを提供する。その結果、ホスト・データ処理システム資源(例えば、プロセッサ・サイクル、メモリ等)、ならびにホスト・データ処理システム−データ・ストレージ・サブシステム通信チャネル帯域幅が保存され、検索操作が実行されうる全体速度が、従来のシステムおよび方法と比較して増大される。例えば、1つ以上の記載されるシステムおよび方法の実施形態を用いることにより、1回以上の検索操作を伴う順次アクセス・データ処理を実行するために必要な時間は、54時間から7.5時間に低減された。
本発明の1つの実施形態によれば、データ・ストレージ・サブシステムが提供される。データ・ストレージ・サブシステムは、主に永続的なデータ・ストレージまたはアクセスあるいはその両方を提供する目的で設けられた任意のシステムまたは構成を含む。データ・ストレージ・サブシステムは、1つ以上の個別型(例えば、シングル・ディスク・ドライブ、テープ・ドライブ等)または集合型(例えば、ディスクまたはテープ配列システム、ロボット式テープ・ライブラリ、ファイラ、ファイラ・サーバ等)ストレージ要素またはアプリケーションあるいはその両方を含む任意数のストレージ資源、ならびに任意の関連ストレージ・コントローラ、アダプター、インタフェース、制御ソフトウェア等を含みうる。記載される実施形態において、検索モジュールおよびデータ・ストレージ・サブシステムを通信チャネル(例えば、ESCON、FICON、ファイバ・チャネル(Fibre Channel)、SCSI等)を介してホスト・データ処理システムに通信的に接続する通信チャネル・インタフェースを少なくとも含むデータ・ストレージ・サブシステムが提供される。
記載される実施形態において、検索モジュールは、通信チャネル・インタフェースを介してホスト・データ処理システムから、検索属性を指定する検索属性データを受け取るように構成され、さらに検索属性を利用して順次(例えば、テープ)ストレージ要素のデータの検索操作を実行し、実行されている検索操作に応答して通信チャネル・インタフェースを介してホスト・データ処理システムに検索結果データを提供するように構成される。1つの実施形態において、検索モジュールは、データ・フロー制御および管理を提供するために用いられる特定目的ハードウェア処理要素(例えば、特定用途向け集積回路、すなわち「ASIC」)を含む。
記載される検索モジュールは、両方ともインターナショナル・ビジネス・マシーンズ・コーポレーション(登録商標)により提供される、IBM(登録商標) TotalStorage(登録商標) Enterprise Tape Controller 3592 Model J70のようなデータ・ストレージ・サブシステムの別個のストレージ・コントローラ・デバイス内で実施、またはIBM(登録商標) TotalStorage(登録商標) Enterprise Tape Drive 3592のようなストレージ要素またはデバイスと一体的に提供されうる。同様に、検索モジュールは、前述のような個別の物理的要素(例えば、データ・フロー処理モジュールまたは要素)として、または、ストレージ・コントローラまたは要素の既存の制御ユニット/コントローラに組み込まれた機能として実施されうる。
記載される実施形態において、検索属性データ、従って検索属性は、データ検索操作の実行に関するまたは実行において用いられる任意のデータを含みうる。例えば、1つの実施形態において、検索属性は、1つ以上の検索語(すなわち、検索される実際のデータ)、検索語型式(例えば、ASCIIデータ型式、EBCDICデータ型式、2進データ型式等)または検索語オペレータあるいはそれら全部を指定し、従って、検索操作の間に利用されるべき検索語表現を形成する。1つ以上の他の実施形態において、検索属性データは、検索操作がどのように制限されるかを指定する、あるいはそれに従って検索操作が制限される、1つ以上の「制限条件(limit condition)」型検索属性を指定しうる。
「制限条件」型検索属性を利用することにより、検索操作を、多くの方法のいずれかで制限できる。1つの代表的な実施形態において、最大検索時間すなわち「タイムアウト」(例えば、30分間)検索属性が指定される。記載される実施形態において、検索操作は、指定された最大検索時間以下の時間、実行される。別の実施形態において、検索操作を用いて検索されるべき順次アクセス・ストレージ要素のデータ量(例えば、ビット、バイト、ワード、範囲、ストリング、ファイル、レコード、ブロック、ページ等の数)を示す検索属性が指定されうる。記載される実施形態において、対応する検索属性により指定されたデータ量以下のデータ量について検索操作が実行される。例えば、検索操作は、検索要求の受け取り、開始等と関連する検索されるべきデータ内の位置(例えば、「現在の(current)」論理ブロックまたはデータ位置)に論理的または物理的に隣接しているデータのセグメントに制限できる。
そのような「制限条件」検索属性を利用して、本明細書中で説明されるようなインタフェースまたはデータ・ストレージ・サブシステムに、検索操作の期間が制御できる機構が与えられる。別の実施形態において、代わりの検索期間制御機構が提供され、そこでは、各要求された検索操作が周期的に中断されて、要求しているユーザが、要求された検索の、もしあれば、状態または進捗を決定し、その検索操作を続行すべきか否かを示す機会を提供する。記載されたそのような機構は、ひとたびコマンドが開始または要求された場合に、データ・ストレージ・サブシステムまたはストレージ要素の中断または停止あるいはその両方を行うための洗練された手法を提供できない技術と併用した場合に特に役に立ちうる。SCSIベースのデータ・ストレージ・サブシステムにおいてそのような機構がない場合、例えば、要求された検索操作は、有用な結果データの出現なしで、または検索操作自身がささいなものになっても、延長された期間(例えば、数時間または数日)実行され続けることがある。
本発明の1つの実施形態において、いずれかの制限条件検索属性が到達/検出されるたびに、検索操作が集結または変更され、他の制限条件検索属性は、もしあれば、動作不能にされる。例えば、ある検索操作は、検索されるべき検索属性指定されたデータ量の採集論理ブロックが到達されれば、指定された最大検索時間未満の時間実行されうる。さらに、検索属性指定された制限条件は、様々な他の理由のいずれかにより、例えば、検索されるべき順次アクセス・ストレージ要素全体の最終論理ブロックがひとたび到達されると、指定された論理ブロックのどのような最大数にもかかわらず、動作不能にされうる。
本発明のさらに他の実施形態において、検索属性または検索属性データあるいはその両方は、検索操作がどのように実行されるべきかの他の態様(例えば、実行する検索の「タイプ」)を指定するために利用できる。例えば、本発明の1つの実施形態において、順次検索タイプおよび概要検索タイプのどちらが実行されるべきかを示す検索属性が提供されうる。順次または「位置(positional)」検索操作において、検索結果は、検索要求の受け取り、開始等と関連する検索されるべきデータ内の「現在の(current)」論理ブロックまたはデータ位置を基準にしたそれらの位置の脈絡において要求される。例えば、検索は、指定された検索語の「次(next)」の出現または「次」の3つの出現の位置を特定するために要求されうる。同様に、検索は、指定された検索語の直前または「以前(previous)」の出現の位置を特定するために要求されうる。従って、「方向性(directional)」検索属性は、実行されるべき検索タイプを介して指定できることが理解されるべきである。代わりに、そのような検索方向を指定するデータは、付加的または代わりの検索属性を用いて別個に指定されうる。1つの実施形態によれば、1つ以上の指定された検索語または表現あるいはその両方が到達される順次アクセス・ストレージ要素内で進める論理ブロックの数をユーザが指定するデータ・ストレージ・サブシステムまたはデータ・ストレージ要素と共に用いられる従来の「スペース(space)」コマンドの修正として提供される。
対照的に、概要または「一致リスト(match list)」タイプの検索操作において、検索結果は、「現在の(current)」論理ブロックまたはデータ位置を基準としたそれらの相対位置にかかわりなく要求される。記載される検索タイプにおいて、指定された検索語または表現と「一致する(match)」検索結果の概要が提示される。そのような結果は、第1の検索語または検索されるべき順次アクセス・ストレージ要素データ内の表現「一致(match)」から始めて順次提示されたり、複数の基準(例えば、「ファジー(fuzzy)」検索操作が実行される場合の一致の精度、検索結果「ランク(rank)」等)のうちのいずれかに基づいて編成されたりしうる。本明細書中でさらに説明されるように、指定された検索語または表現に「一致する(matching)」すべての検索結果が提示されてもよく、あるいは代わりに、提示される検索結果の数が低減されてもよい。
本発明のさらに別の実施形態において、受動的検索操作および能動的検索操作のどちらが実行されるべきかを示す「検索タイプ(search-type)」検索属性が提供される。本発明の1つの実施形態による受動的または「受動的に実行される(passively performed)」検索操作は、能動的または明示的に要求された(ならびに別個かつ明確な)入力/出力(I/O)操作のような別の操作の実行と共に実行される検索操作である。受動的検索操作の実行に先立ち、ユーザは1つ以上の検索語または表現を指定する。その後、関係のないI/Oまたは他の操作(例えば、読み出しまたは書き込み)を実行する要求に応答して検索操作が実行され、検索結果データは次に、もしあれば、その要求への応答と共に提供される。
1つの実施形態によれば、受動的検索操作は、データがダイレクト・アクセス・ハード・ディスク・ドライブ・ストレージ要素から1つ以上の順次(例えば、テープ)データ・ストレージ要素に格納(例えば、書き込み、コピー、または転送)され、順次検証されるHSM「移行(migrate)」または移住後(post-migrate)「監査(audit)」機能と共に実行される。記載される実施形態において、データが書き込まれた各ファイルの位置を特定するために既知のレコード・タグが検索される。順次データ・ストレージ要素上の各「タグ付けされた(tagged)」ファイル位置に格納されたデータは次に、検証目的のためのディスク・ストレージから移行されたデータと比較されうる。
本発明の別の実施形態において、受動的検索は、I/O操作の実際のデータ(例えば、読み出しまたは書き込みされる特定のデータ語)にのみ関して実行されうるか、あるいは代わりに、キャッシュまたは空間局所性タイプ(例えば、先読み(read-ahead))バッファが利用される場合、受動的検索操作は、そのようなI/O操作データに論理的または物理的に隣接して格納されかつ要求されたI/O操作および記載されるバッファのおかげでアクセス可能にされているデータに関して実行されうる。能動的検索操作は、対照的に、(例えば、データ・ストレージ・サブシステム検索ユーザ・インタフェースを介して行われたまたは開始された)明示的または能動的検索要求に応答してユーザにより実行される検索操作である。そのような能動的検索操作要求は、複数の型式(例えば、既存のコマンドの修正、新しいデータ・ストレージ・サブシステムコマンドの生成、診断機能等)のいずれにおいても具体的されうる。
ひとたび1つ以上のユーザ指定された検索属性に従って検索操作が実行されると、検索結果データが提供されうる。検索結果データは、本明細書中で記載されるように、検索操作の結果に関連する、または示すどのようなデータも含みうる。本発明の1つの実施形態によれば、検索操作が、レコード(すなわち、論理ブロック)またはより高い粒度(例えば、範囲、ワード、バイト等)レベルにおいて実行される。1つの実施形態において、検索結果データは、指定された検索語または表現が特定された検索されるべきデータ内の特定の論理ブロックを指定するデータとして提供される。検索結果データは、それに加えてまたは代わりに、検索結果、ヒット、または検索語/表現出現あるいはそれらをさらに特定または指定する他のデータを含みうる。例えば、1つの実施形態において、検索結果数または識別子が、提供または指定されうる。本発明の別の実施形態において、検索結果データは、検索結果コンテキストを提供するために検索語または表現出現を含む検索されるべきデータの抜粋を含みうる。
本明細書中で前に説明されたように、検索属性は、戻すまたは提示するあるいはその両方を行う検索結果の最大数を示す検索属性データを利用して指定されうる。そのような検索属性は、検索操作に直接適用(すなわち、指定された数の検索結果がひとたび識別されると、検索操作を停止させる)または検索結果データの供給に適用(すなわち、より多数の識別された検索結果の指定された数をユーザに提供/提示されるようにする)あるいはその両方に適用される。検索結果の部分集合が検索結果データとして提供される必要がある場合、提示すべき検索結果の選択は、複数の基準(例えば、順序、検索結果一致の精度、関連性等)のいずれかに基づいてなしうる。
さらに別の実施形態によれば、検索結果データが、二叉分岐(bifurcated)プロセスの一部として提供されうる。記載される実施形態において、第1または「一次(primary)」検索操作が、順次アクセス・データ・ストレージ要素内で局所的にまたは順次アクセス・データ・ストレージ・サブシステムに対し局所的に、あるいはその両方で実行され、それによって、検索結果データが生成され、物理的に離れたホスト・データ処理システムに提供される。その後記載される実施形態において、二次または「拡張された(extended)」検索操作が、受け取られた検索結果データに関しホスト・データ処理システムに対し局所的に実行される。1つの実施形態において、そのような二叉分岐検索プロセスは、検索操作要求の受け取りに応答して記載される一次検索操作を構成するためにユーザ指定された検索語または表現を自動的に短縮または修正することにより、ならびに二次検索操作定義をしているデータを生成しそのようなデータをホスト・データ処理システム・アプリケーションに提供することにより実行される。
記載される二叉分岐検索プロセスを利用すると、粗い粒度の一次検索操作を、専用ハードウェア(例えば、ハードウェア処理要素検索モジュール)を用いて実行することができ、それによって、ホスト・データ処理システムが、必要に応じより微細な粒度の二次検索操作を実行できるようにし、その結果、検索モジュール・ハードウェアおよびデータ・ストレージ・サブシステムの複雑度を低減すると同時に、なんらかのホスト・データ処理システム機能を利用してより複雑な検索操作を実行することを可能にし、従来のストレージ・システムと比較してホスト・データ処理システム資源に対する負荷を低減する。
本発明の別の実施形態によれば、検索属性データが、1つ以上のユーザ選択された検索属性またはパラメータならびに複数の検索属性のどれがユーザ選択および指定されたか、および複数の検索属性のどれが所定のデフォルト検索属性値と共に利用されるべきかまたは無視されるべきかを示すメタデータを含む受動的または能動的検索操作要求と共に提供される。記載される実施形態において、検索操作を、ユーザ選択された検索属性を記載されるメタデータを利用して識別し、そのように識別された検索属性に対応する受け取られた検索属性データを利用して検索操作を構成することにより実行される。本発明の1つの実施形態によれば、メタデータは、複数の「適用(apply)」ビットを含んでおり、それらの各々は、複数の潜在的な検索属性の1つに対応する。
検索属性に関連または対応する適用ビットが第1の所定値を格納していれば(例えば、「1」の論理値を有するか「セット(set)されていれば」)、検索属性は、ユーザ選択されたと考えられ、属性のユーザ指定値は、受け取られた検索属性データから決定され、さらに1つ以上の検索操作の実行において「適用(applied)」または利用される。対照的に、検索属性に関連または対応する適用ビットが第2の所定値を格納していれば(例えば、「0」の論理値を有するか、「クリアされ(cleared)」ていれば)、検索属性は、ユーザ選択されておらず、所定のデフォルト検索属性値が「適用(applied)」または利用される。
基本的または一般に実行される検索操作の構成を単純化する一方で、すべての利用可能な検索属性を利用してより複雑または特殊化された検索の構成を容易にすることに加え、適用ビットまたは他のデフォルト検索属性機構の使用は、いくつかの有用な利点を有しうる。例えば、ホスト・データ処理システム−データ・ストレージ・サブシステム通信チャネル帯域幅利用は、既知の検索属性値がホストとストレージとの間を伝送される必要がないので、低減される。さらに、利用される検索属性値の精度は、対応するメタデータ(例えば、適用ビット)がそのような適用または伝播が所望されていることを示さない限り、不用意な検索属性値修正がデータ・ストレージ・サブシステムにおいて伝播または適用されないので、増大されうる。同様に、検索属性データは、検索属性データにおける対応する不用意な修正が行われない限り、メタデータの不用意な修正が一般に、検索操作の間に適用される実際の検索属性の修正という結果にならないように、デフォルト検索属性値を含むように開始されうる。
例示目的でいくつかの特定の代表的検索属性を本明細書中で説明してきたが、他のいくつかの検索属性または検索属性データ型式のいずれかを代わりの実施形態において利用できる。例えば、1つの代替実施形態において、各検索操作を開始する検索されるべき各論理ブロック内の論理ブロックまたはレコード・オフセット(例えば、バイトのオフセット数)を指定する検索属性が用いられる。同様に、論理ブロックまたは「レコード」サイズ柔軟性を、論理ブロック長さ(例えば、バイトで表す)を指定する検索属性を利用して提供することができ、実際の論理的ブロック長さと検索属性標示値のより小さい方が利用され、所定値(例えば、論理値「0」)は、スパニング・ブロック(spanning block)を示すために利用される。別の実施形態において、検索属性データは、非データ(例えば、ファイル・マーク、テープ・マーク等)が、検索操作の間にどのように処理されるべきかを示すために用いることができる。
図1は、本発明の実施形態によるデータ・ストレージ・サブシステムを含むデータ・ストレージ・ネットワークの高レベル・ブロック図を例示する。描かれたデータ・ストレージ・サブシステム100において、示されるように、ホスト・データ処理システム102は、通信チャネル106(例えば、ESCON、FICON、ファイバ・チャネル、SCSI等)を介してデータ・ストレージ・サブシステム104(例えば、テープ・データ・ストレージ・サブシステム)に接続されている。図1の実施形態において、ホスト・データ処理システム102は、ユーザから検索属性データを受け取るために利用されるデータ・ストレージ・サブシステム検索ユーザ・インタフェース108を含み、受け取った検索属性データをデータ・ストレージ・サブシステム104に提供して、データ・ストレージ・サブシステム104から検索結果データを受け取り、受け取った結果データをユーザに示す。
例示される実施形態のデータ・ストレージ・サブシステム104は、示されるように、ストレージ・コントローラ110を介してホスト・データ処理システム102に接続された検索モジュール116を含む順次(例えば、テープ)アクセス・ストレージ要素114を含む。例示される実施形態において、検索モジュール116は、少なくとも1つの検索属性を指定する検索属性データをホスト・データ処理システム102から通信チャネル106およびストレージ・コントローラ110を介して受け取り、指定された検索属性を利用して順次アクセス・ストレージ要素114のデータの検索操作を実行し、検索結果データを応答的に通信チャネル106およびストレージ・コントローラ110を介してホスト・データ処理システム102に提供するために利用される。1つの実施形態において、記載される検索操作は、順次アクセス・ストレージ要素114の取り外し可能なデータ・ストレージ・テープ(例示されず)のような順次アクセス・データ記憶媒体に関して実行される。
図1の実施形態において単一の順次アクセス・ストレージ要素114(例えば、テープ・ドライブ)のみが描いてあるが、他の実施形態において、データ・ストレージ・サブシステム104内に、ランダム/ダイレクト・アクセスまたは順次アクセス・ストレージ要素あるいはその両方をいくつ設けてもよい。そのようなストレージ要素の動作連係は、ストレージ・コントローラ110を利用して提供または制御あるいはその両方を行える。図1の例示される実施形態において、ストレージ・コントローラ110は、前に順次アクセス・ストレージ要素114に関して記載されたものと同様な検索モジュール112を含み、プロセッサ、シーケンサ、または関連したストレージ要素間のI/O要求を処理するために用いられる他の処理要素もしくはモジュール(例示されず)を付加的に含みうる。単一のストレージ要素を含むデータ・ストレージ・サブシステム104が設けられる実施形態において、ストレージ・コントローラ110は、もし不要であれば、そのようなデータ・ストレージ・サブシステムから省かれうる。さらに、データ・ストレージ・サブシステム104の一部として描かれているが、ストレージ・コントローラ110は、外部要素またはデバイスとして設けられてもよい。
検索モジュール112および116は、ソフトウェア、ハードウェア、またはそれらの組み合わせを含みうるが、本発明の1つの実施形態において、検索モジュール112は、ソフトウェア要素を含み、検索モジュール116は、ハードウェア要素(例えば、ハードウェア処理要素)を含み、これらの要素は、検索操作を実行するために協調して用いられる。別の実施形態において、検索モジュール112および116は、代わりに、例えば、1つ以上の所定条件のユーザ選択または検出に基づいて用いられる。さらに他の実施形態において、単一の検索モジュールを、ストレージ・コントローラ110、順次アクセス・ストレージ要素114内に、または独立した要素またはデバイスとして提供できる。
図2は、本発明の1つ以上の実施形態によるデータ処理システムを例示する。例えば、図2に例示されるようなデータ処理システム200は、本明細書中で説明されるようなホスト・データ処理システムを例示しうる。代わりにまたは加えてあるいはその両方で、図2に描かれるものと同様なデータ処理システムを、データ・ストレージ・サブシステムまたはその構成要素を実施するために使用できる。図2のデータ処理システム200に関して特定の数および配置の要素が例示されているが、本発明の実施形態は、どのような特定のかず、タイプ、または配置の構成要素に限定されず、従って、多種多様なデータ処理システムのタイプ、アーキテクチャ、および形状因子(例えば、ネットワーク要素またはノード、パーソナル・コンピュータ、ワークステーション、サーバ等)を包含しうる。例示される実施形態のデータ処理システム200は、バス206または他の通信媒体を利用してメモリ204に接続されたプロセッサ202を含んでいる。メモリ204は、ランダム・アクセス・メモリ(RAM)、読み出し専用メモリ(ROM)、フラッシュ・メモリ、およびキャッシュのようなシステム・メモリ型ストレージ要素をいくつでも含みうる。図2の例示される実施形態において、メモリ204は、本明細書中で説明されるようなデータ・ストレージ・サブシステム検索ユーザ・インタフェース205を含んでいる。
例示される実施形態のデータ処理システム200は、1つ以上のI/Oデバイス(図示せず)をデータ処理システム200に通信的に接続するためにバス206に接続された入力/出力(I/O)インタフェース208をさらに含む。代表的なI/Oデバイスとしては、キーボード、ディスプレイ、プリンタ、カーソル制御デバイス(例えば、トラックボール、マウス、タブレット等)、スピーカー、およびマイクのような伝統的なI/Oデバイス;固定または「ハード」磁気媒体ストレージ・デバイス、光学式ストレージ・デバイス(例えば、CDまたはDVDROM)、固体ストレージ要素(例えば、USB、Secure Digital SD(登録商標)、CompactFlash(登録商標)、MMC等)、フレキシブル・ディスクまたはテープのような取り外し可能な磁気媒体ストレージ要素、もしくは他のストレージ要素または媒体のようなまたはこれらを含むあるいはその両方であるデータ・ストレージ要素またはストレージ・サブシステムあるいはその両方;および有線式または無線式の通信デバイスまたは媒体(例えば、モデムまたは直接的なネットワーク・インタフェースを介してアクセスされる通信ネットワーク)が含まれうる。
本発明の実施形態としては、本明細書中でさらに説明されるソフトウェア、情報処理ハードウェア、および様々な処理操作が含まれうる。本発明の特徴およびプロセス操作は、メモリ204、ストレージ要素、通信デバイスまたは媒体等の機械可読媒体内で具体化された実行可能命令に具現化されうる。
機械可読媒体としては、機械(例えば、データ処理システム200)により可読な形態でデータを提供する(すなわち、データを格納または伝送あるいはその両方を行う)任意の機構が含まれる。例えば、機械可読媒体としては、ランダム・アクセス・メモリ(RAM);読み出し専用メモリ(ROM);磁気ストレージ媒体;光学式ストレージ媒体;フラッシュ・メモリ・デバイス;電気式、光学式、または音響式あるいはそれらを組み合わせた伝搬信号(例えば、搬送波、赤外線信号、デジタル信号等)等が含まれるが、それらに限定されない。
記載される実行可能命令は、その命令でプログラムされたプロセッサ202のような汎用または特殊用途プロセッサに、本発明の操作、方法またはプロセスを実行させるために用いうる。代わりに、本発明の特徴または操作は、それらの操作を実行するための固定配線ロジックを含む特定のハードウェア構成要素によって、またはプログラムされたデータ処理構成要素とカスタム・ハードウェア構成要素との任意の組み合わせによって実行されうる。
本発明の実施形態は、完全に機能上のデータ処理システムの文脈において説明されてきたが、当業者は、そのような実施形態が、多様な形態のプログラム製品として配布されうること、およびその配布を実行するために用いられる機械可読または信号坦持媒体の特定のタイプを問わず、等しく適用されうることが分かるであろう。信号坦持媒体の例としては、フレキシブル・ディスク、テープ、およびCD−ROMのような記録可能媒体、デジタルおよびアナログ通信リンクのような伝送型媒体、ならびに媒体ストレージおよび配布システムが含まれる。本発明の実施形態は、ある特定の操作またはタスクを実行するために用いられるソフトウェア・モジュールを用いて同様に実施されうる。記載されるソフトウェア・モジュールは、スクリプト、バッチ、ライブラリ、または他の実行可能ファイルを含むことができ、機械またはコンピュータ可読媒体上に格納されうる。従って、モジュールは、データ処理を構成するためにコンピュータ・システム・メモリ内に、またはソフトウェア・モジュールの1つ以上の機能を実行するためにコンピュータ・システム内に格納されうる。本明細書中で論じられたような様々なタイプの機械またはコンピュータ可読ストレージ媒体は、本発明の実施形態によるモジュールを格納するために用いることができる。
図3は、本発明の実施形態によるデータ・ストレージ・サブシステムを例示する。図3の実施形態において、データ・ストレージ・サブシステム300は、順次アクセス・データ・ストレージ媒体(例えば、データ・ストレージ・テープ・カートリッジ302)、データ・ストレージ・サブシステム300をホスト・データ処理システムに通信チャネル(例示せず)を介して通信的に接続する通信チャネル・インタフェース(例えば、ホスト・データ処理システム・インタフェース304)および検索モジュール306を含む順次アクセス・ストレージ要素を備えている。図3の例示される実施形態において、検索モジュール306は、少なくとも1つの検索属性を指定する検索属性データをホスト・データ処理システムからホスト・データ処理システム・インタフェース304を介して受け取り、受け取られた検索属性を利用して順次アクセス・ストレージ要素のデータの検索操作を実行し、検索結果データをホスト・データ処理システムにホスト・データ処理システム・インタフェース304を介して応答的に提供するように構成されている。
例示される実施形態のデータ・ストレージ・サブシステム300は、示されるように、媒体搬送リール312および314ならびに1つ以上の媒体搬送モータ316を利用してテープ・アクセス(例えば、読み取り/書き込み)ヘッド310の近傍を通されるテープ・データ・ストレージ媒体308(例えば、磁気テープ)をさらに含む。例示される実施形態において、テープ・アクセス・ヘッド310は、テープ・データ・ストレージ媒体308に対しデータを読み書きし、そのようなデータをバッファ318(例えば、1つ以上の「先読み」または段階付け(staging)バッファ)内に一時的に格納または「段階付け(stage)する」ように構成されている。図3の例示される実施形態において、データ・ストレージ・サブシステム300は、コントローラまたは制御ユニット320をさらに含む。1つの実施形態において、制御ユニット320は、データ・フロー、初期化、およびデータ・ストレージ・サブシステム操作を、ホスト・データ処理システム・インタフェース304、検索モジュール306、バッファ318、または媒体搬送モータ316あるいはそれら全部のうちの1つ以上に発行された制御信仰を介して制御および管理する。別の実施形態において、検索モジュール306により提供される機能を、制御ユニット320に組み込みまたはこれと統合することができる。
図4は、本発明の実施形態によるデータ・ストレージ・サブシステム検索プロセスの高レベル流れ図を例示する。例示される実施形態において、検索属性データは当初、ホスト・データ処理システムから受け取られる(プロセス・ブロック402)。その後、1つ以上のユーザ指定された検索属性が、受け取られた検索属性データを用いて内部で識別される(プロセス・ブロック404)。ひとたび識別されると、各ユーザ指定された検索属性(ならびに、1つの実施形態における1つ以上のデフォルト検索属性)は、本明細書中で記載されるように、1つ以上の検索操作を実行するために利用される(プロセス・ブロック406)。
要求された検索操作が実行されている際に、要求された操作が完了したかどうかの決定がなされる(プロセス・ブロック408)。検索操作は、描かれた実施形態において各種の理由のいずれかにより完了したと示されうる。例えば、要求された検索結果データが提供される(例えば、「次の(next)」指定された検索語出現が、順次アクセス・データ・ストレージ要素の関連データ内で識別される)場合、「制限条件(limit condition)」型検索属性が到達/検出され、または、指定された検索語の出現が、検索されるべき順次アクセス・ストレージ要素内でまったく識別されない。要求された検索操作が完了したという決定がひとたびなされると、検索結果データは、もしあれば、関連したホスト・データ処理システムに提供される(プロセス・ブロック410)。
図5は、本発明の実施形態によるホスト・データ処理システム検索プロセスの高レベル流れ図を例示する。例示されるプロセス実施形態において、データ・ストレージ・サブシステム検索ユーザ・インタフェースが当初、ホスト・データ処理システム・ユーザに提示される(プロセス・ブロック502)。その後、1つ以上のユーザ選択および指定された検索属性が、記載されたユーザ・インタフェースを介して受け取られ(プロセス・ブロック504)、検索属性データが、指定された属性を用いて生成される(プロセス・ブロック506)。ひとたび生成される、記載される検索属性データ(および少なくとも1つの実施形態においては、複数の検索属性のうちのどれが、検索属性データを用いてユーザ指定されたかを示すメタデータ)が、データ・ストレージ・サブシステムの検索モジュールに提供される(プロセス・ブロック508)。
その後、描かれたプロセス実施形態において、検索結果または検索語出現あるいはその両方を指定する検索結果データがデータ・ストレージ・サブシステムから受け取られる(プロセス・ブロック510)。検索結果データの受け取られた検索結果は次に、示されるように、記載されるユーザ・インタフェースを介して提示される(プロセス・ブロック512)。
本発明の特定の実施形態が提示および説明されてきたが、本明細書中の教示に基づき、本発明およびそのより広い態様から逸脱することなく変更および修正を行うことができ、従って、特許請求の範囲がその範囲内に、本発明の真の趣旨および範囲内にあるすべてのそのような変更および修正を包含することは、当業者にとり明白であろう。
その結果、本発明は、均等物にあらゆる点で完全な認識を与える、特許請求の範囲によってのみ限定されることを意図している。
Claims (18)
- データ・ストレージ・サブシステムであって、
前記データ・ストレージ・サブシステムを、ホスト・データ処理システムに通信チャネルを介して接続する通信チャネル・インタフェースと、
少なくとも1つの検索属性を指定する検索属性データを、前記ホスト・データ処理システムから前記通信チャネル・インタフェースを介して受け取り、前記検索属性を利用して順次アクセス・ストレージ要素のデータの検索操作を実行し、前記検索操作の実行に応答して、検索結果データを前記ホスト・データ処理システムに前記通信チャネル・インタフェースを介して提供するための検索モジュールと
を備えており、
前記検索属性データが、最大検索時間、又は、検索されるべき順次アクセス・ストレージ要素のデータ量であり、
前記検索結果データが、前記複数の論理ブロックのうちの1つの論理ブロックを指定するデータを含む、
前記データ・ストレージ・サブシステム。 - 前記検索属性データが、最大検索時間を指定し、
前記検索モジュールが、前記最大検索時間以下の期間、前記検索操作を実行する、
請求項1に記載のデータ・ストレージ・サブシステム。 - 前記検索属性データが、論理ブロックの最大数を指定し、
前記順次アクセス・ストレージ要素の前記データが、複数の論理ブロックを用いて格納され、
前記検索モジュールは、前記論理ブロックの前記最大数以下であり、前記複数の論理ブロックのうちのいくつかの論理ブロックに関して前記検索操作を実行する、
請求項1に記載のデータ・ストレージ・サブシステム。 - 前記検索属性データが、ユーザ選択された検索属性を指定し、
前記検索モジュールが、前記ユーザ選択された検索属性および少なくとも1つのデフォルト検索属性を用いて前記検索操作を実行する、
請求項1に記載のデータ・ストレージ・サブシステム。 - 前記検索属性データが、検索語および順次検索タイプを指定し、当該順次検索タイプは、前記順次アクセス・ストレージ要素の前記データ内の現在の論理位置を基準にして、当該検索語の次の出現の位置又はそれ以前の出現の位置を特定する検索タイプであり、
前記検索操作が、前記順次アクセス・ストレージ要素の前記データ内の現在の論理位置に関連付けられており、
前記検索モジュールが、前記順次アクセス・ストレージ要素の前記データ内での前記検索語の出現を指定するデータを提供し、
前記検索語の前記出現が、前記現在の論理位置に順次隣接する、
請求項1に記載のデータ・ストレージ・サブシステム。 - 前記検索属性データが、検索語および概要検索タイプを指定し、当該概要検索タイプは、前記順次アクセス・ストレージ要素の前記データ内の現在の論理位置を基準にして、当該検索語と一致する検索結果の概要を提示する検索タイプであり、
前記検索モジュールが、前記順次アクセス・ストレージ要素の前記データ内での前記検索語の1つ以上の出現を指定するデータを提供する、
請求項1に記載のデータ・ストレージ・サブシステム。 - 前記検索属性データが、検索結果の最大数をさらに指定し、
前記検索モジュールが、前記最大数の検索結果以下であり、前記順次アクセス・ストレージ要素の前記データ内での前記検索語の出現数を指定するデータを提供する、
請求項6に記載のデータ・ストレージ・サブシステム。 - 前記検索属性データが、検索語を指定し、
前記検索操作が、受動的に実行される検索操作である受動的検索操作を含み、
前記検索モジュールが、前記順次アクセス・ストレージ要素に関する入力/出力操作を実行する要求の受け取りに応答して前記受動的検索操作を実行し、さらに前記順次アクセス・ストレージ要素の前記データ内での前記検索語の出現を指定する第1のデータ、および前記入力/出力操作を実行する前記要求への応答を指定する第2のデータを提供する、
請求項1に記載のデータ・ストレージ・サブシステム。 - 前記データ・ストレージ・サブシステムが、前記入力/出力動作を実行する前記要求の前記受け取りに応答して前記順次アクセス・ストレージ要素の前記データの一部を格納するバッファ・ストレージ要素をさらに含み、
前記検索モジュールが、前記バッファ・ストレージ要素内に格納された前記順次アクセス・ストレージ要素の前記データの前記一部の前記受動的検索操作を実行する、
請求項8に記載のデータ・ストレージ・サブシステム。 - 前記検索モジュールが、前記順次アクセス・ストレージ要素の前記データの能動的検索操作を実行する要求の受け取りに応答して前記能動的検索操作を実行するように構成され、前記能動的検索操作がユーザによって能動的に実行される検索操作である、
請求項1に記載のデータ・ストレージ・サブシステム。 - 前記検索モジュールが、検索操作のためのハードウェア処理要素を含み、
前記検索モジュールが、前記ハードウェア処理要素に前記順次アクセス・ストレージ要素の前記データの一次検索操作を実行させ、前記検索結果データを前記ホスト・データ処理システム内の検索モジュール・ソフトウェアに提供し、
前記検索モジュール・ソフトウェアが、前記検索結果データで二次検索操作を実行する、
請求項1に記載のデータ・ストレージ・サブシステム。 - 少なくとも1つの検索属性を指定する検索属性データを、データ・ストレージ・サブシステムにおいてホスト・データ処理システムから受け取るステップであって、前記データ・ストレージ・サブシステムが、検索モジュールおよび順次アクセス・ストレージ要素を含む、前記受け取るステップと、
前記検索属性データの受け取りに応答して前記検索モジュールを利用して検索操作を実行するステップであって、前記検索属性を利用して前記順次アクセス・ストレージ要素のデータの前記検索操作を実行するステップを含む、前記実行するステップと、
前記検索操作の実行に応答して前記データ・ストレージ・サブシステムからの検索結果データを前記ホスト・データ処理システムに提供するステップと
を含み、
前記検索属性データが、最大検索時間、又は、検索されるべき順次アクセス・ストレージ要素のデータ量であり、
前記検索結果データが、前記複数の論理ブロックのうちの1つの論理ブロックを指定するデータを含む、
前記方法。 - 前記検索属性データが、検索語を指定し、
前記データ・ストレージ・サブシステムが、バッファ・ストレージ要素をさらに含み、
前記方法は、前記順次アクセス・ストレージ要素に関する入力/出力操作を実行する要求の受け取りに応答して前記順次アクセス・ストレージ要素の前記データの一部が前記バッファ・ストレージ要素内に格納されるようにするステップをさらに含み、
前記検索操作を実行するステップが、前記入力/出力操作を実行する前記要求の前記受け取りに応答して、前記バッファ・ストレージ要素内に格納された前記順次アクセス・ストレージ要素の前記データの前記一部の受動的検索操作を実行するステップを含み、
前記検索結果を提供するステップが、前記順次アクセス・ストレージ要素の前記データ内での前記検索語の出現を指定する第1のデータ、および前記入力/出力操作を実行する前記要求への応答を指定する第2のデータを提供するステップを含む、
請求項12に記載の方法。 - 前記検索モジュールが、検索操作のためのハードウェア処理要素を含み、
前記検索操作を実行するステップが、前記ハードウェア処理要素に前記順次アクセス・ストレージ要素の前記データの一次検索操作を実行させるステップを含み、
前記検索結果を提供するステップが、前記検索結果データを、二次検索操作を実行するように構成された前記ホスト・データ処理システム内の検索モジュールに提供するステップを含む、
請求項12に記載の方法。 - 装置であって、
少なくとも1つの検索属性を指定する検索属性データを、データ・ストレージ・サブシステムにおいてホスト・データ処理システムから受け取るための手段であって、前記データ・ストレージ・サブシステムが、検索モジュールおよび順次アクセス・ストレージ要素を含む、前記受け取る手段と、
前記検索属性データの受け取りに応答して前記検索モジュールを利用して検索操作を実行するための手段であって、前記検索属性を利用して前記順次アクセス・ストレージ要素のデータの前記検索操作を実行するための手段を含む、前記実行するための手段と、
前記検索操作の実行に応答して前記データ・ストレージ・サブシステムからの検索結果データを前記ホスト・データ処理システムに提供するための手段と
を含み、
前記検索属性データが、最大検索時間、又は、検索されるべき順次アクセス・ストレージ要素のデータ量であり、
前記検索結果データが、前記複数の論理ブロックのうちの1つの論理ブロックを指定するデータを含む、
前記装置。 - 前記検索属性データが、検索語を指定し、
前記データ・ストレージ・サブシステムが、バッファ・ストレージ要素をさらに含み、
前記装置は、前記順次アクセス・ストレージ要素に関する入力/出力操作を実行する要求の受け取りに応答して前記順次アクセス・ストレージ要素の前記データの一部が前記バッファ・ストレージ要素内に格納されるようにするための手段をさらに含み、
前記検索操作を実行するための前記手段が、前記入力/出力操作を実行する前記要求の前記受け取りに応答して、前記バッファ・ストレージ要素内に格納された前記順次アクセス・ストレージ要素の前記データの前記一部の受動的検索操作を実行するための手段を含み、
前記検索結果を提供するための前記手段が、前記順次アクセス・ストレージ要素の前記データ内での前記検索語の出現を指定する第1のデータ、および前記入力/出力操作を実行する前記要求への応答を指定する第2のデータを提供するための手段を含む、
請求項15に記載の装置。 - 前記検索モジュールが、検索操作のためのハードウェア処理要素を含み、
前記検索操作を実行するための前記手段が、前記ハードウェア処理要素に前記順次アクセス・ストレージ要素の前記データの一次検索操作を実行させるための手段を含み、
前記検索結果を提供するための前記手段が、前記検索結果データを、二次検索操作を実行するように構成された前記ホスト・データ処理システム内の検索モジュールに提供するための手段を含む、
請求項15に記載の装置。 - 装置に、請求項12〜14のいずれか一項に記載の方法の各ステップを実行させるコンピュータ・プログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/221,089 | 2005-09-07 | ||
US11/221,089 US7991758B2 (en) | 2005-09-07 | 2005-09-07 | System and method for performing a search operation within a sequential access data storage subsystem |
PCT/EP2006/065530 WO2007028705A1 (en) | 2005-09-07 | 2006-08-21 | System and method for performing a search operation within a sequential access data storage subsystem |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2009507304A JP2009507304A (ja) | 2009-02-19 |
JP2009507304A5 true JP2009507304A5 (ja) | 2012-09-06 |
JP5089591B2 JP5089591B2 (ja) | 2012-12-05 |
Family
ID=37309254
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008529584A Active JP5089591B2 (ja) | 2005-09-07 | 2006-08-21 | 順次アクセス・データ・ストレージ・サブシステム内で検索操作を実行するためのシステムおよび方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7991758B2 (ja) |
EP (1) | EP1922656B1 (ja) |
JP (1) | JP5089591B2 (ja) |
CN (1) | CN101258493B (ja) |
WO (1) | WO2007028705A1 (ja) |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7991758B2 (en) * | 2005-09-07 | 2011-08-02 | International Business Machines Corporation | System and method for performing a search operation within a sequential access data storage subsystem |
CN102831214B (zh) | 2006-10-05 | 2017-05-10 | 斯普兰克公司 | 时间序列搜索引擎 |
US8280901B2 (en) | 2008-01-03 | 2012-10-02 | Masterfile Corporation | Method and system for displaying search results |
US8533427B2 (en) | 2010-05-06 | 2013-09-10 | International Business Machines Corporation | Mapping locations of logical volume records on a physical stacked volume |
US8656094B2 (en) * | 2010-05-06 | 2014-02-18 | International Business Machines Corporation | Locating host data records on a physical stacked volume |
US9336149B2 (en) * | 2010-05-06 | 2016-05-10 | International Business Machines Corporation | Partial volume access in a physical stacked volume |
US9417894B1 (en) | 2011-06-15 | 2016-08-16 | Ryft Systems, Inc. | Methods and apparatus for a tablet computer system incorporating a reprogrammable circuit module |
US20120324143A1 (en) * | 2011-06-15 | 2012-12-20 | Data Design Corporation | Methods and apparatus for data access by a reprogrammable circuit module |
JP5601725B2 (ja) * | 2011-11-30 | 2014-10-08 | 楽天株式会社 | 情報処理装置、情報処理方法、情報処理プログラム及び記録媒体 |
US8983979B2 (en) * | 2012-01-13 | 2015-03-17 | Hewlett-Packard Development Company, L.P. | Controlling access to stored information |
US10225136B2 (en) | 2013-04-30 | 2019-03-05 | Splunk Inc. | Processing of log data and performance data obtained via an application programming interface (API) |
US10353957B2 (en) | 2013-04-30 | 2019-07-16 | Splunk Inc. | Processing of performance data and raw log data from an information technology environment |
US10997191B2 (en) | 2013-04-30 | 2021-05-04 | Splunk Inc. | Query-triggered processing of performance data and log data from an information technology environment |
US10614132B2 (en) | 2013-04-30 | 2020-04-07 | Splunk Inc. | GUI-triggered processing of performance data and log data from an information technology environment |
US10346357B2 (en) | 2013-04-30 | 2019-07-09 | Splunk Inc. | Processing of performance data and structure data from an information technology environment |
US8904389B2 (en) | 2013-04-30 | 2014-12-02 | Splunk Inc. | Determining performance states of components in a virtual machine environment based on performance states of related subcomponents |
US8972992B2 (en) | 2013-04-30 | 2015-03-03 | Splunk Inc. | Proactive monitoring tree with state distribution ring |
US9185007B2 (en) | 2013-04-30 | 2015-11-10 | Splunk Inc. | Proactive monitoring tree with severity state sorting |
US9495187B2 (en) | 2013-04-30 | 2016-11-15 | Splunk, Inc. | Interactive, top-down presentation of the architecture and performance of a hypervisor environment |
US10019496B2 (en) | 2013-04-30 | 2018-07-10 | Splunk Inc. | Processing of performance data and log data from an information technology environment by using diverse data stores |
US9142049B2 (en) | 2013-04-30 | 2015-09-22 | Splunk Inc. | Proactive monitoring tree providing distribution stream chart with branch overlay |
US9015716B2 (en) | 2013-04-30 | 2015-04-21 | Splunk Inc. | Proactive monitoring tree with node pinning for concurrent node comparisons |
US10318541B2 (en) | 2013-04-30 | 2019-06-11 | Splunk Inc. | Correlating log data with performance measurements having a specified relationship to a threshold value |
US9336135B1 (en) | 2013-07-24 | 2016-05-10 | NXGN Data, Inc. | Systems and methods for performing search and complex pattern matching in a solid state drive |
US9021189B2 (en) * | 2013-07-24 | 2015-04-28 | NXGN Data, Inc. | System and method for performing efficient processing of data stored in a storage node |
US9336313B1 (en) | 2013-07-24 | 2016-05-10 | NXGN Data, Inc. | Systems and methods for performing single and multi threaded searches and complex pattern matching in a solid state drive |
US9092321B2 (en) * | 2013-07-24 | 2015-07-28 | NXGN Data, Inc. | System and method for performing efficient searches and queries in a storage node |
CN103645639B (zh) * | 2013-12-29 | 2016-05-04 | 中国科学院软件研究所 | 一种多模式反馈控制系统在逐点收敛情况下安全初始状态的估计方法 |
US9141292B2 (en) | 2014-01-03 | 2015-09-22 | Smart High Reliability Solutions Llc | Enhanced interface to firmware operating in a solid state drive |
US8935463B1 (en) * | 2014-01-03 | 2015-01-13 | Fastor Systems, Inc. | Compute engine in a smart SSD exploiting locality of data |
US10296589B2 (en) * | 2014-02-24 | 2019-05-21 | Ca, Inc. | Grouping content based upon user activity |
JP6181860B2 (ja) * | 2014-04-28 | 2017-08-16 | 株式会社日立製作所 | ストレージ装置とそのデータ処理方法及びストレージシステム |
US10261688B2 (en) * | 2016-04-02 | 2019-04-16 | Intel Corporation | Performing search and replace operations in a memory device using command parameters and a storage controller without transferring data to a processor |
US11030259B2 (en) | 2016-04-13 | 2021-06-08 | Microsoft Technology Licensing, Llc | Document searching visualized within a document |
US10726074B2 (en) * | 2017-01-04 | 2020-07-28 | Microsoft Technology Licensing, Llc | Identifying among recent revisions to documents those that are relevant to a search query |
US11158369B2 (en) * | 2018-12-26 | 2021-10-26 | Western Digital Technologies, Inc. | On-chip non-volatile memory (NVM) search |
Family Cites Families (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4125868A (en) | 1975-10-28 | 1978-11-14 | Automix Keyboards, Inc. | Typesetting terminal apparatus having searching and merging features |
US4543626A (en) | 1982-12-06 | 1985-09-24 | Digital Equipment Corporation | Apparatus and method for controlling digital data processing system employing multiple processors |
JP2525809B2 (ja) * | 1987-05-26 | 1996-08-21 | キヤノン株式会社 | 検索装置 |
JP2550139B2 (ja) * | 1988-03-28 | 1996-11-06 | 株式会社日立製作所 | 磁気記録装置 |
US5146561A (en) | 1988-06-02 | 1992-09-08 | Sears Communications Network, Inc. | Communication network data manager system |
US4929946A (en) | 1989-02-09 | 1990-05-29 | Storage Technology Corporation | Adaptive data compression apparatus including run length encoding for a tape drive system |
CA2049068A1 (en) * | 1990-03-09 | 1991-09-10 | Tadamitsu Ryu | Sampled data storage and editing system |
JPH0428061A (ja) * | 1990-05-24 | 1992-01-30 | Matsushita Electric Ind Co Ltd | 情報記録媒体と情報記録再生装置 |
US5159336A (en) | 1991-08-13 | 1992-10-27 | Iomega Corporation | Tape controller with data compression and error correction sharing a common buffer |
US5454098A (en) * | 1992-09-28 | 1995-09-26 | Conner Peripherals, Inc. | Method of emulating access to a sequential access data storage device while actually using a random access storage device |
US5903867A (en) * | 1993-11-30 | 1999-05-11 | Sony Corporation | Information access system and recording system |
US6029195A (en) * | 1994-11-29 | 2000-02-22 | Herz; Frederick S. M. | System for customized electronic identification of desirable objects |
JP3371044B2 (ja) * | 1994-12-28 | 2003-01-27 | 株式会社日立製作所 | ディスクアレイのための領域割り当て方法およびディスクアレイアクセス方法 |
JPH08331504A (ja) * | 1995-06-01 | 1996-12-13 | Matsushita Electric Ind Co Ltd | 動画像処理装置および動画像再生装置 |
US5758353A (en) * | 1995-12-01 | 1998-05-26 | Sand Technology Systems International, Inc. | Storage and retrieval of ordered sets of keys in a compact 0-complete tree |
WO1997032253A1 (en) * | 1996-02-29 | 1997-09-04 | Hitachi, Ltd. | Semiconductor memory device having faulty cells |
US5864863A (en) * | 1996-08-09 | 1999-01-26 | Digital Equipment Corporation | Method for parsing, indexing and searching world-wide-web pages |
CA2184518A1 (en) * | 1996-08-30 | 1998-03-01 | Jim Reed | Real time structured summary search engine |
JPH1074347A (ja) * | 1996-08-30 | 1998-03-17 | Nec Corp | 磁気テープ制御装置 |
JPH1091487A (ja) * | 1996-09-19 | 1998-04-10 | Honda Motor Co Ltd | データ管理システム |
US5875448A (en) | 1996-10-08 | 1999-02-23 | Boys; Donald R. | Data stream editing system including a hand-held voice-editing apparatus having a position-finding enunciator |
JP3499105B2 (ja) * | 1997-03-03 | 2004-02-23 | 株式会社東芝 | 情報検索方法および情報検索装置 |
JPH10307846A (ja) * | 1997-03-03 | 1998-11-17 | Toshiba Corp | ドキュメント情報管理システム、ドキュメント情報管理方法、及びドキュメント検索方法 |
US6539459B1 (en) | 1998-08-24 | 2003-03-25 | Sony Corporation | Library device, operating mode setting method therefor |
JP2001076005A (ja) * | 1999-06-30 | 2001-03-23 | Hitachi Ltd | データベースシステム |
JP3714046B2 (ja) * | 1999-07-23 | 2005-11-09 | 株式会社日立製作所 | 仮想テープ記憶装置 |
US6324534B1 (en) * | 1999-09-10 | 2001-11-27 | Requisite Technology, Inc. | Sequential subset catalog search engine |
US6366907B1 (en) * | 1999-12-15 | 2002-04-02 | Napster, Inc. | Real-time search engine |
US6763382B1 (en) | 2000-03-17 | 2004-07-13 | Sun Microsystems, Inc. | Method and apparatus for demand based paging algorithm |
US20020002552A1 (en) * | 2000-06-30 | 2002-01-03 | Schultz Troy L. | Method and apparatus for a GIS based search engine utilizing real time advertising |
US20020072981A1 (en) * | 2000-12-11 | 2002-06-13 | Park Jin Y. | Search engine adapted to permit real time querying of a set of internet sites |
US6920448B2 (en) * | 2001-05-09 | 2005-07-19 | Agilent Technologies, Inc. | Domain specific knowledge-based metasearch system and methods of using |
US7003514B2 (en) | 2001-09-13 | 2006-02-21 | International Business Machines Corporation | Method and apparatus for restricting a fan-out search in a peer-to-peer network based on accessibility of nodes |
US6886021B1 (en) | 2001-11-27 | 2005-04-26 | Unisys Corporation | Method for tracking audit files spanning multiple tape volumes |
US7076484B2 (en) * | 2002-09-16 | 2006-07-11 | International Business Machines Corporation | Automated research engine |
US7685254B2 (en) * | 2003-06-10 | 2010-03-23 | Pandya Ashish A | Runtime adaptable search processor |
US7111135B2 (en) | 2003-06-13 | 2006-09-19 | International Business Machines Corporation | Random access time to data stored on LTO tape by incorporating stacked cartridge memory (CM) modules |
US7519578B2 (en) | 2003-10-03 | 2009-04-14 | Microsoft Corporation | Ubiquitous search framework |
US8676830B2 (en) * | 2004-03-04 | 2014-03-18 | Yahoo! Inc. | Keyword recommendation for internet search engines |
JP4366601B2 (ja) * | 2005-03-18 | 2009-11-18 | ソニー株式会社 | タイムシフト画像配信システム、タイムシフト画像配信方法、タイムシフト画像要求装置および画像サーバ |
US7991758B2 (en) * | 2005-09-07 | 2011-08-02 | International Business Machines Corporation | System and method for performing a search operation within a sequential access data storage subsystem |
-
2005
- 2005-09-07 US US11/221,089 patent/US7991758B2/en active Active
-
2006
- 2006-08-21 CN CN200680032463XA patent/CN101258493B/zh active Active
- 2006-08-21 EP EP06778317.5A patent/EP1922656B1/en active Active
- 2006-08-21 JP JP2008529584A patent/JP5089591B2/ja active Active
- 2006-08-21 WO PCT/EP2006/065530 patent/WO2007028705A1/en active Application Filing
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5089591B2 (ja) | 順次アクセス・データ・ストレージ・サブシステム内で検索操作を実行するためのシステムおよび方法 | |
JP2009507304A5 (ja) | ||
US8364645B2 (en) | Data management system and data management method | |
US10936350B2 (en) | Active drive API | |
US20090132621A1 (en) | Selecting storage location for file storage based on storage longevity and speed | |
US8549243B2 (en) | Regeneration of deleted data | |
US8725945B2 (en) | Method and system for governing an enterprise level green storage system drive technique | |
US10282427B2 (en) | Metadata storing technique | |
CN103365743A (zh) | 用于在计算环境中处理快照的方法和系统 | |
US8478933B2 (en) | Systems and methods for performing deduplicated data processing on tape | |
KR20000022716A (ko) | 로그 구조화 목표 저장장치를 사전에 구성하여 볼륨을 효율적으로 복사하는 방법 및 장치 | |
US8683130B2 (en) | Fabricating key fields | |
US8359439B2 (en) | Backup apparatus, backup method, and file reading apparatus | |
JP2006072435A (ja) | ストレージシステムおよびデータ記録方法 | |
US8151053B2 (en) | Hierarchical storage control apparatus, hierarchical storage control system, hierarchical storage control method, and program for controlling storage apparatus having hierarchical structure | |
JP2007527572A (ja) | インスタントボリュームの復旧を支援するエミュレーティッドストレージシステム | |
JP2007527572A5 (ja) | ||
JP2006031446A (ja) | データ記憶装置、データ記憶方法およびデータ記憶プログラム | |
JP6212996B2 (ja) | ストレージ制御装置、ストレージ制御プログラム、及びストレージ制御方法 | |
US20070143554A1 (en) | Controller, copy control method, and computer product | |
US20110093655A1 (en) | Connecting A Storage Subsystem And An Electronic Device With A Control Device That Hides Details Of The Storage Subsystem | |
JP4285202B2 (ja) | 複合計算機システムおよび複合i/oシステム | |
JP2005346426A (ja) | データ共有ディスク装置 | |
US20060129987A1 (en) | Apparatus, system, and method for accessing management data | |
JP2007048319A (ja) | 複合計算機システムおよび複合i/oシステム |