JP4129819B2 - データベース検索システム及びその検索方法並びにプログラム - Google Patents

データベース検索システム及びその検索方法並びにプログラム Download PDF

Info

Publication number
JP4129819B2
JP4129819B2 JP2003346780A JP2003346780A JP4129819B2 JP 4129819 B2 JP4129819 B2 JP 4129819B2 JP 2003346780 A JP2003346780 A JP 2003346780A JP 2003346780 A JP2003346780 A JP 2003346780A JP 4129819 B2 JP4129819 B2 JP 4129819B2
Authority
JP
Japan
Prior art keywords
search
database
expression
formula
distribution table
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 - Fee Related
Application number
JP2003346780A
Other languages
English (en)
Other versions
JP2005115514A (ja
Inventor
一喜 高塚
昌臣 木村
昭彦 今井
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
Priority to JP2003346780A priority Critical patent/JP4129819B2/ja
Priority to US10/959,513 priority patent/US8055647B2/en
Publication of JP2005115514A publication Critical patent/JP2005115514A/ja
Application granted granted Critical
Publication of JP4129819B2 publication Critical patent/JP4129819B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、コンピュータを用いたデータベースシステムに関し、特に複数のデータベースサーバを統合的に扱う連合データベースに関する。
今日、コンピュータを用いた大規模なデータベースシステムを構築することが広く行われているが、所定の情報環境では、複数のサーバ(ハードウェア)にデータが散在する場合がある。例えば、研究所の情報システムは、様々な研究員が抽出した様々な研究データを管理するという性格上、多種多様なデータを分野別に複数のサーバに分散して保持しているのが一般的である。そのような散在するデータの中から埋もれた情報・知見を見つけ出すためには、それらのデータを統合することにより、ユーザにひとまとまりのデータイメージを提供するシステムを構築する必要がある。
従来、データ群を統合的に扱う仕組みとして、データを検索し易いように予め集約するデータウェアハウスが利用されている。この仕組みでは、データ集約がバッチ処理で行われるため、新規データを検索できるようになるまでにタイムラグが発生してしまう。また、新規データ項目の追加時には、データベースの再設計や再構築が必要になる。
また近年、この種の散在したデータを統合的に扱う連合データベースという仕組みが用いられ始めている(例えば、非特許文献1、2参照)。これは、集約されたデータベースではなく分散して存在しているデータベース群に直接アクセスして、ひとまとまりのデータベースイメージを提供する技術であり、これによって新規データ検索のためのタイムラグを解消することができる。さらに、個々のデータベースに直接アクセスする仕組みであるため、新規データ項目が追加された場合にも容易に対応が可能であり、再設計や再構築にかかる時間、コストを低減することができる。
図14は、連合データベースシステムによる統合検索の概念を説明する図である。
図14に示すように、連合データベースシステム1410は、複数のサーバ1420に構築されたデータベース1421の各テーブルに対し、単一の検索式(SQL:Structured Query Language)を用いて統合検索を行い、単一イメージの検索結果を得る。すなわち、これら複数のサーバ1420に構築されているデータベース群を単一のデータベースとして扱うことができる。
L. M. Haas 他、"DiscoveryLink: A system for integrated access to life sciences data soureces"、IBM SYSTEMS JOURNAL, VOL.40, NO 2, 2001 "DB2 Information Integrator V8技術論文(IBM Systems Journal Vol.41)"、2002年、日本IBM、[平成15年8月27日検索]、インターネット<URL : http://www-6.ibm.com/jp/software/data/developer/library/techdoc/db2func.html#ii>
上記のように、複数のサーバに散在するデータ群を統合的に扱うために、連合データベースシステムを用いれば、データを集約せずに個々のデータベースに直接アクセスして、データ検索やデータマイニングを実行することができる。したがって、データウェアハウスを用いる場合のような、新規データ検索のためのタイムラグを解消することができ、新規データ項目が追加された場合にも容易に対応が可能である。
しかしながら、連合データベースシステムでは、SQLによる検索式を用いて通常のデータベース検索と同様に検索を行うため、検索が終了して検索結果が得られるまでは何らの応答も受け取ることができず、したがって検索終了前に当該検索処理に要する時間を予測することはできない。これは、複数のデータベース群にアクセスして膨大なデータを検索するシステムとしては利便性を欠く。
また、連合データベースシステムは、単一のSQLで検索を行うため、SQLシステムの特性から、一度検索を開始した後は、全ての対象データベースに対する検索が終了するまで、当該検索処理に対して他の処理を割り込ませることができない。そのため、検索の途中で経過を確認したり、検索処理をキャンセルしたり、さらに検索条件を変更して再開したりするといった、柔軟な操作を行うことができない。
そこで本発明は、上記の課題に鑑み、連合データベースシステムにおいて、検索処理の実行中に進行状況を確認したり、検索に要する時間を予測したり、他の処理の割り込みを許容するなどの柔軟な操作を可能とする機能を実現することを目的とする。
上記の目的を達成する本発明は、次のように構成されたデータベース検索システムとして実現することができる。すなわちこのシステムは、所定の検索式を用いてデータベースの検索を行う検索実行部と、検索対象であるデータベースのテーブルが持つ検索用のキーに対応するレコードがテーブルの中でどのように分布しているかを示すデータ分布表と、このデータ分布表に示されたレコードの分布を参酌して、データベースに対する検索を行うための検索式を、検索対象のレコード数が概ね一定となるように検索範囲を区切られた複数の検索式に分割する検索式分割部と、検索式分割部によって分割された検索式を逐次的に検索実行部に送り検索を実行させる実行制御部とを備えることを特徴とする。
より好ましくは、この検索式分割部は、データベースのテーブルごとに、各テーブルにおける応答速度の比に基づいて、検索範囲に含まれるレコード数を補正する。
このように元の検索式を、検索範囲を特定した複数の検索式に分割することにより、分割された個々の検索式を逐次実行する過程で、何番目の検索式まで実行したかに基づいて検索処理の進行状況を把握したり、既に終了した検索式の検索に要した時間及び検索結果から検索全体に要する時間と最終的な検索結果とを予測したり、個々の検索式の検索を実行する合間に割り込み処理を行ったりすることができる。
さらに、割り込み処理により検索を中断した場合、残りの分割された検索式による検索に対して、検索条件を変更したり、バッチ処理により自動実行したりすることができる。
また、データベースに格納されているデータが所定の分類コードにて分類されている場合、データ分布表の少なくとも一部を分類コードに基づいて分類されたキーに対応するレコードの分布に変換し、これを用いて検索式の分割を行うことができる。このようにすれば、初めから分類コードに基づいて整理された形で検索結果を得ることができ、検索結果を、クロス表等の分類コードを表示項目とした形式で出力する場合にも、検索結果の全てを走査して分類コードに基づく整理を行ったり、出力する必要のないデータを除去したりするという無駄な作業を省略することができる。
また本発明の他のデータベース検索システムは、複数のデータベースサーバを対象として統合検索を行う検索実行部と、この検索実行部に対して検索条件を記述した検索式を与える検索制御部とを備えた構成とすることもできる。この構成において、検索制御部は、所定の検索式を分割して、検索範囲を特定することによって一定以下の応答時間で処理される複数の分割後検索式を作成し、この分割後検索式を逐次的に検索実行部へ送り、検索を実行させることを特徴とする。
ここで、より好ましくは、検索制御部は、検索実行部による検索対象であるデータベースサーバの処理能力に応じて、検索範囲に含まれるデータベースのテーブルにおけるレコード数を決定し、分割後検索式を作成する。
さらに本発明は、コンピュータを用いてデータベースサーバにアクセスし検索を行う、次のようなデータベース検索方法としても実現される。このデータベース検索方法は、データベースサーバに構築されたデータベースに対する検索を行うための検索式を入力する第1のステップと、データベースのテーブルが持つ検索用のキーに対応するレコードがそのテーブルの中でどのように分布しているかを示すデータ分布表を参酌して、検索式を、検索対象のレコード数が概ね一定となるように検索範囲を区切られた複数の検索式に分割し、分割された検索式を所定の記憶手段に格納する第2のステップと、分割された検索式を逐次的に用いてデータベースに対する検索を実行する第3のステップとを含むことを特徴とする。
また本発明は、コンピュータを制御して上述したデータベース検索システムとして機能させるプログラムや、コンピュータに上記のデータベース検索方法における各ステップに相当する処理を実行させるプログラムとしても実現される。このプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより提供することができる。
以上のように構成された本発明によれば、データベース検索の実行に先立って、検索式を分割し、分割された検索式を用いて一定の検索範囲ごとに細かく検索を実行していくことにより、検索処理の実行中に進行状況を確認したり、検索に要する時間を予測したり、他の処理の割り込みを許容するといった柔軟な操作を行うことが可能になる。
以下、添付図面を参照して、本発明を実施するための最良の形態(以下、実施形態)について詳細に説明する。
図1は、本実施形態による統合検索システムの全体構成を示す図である。
図1に示すように、本実施形態の統合検索システムは、複数のデータベースサーバ10と、これらのデータベースサーバ10に対して統合検索を行う連合データベースシステム20と、連合データベースシステム20に対して検索式(SQL文)を与えてデータベース検索を制御する検索制御システム30とを備える。なお、本実施形態において、統合検索とは結合検索(同等の属性を持った変数を用いた多様な経路表現を結合した問合せによる検索)に限るものとする。
図1に示す構成のうち、データベースサーバ10は、磁気ディスク等の記憶装置にてデータベース11を構築した通常のサーバである。また、連合データベースシステム20は、複数のデータベースサーバ10を統合して連合データベースを実現する検索実行部であり、通常の連合データベースにおいて統合検索を行うために用いられるシステムにて構成することができる。すなわち本実施形態は、既存の連合データベースに対して検索制御システム30の機能を付加することにより実現される。
なお、本実施形態の統合検索システムは、どのようなハードウェア構成を取るかに限定されない。すなわち、連合データベースの概念から、各データベースサーバ10が複数のハードウェア(サーバマシン)にて実現されることは当然であるが、連合データベースシステム20と検索制御システム30とが同一のハードウェア(コンピュータ装置)上で動作しても良いし、異なるハードウェア上で動作しても良い。また、本実施形態では連合データベースシステム20と検索制御システム30とを別構成として説明するが、検索制御システム30の機能を連合データベースシステム20として組み込むことも可能である。
図2は、本実施形態の検索制御システム30を実現するのに好適なコンピュータ装置のハードウェア構成の例を模式的に示した図である。
図2に示すコンピュータ装置は、演算手段であるCPU(Central Processing Unit:中央処理装置)101と、M/B(マザーボード)チップセット102およびCPUバスを介してCPU101に接続されたメインメモリ103と、同じくM/Bチップセット102およびAGP(Accelerated Graphics Port)を介してCPU101に接続されたビデオカード104と、PCI(Peripheral Component Interconnect)バスを介してM/Bチップセット102に接続された磁気ディスク装置(HDD)105、ネットワークインターフェイス106と、さらにこのPCIバスからブリッジ回路107およびISA(Industry Standard Architecture)バスなどの低速なバスを介してM/Bチップセット102に接続されたフロッピー(登録商標)ディスクドライブ108およびキーボード/マウス109とを備える。
なお、図2は本実施形態を実現するコンピュータ装置のハードウェア構成を例示するに過ぎず、本実施形態を適用可能であれば、他の種々の構成を取ることができる。例えば、ビデオカード104を設ける代わりに、ビデオメモリのみを搭載し、CPU101にてイメージデータを処理する構成としても良いし、外部記憶装置として、ATA(AT Attachment)やSCSI(Small Computer System Interface)などのインターフェイスを介してCD−R(Compact Disc Recordable)やDVD−RAM(Digital Versatile Disc Random Access Memory)のドライブを設けても良い。
図3は、検索制御システム30の機能構成を示す図である。
図3に示すように、本実施形態による検索制御システム30は、データベース検索のための検索式の入力を受け付ける入力受け付け部31と、受け付けた検索式を分割する検索式分割部32と、検索式分割部32により分割された検索式を用いた検索処理の実行を制御する実行制御部33と、検索結果をまとめて出力する検索結果出力部34を備える。また、検索式分割部32による検索式の分割に用いられるデータ分布表(データマッピングテーブル)35を備える。
図3に示す構成のうち、入力受け付け部31、検索式分割部32、実行制御部33および検索結果出力部34は、例えば図2に示したコンピュータ装置のプログラム制御されたCPU101にて実現される。また、データ分布表35は、図2に示したメインメモリ103や磁気ディスク装置105に格納されている。
入力受け付け部31は、図2に示したキーボード/マウス109等の入力デバイスや、磁気ディスク装置105等の記憶手段、ネットワークインターフェイス106等を介してデータベース検索のための検索式(SQL文)を入力する。ここで入力される検索式は、通常の連合データベースシステム20に対して入力される検索式と同様であり、所定の検索条件(キー)を記述した単一の検索式である。
検索式分割部32は、入力受け付け部31にて入力した単一の検索式に対して当該検索式のキーに条件を追加し、一定の応答時間で検索処理が可能な複数の検索式に分割する。この検索式の分割には、データ分布表35が参酌される。
連合データベースシステム20による統合検索を行う場合、同一のキーによって複数のデータベース11の検索を行うため、検索対象となる各データベース11における各テーブルが結合(各テーブル間で同等の属性を持った項目を引数にして仮想のテーブルを作成すること)できることが必要である。言い換えれば、連合データベースシステム20から参照される各テーブルは共通のキーを持つ必要がある。データ分布表35は、これら各テーブルが持つ共通のキーに対応するレコードが当該各テーブルの中でどのように分布しているかを示す分布表である。
このデータ分布表35は、次のようにして作成される。
まず、検索対象であるテーブルのうち、統合検索の軸となるものの一つを「基本テーブル」として定義し、レコード数が概ね一定になるようにキーの範囲を区切る。この範囲を基本範囲と呼ぶことにする。そして、基本範囲の名称をキーの値が若い順に「範囲1」、「範囲2」・・・「範囲N」とする。
次に、基本テーブルに結合する各テーブル(リンクテーブルと呼ぶ)に関して、各基本範囲内に含まれるキーに対応するレコードの数を算出し、各基本範囲に対応付けて記録する。
次に、各テーブルの応答速度(すなわち各データベースサーバ10における処理能力)の比を求め、該当するテーブルに対する能力補正値として記録する。応答速度としては、キーに対して全件を検索するのに要する時間を用いる。
以上のようにして、各テーブルのキーデータの分布が記録されたデータ分布表35が作成される。
図4は、データ分布表35の基本構造を示す図である。
図4に示すように、データ分布表35は、基本テーブルを基準として設定された各基本範囲(範囲1、範囲2、・・・、範囲N)に、各テーブル(基本テーブル及びリンクテーブル)のレコードがどのように分布しているかを示している。例えば、範囲1に含まれるキーを持つデータのレコードは、基本テーブルには1000個存在し、リンクテーブル1には6個存在し、リンクテーブル2には300個存在することがわかる。
このデータ分布表35は、最初に基本テーブルと定義されたテーブルと他のテーブルとが結合する統合検索において用いることができる。他に基本テーブルとなり得るテーブルがあるならば、そのような各テーブルに対して同様の操作を行い、当該テーブルを基本テーブルとしたデータ分布表35を作成する。
図5は、上記のようなデータ分布表35を用いて行われる検索式分割部32による検索式の分割処理の手順を示すフローチャートである。
初期動作として、検索式分割部32は、データ分布表35の各テーブルのデータ(レコード数)に対して能力補正値(図では補正値と表記)をかけて、補正データ分布表を作成する。例えば、図4のデータ分布表35では、リンクテーブル1の範囲1の値は30(=6×5)となる。これは、各テーブルに対して検索を行う場合に要する時間の比を示しており、図4の例では、リンクテーブル1の範囲1に含まれるレコード6個を検索するために、能力補正値が1である基本テーブルから1個のレコードを検索する時間を基準として30個のレコードを検索するのに相当する時間を要することを意味している。
また検索式分割部32は、検索の分割範囲(すなわち、分割された個々の検索式による検索範囲)を決定するための標準分割閾値を決定する。この標準分割閾値は、例えば統合検索システム全体のスループットを基準として決めることができる。
この後、検索式分割部32は、図5に示すように、テーブル1(i=1、i:1≦i≦M、なおテーブル1は図4の基本テーブルに対応)の基本範囲における範囲1(j=1、j:1≦j≦N)の最初のキーに着目し、そのキーを、検索範囲を区切るためのキー(以下、検索区切り)とする(ステップ501)。そして、分割後の検索式による検索範囲を示す変数Σ(i)及びその検索範囲の開始位置を示す変数kを設定し、これを初期化する(ステップ502)。すなわち、Σ(i)=0、k=jとする。
次に検索式分割部32は、

Σ(i)+R(i)*a(i,j)

をΣ(i)に代入する(ステップ503)。ここで、R(i)はテーブルiの能力補正値であり、a(i,j)はテーブルiの範囲jにおけるレコード数である。したがって、ステップ501、502から、初期的には、

0+R(1)*a(1,1)

がΣ(i)に代入されることとなる。
次に、検索式分割部32は、上式の計算結果(Σ(i))が標準分割閾値を超えるか否かを調べる(ステップ504)。Σ(i)が標準分割閾値を超えていなければ、次のテーブルに移行して(i=i+1)、ステップ503の計算を繰り返す(ステップ503〜506)。全てのテーブルに対して以上の処理を行った(すなわちi=Mとなった)ならば(ステップ505でYes)、引き続き次の基本範囲へ移行して(j=j+1)、ステップ503の計算を繰り返す(ステップ503〜508)。
ステップ504で、Σ(i)が標準分割閾値を超えた場合は、処理中の基本範囲の次の基本範囲における最初のキーを検索区切りとしてステップ502に戻り、同様の処理を繰り返す(ステップ509)。
以上の処理を全ての基本範囲に対して繰り返した(すなわちj=Nとなった)ならば(ステップ507でYes)、当初の単一検索式を分割するための全ての検索区切りが得られる。そこで、検索式分割部32は、得られた検索区切りで当初の単一検索式の検索範囲を区切った検索式(以下、分割後検索式と呼ぶ)を作成する(ステップ510)。
具体的には、検索式分割部32は、所定の検索区切りとその次の検索区切りとで挟まれる範囲群を区切り範囲とし、この区切り範囲を検索範囲とする分割後検索式を作成する。例えば、検索区切りをkey_1、key_2、key_3、・・・、key_nとすれば、区間(key_1、key_2)、区間(key_2、key_3)・・・を区切り範囲とし、当初の単一検索式(SQL文)におけるwhere句に、基本テーブルのキーに対する各区切り範囲についてのbetween条件を付けていく。
以上の結果、当初の単一検索式は、標準分割閾値にしたがって範囲が定められたn個の分割後検索式(SQL文)に分割される。作成された分割後検索式は、例えば図2のコンピュータ装置におけるメインメモリ103や磁気ディスク装置105等の記憶手段に格納される。
図6は、所定の検索式(SQL文)と、これを分割した分割後検索式の例を示した図である。
この分割後検索式を用いて、実行制御部33による実行制御によって、連合データベースシステム20に検索処理を実行させることで、当初の単一検索式を用いた検索処理と同様の検索結果が得られることとなる。また上述したように、標準分割閾値は統合検索システムのスループットに基づいて決定されているので、個々の分割後検索式によるデータベース検索は、当該統合検索システムで予め定められた一定の応答時間以下の応答時間で結果が得られることとなる。
ところで、データ分布表35は、データベース検索とは別工程で、適当なタイミングで予め作成しておく。したがって、データ分布表35は、連合データベースシステム20の検索対象である各データベースサーバ10のデータベース11に格納されたレコードの状態をリアルタイムで正確に反映させているものではなく、個々のデータベース11でデータの更新があった場合に、その更新がデータ分布表35に反映されるのに多少の時間差が生じる。しかし、データ分布表35は、データウェアハウスとは異なり、単に検索式を分割するための目安を提供するに過ぎないので、必ずしも厳密にデータベース11における実際のレコードの状態と一致している必要はなく、概ね対応が取れていれば実用上問題はない。
実行制御部33は、検索式分割部32によって作成された分割後検索式を記憶手段から読み出し、逐次的に連合データベースシステム20に送り、データベース検索を実行させる。当然ながら、個々の分割後検索式による処理は独立しているので、各検索処理の間に、他の処理を割り込ませることが可能である。例えば、いくつかの分割後検索式を実行した時点で、検索処理を中断したり、検索条件を変更して再開したりすることができる。また、各分割後検索式による検索処理は、個別にバッチ処理で自動実行させることも可能である。したがって、いくつかの分割後検索式による検索処理を実行した時点で全ての検索を終了するまでに長時間を要すると予測される場合、一旦検索処理を中断し、残りの分割後検索式による検索処理をバッチ処理にて実行させるといった制御ができる。
また、実行制御部33は、分割後検索式を用いた検索処理の進行状況を示す情報を、ディスプレイ装置等に出力して、ユーザに通知することができる。
図7は、検索処理の進行状況の通知(経過通知)の表示例を示す図である。
図7の表示例では、検索式に合致したデータ(レコード)の件数(検索件数)と、検索対象であるデータベース11群に保持されたデータのうち検索の終了した件数(終了件数)と、当該検索対象であるデータの総数(総件数)とが、数値で表示されている。
図7を参照すると、まず検索開始時において、検索対象の総件数が10000件であることが示される。途中経過1では、いくつかの分割後検索式による検索が終了した時点での検索結果が示される。ここでは、検索の終了した件数が1000件、ヒットした件数が10件となっている。途中経過2では、さらにいくつかの分割後検索式による検索が終了した時点での検索結果が示される。ここでは、検索の終了した件数が5000件、ヒットした件数が34件となっている。検索終了時には、全ての分割後検索式による検索結果が表示される。ここでは、検索の終了した件数は総件数と同じ10000件であり、ヒットした件数が76件である。この最終的な総件数(検索終了件数)とヒット件数とは、当初の単一の検索式にて検索を行った場合の結果と同一であることは言うまでもない。
図8は、同様の検索処理の進行状況を、画像を用いて視覚的に表示した例を示す図である。
図8に示す表示形式では、検索開始時、図7と同じタイミングの途中経過1、2、及び検索終了時について、総件数(斜線で示した範囲)と検索終了件数(黒色で示した範囲)とをグラフ表示してどの程度検索が済んだかを視覚的に示すと共に、各時点でヒットした件数を数値表示している。
ユーザは、図7や図8のような表示を参照することにより、検索処理の進行状況を把握することができる。そして、所定の時点(例えば途中経過1)までの検索に要した時間に基づいて検索終了までの時間を予測したり、最終的にヒットする件数を推定したり、検索処理の中断、検索条件の変更、バッチ処理への切り替え等を行うか判断したりすることが可能となる。途中経過を表示するタイミングについては、所定数(例えば1個)の分割後検索式による検索終了ごと、検索終了件数が総件数に対して所定の割合に達した時点など、任意に設定することができる。
また、実行制御部33は、最初の1つの分割後検索式による検索が終了した時点で、当該検索に要した時間及び検索された件数とを、1つの分割後検索式による検索を実行した際のレスポンス時間及び検索件数(レコード数)と仮定する。そして、当初の単一検索式から作成された分割後検索式の個数を乗じて、全ての分割後検索式による検索(当初の単一検索式による検索に相当)におけるレスポンス時間(推定レスポンス時間)及び検索件数(推定レコード数)を算出する。
同様にして、n番目(n:1≦n≦N)の分割後検索式による検索が終了するたびに、それまでの検索に要した時間及び検索件数にN/nを乗じて推定レスポンス時間及び推定レコード数を算出し、必要に応じて直前に算出された推定レスポンス時間及び推定レコード数を修正していく。
このようにして算出された推定レスポンス時間及び推定レコード数は、図7や図8のような表示と共にユーザに提示して、検索処理の中断、検索条件の変更、バッチ処理への切り替え等を行うか判断するための指針として用いることができる。
さらに、全ての分割後検索式による検索におけるレスポンス時間及び検索件数の閾値を予め設定しておけば、実行制御部33は、各分割後検索式による検索が行われるたびに算出される推定レスポンス時間及び推定レコード数と閾値とを比較し、推定レスポンス時間または推定レコード数のいずれか一方もしくは両方が閾値を超えた場合(すなわち、検索に多大な時間を要すると予想される場合や、膨大な件数のデータ(レコード)が取得されるためにさらなる絞り込みが必要になると予想される場合)に、ユーザに対して、検索条件の見直しやバッチ処理への切り替えを促す処理(メッセージ表示等)を行ったり、自動的にバッチ処理への切り替えを行ったりすることもできる。
上述したように、実行制御部33は、検索式分割部32によって作成された分割後検索式を逐次的に連合データベースシステム20へ送って、細かい検索処理を順次実行させるため、検索の中断やバッチ処理への切り替えを行うための割り込みは、各分割後検索式による検索の合間に随時行うことができる。
例えば、ユーザによるコマンド入力操作等により、バッチ処理への切り替えイベントが発生すると、実行制御部33は、このイベントを検出し、実行中の分割後検索式による検索処理が終了した時点で検索を一旦停止する。そして、残りの分割後検索式による検索処理をバッチ処理として再スケジュールする。これにより、バッチ処理としてスケジュールされた分割後検索式による検索処理については、当該スケジュールにしたがって自動実行させることができる。
以上のように、本実施形態では、データベース検索の実行に先立って、検索式を分割し、分割された検索式を用いて一定の検索範囲ごとに細かく検索を実行していくことにより、検索処理の実行中に進行状況を確認したり、検索に要する時間を予測したり、他の処理の割り込みを許容するといった柔軟な操作を行う機能を実現している。
検索結果出力部34は、実行制御部33の制御により連合データベースシステム20にて実行されたデータベース検索の結果を結合し、ディスプレイ装置等の出力デバイスにて出力する。出力形式としては、単に検索結果をまとめて列挙した形式の他に、検索対象のデータが所定の分類コードにて分類されたデータ構造を持つ場合には、当該分類コードを表示項目とした表形式で出力することも可能である。データが何らかの分類コードで分類されている場合、検索結果において当該分類コードによる分類が視覚的に表現されている方が、検索を依頼したユーザにとって参照しやすい場合がある。そこで、キーと分類コードという2つの項目にまたがって検索結果の分布を見ることができるクロス表や、検索結果に対してキーによる仕分けと分類コードによる仕分けとを行い階層的に表示した階層表を作成して、検索結果を出力する。
図9は、検索結果からクロス表や階層表を作成した例を示す図である。
図9において、検索結果のデータを列挙した表(図9(A))から、キーと分類コードとに基づいてデータが仕分けられたクロス表(図9(B))、データが属する分類コード及び該当するキーが階層的に表現された階層表(図9(C))が得られる。
クロス表や階層表のような分類コードを表示項目とする出力形式で出力する場合、検索結果として得られた全てのデータを分類コードに基づいて整理しなければならない。その過程で、出力する必要のない(表示に関係のない)分類コードを持つデータは除かれることとなる。
本実施形態では、上述したデータ分布表を用いた検索式の分割を、各データに対する分類コードを参酌して行うことにより、検索における実行効率を高めることができる。具体的には、検索式分割部32が、まず図4に示したようなキー分布に関するデータ分布表35から、検索対象のデータのデータ構造に従って、当該データを分類する分類コードに関するデータ分布表を作成する。分類コードに関するデータ分布表とは、連合データベースシステム20から参照されるデータベース11の各テーブルにおける、分類コードを持つキーに対応するレコードが各基本範囲内で分類コードごとにどのように分布しているかを示す分布表である。
図10は、分類コードに関するデータ分布表の基本構造を示す図である。
図10を参照すると、例えば範囲1に含まれるキーを持つデータのレコードは、分類コード1に分類されるものが40個、分類コード2、3に分類されるものが0個であることがわかる。
この分類コードに関するデータ分布表35aは、次のようにして作成される。
まず、図4に示したようなデータ分布表35を作成する。データ分布表35について説明したように、検索の軸になるテーブルを基本テーブル、基本テーブルと結合するテーブルをリンクテーブルとする。そして、分類コード列はリンクテーブルにあることとする。
次に、データ分布表35と同様に、レコード数が概ね一定になるように基本範囲を区切りながら、各基本範囲内に含まれるキーに対応するレコードの数を算出し、各基本範囲に対応付けて記録する。能力補正値は、キー分布に関するデータ分布表35に記録されたものを用いるので、データ分布表35aに記録する必要はない。
以上のようにして、分類コードごとにキーデータの分布が記録されたデータ分布表35aが作成される。このデータ分布表35aは、キー分布に関するデータ分布表35のリンクテーブルごとに作成される。
分類コードに関するデータ分布表35aを利用した検索式の分割は、以下の手順で行われる。
まず、分類コードを含まないテーブルに関して、能力補正値をかけた補正データ分布表を用意する。一方、分類コードを含むテーブルに関して、当該テーブル(リンクテーブル)に対応するデータ分布表35aにおいて、各基本範囲内でデータ個数の和を取り、当該テーブルの能力補正値(データ分布表35に記録されたものを使用)をかけた表を作成し、キー分布に関するデータ分布表35における当該テーブルの部分と置き換える。なお、データ分布表35aの各基本範囲内のデータ個数に能力補正値をかける操作は、出力対象として絞り込まれた分類コードについてのみ行えば良い。
さらに標準分割閾値を決定した後、図5に示した手順で、入力受け付け部31にて入力された単一の検索式を分割する。
図11は、分類コードを持つテーブルの検索に用いられる所定の検索式(SQL文)と、これを分割した分割後検索式の例を示した図である。
図11に示すような、分類コードを考慮して分割された分割後検索式を用いて、連合データベースシステム20に検索処理を実行させることにより、検索結果の全てを走査して分類コードに基づく整理を行うまでもなく、初めから分類コードに基づいて整理された形で検索結果を得ることができ、検索結果出力部34においてクロス表や階層表を作成する場合にかかる検索結果を直接用いることができる。
また、キー分布に関するデータ分布表35の一部を分類コードに関するデータ分布表35aに置き換える際に、上述したように出力対象として絞り込まれた分類コードに関するデータ分布表35aのみを用いることにより、出力する必要のない(表示に関係のない)分類コードを持つデータは、最初から検索対象とならないため、検索効率の向上を図ることができる。
ところで、本実施形態で用いるデータ分布表には、データに対するセキュリティ情報を付加することができる。データ保護のため、所定のデータを所定のアプリケーションで表示可能とするか否かを制御する場合があるが、通常この種のアクセス制御は、データベース11に格納されているテーブルやレコードを単位として、これらにフラグデータを付与することによって実装される。
図12に示すように、データ分布表35、35aにセキュリティ情報を記録するフィールド(セキュリティフィールド)を追加し、このセキュリティフィールドに記録された情報に基づいてアクセス制御を行うこととすれば、分類コードを単位としてデータに対する表示可否の制御を行うことが可能となる。例えば、図12の例では、分類コード1、3のセキュリティレベルがセキュリティフィールドの値1で、分類コード2、4のセキュリティレベルがセキュリティフィールドの値2で指定されている。
次に、以上のように構成された本実施形態の統合検索システムにおける統合検索の全体的な処理の流れを説明する。
図13は、本実施形態の統合検索システムによるデータ検索の処理の流れを示すフローチャートである。
図13を参照すると、まず検索制御システム30の入力受け付け部31により検索式(SQL文)が入力され(ステップ1301)、検索式分割部32によりデータ分布表35、35aを用いて当該検索式の分割が行われ、分割後検索式が生成される(ステップ1302)。
次に、検索制御システム30の実行制御部33により分割後検索式が連合データベースシステム20に逐次送られ、連合データベースシステム20にて各分割後検索式による統合検索が実行される(ステップ1303)。このとき、連合データベースシステム20においては、各分割後検索式による検索がそれぞれ独立に実行されることとなる。そして、各検索の結果が検索制御システム30に送り返される。
実行制御部33では、最後の分割後検索式による検索が行われたかどうかが判断され(ステップ1304)、未処理の分割後検索式が残っているならば、既に終了した分割後検索式による検索に基づいて、検索全体に要する時間と検索結果の予測の更新が行われ、進行状況と共に通知される(ステップ1305)。そして、検索の実行中に検索中断等の割り込み命令が入力されたか否かが判断される(ステップ1306)。割り込み命令があるならば、次の分割後検索式の前にその割り込み命令が、実行制御部33から連合データベースシステム20に送られる。そして、連合データベースシステム20において、当該割り込み命令により割り込み処理が行われる(ステップ1307)。この割り込み処理は、上述したように、連合データベースシステム20にとっては、単に個々の分割後検索式を用いた検索の合間に実行するものであるが、全ての分割後検索式による検索全体(当初の単一の検索式による検索に相当する)から見れば、検索の途中で処理の中断等の割り込み処理が実現されたこととなる。検索の途中で処理を中断できることにより、残りの検索(未処理の分割後検索式を用いた検索)に対して、検索条件を変更したり、バッチ処理で自動実行させたりする柔軟な操作を行うことが可能となる。
ステップ1304で、最後の分割後検索式による検索が行われたと判断されたならば、検索結果出力部34により、各分割後検索式による検索結果がまとめられて出力される(ステップ1308)。この検索結果は、検索されたデータが所定の分類コードによって分類されているならば、この分類コードを表示項目として扱ったクロス表等の形式で出力することもできる。
なお、上記実施形態では、複数のデータベースサーバ10を対象として統合検索を行う連合データベースシステム20に対して検索式(SQL文)を提供する検索制御手段として説明したが、連合データベース以外のデータベースに対しても、検索実行の前処理として検索式を加工する手段として、本実施形態を適用できるのは言うまでもない。
本実施形態による統合検索システムの全体構成を示す図である。 本実施形態の検索制御システムを実現するのに好適なコンピュータ装置のハードウェア構成の例を模式的に示した図である。 本実施形態における検索制御システムの機能構成を示す図である。 本実施形態で用いられるデータ分布表の基本構造を示す図である。 本実施形態の検索式分割部による検索式の分割処理の手順を示すフローチャートである。 所定の検索式(SQL文)と、本実施形態にてこれを分割した分割後検索式の例を示した図である。 本実施形態における検索処理の進行状況の通知(経過通知)の表示例を示す図である。 本実施形態における検索処理の進行状況の通知(経過通知)の他の表示例を示す図である。 検索結果からクロス表や階層表を作成した例を示す図である。 分類コードに関するデータ分布表の基本構造を示す図である。 分類コードを持つテーブルの検索に用いられる所定の検索式(SQL文)と、本実施形態にてこれを分割した分割後検索式の例を示した図である。 本実施形態で用いられるデータ分布表にセキュリティフィールドを追加した状態を示す図である。 本実施形態の統合検索システムによるデータ検索の処理の流れを示すフローチャートである。 連合データベースシステムによる統合検索の概念を説明する図である。
符号の説明
10…データベースサーバ、11…データベース、20…連合データベースシステム、30…検索制御システム、31…入力受け付け部、32…検索式分割部、33…実行制御部、34…検索結果出力部、35、35a…データ分布表、101…CPU(中央処理装置)、103…メインメモリ、105…磁気ディスク装置(HDD)、106…ネットワークインターフェイス

Claims (13)

  1. 相異なるデータベースが構築された複数のデータベースサーバを含むデータベースサーバ群を対象として統合検索を行う検索実行部と、
    前記複数のデータベースサーバに構築された複数のデータベースのテーブルごとに、当該テーブルが持つ検索用のキーに対応するレコードがどのように分布しているかを基本範囲ごとに区分して示すデータ分布表を格納したデータ分布表格納部と、
    前記データベースサーバ群に対する検索を行うための検索式の入力を受け付ける受け付け部と、
    前記データ分布表格納部から前記データ分布表を読み出し、当該データ分布表に示されたレコードの分布および各テーブルに対応するデータベースごとの処理能力に基づいて、前記受け付け部により受け付けた前記検索式における検索範囲を区切って得られる、複数の検索式を生成する検索式分割部と、
    前記検索式分割部によって生成された前記複数の検索式を前記検索実行部に送り、前記データベースサーバ群における各データベースに対して、当該複数の検索式による検索を実行させる実行制御部とを備え
    前記検索式分割部は、前記データ分布表における前記基本範囲ごとに各データベースで検索に要する時間を加算し、加算値が各データベースを含むシステム全体の処理能力に基づいて定められた閾値を超えた場合にそのときの基本範囲を検索範囲の区切りとする処理を繰り返すことにより、前記受け付け部により受け付けた検索式の検索範囲を区切ることを特徴とするデータベース検索システム。
  2. 前記実行制御部は、前記検索実行部による前記生成された検索式を用いた個々の検索結果を順次取得し、検索全体に対する進行状況として出力することを特徴とする請求項1に記載のデータベース検索システム。
  3. 前記実行制御部は、前記検索実行部において既に終了した前記生成された検索式の検索に要した時間及び検索結果から、検索全体に要する時間を予測することを特徴とする請求項1に記載のデータベース検索システム。
  4. 前記実行制御部は、所定の割り込み命令を受け付けて前記検索実行部に送り、
    前記検索実行部は、前記生成された検索式を用いた個々の検索の合間に前記割り込み命令による割り込み処理を実行することを特徴とする請求項1に記載のデータベース検索システム。
  5. 前記実行制御部は、前記生成された検索式の少なくとも一部を個別にバッチ処理にて前記検索実行部へ送り、
    前記検索実行部は、前記生成された検索式を用いた検索処理を個々の当該生成された検索式ごとにバッチ処理にて実行することを特徴とする請求項1に記載のデータベース検索システム。
  6. 前記検索式分割部は、前記データ分布表の少なくとも一部を、分類されたキーに対応するレコードの分布に変換し、変換された当該データ分布表に基づいて、前記複数の検索式を生成することを特徴とする請求項1に記載のデータベース検索システム。
  7. コンピュータが相異なるデータベースが構築された複数のデータベースサーバを含むデータベースサーバ群を対象として統合検索を行うデータベース検索方法において、
    前記コンピュータが、前記複数のデータベースサーバに構築された複数のデータベースに対する検索を行うための検索式の入力を受け付ける検索式取得ステップと、
    前記コンピュータが、前記データベースのテーブルごとに、当該テーブルが持つ検索用のキーに対応するレコードがどのように分布しているかを基本範囲ごとに区分して示すデータ分布表を格納した記憶手段から当該データ分布表を読み出し、当該データ分布表に示されたレコードの分布および各テーブルに対応するデータベースごとの処理能力に基づいて、当該データ分布表における当該基本範囲ごとに各データベースで検索に要する時間を加算し、加算値が各データベースを含むシステム全体の処理能力に基づいて定められた閾値を超えた場合にそのときの基本範囲を検索範囲の区切りとする処理を繰り返すことにより、前記検索式取得ステップで受け付けた前記検索式における検索範囲を区切って得られる、複数の検索式を生成し、生成された当該検索式を所定の記憶手段に格納する検索式生成ステップと、
    前記コンピュータが、生成された前記複数の検索式を用いて、前記データベースサーバ群における各データベースに対して、当該複数の検索式による検索を実行する検索実行ステップと
    を含むことを特徴とするデータベース検索方法。
  8. 前記コンピュータが、前記検索式生成ステップで生成された検索式と、当該生成された検索式のうちで前記検索実行ステップにおいて既に検索が終了した検索式とに基づいて、検索全体に対する進行状況を求めるステップをさらに含むことを特徴とする請求項7に記載のデータベース検索方法。
  9. 前記コンピュータが、前記検索実行ステップにおいて既に終了した前記生成された検索式の検索に要した時間及び検索結果から、検索全体に要する時間を予測するステップをさらに含むことを特徴とする請求項7に記載のデータベース検索方法。
  10. 前記検索実行ステップでは、前記コンピュータが、前記生成された検索式を用いた検索の少なくとも一部を個別にバッチ処理にて実行することを特徴とする請求項7に記載のデータベース検索方法。
  11. コンピュータを、
    相異なるデータベースが含まれる複数のデータベースに対する検索を行うための検索式を取得し、当該複数のデータベースのテーブルごとに当該テーブルが持つ検索用のキーに対応するレコードがどのように分布しているかを基本範囲ごとに区分して示す分布表を格納した記憶手段から当該分布表を読み出し、当該分布表に示されたレコードの分布および各テーブルに対応するデータベースごとの処理能力に基づいて、前記分布表における当該基本範囲ごとに各データベースで検索に要する時間を加算し、加算値が各データベースを含むシステム全体の処理能力に基づいて定められた閾値を超えた場合にそのときの基本範囲を検索範囲の区切りとする処理を繰り返すことにより、前記検索式における検索範囲を区切って得られる、複数の検索式を生成する検索式分割手段と、
    生成された前記複数の検索式を前記データベースの検索手段に対して送り、前記複数のデータベースの各々に対して、当該複数の検索式による検索を実行させる実行制御手段として
    機能させることを特徴とするプログラム。
  12. 前記コンピュータを、前記生成された検索式を用いた個々の検索結果を順次取得し、検索全体に対する進行状況として出力する進行状況出力手段としてさらに機能させることを特徴とする請求項11に記載のプログラム。
  13. 前記コンピュータを、既に終了した前記生成された検索式の検索に要した時間及び検索結果から、検索全体に要する時間を予測する予測手段としてさらに機能させることを特徴とする請求項11に記載のプログラム。
JP2003346780A 2003-10-06 2003-10-06 データベース検索システム及びその検索方法並びにプログラム Expired - Fee Related JP4129819B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2003346780A JP4129819B2 (ja) 2003-10-06 2003-10-06 データベース検索システム及びその検索方法並びにプログラム
US10/959,513 US8055647B2 (en) 2003-10-06 2004-10-06 System, method and program for database searching

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003346780A JP4129819B2 (ja) 2003-10-06 2003-10-06 データベース検索システム及びその検索方法並びにプログラム

Publications (2)

Publication Number Publication Date
JP2005115514A JP2005115514A (ja) 2005-04-28
JP4129819B2 true JP4129819B2 (ja) 2008-08-06

Family

ID=34386382

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003346780A Expired - Fee Related JP4129819B2 (ja) 2003-10-06 2003-10-06 データベース検索システム及びその検索方法並びにプログラム

Country Status (2)

Country Link
US (1) US8055647B2 (ja)
JP (1) JP4129819B2 (ja)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060031206A1 (en) * 2004-08-06 2006-02-09 Christian Deubel Searching for data objects
EP1886239A1 (en) * 2005-05-31 2008-02-13 Siemens Medical Solutions USA, Inc. System and method for data sensitive filtering of patient demographic record queries
JP2006350770A (ja) * 2005-06-17 2006-12-28 Hitachi Ltd 情報検索装置及び情報検索方法
JP4733458B2 (ja) * 2005-07-29 2011-07-27 株式会社野村総合研究所 検索システム及び検索方法
EP1960908B1 (en) * 2005-12-13 2016-02-17 BRITISH TELECOMMUNICATIONS public limited company User specific database querying method and apparatus
US8019858B2 (en) * 2008-09-09 2011-09-13 International Business Machines Corporation System and method for utilizing system lag to send facts to an end user
US8589420B2 (en) 2009-07-10 2013-11-19 Konica Minolta Medical & Graphic, Inc. Medical information system and program for same
WO2011039815A1 (ja) * 2009-09-30 2011-04-07 ヒューレット-パッカード デベロップメント カンパニー エル.ピー. イベント登録・通知における通知方法・装置
JP5327017B2 (ja) * 2009-11-24 2013-10-30 ソニー株式会社 遠隔操作装置、遠隔操作システム、遠隔操作装置による情報処理方法およびプログラム
JP5006472B2 (ja) * 2009-12-04 2012-08-22 隆敏 柳瀬 表検索装置、表検索方法、及び、表検索システム
US8548986B2 (en) * 2010-03-19 2013-10-01 Microsoft Corporation Adaptive row-batch processing of database data
US9116946B2 (en) * 2010-04-02 2015-08-25 Scalebase Inc. System and method for interacting with a plurality of data sources
JP5460486B2 (ja) * 2010-06-23 2014-04-02 インターナショナル・ビジネス・マシーンズ・コーポレーション データをソートする装置及び方法
US20120064863A1 (en) * 2010-09-10 2012-03-15 Motorola Mobility, Inc. Method of an Electronic Device for Providing Contact or Group Information for a Contact or Group of Contacts
JP5425028B2 (ja) * 2010-09-13 2014-02-26 株式会社野村総合研究所 データ検索システム及びプログラム
WO2012063426A1 (ja) * 2010-11-08 2012-05-18 株式会社 東芝 医用情報処理装置及び情報検索装置
JP5678691B2 (ja) * 2011-01-28 2015-03-04 富士通株式会社 検索制御装置、検索制御プログラムおよび検索制御方法
JP5799706B2 (ja) * 2011-09-26 2015-10-28 富士通株式会社 検索要求処理装置
EP2833274A4 (en) * 2012-03-29 2015-12-23 Nec Corp ENCRYPTED DATABASE SYSTEM, CLIENT DEVICE, DATABASE SERVER, DATA CONNECTION PROCEDURE AND PROGRAM
CN103488655B (zh) * 2012-06-13 2017-05-10 阿里巴巴集团控股有限公司 复合模型数据处理方法及系统
JP5604478B2 (ja) * 2012-07-10 2014-10-08 株式会社野村総合研究所 データ利用システム
WO2014092105A1 (ja) * 2012-12-12 2014-06-19 日本電気株式会社 データベース検索装置、データベース検索方法及びプログラム
US9069628B2 (en) * 2013-04-10 2015-06-30 International Business Machines Corporation Spooling system call data to facilitate data transformation
JP6135352B2 (ja) * 2013-07-19 2017-05-31 沖電気工業株式会社 データ処理装置、データ処理プログラム、データベースシステム、通信制御装置、及びネットワークシステム
US20150120697A1 (en) 2013-10-28 2015-04-30 Scalebase Inc. System and method for analysis of a database proxy
US10033668B2 (en) * 2014-01-16 2018-07-24 Dropbox, Inc. Enhancing performance of message search and retrieval
US10303702B2 (en) 2014-02-07 2019-05-28 Ignite Scalarc Solutions, Inc. System and method for analysis and management of data distribution in a distributed database environment
EP3761575A1 (en) * 2014-04-30 2021-01-06 Huawei Technologies Co., Ltd. Search apparatus and method
US9547729B2 (en) 2014-05-30 2017-01-17 International Business Machines Corporation Adaptive query processor for query systems with limited capabilities
CN105183735B (zh) 2014-06-18 2019-02-19 阿里巴巴集团控股有限公司 数据的查询方法及查询装置
US10873568B2 (en) 2017-01-20 2020-12-22 Enveil, Inc. Secure analytics using homomorphic and injective format-preserving encryption and an encrypted analytics matrix
US11290252B2 (en) 2017-01-20 2022-03-29 Enveil, Inc. Compression and homomorphic encryption in secure query and analytics
US11507683B2 (en) 2017-01-20 2022-11-22 Enveil, Inc. Query processing with adaptive risk decisioning
US11196541B2 (en) 2017-01-20 2021-12-07 Enveil, Inc. Secure machine learning analytics using homomorphic encryption
US11777729B2 (en) 2017-01-20 2023-10-03 Enveil, Inc. Secure analytics using term generation and homomorphic encryption
US10771237B2 (en) 2017-01-20 2020-09-08 Enveil, Inc. Secure analytics using an encrypted analytics matrix
US10902133B2 (en) 2018-10-25 2021-01-26 Enveil, Inc. Computational operations in enclave computing environments
US10817262B2 (en) 2018-11-08 2020-10-27 Enveil, Inc. Reduced and pipelined hardware architecture for Montgomery Modular Multiplication
JP6598272B1 (ja) * 2019-01-10 2019-10-30 株式会社AI Samurai 検索処理システム、検索処理方法、及び、検索処理プログラム
US11601258B2 (en) 2020-10-08 2023-03-07 Enveil, Inc. Selector derived encryption systems and methods
JP7326387B2 (ja) * 2021-07-16 2023-08-15 ヤフー株式会社 情報処理システム及び情報処理方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03208143A (ja) 1990-01-11 1991-09-11 Oki Electric Ind Co Ltd 分散データベース処理装置
JP3278440B2 (ja) 1991-03-11 2002-04-30 株式会社東芝 検索制御装置及び検索システム
JPH06231173A (ja) 1993-02-01 1994-08-19 Hitachi Ltd 情報検索装置
JPH06309284A (ja) 1993-04-20 1994-11-04 Hitachi Ltd 問合せ処理負荷分散方法
JPH08314965A (ja) 1995-05-19 1996-11-29 Toshiba Corp 文書検索装置
US5894311A (en) * 1995-08-08 1999-04-13 Jerry Jackson Associates Ltd. Computer-based visual data evaluation
US5963940A (en) * 1995-08-16 1999-10-05 Syracuse University Natural language information retrieval system and method
US5864842A (en) * 1995-10-23 1999-01-26 Ncr Corporation Optimization of SQL queries using hash star join operations
US5673404A (en) * 1995-12-20 1997-09-30 At&T Global Information Solutions Company End-user customizable feedback display for windowed applications
US5758355A (en) * 1996-08-07 1998-05-26 Aurum Software, Inc. Synchronization of server database with client database using distribution tables
US5873079A (en) * 1996-09-20 1999-02-16 Novell, Inc. Filtered index apparatus and method
US6401099B1 (en) * 1996-12-06 2002-06-04 Microsoft Corporation Asynchronous binding of named objects
EP1025517A1 (en) * 1997-10-27 2000-08-09 Massachusetts Institute Of Technology Image search and retrieval system
US6026391A (en) * 1997-10-31 2000-02-15 Oracle Corporation Systems and methods for estimating query response times in a computer system
JPH11203301A (ja) 1998-01-09 1999-07-30 Canon Inc データベース参照装置
US7209913B2 (en) * 2001-12-28 2007-04-24 International Business Machines Corporation Method and system for searching and retrieving documents
US20040078251A1 (en) * 2002-10-16 2004-04-22 Demarcken Carl G. Dividing a travel query into sub-queries

Also Published As

Publication number Publication date
US8055647B2 (en) 2011-11-08
US20050076024A1 (en) 2005-04-07
JP2005115514A (ja) 2005-04-28

Similar Documents

Publication Publication Date Title
JP4129819B2 (ja) データベース検索システム及びその検索方法並びにプログラム
US11972203B1 (en) Using anchors to generate extraction rules
US20210042306A1 (en) Querying an archive for a data store
US11423216B2 (en) Providing extraction results for a particular field
US10909151B2 (en) Distribution of index settings in a machine data processing system
US10783318B2 (en) Facilitating modification of an extracted field
US10810771B2 (en) Systems and methods for rendering a visualization using event data
TWI486800B (zh) 用於使用編輯距離以及文件資訊的搜尋結果排序之系統與方法
US11995071B1 (en) Assigning field values based on an identified extraction rule
US7146357B2 (en) Database system, server, query posing method, and data updating method
US20070250517A1 (en) Method and Apparatus for Autonomically Maintaining Latent Auxiliary Database Structures for Use in Executing Database Queries
ZA200503578B (en) Adaptively interfacing with a data repository
Holzmann et al. ABCDEF: The 6 key features behind scalable, multi-tenant web archive processing with ARCH: Archive, Big Data, Concurrent, Distributed, Efficient, Flexible
US11714698B1 (en) System and method for machine-learning based alert prioritization
US11720591B1 (en) Virtual metrics
US20230143297A1 (en) Production knowledge management system, production knowledge management method, and production knowledge management program
US20060136438A1 (en) Process server array for processing documents and document components and a method related thereto
JP5515117B2 (ja) データ処理装置
EP4002151A1 (en) Data tagging and synchronisation system
US11829378B1 (en) Automated generation of insights for machine generated data
JP7450570B2 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
JP2005327225A (ja) 文書管理システム、文書管理方式、文書管理プログラム及びプログラム記録媒体
JP2008262324A (ja) 情報処理装置及び情報処理方法及びプログラム
JP2004192221A (ja) 文書検索処理方法及びそれらの装置及びそれらの方法を記録した記録媒体
CN118093523A (zh) 一种智能文件搜索方法、装置及电子设备

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070213

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070411

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070529

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070726

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070911

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20071029

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20071101

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071109

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20071102

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20071205

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080122

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080409

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080507

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20080508

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080512

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110530

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110530

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120530

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120530

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130530

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140530

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees