JP2008547106A - 検索用バックオフメカニズム - Google Patents
検索用バックオフメカニズム Download PDFInfo
- Publication number
- JP2008547106A JP2008547106A JP2008518114A JP2008518114A JP2008547106A JP 2008547106 A JP2008547106 A JP 2008547106A JP 2008518114 A JP2008518114 A JP 2008518114A JP 2008518114 A JP2008518114 A JP 2008518114A JP 2008547106 A JP2008547106 A JP 2008547106A
- Authority
- JP
- Japan
- Prior art keywords
- request
- indexing
- requests
- low priority
- computer
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
- G06F16/316—Indexing structures
- G06F16/328—Management therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0038—System on Chip
Abstract
低優先度入出力要求を用いて文書への索引の付与が実行される。本態様は、自身の文書管理システムへの入出力要求に関して少なくとも2つの優先度レベルをサポートするオペレーティングシステムを有するシステムで実装することができる。低優先度入出力要求を使用して、索引を付与すべき文書にアクセスすることができる。低優先度入出力要求を使用して、索引に情報を書き込むこともできる。高優先度要求を入出力要求にとして使用して、ユーザからのクエリに応じて索引にアクセスすることができる。入出力要求の優先度を(異なる優先度を割り当てることが望ましい複数のスレッドを生成する)プロセス毎ではなく、スレッド毎に設定することができる。
Description
(ラップトップ/ノートブックコンピュータおよびハンドヘルドコンピューティングデバイス、およびデスクトップコンピュータを含む)パーソナルコンピュータ用に設計された一部のオペレーティングシステムは、パーソナルコンピュータに記憶したテキスト文書において一つの選択語あるいは複数の選択語をユーザが検索可能な全文検索システムを有する。一部の全文検索システムには索引付け(インデクシング)サブシステムを含まれるものもある。索引付けサブシステムは基本的に、ユーザがキーワードを用いて索引付きの検索を実行できるように、パーソナルコンピュータに記憶した文書を検査して、文書のそれぞれの単語を索引(インデックス)に格納する。この索引付けプロセスは中央演算装置(CPU)および入出力(I/O)に負荷が集中する。従って、索引付けプロセスの実行中にユーザが別の作業を実行したい場合、ユーザは一般にこの作業の処理が遅延することを経験するであろう。これは“ユーザ経験”に不利に影響する傾向がある。
索引付けプロセス中にユーザアクティビティに応答する際の遅延を最小化する1つのアプローチは、ユーザアクティビティの検出時に索引付けを一時停止することである。全文検索システムは索引付けプロセスを再開するためにユーザアクティビティを検出し、ユーザの作業の完了時点(または休止期間)を“予測”するロジックを含むことができる。ユーザアクティビティを検出すると、索引付けプロセスを一時停止することができるが、一般に(例えば、索引付けプロセスの一部として現在実行中のまたはタスクを完了するため)索引付けプロセスが一時停止状態に移行する際の遅延がなお存在する。さらに、休止期間の予測結果が不正確な場合、索引付けプロセスはユーザエクスペリエンスを悪化させうる前記の遅延を引き起こすであろう。さらに、ユーザアクティビティと休止期間との検出に用いるロジックは、全文検索システムをいっそう複雑にし、CPUリソースを消費する。従来システムの幾つかの欠点を考察したが、この背景情報は請求項に言及されなければならない問題を特定するようには意図されていない。
以下の要約の目的は、後の「発明を実施するための最良の形態」でさらに説明する概念から選んだものを簡潔な形で紹介することである。本要約は請求項の主要な特徴または本質的な特徴を特定するようには意図しておらず、請求範囲の決定を助長するものとして用いるようにも意図していない。
説明する様々な実施形態の態様によると、文書への索引の付与は低優先度の入出力要求を用いて実行される。本態様は、文書管理システムへの入出力要求に関して少なくとも2つの優先度レベルをサポートするオペレーティングシステムを有するシステムで実行することができる。一部の実装では、索引を付与すべき文書へのアクセスと索引への情報書き込みとに低優先度の入出力要求を使用し、一方でユーザからの問い合わせに応じて索引にアクセスするための入出力要求に高優先度の要求を使用する。また、一部の実装では、入出力要求の優先度を(異なる優先度を割り当てることが望ましい複数のスレッドを生成することができる)プロセス毎ではなく、スレッド毎に設定することができるものもある。
実施形態をコンピュータプロセス、(携帯ハンドヘルドコンピューティングデバイスを含む)コンピュータシステムとして、あるいはコンピュータプログラム製品のような製造品として実装してもよい。コンピュータプログラム製品は、コンピュータシステムが読取可能なコンピュータ記憶媒体で、コンピュータプロセスの実行命令のコンピュータプログラムを符号化してもよい。コンピュータプログラム製品はまた、コンピューティングシステムが読取可能な搬送波上の伝播信号で、コンピュータプロセスの実行命令のコンピュータプログラムを符号化してもよい。
様々な実施形態を以下で添付図面を参照してより完全に説明する。添付図面は本明細書の一部を形成し、本発明を実施する具体的な実施形態の例を示す。しかしながら、実施形態は多数の異なる形態で実装してもよく、本明細書で説明する実施形態に限定されると解釈するべきではない。むしろこれらの実施形態は、本開示が徹底的且つ完全で、本発明の範囲を当業者に完全に伝えることを目的として提供されている。実施形態は方法、システムまたは装置として実施してもよい。従って、実施形態はハードウェアによる実装の形態、完全にソフトウェアによる実装の形態、またはソフトウェアとハードウェアの態様を組み合わせた実装の形態を取ることができる。以下の詳細説明は従って、限定的な意味で捉えるべきではない。
様々な実施形態の論理命令は、(a)コンピューティングシステム上で実装される一連のコンピュータ実装ステップとして、および/または(b)コンピューティングシステム内部において相互接続された機械的なモジュール群として実装される。この実装は、実施形態を実装するコンピューティングシステムの性能要求に依存する選択をどう行うかが問題となる。従って、本明細書で説明する実施形態を構築する論理命令を代替的に命令、ステップまたはモジュールと称する。
図1は検索を目的とする文書索引付けに対する低優先度の入出力要求をサポートするシステム100を示す。本実施形態の例では、システム100はユーザプロセス102−1から102−N、(例えば、高優先度入出力要求キュー106および低優先度入出力要求キュー108を用いて)高優先度および低優先度の入出力要求をサポートするファイルシステム104、および検索を目的とした索引を付与すべき文書の格納に使用しうるデータベース110(例えば、ディスクドライブ)を含む。高優先度および低優先度の入出力要求をサポートする適切なファイルシステムはいかなるものも、ファイルシステム104を実装するために用いることができる。一実施形態においてファイルシステム104は、2004年8月8日公表の“プロアクティブメモリ管理に関する方法およびメカニズム”という発明名称の特許文献1で説明されるように、高優先度および低優先度の入出力要求キュー106および108を実装する。
“低優先度”および“高優先度”という用語を上で使用したが、これらは、低優先度の入出力要求が高優先度の入出力要求より低い優先度を有するという意味で相対的な用語として使用する。一部の実施形態では、例えば“通常”および“低い”優先度のような別の用語を使用してもよい。他の実施形態では、入出力要求に対して利用可能な2つより多くの優先度レベルがあってもよい。このような実施形態では、索引付けに対する入出力要求を最低優先度で送信することができ、それにより他のプロセスおよび/またはスレッドからの入出力要求をより高い優先度レベルで送信することが可能となる。
本実施形態の例では、ユーザプロセス102−Nは検索の目的となる(例えば、文書の全文検索)文書に索引を付与する索引付けプロセスである。例えば、索引付けプロセス102−Nは文書の全単語を索引に書き込むことができ(これをシステム100に格納した文書全てに繰り返す)、この索引を使用してシステム100内に格納した文書の全文検索を実行することができる。
他のユーザプロセス(例えば、ユーザプロセス102−1および102−2)は、データベース110に格納したファイルにアクセスする目的でファイルシステム104と相互作用しうる任意の他のプロセスであることができる。ユーザの作業に応じて、多数のユーザプロセスが実行されていること、少数のユーザプロセスが実行されていること、または一部のシナリオでは索引付けプロセス102−Nのみが実行されていること(このプロセスはデータストア110内の文書全てに索引を付与をし終えれば停止してもよい)、としてもよい。
動作中は、ユーザプロセス102−1から102−Nは一般に入出力要求をその時々にファイルシステム104に送信し、これを矢印112−1から112−Nで示す。多数のユーザプロセスに対し、これらの入出力要求が高優先度で送信される。例えば、ユーザ入力に応答するアプリケーション(例えば、ワードプロセッサ)、メディアを再生するメディアプレイヤー、ページをダウンロードするブラウザ、等のようなフォアグラウンドプロセスは一般に入出力要求を高優先度で送信するであろう。
しかしながら、本実施形態によると、索引付けプロセス102−Nにより送信される全ての入出力要求は低優先度で送信され、矢印114で示すように低優先度入出力要求キュー108に追加される。このように、索引付けプロセス102−Nからの入出力要求は、高優先度入出力要求キュー106内の全ての高優先度入出力要求が情報を伝達した後に実行されるであろう。この特徴により、一部の実施形態では索引付けプロセスにより引き起こされるユーザエクスペリエンスの悪化を有利に削減できる。さらに一部の実施形態では、前述の休止検出ロジックは省略されており、それにより索引付けサブシステムの複雑さが削減される。またさらに、索引付けプロセスに対して低優先度入出力要求を用いることで、休止検出機構で一般に存在する休止期間検出におけるエラーと、索引付けプロセスの一時停止における遅延との問題を回避できる。
図2は一実施形態による検索/索引付けシステム200の例を示す。本実施形態では、システム200は全文検索/索引付けプロセス(即ちメインプロセス)202、全文索引付けサンドボックスプロセス(即ちサンドボックスプロセス)204、文書データストア206、および全文カタログデータ(即ち索引)データストア208を含む。本実施形態では、メインプロセス202は高優先度入出力クエリサブシステム(即ちクエリサブシステム)210および低優先度入出力索引付けサブシステム212を含む。サンドボックスプロセス204は、異なる形式の文書をプレーンテキストに変換するコンポーネントを分離するために使用し、低優先度入出力索引付け/フィルタリングサブシステム(即ちフィルタリングサブシステム)214を含む。
本実施形態では、クエリサブシステム210はインタフェース216を通してユーザから受信した検索クエリを処理する。ユーザは、システム200内に格納した文書内で検索すべき1つまたは複数のキーワードを入力することができる。一部の実施形態では、インタフェース216を通して受信したクエリに応答して、クエリサブシステム210はクエリを処理し、高優先度の入出力要求を通して索引データストア208にアクセスする。例えば、クエリサブシステム210はキーワード(複数)の索引を検索して、キーワード(複数)を含む一つまたは複数の文書のリストをこの索引から取得することができる。プロセスおよび/またはスレッドに対してCPU優先度を選択可能な実施形態では、クエリサブシステム210を高優先度のCPU処理に対して設定することができる。このような構成(即ち、入出力およびCPUの優先度を高優先度に設定すること)は有利でありうる。なぜならば、ユーザは一般に検索結果を可能な限り迅速に要求し、且つシステムリソースを検索専用とする意図があるからである。
本実施形態では、低優先度入出力索引付けサブシステム212は文書の全文検索に用いた索引を構築する。例えば、低優先度入出力索引付けサブシステム212はデータ(例えば、単語、および単語を含む文書の文書識別子)をサンドボックスプロセス204から取得し、適切にこのデータを索引データストア208に格納することができる。データの索引データストア208への書き込みは相対的に入出力に負担が集中しがちである。索引の構築(例えば、索引データストア208に格納すべきデータの決定、および索引データストア208へのデータの格納方法の決定)は相対的にCPUに負担が集中しがちである。本実施形態によると、低優先度入出力索引付けサブシステム212は低優先度の入出力要求を用いてデータを索引データストア208に格納する。プロセスおよび/またはスレッドに対してCPU優先度を選択可能な実施形態では、低優先度入出力索引付けサブシステム212を低優先度のCPU処理に対して設定することができる。このような構成(即ち、入出力およびCPUの優先度を低優先度に設定すること)は有利でありうる。なぜならば、ユーザは一般にユーザアクティビティ(例えば、アプリケーションの実行、メディアの再生、ファイルのダウンロード、等に対するユーザ入力)に対して高速な応答を要求し、且つ索引付けプロセスを遅らせる意図があるからである。
本実施形態では、フィルタリングサブシステム214は文書データストア206から文書を抽出し、その文書を処理して低優先度入出力索引付けサブシステム212が索引を構築するために必要なデータを抽出する。フィルタリングサブシステム214は、文書データストア206から得た各文書の内容とメタデータとを読み込み、その文書から、ユーザがクエリサブシステム210を用いて文書内で検索可能な単語を抽出する。一実施形態では、フィルタリングサブシステム214はフィルタコンポーネントを含む。フィルタコンポーネントは、文書をプレーンテキストに変換すること、単語分解プロセスを実行すること、および低優先度入出力索引付けサブシステム212が索引を構築するために利用できるよう、その単語をパイプ処理に置くことが可能である。他の実施形態では、単語分解は低優先度入出力索引付けサブシステム212が行う。
システム200を特定のモジュールまたはコンポーネントで説明したが、他の実施形態では、コンポーネントまたはモジュールに対して説明した1つまたは複数の機能を別のコンポーネントまたはモジュールに分割すること、より少数のモジュールまたはコンポーネントに結合すること、または省略することとしてもよい。
“入出力要求”動作フローの例
図3は、一実施形態に従ってファイルシステムへ入出力要求を送信する際の索引付けプロセスの動作フローを示す。動作フロー300は任意の適切なコンピューティング環境で実行してよい。例えば、動作フロー300をシステム200のメインプロセス202(図2)のような索引付けプロセスにより実行して、システムのデータストア上に格納した一つまたは複数の文書を処理し、格納した一つまたは複数の文書の全文検索の実行に用いる索引を生成してもよい。従って、動作フロー300の説明は図2の少なくとも1つの構成要素に言及する場合がある。しかしながら、図2の構成要素に対するそのような参照はいかなるものも説明の目的のみによるものであって、図2の実装は動作フロー300に対しては非制限的な環境となることは理解されるべきである。
図3は、一実施形態に従ってファイルシステムへ入出力要求を送信する際の索引付けプロセスの動作フローを示す。動作フロー300は任意の適切なコンピューティング環境で実行してよい。例えば、動作フロー300をシステム200のメインプロセス202(図2)のような索引付けプロセスにより実行して、システムのデータストア上に格納した一つまたは複数の文書を処理し、格納した一つまたは複数の文書の全文検索の実行に用いる索引を生成してもよい。従って、動作フロー300の説明は図2の少なくとも1つの構成要素に言及する場合がある。しかしながら、図2の構成要素に対するそのような参照はいかなるものも説明の目的のみによるものであって、図2の実装は動作フロー300に対しては非制限的な環境となることは理解されるべきである。
ブロック302で、索引付けプロセスは入出力要求を求めて待機する。一実施形態では、低優先度の入出力要求を索引付けサブシステムが生成し、高優先度の入出力要求を検索クエリサブシステムが生成することが可能なメインプロセス202(図2)として索引付けプロセスを実装する。例えば、フィルタリングサブシステム214のようなフィルタリングサブシステムとともに、低優先度入出力サブシステム212のような索引付けサブシステムで索引付けサブシステムを実装してもよい。検索クエリサブシステムを、例えばクエリサブシステム210のような任意の適切なクエリ処理コンポーネントを用いて実装することが可能である。動作フロー300はブロック304に進むことができる。
ブロック304で、入出力要求が索引付けサブシステムからであるか否かを決定する。一実施形態では、索引付けプロセスは入出力要求が索引付けサブシステムからであるか否かを、要求発信元を調べることで決定する。ブロック302に関して上述した例を続けると、例えば入出力要求が索引付けサブシステムからの索引への情報書き込み要求である場合、または入出力要求がフィルタリングサブシステムからの文書データストア内に格納した文書に対するアクセス要求である場合、索引付けシステムは入出力要求が索引付けサブシステムからであると決定し、動作フロー300はさらに以下で説明するブロック308に進むことができる。しかしながら、例えば入出力要求がクエリサブシステムからの特定の一つまたは複数の単語に対する索引の検索要求である場合、索引付けシステムは入出力要求が索引付けサブシステムからではないと決定し、動作フロー300はブロック306に進むことができる。一実施形態では、文書管理システムの入出力要求の優先度をプロセス毎ではなくスレッド毎に設定可能とするようにオペレーティングシステムを実装する。このような特徴は、クエリサブシステムおよび索引付けサブシステムが同一プロセス(例えば、図2のメインプロセス202)の一部であり、ユーザが開始したクエリ入出力要求を高優先度で送信し、索引付けサブシステムが開始した入出力要求を低優先度で送信できるような実施形態において有利に使用することができる。
ブロック306で、入出力要求を高優先度でファイルシステムに送信する。一実施形態では、索引付けシステムは入出力要求を高優先度入出力要求キュー106(図1)のような高優先度キューに送信する。動作フロー300はその後ブロック302に戻って別の入出力要求を求めて待機することができる。
ブロック308で、入出力要求を低優先度でファイルシステムに送信する。一実施形態では、索引付けシステムは入出力要求を低優先度入出力キュー108(図1)のような低優先度キューに送信する。動作フロー300はその後ブロック302に戻って別の入出力要求を求めて待機することができる。
動作フロー300を特定の順序で逐次的に図示および説明したが、他の実施形態では、ブロックで示した動作を別の順序、複数回、および/または並列に実行してもよい。さらに、一部の実施形態では、ブロックで示した1つまたは複数の動作を別のブロックに分割すること、省略することまたは組み合わせることが可能である。
“文書索引付け”動作フローの例
図4は一実施形態に従って文書に索引を付与する動作フロー400を示す。動作フロー400は任意の適切なコンピューティング環境で実行してもよい。例えば、動作フロー300をシステム200のメインプロセス202(図2)のような索引付けプロセスで実行して、システムのデータストア上に格納した一つまたは複数の文書を処理し、格納した一つまたは複数の文書の全文検索の実行に用いる索引を生成することができる。従って、動作フロー400の説明は図2の少なくとも1つの構成要素を言及する可能性がある。しかしながら、図2の構成要素に対するそのような参照はいかなるものも説明の目的のみによるものであって、図2の実装は動作フロー400に対する非制限的な環境となることは理解されるべきである。
図4は一実施形態に従って文書に索引を付与する動作フロー400を示す。動作フロー400は任意の適切なコンピューティング環境で実行してもよい。例えば、動作フロー300をシステム200のメインプロセス202(図2)のような索引付けプロセスで実行して、システムのデータストア上に格納した一つまたは複数の文書を処理し、格納した一つまたは複数の文書の全文検索の実行に用いる索引を生成することができる。従って、動作フロー400の説明は図2の少なくとも1つの構成要素を言及する可能性がある。しかしながら、図2の構成要素に対するそのような参照はいかなるものも説明の目的のみによるものであって、図2の実装は動作フロー400に対する非制限的な環境となることは理解されるべきである。
ブロック402で、文書をファイルシステムから取得する。一実施形態では、システム200(図2)のような索引付けシステムはデータストア206(図2)のような文書ストアから文書を読み込む。本実施形態によると、文書は低優先度の入出力要求を用いてデータストアから読み込む。例えば、索引付けシステムは、文書を文書データストアから読み込むための入出力要求を生成可能なフィルタリングサブシステム214のようなフィルタリングサブシステムを含んでもよい。このような索引付けシステムを構成して、(クエリサブシステムではなく)フィルタリングサブシステムから入出力要求を検出検出してそれらの要求を低優先度入出力要求として文書管理システムに送信することができる。動作フロー400はブロック404に進むことができる。
ブロック404で、ブロック402で得た文書をプレーンテキスト文書に変換する。一実施形態では、文書をメモリに読み込んだ後、前述のフィルタリングサブシステムが文書をプレーンテキスト文書に変換する。例えば、テキストデータに加え、文書はフォーマッティングメタデータ、(文書がマークアップ言語の文書である場合)マークアップ、等を含んでもよい。動作フロー400はブロック406に進むことができる。
ブロック406で、ブロック404で得たプレーンテキスト文書を処理して、プレーンテキスト文書を個々の単語に分離する(即ち、単語分解プロセスを実行する)。一実施形態では、低優先度入出力サブシステム212(図2)のような索引付けサブシステムが単語分解プロセスを実行することができる。さらに本実施形態によると、分離した単語を次いで低優先度入出力要求を用いて索引に記憶する。ブロック402に関して説明した例を続けると、(索引付けサブシステムを含む)前述の索引付けシステムを構成して索引付けサブシステムからの入出力要求を検出する。このような実施形態では、索引付けシステムは、索引付けサブシステムからのものとして検出した入出力要求を低優先度入出力要求として文書管理システムに送信する。動作フロー400はブロック408に進むことができる。
ブロック408で、索引を付与すべき文書がまだあるか否かを決定する。一実施形態において索引付けシステムは、まだ索引が付与されていない文書に対して前述の文書データストアを調べ、索引を付与すべき文書がまだあるか否かを決定する。例えば、前述のフィルタリングサブシステムは低優先度入出力要求を用いて文書データストアを調べることができる。索引を付与すべき他の文書が1つまたは複数あると決定する場合、動作フロー400はブロック410に進むことができる。
ブロック410で、索引を付与すべき次の文書を選択する。一実施形態において前述のフィルタリングサブシステムは、索引を付与すべき次の文書を文書データストアから選択する。動作フロー400はブロック402に戻って文書に索引を付与することができる。
しかしながら、ブロック408で索引を付与すべき文書がもう存在しないと決定された場合、動作フロー400はブロック412に進むことができ、そこで索引付けプロセスが完了する。
動作フロー400を特定順序で逐次的に図示および説明したが、他の実施形態では、ブロックで示した動作を別の順序、複数回、および/または並列に実行してもよい。さらに、一部の実施形態では、ブロックで示した1つまたは複数の動作を別のブロックに分割すること、省略することまたは結合することが可能である。
例示的動作環境
図5は一般的なコンピュータ環境500を示す。一般的なコンピュータ環境500を使用して本明細書で説明する技術を実装することができる。コンピュータ環境500はコンピューティング環境の一例に過ぎず、コンピュータおよびネットワークアーキテクチャの使用範囲または機能範囲に関する限定を示唆するようには意図していない。さらに、コンピュータ環境500は、例示的コンピュータ環境500に示した構成要素の任意の1つまたは複数の組合せに対して依存性または要求事項を有するとして解釈すべきでない。
図5は一般的なコンピュータ環境500を示す。一般的なコンピュータ環境500を使用して本明細書で説明する技術を実装することができる。コンピュータ環境500はコンピューティング環境の一例に過ぎず、コンピュータおよびネットワークアーキテクチャの使用範囲または機能範囲に関する限定を示唆するようには意図していない。さらに、コンピュータ環境500は、例示的コンピュータ環境500に示した構成要素の任意の1つまたは複数の組合せに対して依存性または要求事項を有するとして解釈すべきでない。
コンピュータ環境500は汎用目的のコンピュータ用デバイスをコンピュータ502の形で含む。コンピュータ502の構成要素は1つまたは複数のプロセッサまたは演算装置504、システムメモリ506、およびプロセッサ504を含む様々なシステムコンポーネントをシステムメモリ506に接続するシステムバス508を含むことができるが、これらに限らない。
システムバス508は任意の何種類かのバス構造のうち1つまたは複数を表し、それらにはメモリバスまたはメモリコントローラ、周辺バス、高速グラフィックポート、および様々なバスアーキテクチャのうちいずれかを用いるプロセッサまたはローカルバスが含まれる。例として、このようなアーキテクチャは業界標準アーキテクチャ(ISA)バス、マイクロチャネルアーキテクチャ(MCA)バス、拡張ISA(EISA)バス、ビデオエレクトロニクス標準協会(VESA)ローカルバス、メザニンバスとしても知られる周辺機器相互接続(PCI)バス、PCIエクスプレスバス、ユニバーサルシリアルバス(USB)、セキュアデジタル(SD)バス、またはIEEE 1394、即ちファイヤーワイヤーバスを含むことができる。
コンピュータ502は様々なコンピュータ読取可能媒体を含むことができる。このような媒体は、コンピュータ502がアクセス可能な媒体であってよく、揮発性および不揮発性媒体、取り外し可能および取り外し不可媒体の両方を含む。
システムメモリ506には、ランダムアクセスメモリ(RAM)510のような揮発性メモリ、および/あるいは読取専用メモリ(ROM)512またはフラッシュRAMのような不揮発性メモリの形式でコンピュータ読取可能媒体が含まれる。基本入出力システム(BIOS)514は、起動時にコンピュータ502内の要素間での情報転送を支援する基本ルーチンを含み、ROM512またはフラッシュRAMに格納される。RAM510は一般に、データ、ならびに/あるいは演算装置504が直接アクセス可能な、および/または演算装置504上で現在動作しているプログラムモジュールを含む。
コンピュータ502は他の取り外し可能/取り外し不可、揮発性/不揮発性のコンピュータ記憶媒体を含んでもよい。例として、図5は取り外し不可、不揮発性の磁気媒体(図示せず)を読み書きするハードディスクドライブ516、取り外し可能、不揮発性の磁気ディスク520(例えば、“フロッピー(登録商標)ディスク”)を読み書きする磁気ディスクドライブ518、およびCD−ROM、DVD−ROM、または他の光媒体のような取り外し可能、不揮発性の光ディスク524を読み書きする光ディスクドライブ522を示す。ハードディスクドライブ516、磁気ディスクドライブ518、および光ディスクドライブ522は各々1つまたは複数のデータ媒体インタフェース525によりシステムバス508に接続する。あるいは、ハードディスクドライブ516、磁気ディスクドライブ518、および光ディスクドライブ522を1つまたは複数のインタフェース(図示せず)によりシステムバス508に接続することができる。
ディスクドライブおよびそれらに関連するコンピュータ読取可能媒体は、コンピュータ502に対するコンピュータが読み込み可能な命令、データ構造、プログラムモジュール、および他のデータの不揮発性の保存手段を提供する。例ではハードディスク516、取り外し可能磁気ディスク520、および取り外し可能光ディスク524を示すが、磁気カセットまたは他の磁気記憶デバイス、フラッシュメモリカード、CD−ROM、デジタル多用途ディスク(DVD)または他の光学記憶、ランダムアクセスメモリ(RAM)、読取専用メモリ(ROM)、電気的に消去可能で再書き込み可能な読み出し専用素子(EEPROM)、等のような、コンピュータが利用可能なデータを保存できる他種のコンピュータが読取可能な媒体を利用して、このコンピューティングシステムおよび環境の例を構築することもできる。
任意の数のプログラムモジュールをハードディスク516、磁気ディスク520、光ディスク524、ROM512、および/またはRAM510上に格納することができる。そのプログラムモジュールには例として、オペレーティングシステム526(一部の実施形態では上述の低優先度および高優先度の入出力ファイルシステムおよび索引付けシステムを含む)、1つまたは複数のアプリケーションプログラム528、他のプログラムモジュール530、およびプログラムデータ532が含まれる。このようなオペレーティングシステム526、1つまたは複数のアプリケーションプログラム528、他のプログラムモジュール530、およびプログラムデータ532の各々(またはそれらの何らかの組合せ)は、分散ファイルシステムをサポートする常住コンポーネントの全部または一部を実装してもよい。
ユーザはキーボード534、およびポインティングデバイス536(例えば、“マウス”)のような入力装置を通してコンピュータ502に命令または情報を入力することができる。他の入力装置538(詳細には示さず)は、マイクロフォン、ジョイスティック、ゲームパッド、パラボラアンテナ、シリアルポート、スキャナ、および/または同等なものを含んでもよい。これらおよび他の入力装置を、システムバス508に接続した入出力インタフェース540を通して演算装置504に接続するが、パラレルポート、ゲームポートまたはユニバーサルシリアルバス(USB)のような他のインタフェースおよびバス構造で接続してもよい。
モニタ542または他種の表示装置もビデオアダプタ544のようなインタフェースを通してシステムバス508に接続する。モニタ542に加えて、他の出力周辺装置はスピーカ(図示せず)およびプリンタ546のような、入出力インタフェース540を通してコンピュータ502に接続可能なコンポーネントを含むことができる。
コンピュータ502は、リモートコンピューティングデバイス548のような1つまたは複数のリモートコンピュータに対する論理接続を用いてネットワーク環境で動作することができる。例として、リモートコンピューティングデバイス548はPC、ポータブルコンピュータ、サーバ、ルータ、ネットワークコンピュータ、ピアデバイスまたは他の共通ネットワークノード、等とすることができる。リモートコンピューティングデバイス548を、コンピュータ502に比べ本明細書で説明した要素および特徴の複数または全てを含むことが可能なポータブルコンピュータとして示す。あるいは、コンピュータ502は非ネットワーク化環境で同様に動作することができる。
コンピュータ502とリモートコンピュータ548との間の論理接続をローカルエリアネットワーク(LAN)550および一般的な広域ネットワーク(WAN)522として示す。このようなネットワーク環境は職場、企業規模コンピュータネットワーク、イントラネットおよびインターネットにおいては一般的である。
LANネットワーク環境で実装される際、コンピュータ502はネットワークインタフェースまたはアダプタ554を通してローカルエリアネットワーク550に接続される。WANネットワーク環境で実装される際、コンピュータ502は一般にモデム556または、広域ネットワーク552上で通信を確立する他の手段を含む。モデム556はコンピュータ502に対して内部または外部にあることができ、入出力インタフェース540または他の適切なメカニズムを通してシステム508に接続することができる。図示したネットワーク接続は例でしかなく、コンピュータ502と548との間の少なくとも1つの通信リンクを確立する他の手段を使用できることは理解されるであろう。
コンピューティング環境500で示したようなネットワーク環境では、コンピュータ502に対して示したプログラムモジュール、またはその一部をリモートメモリ記憶装置に格納してもよい。例として、リモートアプリケーションプログラム558はリモートコンピュータ548のメモリ装置上にある。説明の目的で、オペレーティングシステムのようなアプリケーションまたはプログラムおよび他の実行可能プログラムコンポーネントを離散ブロックとして本明細書では示すが、このようなプログラムおよびコンポーネントは様々な時点でコンピューティングデバイス502の様々な記憶コンポーネント内にあり、コンピュータの少なくとも1つのデータプロセッサにより実行されることは理解される。
様々なモジュールおよび技術を、1つまたは複数のコンピュータまたは他の装置により実行されるプログラムモジュールのようなコンピュータ実行可能命令という、本明細書のような一般的な文脈で説明してもよい。一般に、プログラムモジュールは、特定タスクを実行または特定の抽象データ型を実装するためのルーチン、プログラム、オブジェクト、コンポーネント、データ構造、等を含む。一般に、プログラムモジュールの機能を様々な実施形態で望ましいように組み合わせるか、または分散させてもよい。
これらモジュールおよび技術の実装を、コンピュータ読取可能媒体の何らかの形態上に格納するか、または何らかの形態を通して送信してもよい。コンピュータ読取可能媒体は、コンピュータがアクセス可能となる媒体であればどのような形態でも可能である。例として、これには限らないが、コンピュータ読取可能媒体は“コンピュータ記憶媒体”と“通信媒体”とを備えてもよい。
“コンピュータ記憶媒体”は、コンピュータ読取可能命令、データ構造、プログラムモジュールまたは他のデータのような情報を記憶する任意の方法または技術で実装した、揮発性および不揮発性、取り外し可能および取り外し不可媒体のすべてを含む。コンピュータ記憶媒体はRAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、デジタル多用途ディスク(DVD)または他の光学ストレージ、カセットテープ、磁気テープ、磁気ディスクストレージまたは他の磁気記憶装置、あるいは所望の情報の記憶に使用でき且つコンピュータがアクセス可能な任意の他の媒体を含むがこれらに限らない。
“通信媒体”は一般にコンピュータ読取可能命令、データ構造、プログラムモジュールまたは他のデータを搬送波または他の伝送メカニズムのような変調されたデータ信号で具現化する。通信媒体は任意の情報配信媒体も含む。 “変調されたデータ信号”という用語は、1つまたは複数の特性集合を有するかまたは信号内の情報を符号化するように変調した信号を意味する。非限定的な例としてのみだが、通信媒体は有線ネットワークまたは直接配線接続のような有線媒体、ならびに音響、無線周波数、赤外線、および他の無線媒体のような無線媒体を含む。上記の任意の組合せもコンピュータ読取可能媒体の範囲に含まれる。
本明細書にわたって“一実施形態”、“実施形態”、または“実施形態の例”と言及してきたが、特に説明した特徴、構造、または特性が本発明の少なくとも1つの実施形態に含まれることを一貫として意味してきた。従って、このような言い回しを使用することで、1つより多くの実施形態を言及することができるかもしれない。さらに、説明した特徴、構造、または特性を1つまたは複数の実施形態において任意の適切な方法で組み合わせることができる。
しかしながら関連する当業者は、本発明を1つまたは複数の特定の詳細なしに、または他の方法、リソース、材料、等とともに実行できることを認識することができる。他の事例では、公知の構造、リソース、または動作は、単に本発明の態様を不明瞭にすることを回避するために詳細には図示または説明しなかった。
本発明の実施形態の例および適用例を図示および説明したが、本発明は上述の具体的な構成およびリソースに限定されないことは理解されるべきである。当業者に明らかな様々な修正、変更、および変形を、本発明の請求範囲から逸脱することなく、本明細書で開示した本発明の方法およびシステムの配置、動作、および詳細に加えてもよい。
非制限的且つ非網羅的な実施形態を以下の図面を参照して説明する。図面において、同じ参照番号は特に指定しない限り様々な図面にわたり同じ部分を指す。
一実施形態に従って、高優先度および低優先度の入出力要求をサポートする検索/索引付けプロセスおよびファイルシステムを有するシステムの例を示す図である。
一実施形態に従う検索/索引付けシステムの例を示す図である。
一実施形態に従ってファイルシステムへ入出力要求を送信する際の索引付けプロセスの動作フローを示すフロー図である。
一実施形態に従って文書を索引付けする際の動作フローを示すフロー図である。
一実施形態に従う図1から4のシステムおよび動作フローの実装に適したコンピューティング環境の例を示すブロック図である。
Claims (20)
- 入出力(I/O)要求をファイルシステムに送信するコンピュータ実行型の方法であって、前記方法は
入出力要求を求めて待機するステップと、
入出力要求が索引付けサブシステムにより生成されたか否かを決定するステップであって、前記索引付けサブシステムは文書集合の単語検索を実行するために用いる索引を生成するステップと、
索引付けサブシステムが前記入出力要求を生成したとの決定に応じて、前記入出力要求を低優先度で送信するステップと
を備えることを特徴とする方法。 - 前記索引付けサブシステム以外の構成要素が前記入出力要求を生成したとの決定に応じて、前記入出力要求を高優先度で選択的に送信するステップをさらに備えることを特徴とする請求項1に記載の方法。
- 検索要求に応じて生成した入出力要求はクエリサブシステムにより生成され、高優先度で送信されることを特徴とする請求項1に記載の方法。
- 索引を付与すべき文書を読み込むことに応じて生成される入出力要求は、前記索引付けサブシステムにより生成されることを特徴とする請求項1に記載の方法。
- 前記索引にデータを書込むことに応じて生成される入出力要求は、前記索引付けサブシステムにより生成されることを特徴とする請求項1に記載の方法。
- スレッド毎に優先度を入出力要求に割り当てることが可能であることを特徴とする請求項1に記載の方法。
- 前記索引付けサブシステムにより生成された中央演算装置(CPU)タスクを低優先度CPUタスクとして割り当てるステップをさらに備えることを特徴とする請求項1に記載の方法。
- コンピュータによる実行時に請求項1に記載の方法を実行する媒体上の命令を有することを特徴とする1つまたは複数のコンピュータ読取可能媒体。
- 文書に索引を付与するためのコンピュータ実行型の方法であって、前記方法は1つまたは複数の低優先度入出力(I/O)要求を用いてファイルシステムから文書の内容を読み込むステップと
前記内容から単語を抽出するステップと、
前記の抽出した単語を、1つまたは複数の低優先度入出力要求を用いて索引に格納するステップと
を備えることを特徴とする方法。 - 前記内容をプレーンテキストに変換するステップをさらに備えることを特徴とする請求項9に記載の方法。
- 前記抽出は単語分解プロセスを用いて実行されることを特徴とする請求項9に記載の方法。
- 前記低優先度入出力要求は1つまたは複数の低優先度の中央演算装置(CPU)タスクに関連することを特徴とする請求項9に記載の方法。
- 前記索引は、ユーザが生成したクエリに応じて1つまたは複数の高優先度入出力要求を用いて選択的にアクセスされることを特徴とする請求項9に記載の方法。
- 前記1つまたは複数の入出力要求と、前記クエリに関連する1つまたは複数の入出力要求とは、同一プロセスの異なるスレッドにより生成されることを特徴とする請求項13に記載の方法。
- コンピュータによる実行時に請求項9に記載の方法を実行する命令を媒体上に有することを特徴とする1つまたは複数のコンピュータ読取可能媒体。
- 1つまたは複数の文書を検索して1つまたは複数の選択語を求めることに用いる索引を生成するシステムであって、前記システムは、
少なくとも低優先度および高優先度入出力(I/O)要求をサポートするファイルシステムと、
索引を付与すべき1つまたは複数の文書と前記索引とを格納するデータストアであって、前記データストアは前記ファイルシステムを通してアクセス可能であることを特徴とするデータストアと、
1つまたは複数の文書を前記データストアから読み込み、前記索引にデータを格納する索引付けプロセスであって、前記索引付けプロセスは1つまたは複数の低優先度入出力要求を生成して前記1つまたは複数の文書を前記データストアから読み込み、前記索引にデータを格納するための1つまたは複数の低優先度入出力要求を生成することを特徴とする索引付けプロセスと
を備えることを特徴とするシステム。 - 前記索引付けプロセスはさらに、前記索引にアクセスする検索クエリに応じて1つまたは複数の高優先度入出力要求を前記ファイルシステムに送信することを特徴とする請求項16に記載のシステム。
- 前記低優先度入出力要求は、1つまたは複数の低優先度の中央演算装置(CPU)タスクに関連することを特徴とする請求項16に記載のシステム。
- 前記1つまたは複数の低優先度入出力要求と、前記クエリに関連する前記1つまたは複数の入出力要求とは、同一プロセスの異なるスレッドにより生成されることを特徴とする請求項16に記載の方法。
- コンピュータによる実行時に請求項16に記載の方法を実行する命令を有することを特徴とする1つまたは複数のコンピュータ読取可能媒体。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/167,826 US20060294049A1 (en) | 2005-06-27 | 2005-06-27 | Back-off mechanism for search |
PCT/US2005/027202 WO2007001331A2 (en) | 2005-06-27 | 2005-08-01 | Back-off mechanism for search |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008547106A true JP2008547106A (ja) | 2008-12-25 |
Family
ID=37568787
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008518114A Pending JP2008547106A (ja) | 2005-06-27 | 2005-08-01 | 検索用バックオフメカニズム |
Country Status (12)
Country | Link |
---|---|
US (1) | US20060294049A1 (ja) |
EP (1) | EP1896992A4 (ja) |
JP (1) | JP2008547106A (ja) |
KR (1) | KR20080024156A (ja) |
CN (1) | CN101443762A (ja) |
AU (1) | AU2005333693A1 (ja) |
BR (1) | BRPI0520200A2 (ja) |
CA (1) | CA2608276A1 (ja) |
MX (1) | MX2007014899A (ja) |
NO (1) | NO20075745L (ja) |
RU (1) | RU2412477C2 (ja) |
WO (1) | WO2007001331A2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010529527A (ja) * | 2007-05-21 | 2010-08-26 | アマゾン テクノロジーズ インコーポレイテッド | 検索インデックスの生成状況の管理 |
JP2014142940A (ja) * | 2008-09-19 | 2014-08-07 | Oracle Internatl Corp | 記憶側記憶要求管理 |
Families Citing this family (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8195659B2 (en) | 2005-08-23 | 2012-06-05 | Ricoh Co. Ltd. | Integration and use of mixed media documents |
US9384619B2 (en) | 2006-07-31 | 2016-07-05 | Ricoh Co., Ltd. | Searching media content for objects specified using identifiers |
US8156427B2 (en) | 2005-08-23 | 2012-04-10 | Ricoh Co. Ltd. | User interface for mixed media reality |
US8184155B2 (en) | 2007-07-11 | 2012-05-22 | Ricoh Co. Ltd. | Recognition and tracking using invisible junctions |
US8856108B2 (en) | 2006-07-31 | 2014-10-07 | Ricoh Co., Ltd. | Combining results of image retrieval processes |
US8005831B2 (en) | 2005-08-23 | 2011-08-23 | Ricoh Co., Ltd. | System and methods for creation and use of a mixed media environment with geographic location information |
US8156116B2 (en) | 2006-07-31 | 2012-04-10 | Ricoh Co., Ltd | Dynamic presentation of targeted information in a mixed media reality recognition system |
US8838591B2 (en) | 2005-08-23 | 2014-09-16 | Ricoh Co., Ltd. | Embedding hot spots in electronic documents |
US8385589B2 (en) | 2008-05-15 | 2013-02-26 | Berna Erol | Web-based content detection in images, extraction and recognition |
US9373029B2 (en) | 2007-07-11 | 2016-06-21 | Ricoh Co., Ltd. | Invisible junction feature recognition for document security or annotation |
US9405751B2 (en) | 2005-08-23 | 2016-08-02 | Ricoh Co., Ltd. | Database for mixed media document system |
US8521737B2 (en) | 2004-10-01 | 2013-08-27 | Ricoh Co., Ltd. | Method and system for multi-tier image matching in a mixed media environment |
US8600989B2 (en) | 2004-10-01 | 2013-12-03 | Ricoh Co., Ltd. | Method and system for image matching in a mixed media environment |
US9530050B1 (en) | 2007-07-11 | 2016-12-27 | Ricoh Co., Ltd. | Document annotation sharing |
US8144921B2 (en) | 2007-07-11 | 2012-03-27 | Ricoh Co., Ltd. | Information retrieval using invisible junctions and geometric constraints |
US8086038B2 (en) | 2007-07-11 | 2011-12-27 | Ricoh Co., Ltd. | Invisible junction features for patch recognition |
US8949287B2 (en) | 2005-08-23 | 2015-02-03 | Ricoh Co., Ltd. | Embedding hot spots in imaged documents |
US7920759B2 (en) | 2005-08-23 | 2011-04-05 | Ricoh Co. Ltd. | Triggering applications for distributed action execution and use of mixed media recognition as a control input |
US7970171B2 (en) | 2007-01-18 | 2011-06-28 | Ricoh Co., Ltd. | Synthetic image and video generation from ground truth data |
US8332401B2 (en) | 2004-10-01 | 2012-12-11 | Ricoh Co., Ltd | Method and system for position-based image matching in a mixed media environment |
US8369655B2 (en) * | 2006-07-31 | 2013-02-05 | Ricoh Co., Ltd. | Mixed media reality recognition using multiple specialized indexes |
US8276088B2 (en) | 2007-07-11 | 2012-09-25 | Ricoh Co., Ltd. | User interface for three-dimensional navigation |
US8335789B2 (en) | 2004-10-01 | 2012-12-18 | Ricoh Co., Ltd. | Method and system for document fingerprint matching in a mixed media environment |
US8868555B2 (en) | 2006-07-31 | 2014-10-21 | Ricoh Co., Ltd. | Computation of a recongnizability score (quality predictor) for image retrieval |
US9171202B2 (en) | 2005-08-23 | 2015-10-27 | Ricoh Co., Ltd. | Data organization and access for mixed media document system |
US8825682B2 (en) | 2006-07-31 | 2014-09-02 | Ricoh Co., Ltd. | Architecture for mixed media reality retrieval of locations and registration of images |
US7812986B2 (en) * | 2005-08-23 | 2010-10-12 | Ricoh Co. Ltd. | System and methods for use of voice mail and email in a mixed media environment |
US7702673B2 (en) | 2004-10-01 | 2010-04-20 | Ricoh Co., Ltd. | System and methods for creation and use of a mixed media environment |
US8176054B2 (en) | 2007-07-12 | 2012-05-08 | Ricoh Co. Ltd | Retrieving electronic documents by converting them to synthetic text |
US8156115B1 (en) | 2007-07-11 | 2012-04-10 | Ricoh Co. Ltd. | Document-based networking with mixed media reality |
US8510283B2 (en) | 2006-07-31 | 2013-08-13 | Ricoh Co., Ltd. | Automatic adaption of an image recognition system to image capture devices |
US7991778B2 (en) | 2005-08-23 | 2011-08-02 | Ricoh Co., Ltd. | Triggering actions with captured input in a mixed media environment |
US8489987B2 (en) | 2006-07-31 | 2013-07-16 | Ricoh Co., Ltd. | Monitoring and analyzing creation and usage of visual content using image and hotspot interaction |
US8676810B2 (en) * | 2006-07-31 | 2014-03-18 | Ricoh Co., Ltd. | Multiple index mixed media reality recognition using unequal priority indexes |
US9020966B2 (en) | 2006-07-31 | 2015-04-28 | Ricoh Co., Ltd. | Client device for interacting with a mixed media reality recognition system |
US8073263B2 (en) | 2006-07-31 | 2011-12-06 | Ricoh Co., Ltd. | Multi-classifier selection and monitoring for MMR-based image recognition |
US9063952B2 (en) | 2006-07-31 | 2015-06-23 | Ricoh Co., Ltd. | Mixed media reality recognition with image tracking |
US8201076B2 (en) | 2006-07-31 | 2012-06-12 | Ricoh Co., Ltd. | Capturing symbolic information from documents upon printing |
US9176984B2 (en) | 2006-07-31 | 2015-11-03 | Ricoh Co., Ltd | Mixed media reality retrieval of differentially-weighted links |
US8385660B2 (en) | 2009-06-24 | 2013-02-26 | Ricoh Co., Ltd. | Mixed media reality indexing and retrieval for repeated content |
US8326869B2 (en) * | 2010-09-23 | 2012-12-04 | Accenture Global Services Limited | Analysis of object structures such as benefits and provider contracts |
US9058331B2 (en) | 2011-07-27 | 2015-06-16 | Ricoh Co., Ltd. | Generating a conversation in a social network based on visual search results |
RU2459242C1 (ru) * | 2011-08-09 | 2012-08-20 | Олег Александрович Серебренников | Способ создания и использования рекурсивного индекса поисковых машин |
US9189050B1 (en) * | 2011-08-19 | 2015-11-17 | Cadence Design Systems, Inc. | Method and apparatus for memory power reduction |
US9558248B2 (en) * | 2013-01-16 | 2017-01-31 | Google Inc. | Unified searchable storage for resource-constrained and other devices |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000047881A (ja) * | 1998-07-28 | 2000-02-18 | Hitachi Ltd | リアルタイムシステム |
JP2003005987A (ja) * | 2001-06-19 | 2003-01-10 | Hitachi Ltd | エミュレーション装置 |
JP2003515807A (ja) * | 1999-11-29 | 2003-05-07 | グラクソ グループ リミテッド | ネットワーク化された1以上のコンピュータの余剰の処理能力を用いて複雑な科学的問題を解決するためのスレッドベースの方法及びシステム |
JP2004133934A (ja) * | 2002-10-04 | 2004-04-30 | Microsoft Corp | プロアクティブなメモリ管理の方法および機構 |
JP2005071353A (ja) * | 2003-08-20 | 2005-03-17 | Microsoft Corp | 連続媒体優先順位を意識した記憶装置スケジューラ |
Family Cites Families (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US68627A (en) * | 1867-09-10 | Richasd hoffmann | ||
US3905023A (en) * | 1973-08-15 | 1975-09-09 | Burroughs Corp | Large scale multi-level information processing system employing improved failsaft techniques |
JPH02273843A (ja) * | 1989-04-14 | 1990-11-08 | Nec Corp | スワッピング装置 |
US5396635A (en) * | 1990-06-01 | 1995-03-07 | Vadem Corporation | Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system |
US5544352A (en) * | 1993-06-14 | 1996-08-06 | Libertech, Inc. | Method and apparatus for indexing, searching and displaying data |
US6185629B1 (en) * | 1994-03-08 | 2001-02-06 | Texas Instruments Incorporated | Data transfer controller employing differing memory interface protocols dependent upon external input at predetermined time |
US5897660A (en) * | 1995-04-07 | 1999-04-27 | Intel Corporation | Method for managing free physical pages that reduces trashing to improve system performance |
US6415319B1 (en) * | 1997-02-07 | 2002-07-02 | Sun Microsystems, Inc. | Intelligent network browser using incremental conceptual indexer |
US6658447B2 (en) * | 1997-07-08 | 2003-12-02 | Intel Corporation | Priority based simultaneous multi-threading |
US6879266B1 (en) * | 1997-08-08 | 2005-04-12 | Quickshift, Inc. | Memory module including scalable embedded parallel data compression and decompression engines |
FR2770952B1 (fr) * | 1997-11-12 | 2000-01-21 | Adl Systeme Sa | Dispositif de tele-ecriture |
US6324654B1 (en) * | 1998-03-30 | 2001-11-27 | Legato Systems, Inc. | Computer network remote data mirroring system |
US6425057B1 (en) * | 1998-08-27 | 2002-07-23 | Hewlett-Packard Company | Caching protocol method and system based on request frequency and relative storage duration |
US6378043B1 (en) * | 1998-12-31 | 2002-04-23 | Oracle Corporation | Reward based cache management |
US6237065B1 (en) * | 1999-05-14 | 2001-05-22 | Hewlett-Packard Company | Preemptive replacement strategy for a caching dynamic translator |
US6317806B1 (en) * | 1999-05-20 | 2001-11-13 | International Business Machines Corporation | Static queue and index queue for storing values identifying static queue locations |
US6366996B1 (en) * | 2000-01-24 | 2002-04-02 | Pmc-Sierra, Inc. | Page memory management in non time critical data buffering applications |
US20020052913A1 (en) * | 2000-09-06 | 2002-05-02 | Teruhiro Yamada | User support apparatus and system using agents |
US6418510B1 (en) * | 2000-09-14 | 2002-07-09 | International Business Machines Corporation | Cooperative cache and rotational positioning optimization (RPO) scheme for a direct access storage device (DASD) |
US6651141B2 (en) * | 2000-12-29 | 2003-11-18 | Intel Corporation | System and method for populating cache servers with popular media contents |
US6546472B2 (en) * | 2000-12-29 | 2003-04-08 | Hewlett-Packard Development Company, L.P. | Fast suspend to disk |
US6877081B2 (en) * | 2001-02-13 | 2005-04-05 | International Business Machines Corporation | System and method for managing memory compression transparent to an operating system |
GB2374951B (en) * | 2001-04-24 | 2005-06-15 | Discreet Logic Inc | Asynchronous database updates |
JP2002342037A (ja) * | 2001-05-22 | 2002-11-29 | Fujitsu Ltd | ディスク装置 |
KR100389867B1 (ko) * | 2001-06-04 | 2003-07-04 | 삼성전자주식회사 | 플래시 메모리 관리방법 |
US6922765B2 (en) * | 2001-06-21 | 2005-07-26 | International Business Machines Corporation | Method of allocating physical memory space having pinned and non-pinned regions |
US6742097B2 (en) * | 2001-07-30 | 2004-05-25 | Rambus Inc. | Consolidation of allocated memory to reduce power consumption |
US6535238B1 (en) * | 2001-10-23 | 2003-03-18 | International Business Machines Corporation | Method and apparatus for automatically scaling processor resource usage during video conferencing |
US20030110357A1 (en) * | 2001-11-14 | 2003-06-12 | Nguyen Phillip V. | Weight based disk cache replacement method |
NO316480B1 (no) * | 2001-11-15 | 2004-01-26 | Forinnova As | Fremgangsmåte og system for tekstuell granskning og oppdagelse |
US20040205046A1 (en) * | 2001-11-29 | 2004-10-14 | International Business Machines Corporation | Indexing and retrieval of textual collections on PDAS |
US20030171926A1 (en) * | 2002-03-07 | 2003-09-11 | Narasimha Suresh | System for information storage, retrieval and voice based content search and methods thereof |
US7448036B2 (en) * | 2002-05-02 | 2008-11-04 | International Business Machines Corporation | System and method for thread scheduling with weak preemption policy |
GB0215118D0 (en) * | 2002-06-28 | 2002-08-07 | Hewlett Packard Co | Dynamic resource allocation in a multimodal system |
US7272732B2 (en) * | 2003-06-30 | 2007-09-18 | Hewlett-Packard Development Company, L.P. | Controlling power consumption of at least one computer system |
US20050028160A1 (en) * | 2003-08-01 | 2005-02-03 | Honeywell International Inc. | Adaptive scheduler for anytime tasks |
US7373351B2 (en) * | 2003-08-18 | 2008-05-13 | Sap Ag | Generic search engine framework |
US20050081210A1 (en) * | 2003-09-25 | 2005-04-14 | International Business Machines Corporation | Dynamic adjustment of system resource allocation during query execution in a database management system |
WO2005060575A2 (en) * | 2003-12-10 | 2005-07-07 | X1 Technologies, Inc. | Performing operations in response to detecting a computer idle condition |
US8538997B2 (en) * | 2004-06-25 | 2013-09-17 | Apple Inc. | Methods and systems for managing data |
US7672928B2 (en) * | 2004-09-30 | 2010-03-02 | Microsoft Corporation | Query forced indexing |
US8881233B2 (en) * | 2005-05-23 | 2014-11-04 | Microsoft Corporation | Resource management via periodic distributed time |
US20070067455A1 (en) * | 2005-08-08 | 2007-03-22 | Microsoft Corporation | Dynamically adjusting resources |
-
2005
- 2005-06-27 US US11/167,826 patent/US20060294049A1/en not_active Abandoned
- 2005-08-01 RU RU2007147645/08A patent/RU2412477C2/ru not_active IP Right Cessation
- 2005-08-01 CN CNA2005800499841A patent/CN101443762A/zh active Pending
- 2005-08-01 WO PCT/US2005/027202 patent/WO2007001331A2/en active Application Filing
- 2005-08-01 MX MX2007014899A patent/MX2007014899A/es active IP Right Grant
- 2005-08-01 EP EP05777258A patent/EP1896992A4/en not_active Withdrawn
- 2005-08-01 BR BRPI0520200-0A patent/BRPI0520200A2/pt not_active IP Right Cessation
- 2005-08-01 CA CA002608276A patent/CA2608276A1/en not_active Abandoned
- 2005-08-01 KR KR1020077030591A patent/KR20080024156A/ko not_active Application Discontinuation
- 2005-08-01 JP JP2008518114A patent/JP2008547106A/ja active Pending
- 2005-08-01 AU AU2005333693A patent/AU2005333693A1/en not_active Abandoned
-
2007
- 2007-11-09 NO NO20075745A patent/NO20075745L/no not_active Application Discontinuation
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000047881A (ja) * | 1998-07-28 | 2000-02-18 | Hitachi Ltd | リアルタイムシステム |
JP2003515807A (ja) * | 1999-11-29 | 2003-05-07 | グラクソ グループ リミテッド | ネットワーク化された1以上のコンピュータの余剰の処理能力を用いて複雑な科学的問題を解決するためのスレッドベースの方法及びシステム |
JP2003005987A (ja) * | 2001-06-19 | 2003-01-10 | Hitachi Ltd | エミュレーション装置 |
JP2004133934A (ja) * | 2002-10-04 | 2004-04-30 | Microsoft Corp | プロアクティブなメモリ管理の方法および機構 |
JP2005071353A (ja) * | 2003-08-20 | 2005-03-17 | Microsoft Corp | 連続媒体優先順位を意識した記憶装置スケジューラ |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010529527A (ja) * | 2007-05-21 | 2010-08-26 | アマゾン テクノロジーズ インコーポレイテッド | 検索インデックスの生成状況の管理 |
JP2014142940A (ja) * | 2008-09-19 | 2014-08-07 | Oracle Internatl Corp | 記憶側記憶要求管理 |
Also Published As
Publication number | Publication date |
---|---|
EP1896992A2 (en) | 2008-03-12 |
WO2007001331A2 (en) | 2007-01-04 |
MX2007014899A (es) | 2008-01-28 |
AU2005333693A1 (en) | 2007-01-04 |
CA2608276A1 (en) | 2007-01-04 |
WO2007001331A3 (en) | 2009-04-16 |
EP1896992A4 (en) | 2012-11-14 |
NO20075745L (no) | 2008-01-25 |
US20060294049A1 (en) | 2006-12-28 |
RU2007147645A (ru) | 2009-06-27 |
CN101443762A (zh) | 2009-05-27 |
RU2412477C2 (ru) | 2011-02-20 |
BRPI0520200A2 (pt) | 2009-04-22 |
KR20080024156A (ko) | 2008-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2008547106A (ja) | 検索用バックオフメカニズム | |
US10826980B2 (en) | Command process load balancing system | |
US9787706B1 (en) | Modular architecture for analysis database | |
JP5537571B2 (ja) | コンピュータにおけるコンテンツレンダリング | |
US8521757B1 (en) | Method and apparatus for template-based processing of electronic documents | |
JP7039631B2 (ja) | アクセスリクエストを管理するための方法、装置、デバイス、および記憶媒体 | |
US10558702B2 (en) | Unified storage system for online image searching and offline image analytics | |
JP2020074193A (ja) | サーチ方法、装置、設備および不揮発性計算機メモリ | |
JP6932360B2 (ja) | オブジェクト検索方法、装置およびサーバ | |
WO2015176689A1 (zh) | 一种数据处理的方法及装置 | |
JP2010097461A (ja) | 文書検索装置、文書検索方法および文書検索プログラム | |
US20200319797A1 (en) | System and method for file processing from a block device | |
Chen et al. | Fpga-accelerated samplesort for large data sets | |
KR20200135717A (ko) | 액세스 요청 처리 방법, 장치, 기기 및 저장 매체 | |
US10909170B2 (en) | Method for processing and rendering feed-like based images for mobile devices | |
CN110781159B (zh) | Ceph目录文件信息读取方法、装置、服务器及存储介质 | |
US8484221B2 (en) | Adaptive routing of documents to searchable indexes | |
JP2009098811A (ja) | 文書分類装置およびプログラム | |
WO2022134683A1 (zh) | 在创作过程中生成已创作内容的脉络信息的方法与设备 | |
US10664170B2 (en) | Partial storage of large files in distinct storage systems | |
CN108920687B (zh) | 一种基于Lucene索引段的合并优化方法 | |
WO2017175247A1 (en) | Method and system for generating content from search results rendered by a search engine | |
US20180239907A1 (en) | Checking method, checking system and checking device for processor security | |
US9971968B2 (en) | Determination method, system and recording medium | |
US11360813B1 (en) | Timer object management for a multiprocessor virtual environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101217 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110316 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110408 |