JP5287071B2 - データベース管理システムおよびプログラム - Google Patents
データベース管理システムおよびプログラム Download PDFInfo
- Publication number
- JP5287071B2 JP5287071B2 JP2008238086A JP2008238086A JP5287071B2 JP 5287071 B2 JP5287071 B2 JP 5287071B2 JP 2008238086 A JP2008238086 A JP 2008238086A JP 2008238086 A JP2008238086 A JP 2008238086A JP 5287071 B2 JP5287071 B2 JP 5287071B2
- Authority
- JP
- Japan
- Prior art keywords
- data structure
- value
- position information
- index
- entry
- 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
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
・作業者は社員の数だけありえるのでデータの種類が多い。
・承認済の文書に対しては、作業者は存在しないので「無名」が格納されているとする。
・作業者には偏りがある。例:管理職の社員は作業者になることが多い。承認済文書は多数存在するので「無名」の作業者も多い。
図4は、第1の実施の形態にかかるデータベース管理システム100によって予め作成される索引の概念図である。図4に示すように、索引は二段に階層化されている。1段目の索引は、複数の異なるキーと、各キーに対応付けられた別のデータ構造体の位置情報(ポインタ)とをエントリとしたデータ構造体を示す。一方、2段目の索引は、1段目のデータ構造体の各キーに対応付けられたポインタによって特定されるデータ構造体であり、対応したキーを含んだレコードのROWIDをエントリとしている。特に、2段目のデータ構造体には、キー情報がなく、ROWIDの情報のみからなる。
図6は、第2の実施の形態にかかるデータベース管理システム100によって予め作成される索引の概念図である。図6に示すように、索引は第1の実施の形態と同様に二段に階層化されている。1段目の索引は、2種類のエントリからなるデータ構造体を示す。その2種類のうちの一つ(第1の種類)は、第1の実施の形態にかかるデータベース管理方法にかかる1段目の索引と同様なエントリである。すなわち、それは、複数の異なるキーと、各キーに対応付けられた別のデータ構造体の位置情報(ポインタ)とをペアとしたエントリである。特に、このエントリに含めるキーは、複数のキーのうち実際に登録されることの多いキーであることが好ましい。図3に示すテーブルの例で言えば、「作業者」フィールドの「無名」や管理職社員の名前などがそのようなキーに該当する。もう一つの種類(第2の種類)は、第1の種類以外のすべてのキーとそれらに対応付けられた別のデータ構造体の位置情報(ポインタ)とをペアとしたエントリである。なお、複数のキーに対していずれを第1の種類または第2の種類に属させるかは例えば決定木に従う。
図8は、第3の実施の形態にかかるデータベース管理システム100によって作成される索引の概念図である。図8に示すように、索引は第1の実施の形態と同様に二段に階層化されている。1段目の索引は、2種類のエントリからなるデータ構造体を示す。その2種類とは、NULLを示すキーに対応付けられた別のデータ構造体の位置情報(ポインタ)のエントリと、非NULLを示すキーに対応付けられたさらに別のデータ構造体の位置情報(ポインタ)のエントリである。
第4の実施の形態にかかるデータベース管理システム100は、第1の実施の形態に示した索引と第3の実施の形態に示した索引とを組み合わせた索引を作成し、それを用いた検索を行うことを特徴とする。具体的には、1段目の索引と2段目の索引を第3の実施の形態で示した1段目の索引と2段目の索引のように構成し、2段目の非NULLに対応する索引と3段目の索引を第1の実施の形態で示した1段目の索引と2段目の索引のように構成する。
第5の実施の形態にかかるデータベース管理システム100は、第2の実施の形態に示した索引と第3の実施の形態に示した索引とを組み合わせた索引を作成し、それを用いた検索を行うことを特徴とする。具体的には、1段目の索引と2段目の索引を第3の実施の形態で示した1段目の索引と2段目の索引のように構成し、2段目の非NULLに対応する索引と3段目の索引を第2の実施の形態で示した1段目の索引と2段目の索引のように構成する。
第6の実施の形態にかかるデータベース管理システム100は、第1〜第5の実施の形態において、異なる複数のキーを用いて検索すること、いわゆる複合検索を可能にした索引を作成し、それを用いた検索を行うことを特徴とする。
第7の実施の形態にかかるデータベース管理システム100は、第6の実施の形態の変形例である。具体的には、第6の実施の形態に示した2段目のデータ構造体にさらに第1の実施の形態に示した二段の索引構造を適用することによって三段の索引構造を作成し、その索引を用いた検索を行うことを特徴とする。換言すれば、第1キーの索引と第2キーの索引とにそれぞれ第1の実施の形態に示した二段の索引構造を適用する。
22 検索部
23 更新部
24 出力部
25 データベース
100 データベース管理システム
102 CPU
103 ROM
104 RAM
105 一次記憶装置
106 二次記憶装置
107 HDD
108 リムーバブルディスク装置
108a 記憶媒体
109 ネットワーク
110 ネットワークインターフェース
111 表示装置
112 キーボード
113 ポインティングデバイス
114 データバス
Claims (12)
- 複数のレコード間において所定のフィールドに登録されうる第1の値および第2の値と該第1の値および該第2の値を前記所定のフィールドにそれぞれ含んだレコードの位置情報とを対応付けた索引を作成するデータベース管理システムであって、
前記第1の値と前記位置情報とが第1のデータ構造体と第2のデータ構造体との組み合わせによって対応付けられ、前記第2の値と前記位置情報とが前記第1のデータ構造体と第3のデータ構造体との組み合わせによって対応付けられるように該第1のデータ構造体と該第2のデータ構造体と該第3のデータ構造体を作成する索引作成手段と、
前記索引作成手段によって作成された前記第1のデータ構造体と前記第2のデータ構造体と前記第3のデータ構造体とを索引として格納する記憶手段と、
を備え、
前記第1のデータ構造体は、前記第1の値と該第1の値に対応付けられた前記第2のデータ構造体の位置情報とをエントリとして含むとともに、前記第2の値に対応付けられた前記第3のデータ構造体の位置情報をエントリとして含み、
前記第2のデータ構造体は、前記第1の値を前記所定のフィールドに含んだレコードの位置情報をエントリとして含み且つ該第1の値自体をエントリとして含まず、
前記第3のデータ構造体は、前記第2の値と該第2の値を前記所定のフィールドに含んだレコードの位置情報とをエントリとして含むことを特徴とするデータベース管理システム。 - 複数のレコード間において所定のフィールドに登録されうるNULL値および非NULL値と該NULL値および該非NULL値を前記所定のフィールドにそれぞれ含んだレコードの位置情報とを対応付けた索引を作成するデータベース管理システムであって、
前記NULL値と前記位置情報とが第1のデータ構造体と第2のデータ構造体との組み合わせによって対応付けられ、前記非NULL値と前記位置情報とが前記第1のデータ構造体と第3のデータ構造体との組み合わせによって対応付けられるように該第1のデータ構造体と該第2のデータ構造体と該第3のデータ構造体を作成する索引作成手段と、
前記索引作成手段によって作成された前記第1のデータ構造体と前記第2のデータ構造体と前記第3のデータ構造体とを索引として格納する記憶手段と、
を備え、
前記第1のデータ構造体は、前記NULL値に対応付けられた前記第2のデータ構造体の位置情報をエントリとして含むとともに、前記非NULL値に対応付けられた前記第3のデータ構造体の位置情報をエントリとして含み、
前記第2のデータ構造体は、前記NULL値を前記所定のフィールドに含んだレコードの位置情報をエントリとして含み且つ該NULL値自体をエントリとして含まず、
前記第3のデータ構造体は、前記非NULL値と該非NULL値を前記所定のフィールドに含んだレコードの位置情報とをエントリとして含むことを特徴とするデータベース管理システム。 - 前記索引作成手段は、前記非NULL値と前記位置情報とが前記第1のデータ構造体と前記第3のデータ構造体と第4のデータ構造体との組み合わせによって対応付けられるように該第3のデータ構造体と該第4のデータ構造体を作成し、
前記記憶手段は、前記索引作成手段によって作成された前記第1のデータ構造体と前記第2のデータ構造体と前記第3のデータ構造体と前記第4のデータ構造体とを索引として格納し、
前記第3のデータ構造体は、前記非NULL値と該非NULL値に対応付けられた前記第4のデータ構造体の位置情報とをエントリとして含み、
前記第4のデータ構造体は、前記非NULL値を前記所定のフィールドに含んだレコードの位置情報をエントリとして含み且つ該非NULL値自体をエントリとして含まないことを特徴とする請求項2に記載のデータベース管理システム。 - 前記非NULL値は、第1の値と第2の値に分類され、
前記索引作成手段は、前記第1の値と前記位置情報とが前記第3のデータ構造体と第4のデータ構造体との組み合わせによって対応付けられ、前記第2の値と前記位置情報とが前記第3のデータ構造体と第5のデータ構造体との組み合わせによって対応付けられるように該第3のデータ構造体と該第4のデータ構造体と該第5のデータ構造体を作成し、
前記記憶手段は、前記索引作成手段によって作成された前記第1のデータ構造体と前記第2のデータ構造体と前記第3のデータ構造体と前記第4のデータ構造体と前記第5のデータ構造体とを索引として格納し、
前記第3のデータ構造体は、前記第1の値と該第1の値に対応付けられた前記第4のデータ構造体の位置情報とをエントリとして含むとともに、前記第2の値に対応付けられた前記第5のデータ構造体の位置情報をエントリとして含み、
前記第4のデータ構造体は、前記第1の値を前記所定のフィールドに含んだレコードの位置情報をエントリとして含み且つ該第1の値自体をエントリとして含まず、
前記第5のデータ構造体は、前記第2の値と該第2の値を前記所定のフィールドに含んだレコードの位置情報とをエントリとして含むことを特徴とする請求項2に記載のデータベース管理システム。 - 複数のレコード間において第1のフィールドに登録されうる第1の値と該第1の値を前記第1のフィールドに含んだレコードの第1の位置情報とを対応付け、且つ、前記複数のレコード間において第2のフィールドに登録されうる第2の値と該第2の値を前記第2のフィールドに含んだレコードの第2の位置情報とを対応付けた索引を作成するデータベース管理システムであって、
前記第1の値と前記第1の位置情報とが第1のデータ構造体と第2のデータ構造体との組み合わせによって対応付けられるように該第1のデータ構造体と該第2のデータ構造体を作成する索引作成手段と、
前記索引作成手段によって作成された前記第1のデータ構造体と前記第2のデータ構造体とを索引として格納する記憶手段と、
を備え、
前記第1のデータ構造体は、前記第1の値と該第1の値に対応付けられた前記第2のデータ構造体の位置情報とをエントリとして含み、
前記第2のデータ構造体は、前記第2の値と該第2の値を前記第2のフィールドに含んだレコードの前記第2の位置情報とをエントリとして含み且つ前記第1の値自体をエントリとして含まないことを特徴とするデータベース管理システム。 - 前記索引作成手段は、前記第2の値と該第2の位置情報とが前記第2のデータ構造体と第3のデータ構造体との組み合わせによって対応付けられるように該第2のデータ構造体と該第3のデータ構造体を作成し、
前記記憶手段は、前記索引作成手段によって作成された前記第1のデータ構造体と前記第2のデータ構造体と前記第3のデータ構造体とを索引として格納し、
前記第2のデータ構造体は、前記第2の値と該第2の値に対応付けられた前記第3のデータ構造体の位置情報とをエントリとして含み且つ前記第1の値をエントリとして含まず、
前記第3のデータ構造体は、前記第2の値を前記第2のフィールドに含んだレコードの位置情報をエントリとして含み且つ該第2の値自体をエントリとして含まないことを特徴とする請求項5に記載のデータベース管理システム。 - 複数のレコード間において所定のフィールドに登録されうる第1の値および第2の値と該第1の値および該第2の値を前記所定のフィールドにそれぞれ含んだレコードの位置情報とを対応付けた、記憶手段に格納された索引を用いて、コンピュータに所望のレコードを検索させるためのプログラムであって、
所望のキーが前記第1の値を示す場合に、前記索引を構成する第1のデータ構造体から当該所望のキーを検索することによって、前記索引を構成し且つ該第1の値に対応付けられた第2のデータ構造体の位置情報を取得する工程と、
前記所望のキーが前記第2の値を示す場合に、前記第1のデータ構造体から当該所望のキーを検索することによって、前記索引を構成し且つ該第2の値に対応付けられた第3のデータ構造体の位置情報を取得する工程と、
前記所望のキーが前記第1の値を示す場合に、取得した前記位置情報に対応付けられた第2のデータ構造体から、前記第1の値を前記所定のフィールドに含んだレコードの位置情報を取得する工程と、
前記所望のキーが前記第2の値を示す場合に、取得した前記位置情報に対応付けられた第3のデータ構造体から、前記第2の値を検索することによって、該第2の値を前記所定のフィールドに含んだレコードの位置情報を取得する工程と、
を含み、
前記第2のデータ構造体は、前記第1の値を前記所定のフィールドに含んだレコードの位置情報をエントリとして含み且つ該第1の値自体をエントリとして含まず、
前記第3のデータ構造体は、前記第2の値と該第2の値を前記所定のフィールドに含んだレコードの位置情報とをエントリとして含むことを特徴とするプログラム。 - 複数のレコード間において所定のフィールドに登録されうるNULL値および非NULL値と該NULL値および該非NULL値を前記所定のフィールドにそれぞれ含んだレコードの位置情報とを対応付けた、記憶手段に格納された索引を用いて、コンピュータに所望のレコードを検索させるためのプログラムであって、
所望のキーがNULL値を示す場合に、前記索引を構成する第1のデータ構造体から、該NULL値を前記所定のフィールドに含んだレコードの位置情報を取得する第1工程と、
所望のキーが非NULL値を示す場合に、前記索引を構成する第2のデータ構造体から当該非NULL値を検索することによって、該非NULL値を前記所定のフィールドに含んだレコードの位置情報を取得する第2工程と、
を含み、
前記第1のデータ構造体は、前記NULL値を前記所定のフィールドに含んだレコードの位置情報をエントリとして含み且つ該NULL値自体をエントリとして含まないことを特徴とするプログラム。 - 前記第2工程は、前記所望のキーが非NULL値を示す場合に、前記索引を構成する第2のデータ構造体から該非NULL値を検索することによって、前記索引を構成し且つ該非NULL値に対応付けられた第3のデータ構造体の位置情報を取得し、取得した該位置情報に対応付けられた前記第3のデータ構造体から、該非NULL値を前記所定のフィールドに含んだレコードの位置情報を取得することを含み、
前記第3のデータ構造体は、前記非NULL値を前記所定のフィールドに含んだレコードの位置情報をエントリとして含み且つ該非NULL値自体をエントリとして含まないことを特徴とする請求項8に記載のプログラム。 - 前記非NULL値は、第1の値と第2の値に分類され、
前記第2工程は、前記所望のキーが前記第1の値を示す場合に、取得した前記位置情報に対応付けられた第3のデータ構造体から、前記第1の値を前記所定のフィールドに含んだレコードの位置情報を取得し、前記所望のキーが前記第2の値を示す場合に、前記索引を構成し且つ取得した前記位置情報に対応付けられた第4のデータ構造体から、前記第2の値を検索することによって、該第2の値を前記所定のフィールドに含んだレコードの位置情報を取得することを含み、
前記第3のデータ構造体は、前記第1の値を前記所定のフィールドに含んだレコードの位置情報をエントリとして含み且つ該第1の値自体をエントリとして含まないことを特徴とする請求項8に記載のプログラム。 - 複数のレコード間において第1のフィールドに登録されうる第1の値と該第1の値を前記第1のフィールドに含んだレコードの第1の位置情報とを対応付け、且つ、前記複数のレコード間において第2のフィールドに登録されうる第2の値と該第2の値を前記第2のフィールドに含んだレコードの第2の位置情報とを対応付けた、記憶手段に格納された索引を用いて、コンピュータに所望のレコードを検索させるためのプログラムであって、
前記索引を構成する第1のデータ構造体から前記第1の値を示す第1のキーを検索することによって、前記索引を構成し且つ該第1の値に対応付けられた第2のデータ構造体の位置情報を取得する第1工程と、
取得した前記位置情報に対応付けられた前記第2のデータ構造体から、前記第2の値を示す第2のキーを検索することによって、前記第2の値を前記所定のフィールドに含んだレコードの位置情報を取得する第2工程と、
を含み、
前記第2のデータ構造体は、前記第1の値をエントリとして含まないことを特徴とするプログラム。 - 前記第2工程は、取得した前記位置情報に対応付けられた前記第2のデータ構造体から、前記第2のキーを検索することによって、前記索引を構成し且つ前記第2の値に対応付けられた第3のデータ構造体の位置情報を取得し、取得した該位置情報に対応付けられた前記第3のデータ構造体から、該第2の値を前記所定のフィールドに含んだレコードの位置情報を取得することを含み、
前記第3のデータ構造体は、前記第2の値を前記所定のフィールドに含んだレコードの位置情報をエントリとして含み且つ該第2の値自体をエントリとして含まないことを特徴とする請求項11に記載のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008238086A JP5287071B2 (ja) | 2008-09-17 | 2008-09-17 | データベース管理システムおよびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008238086A JP5287071B2 (ja) | 2008-09-17 | 2008-09-17 | データベース管理システムおよびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010072823A JP2010072823A (ja) | 2010-04-02 |
JP5287071B2 true JP5287071B2 (ja) | 2013-09-11 |
Family
ID=42204558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008238086A Expired - Fee Related JP5287071B2 (ja) | 2008-09-17 | 2008-09-17 | データベース管理システムおよびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5287071B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130282731A1 (en) * | 2011-01-25 | 2013-10-24 | Nec Corporation | Information search device |
CN110096494B (zh) * | 2012-10-22 | 2024-04-26 | 起元科技有限公司 | 使用源跟踪剖析数据 |
KR101429046B1 (ko) | 2012-11-26 | 2014-08-11 | 에스코어 주식회사 | 키-밸류 구조를 가지는 데이터베이스에서 데이터를 검색, 입력, 삭제 및 가비지 컬렉션하는 방법 |
EP3114578A1 (en) | 2014-03-07 | 2017-01-11 | AB Initio Technology LLC | Managing data profiling operations related to data type |
US11068540B2 (en) | 2018-01-25 | 2021-07-20 | Ab Initio Technology Llc | Techniques for integrating validation results in data profiling and related systems and methods |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62138924A (ja) * | 1985-12-11 | 1987-06-22 | Nec Corp | テ−ブルサ−チ制御方式 |
JPS6428726A (en) * | 1987-07-24 | 1989-01-31 | Hitachi Ltd | Index management method for data base |
JP3250544B2 (ja) * | 1999-04-16 | 2002-01-28 | 日本電気株式会社 | 転送先検索方法、転送先検索装置、検索テーブル記録媒体及び検索プログラム記録媒体 |
JP2002290447A (ja) * | 2001-03-27 | 2002-10-04 | Mitsubishi Electric Corp | アドレス検索方法、アドレス検索回路、およびアドレス検索プログラム |
JP2004234108A (ja) * | 2003-01-28 | 2004-08-19 | Fujitsu Ten Ltd | データ検索装置、データ検索方法およびデータ検索プログラム |
-
2008
- 2008-09-17 JP JP2008238086A patent/JP5287071B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010072823A (ja) | 2010-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6028567B2 (ja) | データ格納プログラム、データ検索プログラム、データ格納装置、データ検索装置、データ格納方法及びデータ検索方法 | |
US10180992B2 (en) | Atomic updating of graph database index structures | |
US9639542B2 (en) | Dynamic mapping of extensible datasets to relational database schemas | |
JP5626733B2 (ja) | 個人情報匿名化装置及び方法 | |
CN105574093A (zh) | 一种在基于HDFS的spark-sql大数据处理系统上建立索引的方法 | |
US20170255708A1 (en) | Index structures for graph databases | |
CN106407360B (zh) | 一种数据的处理方法及装置 | |
US11269954B2 (en) | Data searching method of database, apparatus and computer program for the same | |
US20130325900A1 (en) | Intra-block partitioning for database management | |
TWI549009B (zh) | 資料庫管理方法、資料庫管理系統,以及資料庫樹狀結構 | |
JP5287071B2 (ja) | データベース管理システムおよびプログラム | |
JPWO2010084754A1 (ja) | データベースシステム、データベース管理方法、及びデータベース構造 | |
JP2008198237A (ja) | 構造化文書管理システム | |
US6826563B1 (en) | Supporting bitmap indexes on primary B+tree like structures | |
JP6828181B2 (ja) | k−匿名化装置、方法及びプログラム | |
US20100030750A1 (en) | Methods and Apparatus for Performing Multi-Data-Source, Non-ETL Queries and Entity Resolution | |
CN115809268B (zh) | 一种基于分片索引的自适应查询方法和装置 | |
WO2015129109A1 (ja) | インデックス管理装置 | |
KR101679011B1 (ko) | 데이터베이스에서 데이터 이동을 처리하는 방법 및 장치 | |
US7809741B2 (en) | Generating and utilizing composite keys in lieu of compound keys | |
US20100205197A1 (en) | Two-valued logic database management system with support for missing information | |
JP4091586B2 (ja) | 構造化文書管理システム、索引構築方法及びプログラム | |
US7185004B1 (en) | System and method for reverse routing materialized query tables in a database | |
JP2016062522A (ja) | データベース管理システム、データベースシステム、データベース管理方法およびデータベース管理プログラム | |
KR100612376B1 (ko) | 통합패스의 노드범위를 이용한 엑스엠엘 인덱스 시스템 및방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110613 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130115 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130315 |
|
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: 20130507 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130520 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5287071 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |