JP4320567B2 - Data management apparatus and data management program - Google Patents
Data management apparatus and data management program Download PDFInfo
- Publication number
- JP4320567B2 JP4320567B2 JP2003156688A JP2003156688A JP4320567B2 JP 4320567 B2 JP4320567 B2 JP 4320567B2 JP 2003156688 A JP2003156688 A JP 2003156688A JP 2003156688 A JP2003156688 A JP 2003156688A JP 4320567 B2 JP4320567 B2 JP 4320567B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- file
- item
- common
- records
- 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 - Lifetime
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
【0001】
【発明の属する技術分野】
この発明は、データベースなど大量に記憶されたデータを管理するデータ管理装置に係るものであり、特に必要なデータだけを効率よく読み出すためのデータ管理技術に関する。
【0002】
【従来の技術】
インターネットの普及に伴い、インターネット上のWebサイトから情報を検索する検索エンジンなどのサービスが一般的になっている。これらの検索エンジンはインターネット上のWebサイトの有するHTMLを文字列検索するものが多い。このため、利用者が調査用途で情報検索する上では十分実用的であるといえる。しかし、基幹業務システムのデータベースとして利用するには困難が伴う。その理由として、インターネット上のWebサイトに格納される情報の形式がWebサイトごとにまちまちであり、インターネット全体を見た場合、Webサイトごとに情報の欠落や冗長な情報が含まれているためである。一方、インターネットは、全体として非常に豊富な情報量を有しているといえるので、このような情報を有効に利用する方法が望まれるところである。
【0003】
インターネットに限らず、ネットワークに散在するデータベースにまたがる情報の検索を行おうとすると、データベース間の不整合や情報の重複、欠落があり単純な問い合わせでも処理することが困難な場合が多い。このようなデータベースを「不完全データベース」と称して、データベース間に不一致があっても、できる限り広域問い合わせ処理を実行しようとする研究が行われている(例えば、非特許文献1)。
【0004】
ところで、一般にディスク装置内において、データはレコード単位に構成され、各レコードの順番に従って配置されており、各レコード内ではそのフィールドの定義(データ項目)順にデータが並んでいる。その一方で、アプリケーションプログラムがレコード全体のデータを使用する頻度よりもレコードの一部のデータを使用する頻度の方が高い。にもかかわらず、従来のデータベースシステムはレコード全体をディスク装置から読み出してきて、アプリケーションプログラムに必要なデータを切り出して渡す、という処理を行っている。そのため、必要以上にディスク装置から読み出す時間を要していた。このような問題を解決する手段として、トランスポーズドファイル(または転置ファイル)を構成する方法がある(例えば特許文献1)。
【0005】
これはレコードを構成する行要素のみを抽出して、ファイル配置を再構成したものである。この方法によれば、アプリケーションプログラムが必要とするデータを含む行要素以外の行要素をディスク装置から読み出す必要がなくなる。このため性能が向上するというものである。
【0006】
【非特許文献1】
http://www.tkl.iis.u−tokyo.ac.jp/〜otsuka/profile/kenkyu2.html 「不完全データベースを用いた広域問い合わせ」
【0007】
【特許文献1】
特開平11−154155「ファイル管理方式」第1図、第3頁−第6頁
【0008】
【発明が解決しようとする課題】
しかしながら、このような高速化技法は、前述のネットワークに散在する情報へのアクセスを高速化する技法として用いることができない。あるデータファイルからトランスポーズドファイルを構成するためには、データファイルのすべてのレコードが同じ行要素(データ項目)から構成されている必要がある。すなわちレコードの中に、何らかの行要素が欠落していたり、他のレコードにはない行要素が含まれていたりすると、欠落したデータ項目や他のレコードにないデータ項目については正しくトランスポーズドファイル変換できないのである。このような理由から、相互にデータ項目の不整合を有するレコードやファイルへのアクセスを高速化する技法としては、トランスポーズドファイル変換は用いられてこなかった。
【0009】
この発明は、単数又は複数のファイルのレコード間にデータ項目の不整合がある場合であっても、トランスポーズドファイル変換を行うことによって、アプリケーションプログラムから高速にデータに対するアクセスを可能とするデータ管理装置及びプログラムを提供することを目的とする。
【0010】
【課題を解決するための手段】
この発明に係るデータ管理装置は、相異なるデータ構造を有する複数のレコードを含むファイルよりそれらのレコードの一部の間に共通する共通データ項目を検出する行要素検出手段と、
前記共通データ項目ごとに、前記複数のレコードより収集したデータからなるデータブロックを生成するデータブロック生成手段と、
前記データブロックと前記共通データ項目との対応関係を管理情報として抽出する管理情報抽出手段と、
前記データブロックを編成してトランスポーズドファイルを生成するとともに、前記管理情報を管理ファイルに出力するトランスポーズドファイル生成手段とを備えたものである。
【0011】
また、この発明に係るデータ管理装置は、異なるデータ項目を記憶する複数のファイルの一部の間に共通する共通データ項目を検出する行要素検出手段と、
前記共通データ項目ごとに、前記複数のファイルより収集したデータからなるデータブロックを生成するデータブロック生成手段と、
前記データブロックとデータ項目との対応関係を管理情報として抽出する管理情報抽出手段と、
前記データブロックを編成してトランスポーズドファイルを生成するとともに、前記管理情報を管理ファイルに出力するトランスポーズドファイル生成手段とを備えたものである。
【0012】
【発明の実施の形態】
以下、この発明の実施の形態について説明する。
実施の形態1.
図1は、この発明の実施の形態1によるデータ管理装置の構成を示すブロック図である。図において、データファイル1はN個のレコードから構成されるファイルである。各レコードは符号L−N(Nは自然数)で識別される。これらのレコードのうち、図ではN=1〜4までに対応するレコードL−1〜L−4が示されている。ここで、レコードL−1〜L−4はそれぞれField1〜4のいずれかのデータ項目(行要素または列、あるいはレコードのカラム値、または属性値ともいう)から構成されている。しかし、図に示すようにレコードL−1〜L−4を構成するデータ項目は必ずしも均一ではない。すなわち、レコードL−1はField1〜4のすべてのデータ項目から構成されているし、L−2とL−3はField1〜Field3から構成されていて、Field4は含んでいない。またL−4に至っては、Field2とField4の2つのデータ項目を含んでいない。
【0013】
またデータ管理装置2は、この発明の実施の形態1によるデータ管理装置であって、行要素検出部11、データブロック生成部12、管理情報抽出部13、トランスポーズドファイル生成部14を備えるものである。行要素検出部11は、データファイル1のレコードL−1〜L−4から共通のデータ項目を検出する部位である。データブロック生成部12は、行要素検出部11が検出した共通データ項目ごとにデータブロックを生成する部位である。管理情報抽出部13は、データブロックとデータ項目との対応関係についての情報(管理情報)を抽出する部位であって、トランスポーズドファイル生成部14は、管理情報を管理ファイル3に出力するとともに、データブロックを編成してトランスポーズドファイル4を生成する部位である。
【0014】
なお、行要素検出部11は行要素検出手段、データブロック生成部12はデータブロック生成手段、管理情報抽出部13は管理情報抽出手段、トランスポーズドファイル生成部14はトランスポーズドファイル生成手段に相当する。
【0015】
次に、この発明の実施の形態1におけるトランスポーズドファイル4について説明する。図2は、データファイル1、管理ファイル3、トランスポーズドファイル4の各情報についての論理的な対応関係を示した関係図である。図において、データファイル1はN個のレコード(それぞれのレコードをL−1〜L−Nとする)から構成されるファイルであり、さらに各レコードはField1〜FieldNまでのデータ項目によって構成されている。ただし前述の通り、レコードごとに構成するデータ項目は必ずしも同じではない。
【0016】
データファイル1において特徴的なことは、Field1〜Field4のデータがレコード単位で物理的に配置されている点である。従来では、アプリケーションプログラムが、例えばField2のデータのみを必要としている場合であっても、このアプリケーションプログラムにデータを供給するデータ管理システム(データベースマネージメントシステムなど)は、レコード全体を読み込んでいた。したがってField2以外のデータ、つまりField1やField4などのデータ項目のデータまでも読み込んでいた。このようなデータの入出力はアプリケーションプログラムの処理には不要な処理であるが、従来のデータ管理装置はレコード単位でデータを管理し、ディスク装置との入出力もレコード単位で行っていたために、無用なデータの入出力まで行うことになり、アプリケーションプログラムまで含めて処理性能を劣化させていた。
【0017】
これに対して、図のトランスポーズドファイル4は、レコード単位で配置されていたデータファイル1のデータをデータ項目単位に配置しなおしたものである。このように、データ項目単位に配置されたデータの並びのことを、あるいはそのようなデータの占める記憶領域のことを、データブロック(図2のB−1〜B−N)と呼ぶ。トランスポーズドファイル4のL−1#Field1とは、レコードL−1のデータ項目Field1のデータであることを意味する。このような配置にすることで、アプリケーションプログラムがデータ項目Field2のデータのみを必要とする場合に、他のデータ項目をディスク装置から読み出す必要がなくなり、処理を高速できる。
【0018】
また図の管理ファイル3は、トランスポーズドファイル4のデータブロックの編成情報を保持するファイルである。具体的には例えば、データ項目Field1、Field2〜FieldNに対応するデータブロックが開始するトランスポーズドファイル4の先頭からのオフセット値が格納されている。管理ファイル3は、アプリケーションプログラムがデータ管理装置2に対してデータの読み出しをリクエストした場合に、トランスポーズドファイル4中の各データが存在する場所を、データ管理装置2が取得するために参照される。
【0019】
次にデータ管理装置2の動作について図を用いて説明する。図3は、データ管理装置2によるトランスポーズドファイルの生成処理を示したフローチャートである。まずデータ管理装置2の行要素検出部11は、データファイル1からレコードL−1〜L−Nを読み込む(ステップS1)。取得したレコードL−1〜L−4はデータ管理装置2の図示せぬ記憶装置に一時的に記憶される。続いて行要素検出部11は、レコードL−1〜L−Nにおいて共通データ項目とその内容となるデータを抽出する(ステップS2)。ここで、共通データ項目の抽出は、例えばデータベースのカラム名など、データファイル1のカタログ情報からデータ項目名を取得し、それぞれのデータ項目を含むレコードが全レコードに占める割合を決定することによって行う。
【0020】
図4は、ステップS2の共通データ項目を抽出する処理を、より詳細に表したフローチャートである。まず変数k(kは1以上N以下の整数)の値を1とし(ステップS10)、kがN以下かどうかを調べる(ステップS11)。kがN以下である場合には(ステップS11:YES)、ステップS12に進んで、レコードL−kのデータ項目をデータファイル1のカタログ情報を参照するなどして取得する(ステップS12)。
【0021】
次に、ここで取得したデータ項目の個々について、ステップS14〜S16までの処理を繰り返す(ステップS13)。すなわちステップS14〜S16におけるデータ項目とは、ステップS13における個々のデータ項目を指すものとする。
【0022】
まず、データ項目が既検出データ項目かどうかを調べる(ステップS14)。ここで、これまでに検出されたデータ項目は、後述するステップS16で既検出データ項目として記憶されているものとする。データ項目が既検出データ項目である場合には(ステップS14:YES)、ステップS15に進んで、このデータ項目の出現度数に1加算する(ステップS15)。単一のレコードで同一のデータ項目が複数回出現する場合も考えられるが、このような場合に同一のデータ項目が複数回出現しても、ここでは出現度数が1のみ増えるものとして扱うこととする。ただし、このように単一のレコードに複数回出現したデータ項目については重複データ項目として別に記憶しておくこととする。
【0023】
一方、データ項目が既検出データ項目でない場合には(ステップS14:NO)、ステップS16に進んで、このデータ項目を既検出データ項目に追加する(ステップS16)。なおこの場合、新たに追加したデータ項目の出現度数を1に初期化するものとする。これらの処理(ステップS14〜S16)をステップS13の個々のデータ項目について行ったら、ステップS17に進み、変数kに1を加えてステップS11に戻る。
【0024】
ステップS11で、kがN以下となる場合についてはすでに述べたが、Nを超える場合には(ステップS11:NO)、この処理を終了する。この結果、レコードL−1〜L−Nに出現するデータ項目のそれぞれについて、出現度数が得られる。この出現度数がNに等しい場合には、そのデータ項目はデータファイル1のどのレコードにも出現するデータ項目であることを意味している。また出現度数がNに等しいわけではないが、近い値である場合には、一部のレコードのみこのデータ項目が欠落していることを意味している。そこで、出現度数が所定の値(たとえば0.5×N)以上となるデータ項目を共通データ項目として抽出することとする。以上がステップS2の共通データ項目抽出処理の内容である。
【0025】
なお、以上の処理においては、共通データ項目をデータファイル1の実際のデータの内容から算出された出現頻度に基づいて決定することとしたが、このような出現頻度によらず、予め所定のデータ項目を共通データ項目として決定しておく方法を採用してもよい。このような場合にはステップS2の処理は不要となる。
【0026】
次にデータブロックの生成を行う(ステップS3)。ここでは、データ項目ごとにデータブロックの生成を行う。データブロックとは、メモリ上の所定の大きさの領域である。データ項目の総数をmとして、1つのデータ項目を必要とするメモリ容量をそれぞれa(k)(ただしk=1,2,…,m)とすると、データブロックの領域の大きさをSは次の式によって求められる。
【数1】
【0027】
上式において注意を要するのは、あるデータ項目を含まないレコードについても、データブロックとして領域が確保されるという点である。ただし、このことは必須ではなく、レコードが含まないデータ項目に対しては領域を確保しないでおくようにしてもよい。この場合のデータブロック領域の大きさは、ステップS2で求めたデータ項目毎の出現度数を用いて算出される。すなわち、各データ項目の出現度数をh(k)とすれば、データブロックの領域の大きさは次式によって表される。
【数2】
【0028】
また、データブロック領域としては、単にデータ項目のデータだけでなく、データ項目とレコード番号を記憶できるようにしておいてもよい。これにより、そのデータ項目を有するレコードがトランスポーズドファイル4から明らかになるし、またこのようなレコードの補集合を求めることによって、そのデータ項目が欠落しているレコードを求めることもできる。
【0029】
さらにデータブロックは共通データ項目のみについて生成するようにしてもよいし、共通データ項目とそれ以外の項目について分け隔てなく生成するようにしてもよい。
【0030】
また、ステップS15において、重複データ項目として出現したデータ項目については、重複するデータ項目を異なるデータ項目とみなして別のデータブロックを割り当てるようにしてもよいし、また複数するデータ項目は1つのデータ項目として同じデータブロックに格納するようにしてもよい。重複データ項目を考慮すると、式(1)や式(2)で求めたメモリ容量よりも大きな領域が必要になるので、このような場合に備えて所定のサイズのメモリ(予約領域)分だけ大目に確保するようにしておく。
【0031】
また、式(1)や式(2)によって動的にメモリを確保するのではなく、例えば予め定められた共通データ項目がある場合には、それぞれの共通データ項目に基づいて所定のサイズのメモリ領域を最初から割り当ててしまう方法も考えられる。さらに共通データ項目以外のデータ項目(固有データ項目)についてのデータブロックを格納するための所定のサイズによる予約領域を予め確保しておくようにしてもよい。
【0032】
次に、このようにして確保されたデータブロックの領域にレコードL−1〜L−Nのデータ項目のデータを転送する。データ項目を含まないレコードについては、対応するデータブロックの領域に空であることを示すデータ(空フラグ)を設定することとする。例えばデータ項目が文字データである場合には、空であることを示すデータとして0を設定する。また16ビット整数データである場合には、32768を空であることを示すデータとして設定する。ただし、これらはあくまでも例にすぎず、他のデータを設定してもよい。図5は、このようにして生成したデータブロックの様子を示した図である。図の符号21で示した領域はレコード番号あるいはレコードを一意に識別するIDを格納するための領域であって、データブロックの各データ項目ごとにこのような領域が確保されることを示すものである。また符号22で示した領域は各データ項目のデータが格納される領域である。
【0033】
また、レコードL−1〜L−Nのデータがすべて欠落している場合には、データブロック全体が空フラグのみを有することとなる。このような場合には、データブロック領域の実体を確保せずにに、管理ファイル3にこのデータブロックに対応する領域を確保して、この領域に空フラグ(空データブロック)を設定するようにしてもよい。こうすることにより、管理ファイル3の管理情報を参照するだけで、データブロック全体が空であることを判定できるので、トランスポーズドファイルへの無駄なアクセスを回避でき、大幅な性能向上につながる。
【0034】
またデータブロックへのデータの転送では、レコード間の関連性を考慮してデータの配置を行ってもよい。例えば、「住所」というデータ項目が各レコードに共通して含まれている場合に、「住所」のデータが同じであるレコード同士は、「住所」のデータが異なるレコードと比較して、関連性が強いといえるであろう。また「住所」が同じでない場合であっても、関連性の強弱を観念することが可能である。例えば、類似するレコード同士(例えば町名や丁目まで同じレコードなど)は、非類似のレコード同士(都道府県からすでに相違するレコード同士など)より関連性が強いといえる。このような関連性の強弱は、例えば特定の目的を持ったアプリケーションプログラムから同時あるいは近い時刻にアクセスさせる可能性が高いか否かを基準に判断することもできる。
【0035】
また、共通データ項目のデータに類似性のないレコード間であっても、それぞれのデータ間に何らかの規則性があれば、関連性が強いとみなしてよい。例えば、ある共通データ項目の値が1であるレコードと2であるレコードは、その共通データ項目の値が1であるレコードと1000であるレコードよりも関連性が強いと考えられる。このように関連性の強いレコード同士を物理的に近い位置に配置することによって、アプリケーションプログラムがこれらのレコードを必要とした場合に、高速にアクセスできるようになる。また関連性の強いレコード同士をグルーピング(分類)することは、関連性の低いレコード同士を引き離すことをも意味している。関連性の低いレコードを完全に引き離すことができれば、それらを別の記憶装置に格納して、異なるプロセッサによって並列で検索するような処理も行うことができる。
【0036】
そこで、データブロックにデータを転送する場合には、それぞれのデータの属性に応じてソートして、ソートされた順にデータが格納されるように転送する。この結果、あるデータ項目について同じ値を有するレコード同士は隣接することになるし、またソート結果が近い場合には物理的に近い位置にレコード同士が配置されることになる。
【0037】
続いて、管理情報の抽出を行う(ステップS4)。管理情報とは、例えば各データブロックのサイズ情報である。各データブロックのサイズ情報は式(1)や(2)に基づいて算出される。またあるデータブロックに含まれるデータの個数(レコードの個数)を保持するようにしてもよい。
【0038】
最後に、トランスポーズファイルの編成を行う(ステップS5)。すなわち、データブロックを磁気ディスク装置上のトランスポーズドファイル4として出力し、併せて管理情報を管理ファイル3として出力する。データブロックのデータが離散的であって、関連性の強いレコード同士でグルーピングされており、さらに各グループ間の関連性が低い場合には、そのデータブロックをグループごとに分割して別のトランスポーズドファイルに出力してもよい。さらにそのようなトランスポーズドファイルを個別のプロセッサによって検索される複数の磁気ディスク上に記憶させるようにすれば、検索時に処理を高速に行うことができる。
【0039】
以上から明らかなように、データ管理装置2によれば、表形式でないデータ構造のファイルからトランスポーズドファイルを生成することができる。したがってデータ管理装置2によれば、表形式でないデータのトランスポーズドファイルを準備しておくことで、アプリケーションプログラムが特定のデータ項目の読み出しを行う場合に、そのデータ項目と同じレコードに存在する他のデータ項目の読み出しを行わないようにすることができ、高速なデータ読み出しを行うことができる。
【0040】
なお、データ管理装置2の構成要素である行要素検出部11、データブロック生成部12、管理情報抽出部13、トランスポーズドファイル生成部14に相当する処理を行うコンピュータプログラムを逐次コンピュータに実行させるコンピュータプログラムを準備することによって、コンピュータにデータ管理装置2と同様の動作をさせるようにしてもよいことはいうまでもない。
【0041】
実施の形態2.
この発明の実施の形態1によるデータ管理装置2は、レコード間でデータ項目の不整合を有するデータファイルについてトランスポーズドファイル変換を行うものであった。これに対して実施の形態2では、ネットワークを介してアクセスする複数のファイルの含むデータ項目からトランスポーズドファイルを生成するデータ管理装置について説明する。
【0042】
図6は、この発明の実施の形態2によるデータ管理装置の構成を示すブロック図である。図において、データファイル101およびデータファイル102はインターネットやLANなどのネットワーク103を介してアクセス可能なコンピュータによって管理されるファイルであって、それぞれ異なるコンピュータによって記憶されているものとする。データファイル1および2は、例えばHTML(Hyper Text Markup Language)形式のファイルであるものとし、http(Hyper Text Transfer Protocol)などの通信プロトコルを介してそれぞれのコンピュータで動作するWebサーバプログラムから取得可能なものである。その他、図1と同一の符号を付した構成要素については、実施の形態1と同様であるので、説明を省略する。
【0043】
次に、実施の形態2におけるトランスポーズドファイルについて説明する。図7は、実施の形態2におけるデータファイル101および102とトランスポーズドファイル3、管理ファイル4との論理的な対応関係を示した図である。ここで、データファイル101および102は、たとえば企業の会社概要を案内するWebページのHTMLファイルであるものとする。
【0044】
一般に、HTMLファイルは、テキストデータで構成されており、固有のレコード構造を有しているわけではない。したがって実施の形態1のデータ管理装置2によって、これらのデータファイルから直接的にトランスポーズドファイルを生成するのは困難である。
【0045】
また会社概要のように、提供される情報としては会社(Webページ)によらずほぼ均質と思われる情報であっても、実は、資本金のようにどの会社概要のWebページにも記載されている情報もあれば、本社所在地のように必ずしも記載されていない情報もある。したがって、これらのデータファイル間においてデータ項目の不整合が存在しているので、不完全データベースを構成するものであるといえる。
【0046】
一方、HTMLファイルは、データ項目がレコード毎に配置されたデータではないが、各HTMLファイルをレコードとみなすこともできる。そうすると、各HTMLファイルに含まれているデータをデータ項目中心の配置にデータを置き換えることによって、トランスポーズドファイル変換が成立する。
【0047】
図7のトランスポーズドファイル4は、このようにして生成するファイルである。また管理ファイル3は、実施の形態1と同様にデータ管理装置2がトランスポーズドファイル4にアクセスする上で参照する情報を保持するファイルである。
【0048】
次に、実施の形態2によるデータ管理装置2の動作を図を用いて説明する。図8は、データ管理装置2の動作を示すフローチャートである。なお図において、図3のフローチャートと同じ符号を付したステップについては、図3のフローチャートの処理と同様の処理を行うことを意味している。そこで、ここでは図3のフローチャートでは現れなかった符号を付したステップ(ステップS21)を中心に説明することとする。
【0049】
まず行要素検出部11は、図示せぬネットワーク入出力手段を用いて、httpなどの手順により、ネットワーク103を介してデータファイル101および102を取得する(ステップS21)。取得したデータファイル101および102はデータ管理装置2の図示せぬ記憶装置に一時的に記憶される。なお、データファイルとしては説明の便宜上データファイル101および102の2個のファイルの場合について説明しているが、実際には、より多くのファイルを扱うことになる。
【0050】
また、データファイルの取得方法としては、予め決められたいくつかのURL(Universal Resource Locator)のHTML文書ファイルを取得するが、起点となるURLを指定しておき、そのデータファイルとなるHTML文書中のリンクを辿っていって、次のデータファイルを取得するようにしてもよい。さらに、自動巡回ソフトウェアなどを利用して、定期的にデータファイルとなるHTML文書ファイルを取得するようにしてもよい。
【0051】
次に行要素検出部11は、ステップS21にて取得したデータファイル101および102から共通データ項目とその内容となるデータを抽出する(ステップS22)。ここで、データファイル101および102は、特定のレコード構造を持たないHTMLファイルであるので、文字列解析とタグ解析を行うことによってデータ項目とデータを抽出する。
【0052】
元来、HTML文書は利用者がブラウザ(インターネット閲覧ソフトウェア)を用いて情報を得ることを前提に作成されている。したがって、HTML文書中の情報には、前後にその情報の項目名が必ず表示されている。たとえば前掲の例(図7)でいえば、資本金の金額の左側には「資本金」という文字列が表示されている。そこで、このようなデータ項目名とデータの出現位置をルール化しておき、このルールに基づいてHTML文書の一部分をパターンマッチングすることで、データ項目名とデータを切り出すようにする。
【0053】
このようなルールとしては、例えば次のようなものが考えられる。
(1)データ項目名の直後に出現する文字列は、そのデータ項目のデータである。
(2)テーブルタグ(<tr>〜</tr>)を解析した結果、データ項目と同じ行に出現する文字列はそのデータ項目のデータである。
【0054】
その他、公知のWeb情報抽出技術、テキストマイニング技術を用いて、データ項目とデータを抽出するようにしてもよい。
【0055】
以降、ステップS3〜S5の処理については、実施の形態1と同様であるので説明を省略する。
【0056】
以上から明らかなように、実施の形態2によるデータ管理装置2によれば、複数のファイルから、データ項目の不整合が存在する場合であっても、トランスポーズドファイルを生成することができる。
【0057】
さらにレコード中心にデータが配置されていた表形式データファイルに比べて、HTML文書ファイルから情報を抽出する処理は、字句解析処理が必要となるので、計算機に対する負荷が大きい。したがって表形式データファイルをトランスポーズドファイルに変換するだけでもデータアクセス性能の向上に十分に寄与するのであるから、HTML文書のように特定の物理構造を持たないデータファイルからトランスポーズドファイルを生成して、以後トランスポーズドファイルに基づいてデータ取得を行うようにすれば、性能向上に極めて大きく寄与する。
【0058】
なお実施の形態1と同様に、データ管理装置2の構成要素である行要素検出部11、データブロック生成部12、管理情報抽出部13、トランスポーズドファイル生成部14に相当する処理を行うコンピュータプログラムを逐次コンピュータに実行させるコンピュータプログラムを準備することによって、コンピュータにデータ管理装置2と同様の動作をさせるようにしてもよいことはいうまでもない。
【0059】
【発明の効果】
この発明によるデータ管理装置は、レコード間にデータ項目の不整合が存在する場合であっても、トランスポーズドファイル変換を行うので、一部のデータ項目のデータのみに頻繁にアクセスするアプリケーションプログラムの処理について飛躍的な性能向上を果たすことができるという極めて有利な効果を奏する。
【0060】
また、この発明によるデータ管理装置は、ファイルが記憶するデータ項目間に不整合が存在する場合であっても、トランスポーズドファイル変換を行うので、一部のデータ項目のデータのみに頻繁にアクセスするアプリケーションプログラムの処理について飛躍的な性能向上を果たすことができるという極めて有利な効果を奏する。
【図面の簡単な説明】
【図1】 この発明の実施の形態1によるデータ管理装置の構成を示すブロック図である。
【図2】 この発明の実施の形態1のデータファイル、トランスポーズドファイル、管理ファイルの情報間の論理的な対応関係を示した関係図である。
【図3】 この発明の実施の形態1によるデータ管理装置の動作を示すフローチャートである。
【図4】 この発明の実施の形態1によるデータ管理装置の共通データ項目抽出処理のフローチャートである。
【図5】 レコード間にデータ項目の不整合を有する場合のトランスポーズドファイル変換の概念図である。
【図6】 この発明の実施の形態2によるデータ管理装置の構成を示すブロック図である。
【図7】 この発明の実施の形態2のデータファイル、トランスポーズドファイル、管理ファイルの情報間の論理的な対応関係を示した関係図である。
【図8】 実施の形態2によるデータ管理装置の動作を示すフローチャートである。
【符号の説明】
1、101、102 データファイル
2 データ管理装置
3 管理ファイル
4 トランスポーズドファイル
11 行要素検出部
12 データブロック生成部
13 管理情報抽出部
14 トランスポーズドファイル生成部。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data management apparatus that manages a large amount of stored data such as a database, and particularly relates to a data management technique for efficiently reading out only necessary data.
[0002]
[Prior art]
With the spread of the Internet, services such as search engines that search for information from Web sites on the Internet have become common. Many of these search engines perform a character string search on HTML of a Web site on the Internet. For this reason, it can be said that it is sufficiently practical for users to search for information for research purposes. However, it is difficult to use it as a database for mission-critical business systems. The reason for this is that the format of information stored on websites on the Internet varies from one website to another, and when the entire Internet is viewed, information missing or redundant information is included in each website. is there. On the other hand, since it can be said that the Internet has a very large amount of information as a whole, a method for effectively using such information is desired.
[0003]
When searching for information across databases not limited to the Internet, there are often inconsistencies between databases, duplication and omission of information, and it is often difficult to process even simple queries. Such a database is referred to as an “incomplete database”, and even if there is a discrepancy between databases, research is being made to execute a wide area query process as much as possible (for example, Non-Patent Document 1).
[0004]
By the way, generally, in a disk device, data is organized in units of records and arranged according to the order of each record. In each record, the data is arranged in the order of definition of the field (data item). On the other hand, the frequency at which the application program uses part of the data of the record is higher than the frequency at which the data of the entire record is used. Nevertheless, the conventional database system performs the process of reading the entire record from the disk device and cutting out and passing the necessary data to the application program. Therefore, it takes time to read from the disk device more than necessary. As means for solving such a problem, there is a method of constructing a transposed file (or transposed file) (for example, Patent Document 1).
[0005]
In this case, only the line elements constituting the record are extracted, and the file arrangement is reconfigured. According to this method, it is not necessary to read from the disk device row elements other than the row elements including data required by the application program. Therefore, the performance is improved.
[0006]
[Non-Patent Document 1]
http: // www. tkl. iis. u-tokyo. ac. jp / ˜otsuka / profile / kenkyu2. html "wide area inquiry using incomplete database"
[0007]
[Patent Document 1]
Japanese Patent Application Laid-Open No. 11-154155 “File Management System” FIG. 1,
[0008]
[Problems to be solved by the invention]
However, such a speed-up technique cannot be used as a technique for speeding up access to information scattered in the aforementioned network. In order to construct a transposed file from a data file, all the records in the data file must be composed of the same row element (data item). In other words, if a row element is missing in a record or a row element that does not exist in other records, the transposed file conversion is correctly performed for missing data items and data items that are not in other records. It is not possible. For these reasons, transposed file conversion has not been used as a technique for speeding up access to records and files having inconsistent data items.
[0009]
The present invention provides data management that enables high-speed access to data from an application program by performing transposed file conversion even when there is a data item inconsistency between records in one or more files. An object is to provide an apparatus and a program.
[0010]
[Means for Solving the Problems]
The data management device according to the present invention, a row element detection means for detecting a common data item common among some of those records from a file including a plurality of records having different data structures,
Data block generating means for generating a data block comprising data collected from the plurality of records for each common data item;
Management information extracting means for extracting the correspondence between the data block and the common data item as management information;
The data block is organized to generate a transposed file and a transposed file generating means for outputting the management information to a management file.
[0011]
Further, the data management device according to the present invention includes row element detection means for detecting a common data item that is common among a plurality of files storing different data items,
Data block generating means for generating a data block composed of data collected from the plurality of files for each common data item;
Management information extracting means for extracting the correspondence between the data block and the data item as management information;
The data block is organized to generate a transposed file and a transposed file generating means for outputting the management information to a management file.
[0012]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below.
FIG. 1 is a block diagram showing a configuration of a data management apparatus according to
[0013]
The
[0014]
The row element detection unit 11 is a row element detection unit, the data
[0015]
Next, the transposed
[0016]
What is characteristic about the data file 1 is that the data of
[0017]
On the other hand, the transposed
[0018]
The
[0019]
Next, the operation of the
[0020]
FIG. 4 is a flowchart showing in more detail the process of extracting the common data item in step S2. First, the value of the variable k (k is an integer from 1 to N) is set to 1 (step S10), and it is checked whether k is N or less (step S11). When k is N or less (step S11: YES), the process proceeds to step S12, and the data item of the record Lk is acquired by referring to the catalog information of the data file 1 (step S12).
[0021]
Next, the process from step S14 to S16 is repeated for each data item acquired here (step S13). That is, the data items in steps S14 to S16 refer to individual data items in step S13.
[0022]
First, it is checked whether the data item is a detected data item (step S14). Here, it is assumed that the data items detected so far are stored as already detected data items in step S16 described later. When the data item is a detected data item (step S14: YES), the process proceeds to step S15, and 1 is added to the appearance frequency of the data item (step S15). Although the same data item may appear multiple times in a single record, even if the same data item appears multiple times in this case, it is assumed that the appearance frequency is increased by 1 here. To do. However, data items that appear multiple times in a single record are stored separately as duplicate data items.
[0023]
On the other hand, if the data item is not a detected data item (step S14: NO), the process proceeds to step S16, and this data item is added to the detected data item (step S16). In this case, the appearance frequency of the newly added data item is initialized to 1. When these processes (steps S14 to S16) are performed for each data item in step S13, the process proceeds to step S17, 1 is added to the variable k, and the process returns to step S11.
[0024]
In step S11, the case where k is equal to or smaller than N has already been described. However, when it exceeds N (step S11: NO), this process ends. As a result, the appearance frequency is obtained for each of the data items appearing in the records L-1 to LN. When the appearance frequency is equal to N, it means that the data item is a data item that appears in any record of the
[0025]
In the above processing, the common data item is determined based on the appearance frequency calculated from the actual data contents of the
[0026]
Next, a data block is generated (step S3). Here, a data block is generated for each data item. A data block is an area of a predetermined size on a memory. Assuming that the total number of data items is m and the memory capacity that requires one data item is a (k) (where k = 1, 2,..., M), S is the size of the area of the data block. It is calculated by the following formula.
[Expression 1]
[0027]
In the above formula, it is necessary to pay attention to the fact that an area is secured as a data block even for a record that does not include a data item. However, this is not essential, and an area may not be secured for a data item that does not include a record. The size of the data block area in this case is calculated using the appearance frequency for each data item obtained in step S2. That is, if the appearance frequency of each data item is h (k), the size of the data block area is expressed by the following equation.
[Expression 2]
[0028]
Further, as the data block area, not only data items but also data items and record numbers may be stored. As a result, a record having the data item becomes clear from the transposed
[0029]
Further, the data block may be generated only for the common data item, or may be generated for the common data item and the other items without being separated.
[0030]
In step S15, for the data item that appears as a duplicate data item, the duplicate data item may be regarded as a different data item, and another data block may be assigned. The items may be stored in the same data block. In consideration of duplicate data items, an area larger than the memory capacity obtained by Equation (1) or Equation (2) is required, so that a memory (reserved area) of a predetermined size is increased in preparation for such a case. Keep it in your eyes.
[0031]
Further, instead of dynamically securing the memory according to the formula (1) or the formula (2), for example, when there is a predetermined common data item, a memory of a predetermined size based on each common data item A method of allocating the area from the beginning is also conceivable. Furthermore, a reserved area having a predetermined size for storing data blocks for data items (unique data items) other than the common data items may be secured in advance.
[0032]
Next, the data items of the records L-1 to LN are transferred to the area of the data block secured in this way. For records that do not include data items, data (empty flag) indicating that the corresponding data block area is empty is set. For example, when the data item is character data, 0 is set as data indicating that the data item is empty. In the case of 16-bit integer data, 32768 is set as data indicating that it is empty. However, these are merely examples, and other data may be set. FIG. 5 is a diagram showing a state of the data block generated in this way. An area indicated by
[0033]
Further, when all the data of the records L-1 to L-N is missing, the entire data block has only an empty flag. In such a case, an area corresponding to this data block is secured in the
[0034]
In the data transfer to the data block, the data may be arranged in consideration of the relationship between records. For example, if the data item “address” is included in each record in common, the records with the same “address” data are related to the records with different “address” data. Can be said to be strong. Even if the “address” is not the same, it is possible to consider the strength of the relevance. For example, it can be said that similar records (for example, the same record up to a town name or chome) are more relevant than dissimilar records (such as records that are already different from prefectures). The level of such relevance can also be determined based on, for example, whether or not there is a high possibility of access from an application program having a specific purpose at the same time or near time.
[0035]
Further, even among records having no similarity in the data of the common data item, if there is some regularity between the respective data, it may be considered that the relationship is strong. For example, a record with a common data item value of 1 and a record with a common data item value of 2 are considered more relevant than records with a common data item value of 1 and 1000. By arranging records that are strongly related to each other in a physically close position, when an application program needs these records, it can be accessed at high speed. In addition, grouping (classifying) records with high relevance also means separating records with low relevance. If records with low relevance can be completely separated, processing can be performed in which they are stored in another storage device and searched in parallel by different processors.
[0036]
Therefore, when data is transferred to the data block, the data is sorted according to the attribute of each data and transferred so that the data is stored in the sorted order. As a result, records having the same value for a certain data item are adjacent to each other, and when the sorting results are close, the records are arranged at physically close positions.
[0037]
Subsequently, management information is extracted (step S4). The management information is, for example, size information of each data block. The size information of each data block is calculated based on equations (1) and (2). Further, the number of data (number of records) included in a certain data block may be held.
[0038]
Finally, the transpose file is organized (step S5). That is, the data block is output as the transposed
[0039]
As is apparent from the above, according to the
[0040]
Note that a computer program for performing processing corresponding to the row element detection unit 11, the data
[0041]
The
[0042]
FIG. 6 is a block diagram showing a configuration of a data management apparatus according to
[0043]
Next, the transposed file in the second embodiment will be described. FIG. 7 is a diagram showing a logical correspondence between the data files 101 and 102, the transposed
[0044]
Generally, an HTML file is composed of text data and does not have a unique record structure. Therefore, it is difficult for the
[0045]
Moreover, even if the information provided seems to be almost uniform regardless of the company (Web page) as in the company overview, it is actually described in any company overview Web page, such as capital. Some information may not be listed, such as the head office location. Therefore, since there is a data item inconsistency between these data files, it can be said that it constitutes an incomplete database.
[0046]
On the other hand, the HTML file is not data in which data items are arranged for each record, but each HTML file can be regarded as a record. Then, transposed file conversion is established by replacing the data contained in each HTML file with the data item centered arrangement.
[0047]
The transposed
[0048]
Next, the operation of the
[0049]
First, the row element detection unit 11 acquires the data files 101 and 102 via the network 103 by using a network input / output unit (not shown) according to a procedure such as http (step S21). The acquired
[0050]
As a data file acquisition method, an HTML document file of some predetermined URLs (Universal Resource Locator) is acquired. In the HTML document that becomes the data file, a URL as a starting point is specified. The next data file may be acquired by following the link. Furthermore, an HTML document file that becomes a data file may be periodically acquired using automatic patrol software or the like.
[0051]
Next, the row element detection unit 11 extracts a common data item and data serving as the content from the data files 101 and 102 acquired in step S21 (step S22). Here, since the data files 101 and 102 are HTML files having no specific record structure, data items and data are extracted by performing character string analysis and tag analysis.
[0052]
Originally, an HTML document is created on the assumption that a user obtains information using a browser (Internet browsing software). Therefore, the item name of the information is always displayed before and after the information in the HTML document. For example, in the above example (FIG. 7), the character string “capital” is displayed on the left side of the amount of capital. Therefore, such data item names and data appearance positions are ruled out, and a data item name and data are cut out by pattern matching a part of the HTML document based on this rule.
[0053]
As such a rule, for example, the following can be considered.
(1) A character string appearing immediately after a data item name is data of the data item.
(2) As a result of analyzing the table tag (<tr> to </ tr>), the character string that appears on the same line as the data item is the data of the data item.
[0054]
In addition, data items and data may be extracted using a known Web information extraction technique or text mining technique.
[0055]
Henceforth, about the process of step S3-S5, since it is the same as that of
[0056]
As is clear from the above, according to the
[0057]
Furthermore, compared to a tabular data file in which data is arranged at the center of the record, the process of extracting information from the HTML document file requires a lexical analysis process, and therefore has a greater load on the computer. Therefore, simply converting a tabular data file into a transposed file can contribute to the improvement of data access performance, so a transposed file is generated from a data file that does not have a specific physical structure, such as an HTML document. If the data acquisition is performed based on the transposed file thereafter, it will greatly contribute to the performance improvement.
[0058]
As in the first embodiment, a computer that performs processing corresponding to the row element detection unit 11, the data
[0059]
【The invention's effect】
Since the data management apparatus according to the present invention performs transposed file conversion even when there is inconsistency of data items between records, an application program that frequently accesses only data of some data items. There is an extremely advantageous effect that a dramatic improvement in performance can be achieved for the processing.
[0060]
In addition, the data management apparatus according to the present invention performs transposed file conversion even when inconsistencies exist between data items stored in a file, and therefore frequently accesses only data of some data items. As a result, the performance of the application program can be greatly improved.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a data management apparatus according to
FIG. 2 is a relationship diagram showing a logical correspondence between data file, transposed file, and management file information according to
FIG. 3 is a flowchart showing an operation of the data management apparatus according to the first embodiment of the present invention.
FIG. 4 is a flowchart of common data item extraction processing of the data management apparatus according to
FIG. 5 is a conceptual diagram of transposed file conversion when there is a data item mismatch between records.
FIG. 6 is a block diagram showing a configuration of a data management apparatus according to
FIG. 7 is a relationship diagram showing a logical correspondence between data file, transposed file, and management file information according to
FIG. 8 is a flowchart showing an operation of the data management apparatus according to the second embodiment.
[Explanation of symbols]
1, 101, 102 Data file
2 Data management device
3 management files
4 Transposed files
11 Line element detector
12 Data block generator
13 Management information extractor
14 Transposed file generator.
Claims (11)
前記共通データ項目ごとに、前記複数のレコードより収集したデータからなるデータブロックを生成するデータブロック生成手段と、
前記データブロックと前記共通データ項目との対応関係を管理情報として抽出する管理情報抽出手段と、
前記データブロックを編成してトランスポーズドファイルを生成するとともに、前記管理情報を管理ファイルに出力するトランスポーズドファイル生成手段とを備えたことを特徴とするデータ管理装置。 Calculate the frequency of appearance of data items constituting the data structure from the file including a plurality of records having different data structures, and the ratio of the frequency of appearance to the total number of the plurality of records A row element detecting means for detecting a common data item common among some of the plurality of records from the data items,
Data block generating means for generating a data block comprising data collected from the plurality of records for each common data item;
Management information extracting means for extracting the correspondence between the data block and the common data item as management information;
A data management apparatus comprising: a transposed file generating unit that organizes the data blocks to generate a transposed file and outputs the management information to a management file.
前記データブロック生成手段は、さらに前記共通データ項目が欠落しているレコードに対応する領域を前記データブロックに確保するとともに、前記データブロック中のデータとして、前記共通データ項目が欠落しているレコードについては空フラグを設定することを特徴とする請求項1に記載のデータ管理装置。The line element detection means further detects a record in which the common data item is missing from the file,
The data block generation means further secures an area corresponding to the record in which the common data item is missing in the data block, and the record in which the common data item is missing as data in the data block. The data management apparatus according to claim 1, wherein an empty flag is set.
前記データブロック生成手段は、前記共通データ項目のデータを格納する領域とは別に、所定の予約領域を前記データブロックに確保するとともに、前記レコードより収集した前記固有データ項目のデータを前記予約領域に記憶させることを特徴とする請求項1又は請求項2のいずれかに記載のデータ管理装置。The line element detection means further detects a record including a unique data item different from the common data item from the file,
The data block generating means secures a predetermined reserved area in the data block separately from an area for storing the data of the common data item, and stores the data of the unique data item collected from the record in the reserved area. The data management apparatus according to claim 1, wherein the data management apparatus is stored.
前記共通データ項目ごとに、前記複数のファイルより収集したデータからなるデータブロックを生成するデータブロック生成手段と、
前記データブロックとデータ項目との対応関係を管理情報として抽出する管理情報抽出手段と、
前記データブロックを編成してトランスポーズドファイルを生成するとともに、前記管理情報を管理ファイルに出力するトランスポーズドファイル生成手段とを備えたことを特徴とするデータ管理装置。The frequency of occurrence of the data item appearing in the plurality of files is calculated from a plurality of files storing different data items, and based on the ratio of the frequency of appearance to the total number of the plurality of files, A line element detecting means for detecting a common data item common among some of the plurality of files,
Data block generating means for generating a data block composed of data collected from the plurality of files for each common data item;
Management information extracting means for extracting the correspondence between the data block and the data item as management information;
A data management apparatus comprising: a transposed file generating unit that organizes the data blocks to generate a transposed file and outputs the management information to a management file.
前記データブロック生成手段は、前記共通データ項目が欠落しているファイルに対応する領域を前記データブロックに確保するとともに、前記データブロック中のデータとして、前記共通データ項目が欠落しているレコードについては空フラグを設定することを特徴とする請求項5に記載のデータ管理装置。The line element detection means further detects a file in which the common data item is missing from the plurality of files,
The data block generation means secures an area corresponding to a file in which the common data item is missing in the data block, and as data in the data block, a record in which the common data item is missing. 6. The data management apparatus according to claim 5, wherein an empty flag is set.
前記データブロック生成手段は、前記共通データ項目のデータを格納する領域とは別に、所定の予約領域を前記データブロックに確保するとともに、前記ファイルより収集した前記固有データ項目のデータを前記予約領域に記憶させることを特徴とする請求項5又は請求項6のいずれかに記載のデータ管理装置。The row element detection means further detects a file storing a unique data item different from the common data item from the plurality of files,
The data block generation means secures a predetermined reserved area in the data block separately from an area for storing the data of the common data item, and stores the data of the unique data item collected from the file in the reserved area. 7. The data management apparatus according to claim 5, wherein the data management apparatus is stored.
前記複数のレコードより前記共通データ項目ごとに収集したデータからなるデータブロックを生成するデータブロック生成手段と、
前記データブロックと前記共通データ項目との対応関係を管理情報として抽出する管理情報抽出手段と、
前記データブロックを編成してトランスポーズドファイルを生成するとともに、前記管理情報を管理ファイルに出力するトランスポーズドファイル生成手段として機能させるためのデータ管理プログラム。 The computer calculates, from a file including a plurality of records having different data structures, an appearance frequency at which the data items constituting the data structure appear in the plurality of records, and the appearance frequency is a total number of the plurality of records. Row element detection means for detecting a common data item common among some of the plurality of records , based on the proportion of the data items,
Data block generating means for generating a data block comprising data collected for each common data item from the plurality of records;
Management information extracting means for extracting the correspondence between the data block and the common data item as management information;
A data management program for organizing the data blocks to generate a transposed file and to function as transposed file generation means for outputting the management information to a management file.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003156688A JP4320567B2 (en) | 2003-06-02 | 2003-06-02 | Data management apparatus and data management program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003156688A JP4320567B2 (en) | 2003-06-02 | 2003-06-02 | Data management apparatus and data management program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004362040A JP2004362040A (en) | 2004-12-24 |
JP4320567B2 true JP4320567B2 (en) | 2009-08-26 |
Family
ID=34050690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003156688A Expired - Lifetime JP4320567B2 (en) | 2003-06-02 | 2003-06-02 | Data management apparatus and data management program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4320567B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5194936B2 (en) * | 2008-03-27 | 2013-05-08 | 日本電気株式会社 | File conversion apparatus, file conversion method, and program |
KR101696338B1 (en) * | 2015-02-16 | 2017-01-13 | 네이버 주식회사 | System and method for processing and analysing big data provding efficiently using columnar index data format |
KR101795564B1 (en) * | 2017-01-09 | 2017-11-09 | 네이버 주식회사 | System and method for processing and analysing big data provding efficiently using columnar index data format |
-
2003
- 2003-06-02 JP JP2003156688A patent/JP4320567B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2004362040A (en) | 2004-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Crescenzi et al. | Clustering web pages based on their structure | |
US6757678B2 (en) | Generalized method and system of merging and pruning of data trees | |
US6424980B1 (en) | Integrated retrieval scheme for retrieving semi-structured documents | |
KR101450358B1 (en) | Searching structured geographical data | |
JP3842573B2 (en) | Structured document search method, structured document management apparatus and program | |
US6148298A (en) | System and method for aggregating distributed data | |
CN100547593C (en) | During climbing the process of getting, arranges web the system and method for priority to the website | |
US8832102B2 (en) | Methods and apparatuses for clustering electronic documents based on structural features and static content features | |
US20090248707A1 (en) | Site-specific information-type detection methods and systems | |
US20130232157A1 (en) | Systems and methods for processing unstructured numerical data | |
JP2009020901A (en) | Database system, method of database retrieval and recording medium | |
KR100509276B1 (en) | Method for searching web page on popularity of visiting web pages and apparatus thereof | |
JP3803961B2 (en) | Database generation apparatus, database generation processing method, and database generation program | |
JP2000348061A (en) | Semi-structured document information integrating retrieval device, semi-structured document information extracting device, its method and recording medium for storing its program | |
JPH11213014A (en) | Data base system, data base retrieving method and recording medium | |
JP2003141158A (en) | Retrieval device and method using pattern under consideration of sequence | |
JP4750628B2 (en) | Information ranking method and apparatus, program, and computer-readable recording medium | |
US20090150355A1 (en) | Software method for data storage and retrieval | |
CN114117242A (en) | Data query method and device, computer equipment and storage medium | |
JP4876151B2 (en) | Search keyword candidate display system, search keyword candidate display method, and program | |
JP4320567B2 (en) | Data management apparatus and data management program | |
US8504552B2 (en) | Query based paging through a collection of values | |
Kalaivani et al. | A Novel technique to pre-process web log data using SQL server management studio | |
KR100496384B1 (en) | Search engine, search system, method for making a database in a search system, and recording media | |
Hadi et al. | Resource Description Framework Representation for Transaction Log File |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060120 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081216 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090213 |
|
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: 20090507 |
|
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: 20090520 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4320567 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120612 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130612 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |