(57)【要約】【課題】データベースのクエリ処理操作中にクエリをリライトして、元のクエリには含まれていない補助属性を含ませ、それによって処理効率を向上させるための方法および装置を提供すること。【解決手段】例えば、本発明の一態様では、クエリ処理操作中にクエリをリライトする技法は、以下のステップを含む。第１に、データ・セットの少なくとも一部に従ってクエリを処理して、クエリ結果を生成する。第２に、クエリ結果の中のデータ属性を分析する。最後に、少なくとも１つの補助データ属性に関する少なくとも１つの新しい述語をクエリに追加する。【選択図】図５
2005100392.tif 000002
【特許請求の範囲】
【請求項１】
データベースのクエリ処理操作中にクエリをリライトする方法であって、
データ・セットの少なくとも一部に従って前記クエリを処理して、クエリ結果を生成するステップと、
前記クエリ結果の中のデータ属性を分析するステップと、
少なくとも１つのデータ属性に関する少なくとも１つの新しい述語を前記クエリに追加するステップとを含む方法。
【請求項２】
前記データ・セットの前記少なくとも一部が、前記データ・セットから標本抽出されたレコードを含む、請求項１に記載の方法。
【請求項３】
前記データ・セットからデータ・レコードを標本抽出するステップをさらに含む、請求項２に記載の方法。
【請求項４】
データ・レコードを標本抽出する前記ステップが、前記データ・セットからＮ番目毎のレコードを標本抽出するステップを含む、請求項３に記載の方法。
【請求項５】
データ属性を分析する前記ステップにおいて、前記データ属性が、対象データ属性と補助データ属性を含む、請求項１に記載の方法。
【請求項６】
前記クエリに追加する前記ステップにおいて、前記少なくとも１つのデータ属性が、少なくとも１つの補助データ属性を含む、請求項５に記載の方法。
【請求項７】
データ属性を分析する前記ステップが、
前記クエリ結果から各属性に関する統計を抽出するステップと、
前記データ・セットの前記少なくとも一部から各属性に関する統計を抽出するステップと、
各属性に関する相対選択力を評価するステップとを含む、請求項１に記載の方法。
【請求項８】
相対選択力を評価する前記ステップが、
各属性に関して、前記クエリ結果からの統計範囲を前記データ・セットの前記少なくとも一部からの統計範囲と比較するステップと、
前記範囲どうしの比率を所定の値と比較することによって、各属性が選択力のある属性であるかどうかを判断するステップとを含む、請求項７に記載の方法。
【請求項９】
少なくとも１つの新しい述語を追加する前記ステップが、
各データ属性に関する相対選択力を評価するステップと、
高い選択力を有する少なくとも１つの補助データ属性を選択するステップと、
少なくとも１つの新しい述語を形成するステップと、
前記ユーザ・クエリに前記少なくとも１つの新しい述語を追加するステップとを含む、請求項１に記載の方法。
【請求項１０】
リライトされたクエリを用いてデータ・セット上でクエリ処理操作を実行するステップをさらに含む、請求項１に記載の方法。
【請求項１１】
データベースのクエリ処理操作中にクエリをリライトするための装置であって、
メモリと、
前記メモリに結合された少なくとも１つのプロセッサであって、（ｉ）データ・セットの少なくとも一部に従って前記クエリを処理して、クエリ結果を生成し、（ｉｉ）前記クエリ結果の中のデータ属性を分析し、（ｉｉｉ）少なくとも１つのデータ属性に関する少なくとも１つの新しい述語を前記クエリに追加するように動作する少なくとも１つのプロセッサとを含む装置。
【請求項１２】
前記データ・セットの前記少なくとも一部が、前記データ・セットから標本抽出されたレコードを含む、請求項１１に記載の装置。
【請求項１３】
前記少なくとも１つのプロセッサがさらに、前記データ・セットからデータ・レコードを標本抽出するように動作する、請求項１２に記載の装置。
【請求項１４】
データ・レコードを標本抽出する前記動作が、前記データ・セットからＮ番目毎のレコードを標本抽出する動作を含む、請求項１３に記載の装置。
【請求項１５】
データ属性を分析する前記動作において、前記データ属性が、対象データ属性と補助データ属性を含む、請求項１１に記載の装置。
【請求項１６】
前記クエリに追加する前記動作において、前記少なくとも１つのデータ属性が、少なくとも１つの補助データ属性を含む、請求項１５に記載の装置。
【請求項１７】
データ属性を分析する前記動作が、
前記クエリ結果から各属性に関する統計を抽出する動作と、
前記データ・セットの前記少なくとも一部から各属性に関する統計を抽出する動作と、
各属性に関する相対選択力を評価する動作とを含む、請求項１１に記載の装置。
【請求項１８】
相対選択力を評価する前記動作が、
前記クエリ結果からの各属性に関する統計範囲を前記データ・セットの前記少なくとも一部の対応する属性の統計範囲と比較する動作と、
前記範囲どうしの比率を所定の値と比較することによって、各属性が選択力のある属性であるかどうかを判断する動作とを含む、請求項１７に記載の装置。
【請求項１９】
少なくとも１つの新しい述語を追加する前記動作が、
各データ属性に関する相対選択力を評価する動作と、
高い選択力を有する少なくとも１つの補助データ属性を選択する動作と、
少なくとも１つの新しい述語を形成する動作と、
前記ユーザ・クエリに前記少なくとも１つの新しい述語を追加する動作とを含む、請求項１１に記載の装置。
【請求項２０】
前記少なくとも１つのプロセッサがさらに、リライトされたクエリを用いてデータ・セット上でクエリ処理操作を実行するように動作する、請求項１１に記載の装置。
【請求項２１】
データベースのクエリ処理操作中にクエリをリライトするためのマシン可読で実行可能なプログラムであって
データ・セットの少なくとも一部に従って前記クエリを処理して、クエリ結果を生成するステップと、
前記クエリ結果の中のデータ属性を分析するステップと、
少なくとも１つのデータ属性に関する少なくとも１つの新しい述語を前記クエリに追加するステップとを実行するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベースおよびその他の情報システムにおけるクエリ（query）処理操作に関し、より詳細には、データベースのクエリ処理操作中にデータ属性に関する新しい述語（predicate）を含ませるようにクエリをリライトするクエリ・リライトに関する。
【背景技術】
【０００２】
オンライン業務トランザクションの量が増加したことによって、データベース、データ・ウェアハウス、およびその他の情報システムに保存された大量のデータに対するクエリ処理の効率がますます重要性を帯びてきた。１９７０年代末期以降、独立型データベース、分散データベース、階層型データベース、空間データベース、およびワールド・ワイド・ウェブ上のデータベースにおける効率的なクエリ処理操作をテーマとする研究開発活動が、学術界および産業界全体で続けられている。公表されたクエリ処理技法についての包括的な総覧が、いくつかの情報ソースから提供されている。例えば、Ｇ．グレーフェ（Graefe）、「大規模データベースのためのクエリ評価技法（Query Evaluation Techniques for LargeDatabases）」、ＡＣＭコンピューティング・サーベイ（ACM Computing Surveys）、第２５巻第２号、１９９３年６月、Ｄ．コスマン（Kossmann）、「分散クエリ処理における最新技術（TheState of the Art in Distributed Query Processing）」、ＡＣＭコンピューティング・サーベイ、第３２巻第４号、２０００年１２月を参照されたい。
【０００３】
データベースのクエリ処理操作は、一般に６つのフェーズから、すなわち、構文解析（parsing）、意味検査（semanticchecking）、クエリ・リライト（query rewrite）、プラン最適化（plan optimization）、プラン改良（planrefinement）、およびクエリ評価（query evaluation）から構成される。クエリ処理操作においてクエリをリライトする理由は、いくつかの参考文献に記載されている。例えば、Ｌ．Ｍ．ハース（Haas）他、「スターバーストにおける拡張クエリ処理（ExtensiveQuery Processing in Starburst）」ＡＣＭ  ＳＩＧＭＯＤ議事録（ACM SIGMOD Record）、第１８巻第２号、１９８９年６月を参照されたい。クエリ・リライトが必要となるいくつか理由として、以下のことがある。
【０００４】
１．クエリの代替構文解析：リレーショナル・クエリ言語は非手続き型（nonprocedural）なので、代替案が同等に機能する。
【０００５】
２．クエリへのビュー抽象化の関与：ビュー定義はクエリ記述者（writer）に隠蔽されている（hidden）ので、ビューに関連するクエリを拡張できるのは、データベースだけである。
【０００６】
従来のクエリ・リライト戦略は、クエリの述語中に出現する属性のリライトおよび最適化に焦点を絞っている。例えば、Ｇ．グレーフェ他、「動的クエリ評価プラン（Dynamic Query Evaluation Plans）」、ＡＣＭ  ＳＩＧＭＯＤ議事録、第１８巻第２号、１９８９年６月、Ｄ．コスマン他、「反復動的プログラミング：新しいタイプのクエリ最適化アルゴリズム（IterativeDynamic Programming: A New Class of Query Optimization Algorithms）」、ＡＣＭデータベース・システムのトランザクション（ACMTransactions on Database Systems）、第２５巻第１号、２０００年３月を参照されたい。
【非特許文献１】Ｇ．グレーフェ（Graefe）、「大規模データベースのためのクエリ評価技法（QueryEvaluation Techniques for Large Databases）」、ＡＣＭコンピューティング・サーベイ（ACM ComputingSurveys）、第２５巻第２号、１９９３年６月
【非特許文献２】Ｄ．コスマン（Kossmann）、「分散クエリ処理における最新技術（TheState of the Art in Distributed Query Processing）」、ＡＣＭコンピューティング・サーベイ、第３２巻第４号、２０００年１２月
【非特許文献３】Ｌ．Ｍ．ハース（Haas）他、「スターバーストにおける広範囲クエリ処理（ExtensiveQuery Processing in Starburst）」ＡＣＭ  ＳＩＧＭＯＤ議事録（ACM SIGMOD Record）、第１８巻第２号、１９８９年６月
【非特許文献４】Ｇ．グレーフェ他、「動的クエリ評価プラン（Dynamic QueryEvaluation Plans）」、ＡＣＭ  ＳＩＧＭＯＤ議事録、第１８巻第２号、１９８９年６月
【非特許文献５】Ｄ．コスマン他、「反復動的プログラミング：新しいタイプのクエリ最適化アルゴリズム（Iterative Dynamic Programming: A New Class of Query OptimizationAlgorithms）」、ＡＣＭデータベース・システムのトランザクション（ACM Transactions on Database Systems）、第２５巻第１号、２０００年３月
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明の原理は、クエリ処理操作中にクエリをリライトするための技法を提供する。
【課題を解決するための手段】
【０００８】
例えば、本発明の一態様では、データベースのクエリ処理操作中にクエリをリライトする技法は、以下のステップを含む。第１に、データ・セットの少なくとも一部に従ってクエリを処理して、クエリ結果を生成する。第２に、クエリ結果の中のデータ属性を分析する。最後に、データ属性に関する新しい述語をクエリに追加する。したがって、有利には、元のクエリには含まれていないデータ属性に関する新しい述語をクエリに追加して、処理効率を向上させることができる。
【０００９】
本発明の原理と従来の方法の間には、いくつかの主要な相違が存在する。例えば、本発明の原理は、（ｉ）元のクエリには存在しない属性に基づく新しい述語を追加するクエリ・リライト戦略を主張することができ、（ｉｉ）一般的なシングル・パス処理ではなく、２パス・クエリ処理操作手法を利用することができ、（ｉｉｉ）特徴的な属性の識別を助けるため、統計的分析およびその他のデータ・マイニング技法を利用することができ、（ｉｖ）従来の方法では正確な答えが最重視されるが、本発明の原理ではクエリ・リライトのために誤ったデータ除外（false dismissal）を行う場合がある。
【００１０】
したがって、本発明の原理は、従来のクエリ正規化手法とは異なる、クエリ・リライトについての少なくとも１つの追加の理由を提示する。この異なる理由とは、データ・レコード中の補助属性についての知識を活用して、より効率的な処理のために追加のクエリ述語を追加することである。有利には、本発明の技法は、結果の正確性を維持しながら、大規模データベースにおける効率的なクエリ処理操作を提供するのに役立てることができる。この効率性によって、通常は処理コストの高いクエリが、コストの低いクエリに変換される。
【００１１】
上記およびその他の目的、特徴、および利点は、以下の本発明の説明的な実施形態の詳細な説明を添付の図面と併せて読むことにより明らかになるであろう。
【発明を実施するための最良の形態】
【００１２】
以下の説明では、例示的なデータ処理システム・アーキテクチャを用いて、本発明の原理を説明する。本発明の原理は、どれか特定のシステム・アーキテクチャでの使用に限定されるものではない。むしろ、効率的かつ効果的なクエリ処理操作を実行するのが望ましい任意のデータ処理システムに汎用的に適用することができる。
【００１３】
本明細書で用いる「データベース」という用語は、例えば、ＩＢＭ  ＤＢ２（ＤＢ２はIBMCorporationの商標）やＯｒａｃｌｅ９（Oracle Corporationまたは日本オラクル株式会社の商標）のようなリレーショナル・データベースなど、任意のデータ・ストレージ・ソフトウェアおよびシステムを含むものとされる。本明細書で用いる「データ・レコード」という用語は、例えば、リレーショナル・データベースのテーブル中の行など、データベース中のデータの論理的に構造化された関連を含むものとされる。本明細書で用いる「属性（attribute）」または「データ属性」という用語は、例えば、ある行中のある列の値など、データ・レコード中の任意の要素を含むものとされる。本明細書で用いる「対象（target）属性」という用語は、ユーザ・クエリ中に明示的に出現する任意の属性を指すものとされる。本明細書で用いる「補助（auxiliary）属性」という用語は、ユーザ・クエリ中には出現しない任意の属性を指すものとされる。
【００１４】
本発明の原理は、１つまたは複数の属性を有する構造化データ・レコードを保存するデータベースまたはその他の情報システム上でのクエリ処理操作に適用することができる。例示および説明を容易にするため、本発明の好ましい実施形態では、データベースのテーブル上でのクエリ処理操作に基づく一例を使用する。本発明がデータベースのテーブル上での処理に限定または制約されると見なしてはならない。
【００１５】
最初に図１を参照すると、本発明の原理と従来の方法の相違を説明するのに使用する、データベースに保存された電気使用量データが、表にして示されている。表は、見出し行に４つの属性名、すなわち、報告日１００、ウェストチェスタ電気使用量１０２、ニューヨーク市電気使用量１０４、および気温１０６を有している。例示的なクエリ１０８は、これら２つの地理的エリアについて、１日の合計電気使用量が３０００メガワットを超える日を要求する。この例では、１日の合計電気使用量は、ニューヨーク市（ＮＹＣ）の１日の電気使用量をニューヨーク州ウェストチェスタ郡の１日の電気使用量に加えることによって計算される。したがって、クエリ文（statement）は、報告日１００にウェストチェスタ電気使用量１０２とニューヨーク市電気使用量１０４の値の合計が３０００ＭＷより大きいという条件を指定する１つの述語を有する。
【００１６】
従来の（traditional）クエリ・リライトは、報告日１００、ウェストチェスタ電気使用量１０２、およびニューヨーク市電気使用量１０４などの属性列に焦点を絞る。しかし、属性値の分布を分析することによって、合計電気使用量が３０００ＭＷを超えるのは、戸外の気温が９０°Ｆ（３２．２°Ｃ）を超えるときだけであることが判明するかもしれない。気温属性は、元のクエリには指定されておらず、補助的であるが、クエリに追加の述語を追加することによって、クエリ処理時間を著しく短縮することができる。したがって、クエリ・リライト・フェーズで気温に関する述語を含めるようにすれば有益であろう。しかし、従来のクエリ・リライト戦略は、本発明の原理が提案するように、補助属性に関する述語を含めることは行わない。
【００１７】
本発明で提案されるクエリ・リライト方法は、２つのパスを含む。第１のパスでは、標本データに対するクエリ結果を分析して、高い選択力を有する属性を発見する。第２のパスでは、最高位の補助属性を選択し、クエリの効率を向上させるため、選択した属性に関する新しい述語を元のクエリに追加する。
【００１８】
次に図２を参照すると、本発明の一実施形態による第１のパスのクエリ実行方法が、フローチャートによって示されている。この方法は、ユーザ・クエリ２００を入力することから開始される。ステップ２０２で、データ・セットから抽出した標本データ２０４に対してユーザ・クエリ２００を実行するのに、最初は従来の無修正クエリ処理操作が用いられる。ユーザ・クエリ２００の結果が、選択データ・レコード２０６として返される。ステップ２０８で、選択データ・レコード２０６の各属性値についての統計が導き出される。それとは別に、ステップ２１０で、個別属性についての統計が、標本データ２０４から収集され、導き出される。ステップ２１２で、ステップ２０８および２１０で導き出された統計の組が評価される。この評価については図４でより詳細に説明する。
【００１９】
本発明の原理によれば、数値属性の場合、ステップ２０８および２１０で導き出される一般的な統計には、最大値、最小値、中間値、平均値、および標準偏差などが含まれ得る。分類用属性の場合、ステップ２０８および２１０で導き出される統計には、異なる値の数、および各値についての集約件数などが含まれ得る。２以上の属性の結合統計（joint statistics）を含むより高次の統計を導き出すこともできる。この実施形態では、本発明は、数値属性の最大値および最小値を利用するが、本発明の範囲は上記の統計に限定されるものではない。
【００２０】
次に図３を参照すると、本発明の一実施形態によるデータの標本抽出（sampling）が、フローチャートによって示されている。これは、図２の標本データ２０４の獲得を詳細に説明したものと考えることができる。この方法は、図２の第１のパスのクエリ処理操作の対象となるデータ・レコードの数を少なくする。ステップ３０２で、全データ・セット３００のうちのＮ番目毎のレコードが標本抽出されて、標本データ・セット３０４を形成する。Ｎは一般に１０から１００の間である。結果のレコードである標本データ・セット３０４は、より小規模な一時データベースに保存される。
【００２１】
次に図４を参照すると、本発明の一実施形態による選択力のある属性の選択方法が、フローチャートによって示されている。この方法は、図２のステップ２１２を詳細に説明したものと考えることができる。この方法は、選択力のある属性を識別する好ましい評価方法を示す。しかし、本発明の原理は、この具体的な評価に限定されるものではなく、その他の評価基準にも適用することができる。図４では、ステップ４００で入力された各数値属性が、標本データからの属性統計とクエリ結果からの属性統計の動的範囲（dynamic range）を比較することによって検査される。対象属性と補助属性が両方とも検査される。属性の動的範囲は、最大値と最小値の差として定義することができる。ステップ４０２で、２つの動的範囲の比率Ｒが計算される。ステップ４０４で、Ｒが１０％より小さいがどうかが判定される。Ｒが１０％より小さい場合、その属性は選択力のある（selective）属性４０８である。Ｒが１０％より小さくない場合、その属性は選択力のない（non-selective）属性４０６である。Ｒの閾値は好ましくは、１０％か１０％より小さい。
【００２２】
次に図５を参照すると、本発明の一実施形態によるクエリ・リライト方法および第２のクエリ・パスが、フローチャートによって示されている。この方法は、各選択力のある属性の相対選択力（relative selectivity）を評価するステップ５００から開始される。これらの選択力のある属性４０８は、図４のステップ４０４で発見されたものである。第２のクエリ・パスは、ステップ５０２で高い選択力の属性を選択することから開始される。選択力のある属性は、複数存在する場合があり、Ｒの値に従って昇順に順位づけされる。小さなＲ値はより高い選択力、より高い効率を示しているので、小さなＲ値が好ましい。具体的なクエリ状況に応じて、１つまたは複数の最高位の属性を選択する。次にステップ５０４で、範囲述語（rangepredicate）を形成する。クエリ結果から選択した属性の動的範囲から、最大値と最小値を上限と下限にすることによって、新しい範囲述語を形成する。例えば、図１の気温属性は、合計電気使用量が３０００ＭＷを超える日の場合、最大値９５と最小値９１を有する。気温の範囲述語は［９１，９５］となる。次にステップ５０６で、ユーザ・クエリ５０８に新しい範囲（気温）述語を追加する。この方法は、結果の修正クエリ５１０、例えば、「Selectdate from table where Westchester+NewYorkCity > 3000 AND temperature <=95 and temperature >= 91」などを生成して終了する。次に、述語が新たに追加されたクエリ５１０は、従来のクエリ処理操作および最適化に渡され、従来のクエリ処理操作および最適化は、新たに追加された選択力の高い述語を使用して、処理時間を短縮する。
【００２３】
本発明によれば、述語が追加されたクエリは、元のクエリが生成するのと同じ１組の結果を生成しないかもしれない。これは、図３の標本抽出ステップで、データ・レコードのうちの異常値をもつレコードが欠落し、そうしたレコードが属性選択および述語構築において考慮されない場合があるためである。しかし、述語が追加されたクエリと元のクエリは、電気使用量クエリの例でのように、多くの実用的な用途では同じ結果を生成する。通常、そうした用途での標本は、ノイズがより小さく、変動もより滑らかである。
【００２４】
次に図６を参照すると、本発明の一実施形態による、コンピュータ・システムの説明的なハードウェア実装が、ブロック図によって示されており、それに基づいて、本発明の１つまたは複数のコンポーネント／方法（例えば、図１ないし図５との関連で説明されたコンポーネント／方法）を実施することができる。例えば、図６のコンピュータ・システムは、データベースを実装することができ、図２のユーザ・クエリ２０４を処理することができる。
【００２５】
そのような個々のコンポーネント／方法は、１つの上記コンピュータ・システム上で実装し、処理することもでき、１つまたは複数の上記コンピュータ・システム上で実装し、処理することもできることを理解されたい。例えば、ユーザ・クエリ２０４は、１つのコンピュータ・システム（例えば、クライアント装置）上で処理することができ、一方、データベースは、別のコンピュータ・システム上に実装することができる。分散コンピューティング・システム内に実装する場合、個々のコンピュータ・システムまたは装置あるいはその両方は、例えば、インターネットまたはワールド・ワイド・ウェブなどの適切なネットワークを介して接続することができる。しかし、システムは、プライベートまたはローカル・ネットワークを介して実現することもできる。本発明は、どのような特定のネットワークにも限定されない。
【００２６】
図に示すように、コンピュータ・システムは、コンピュータ・バス６１８または代替接続構成を介して結合される、プロセッサ６１０、メモリ６１２、Ｉ／Ｏ装置６１４、およびネットワーク・インターフェース６１６によって実装することができる。
【００２７】
本明細書で用いる「プロセッサ」という用語には、例えば、ＣＰＵ（中央処理装置）または他の処理回路あるいはその両方を始めとする処理装置など、任意の処理装置が含まれるとされることを理解されたい。また。「プロセッサ」という用語で２以上の処理装置を指すことができること、１つの処理装置に関連する様々な要素を他の処理装置と共用できることも理解されたい。
【００２８】
本明細書で用いる「メモリ」という用語には、例えば、ＲＡＭ、ＲＯＭ、固定メモリ装置（例えば、ハード・ドライブ）、着脱可能メモリ装置（例えば、ディスケット）、フラッシュ・メモリなど、プロセッサまたはＣＰＵに関連するメモリが含まれるとされる。
【００２９】
さらに、本明細書で用いる「入出力装置」または「Ｉ／Ｏ装置」という語句には、例えば、データを処理装置に入力するための１つまたは複数の入力装置（例えば、キーボード、マウスなど）、または処理装置に関連する結果を提示するための１つまたは複数の出力装置（例えば、スピーカ、ディスプレイなど）、あるいはその両方が含まれるとされる。
【００３０】
またさらに、本明細書で用いる「ネットワーク・インターフェース」という語句には、例えば、コンピュータ・システムが別のコンピュータ・システムと適切な通信プロトコル（例えば、ＨＴＴＰ／Ｓ）によって通信を行えるようにする、１つまたは複数のトランシーバが含まれるとされる。
【００３１】
したがって、本明細書で説明した方法を実行する命令、ステップまたはコードを含むソフトウェア・コンポーネントまたはプログラムは、１つまたは複数の関連するメモリ装置（例えば、ＲＯＭ、固定または着脱可能メモリ）に保存することができ、利用準備が整ったとき、その一部または全体を（例えば、ＲＡＭに）ロードしまたは可読な形で読み出され、ＣＰＵによって実行することができる。
【００３２】
本明細書では、本発明の説明的な実施形態を添付の図面を参照しながら説明してきたが、本発明はそのような説明通りの実施形態に限定されるものではなく、当業者であれば、本発明の範囲および主旨から逸脱することなく、様々な他の変更および修正を施すことができるであろう。
【図面の簡単な説明】
【００３３】
【図１】本発明の原理と従来の方法の相違を説明するのに用いられる、データベースに保存された電気使用量データを示す表である。
【図２】本発明の一実施形態による、第１のパスのクエリ実行方法を説明するフローチャートである。
【図３】本発明の一実施形態による、データの標本抽出方法を説明するフローチャートである。
【図４】本発明の一実施形態による、選択力のある属性の選択方法を説明するフローチャートである。
【図５】本発明の一実施形態による、クエリ・リライト方法を説明するフローチャートである。
【図６】本発明の一実施形態による、本発明の１つまたは複数のコンポーネント／方法をそれに基づいて実施することができる、コンピュータ・システムの説明的なハードウェア実装を示した図である。
【符号の説明】
【００３４】
１００  報告日
１０２  ウェストチェスタ電気使用量
１０４  ニューヨーク市電気使用量
１０６  気温
１０８  例示的クエリ
６１０  プロセッサ
６１２  メモリ
６１４  Ｉ／Ｏ装置
６１６  ネットワーク・インターフェース
６１８  コンピュータ・バス
【図１】
2005100392.tif 000003
【図２】
2005100392.tif 000004
【図３】
2005100392.tif 000005
【図４】
2005100392.tif 000006
【図５】
2005100392.tif 000007
【図６】
2005100392.tif 000008