JP2014219865A - データ索引装置、データ索引方法及びプログラム - Google Patents

データ索引装置、データ索引方法及びプログラム Download PDF

Info

Publication number
JP2014219865A
JP2014219865A JP2013099231A JP2013099231A JP2014219865A JP 2014219865 A JP2014219865 A JP 2014219865A JP 2013099231 A JP2013099231 A JP 2013099231A JP 2013099231 A JP2013099231 A JP 2013099231A JP 2014219865 A JP2014219865 A JP 2014219865A
Authority
JP
Japan
Prior art keywords
data
node
penalty
attribute
attributes
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.)
Granted
Application number
JP2013099231A
Other languages
English (en)
Other versions
JP5953262B2 (ja
Inventor
豊 荒川
Yutaka Arakawa
豊 荒川
中村 隆幸
Takayuki Nakamura
隆幸 中村
伸彦 松浦
Nobuhiko Matsuura
伸彦 松浦
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2013099231A priority Critical patent/JP5953262B2/ja
Publication of JP2014219865A publication Critical patent/JP2014219865A/ja
Application granted granted Critical
Publication of JP5953262B2 publication Critical patent/JP5953262B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F17/30

Landscapes

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

Abstract

【課題】ペナルティの算出に必要な計算量を低減して新規データの挿入処理を高速に行えるようにし、かつ検索時に辿るべきノード数を抑制して検索効率を高める。
【解決手段】データ集合と、UBI-Tree構造と、ペナルティの算出に使用する属性を予め定義した着目属性リストとを予め記憶ユニット3に記憶しておき、上記UBI-Tree構造中に新規データを挿入する際に、当該新規データが有する属性のうち、上記着目属性リストに定義された属性に該当する属性のみを用いてペナルティを算出し、上記新規データの挿入を行うようにしている。また、次元抑制ペナルティ無効化フラグを記憶ユニット3にさらに記憶しておき、当該フラグがONに設定されている場合には当該ノードに含まれる属性種類数をペナルティとして用いずに当該ノードが検索される確率のみをペナルティとして用いるようにしている。
【選択図】図1

Description

この発明は、木構造索引を用いてデータの挿入及び検索を行うデータ索引装置、データ索引方法及びプログラムに関する。
従来、データベース技術分野において、検索を高速化するための技術としてB-TreeやR-Treeなど木構造をもつ索引技術が種々提案されている。その1つとして、センサの計測データのような情報、すなわちセンサ情報などの多様な属性と属性値の組(key-value pairとも呼ばれる)を1つ以上含むデータに対する索引技術として、UBI-Tree(特許文献1)がある。UBI-Treeを使用すると、例えば「センサID=1、時間=3、温度=20」のようにセンサIDと時間と温度という3つの属性を含むデータと、「センサID=3、時間=7、照度=6、音量=4」のようにセンサIDと時間と照度と音量という4つの属性を含むデータを1つの索引に効率的に索引付けすることができる。
ところで、UBI-Treeにおいては、新規データの索引付けを行う際、つまりUBI-Treeの木構造に対して新規データの挿入を行う際に、他の多くの木構造の索引技術と同様に、ルートノードから、挿入先ノード選択アルゴリズムに基づいて似たデータを保持する子ノードを選択しながらノードを辿り、辿り着いたリーフノードに新規データを保持させる。ここで、似たデータとは、新規データとの間で属性の種類やその属性値が互いに近いデータを指す。
また、UBI-Treeの木構造に新規データを挿入することで、保持するデータの数、あるいは保持する子ノードの数が上限を越えるノードが発生した場合には、ノード分割アルゴリズムに基づいてノードを2つに分割し、この分割された2つのノードにデータまたは子ノードを分配する。このとき、似たデータ同士、あるいは似たデータを下位に保持する子ノード同士を同じノードに分配する。このようにすることで、互いに似たデータを同じリーフノード、あるいは同じ部分木に分類して保持することが可能となる。これにより、検索では類似したデータを取得するための条件が設定されることが多いため、検索条件に合致するデータが1つのリーフノード、あるいは1つの部分木に集まって存在することとなり、データが大量に存在する場合でも、特定のノードだけを辿り、効率的に検索条件に合致するデータを検索することができる。
上記挿入先ノードの選択アルゴリズムとノード分割アルゴリズムは、R-TreeにおいてはそれぞれChooseSubtree、Splitと呼ばれる。また、両アルゴリズムともペナルティと呼ばれる指標を用いる。挿入先ノード選択アルゴリズムは、新規データを挿入した際に、ペナルティの増分が最も少ないノードを選択するアルゴリズムである。またノード分割アルゴリズムは、分割後の2つのノードのペナルティの和が最も小さくなる分割方法を行うアルゴリズムである。
UBI-Treeにおいては、ペナルティとして「当該ノードが検索される確率」または「当該ノードに含まれる属性種類数」、あるいはその組合せが用いられる。「当該ノードが検索される確率」をペナルティとして用いた場合、挿入先ノード選択アルゴリズムまたはノード分割アルゴリズムにおけるペナルティを小さく抑えることで、検索時に辿るべきノード数を小さくし、検索効率を高めることができる。また、「当該ノードに含まれる属性種類数」をペナルティとして用いた場合、同様にペナルティを小さく抑えることで、検索条件に指定された属性の種類に基づき検索時に辿るべきノード数を小さくし、検索効率を高めることができる。「当該ノードが検索される確率」と「当該ノードに含まれる属性種類数」の組合せをペナルティに用いた場合、両方の効果が期待できる。「当該ノードが検索される確率」は、それまでに挿入されたデータの統計情報から算出する。該統計情報は属性表に記録されており、該属性表には各属性について、挿入したデータ内での出現頻度や対応する属性値の最大値、最小値が記録されている。新規データを挿入するたびに該属性表は更新される。「当該ノードが検索される確率」は、該属性表を用いて、次式で算出される。
当該ノードが検索される確率=ΣXi Yi (全属性集合Aに対し、i∈A)
i
但し、Xi は属性i で検索された場合に当該ノードが検索される確率、Yi は検索条件に属性i が用いられる確率を示す。
また、「当該ノードが検索される確率」と「当該ノードに含まれる属性種類数」の組合せがペナルティに用いられる場合には、例えば先ず「当該ノードに含まれる属性種類数」をペナルティとして挿入先ノード選択アルゴリズムを適用し、それでも挿入先ノードを1つに絞り込むことができない場合に、さらに「当該ノードが検索される確率」をペナルティとして挿入先ノード選択アルゴリズムを適用し、複数の候補の中から挿入先ノードを1つに絞り込めば良い。
特開2011−170461号公報
ところが、従来のUBI-Treeにおいては以下のような解決すべき課題があった。
すなわち、従来のUBI-Treeは、ペナルティとして用いる「当該ノードが検索される確率」を算出する際に、UBI-Treeに挿入されたデータのすべての属性を考慮して計算を行っている。このため、すべての属性について計算することはそれだけ計算量が大きくなり、これによりデータ挿入処理にそれだけ多くの時間を必要とする。
また、従来のUBI-Treeは、それまでに挿入されたデータの統計情報から「当該ノードが検索される確率」の予測値を算出している。このため、予測値は必ずしも真の値と同じではなく、予測値と真の値の間に誤差がある場合には、検索効率の劣化が発生してしまう。
さらに、従来のUBI-Treeでは、ペナルティとして「当該ノードに含まれる属性種類数」と「当該ノードが検索される確率」が組み合わされて用いられる場合に、挿入されたデータの多くが含む属性を検索条件とする検索に対して「当該ノードに含まれる属性種類数」をペナルティとして各ノードに含まれる属性種類数を小さくしても、検索条件に指定された属性の種類に基づき検索時に辿るべきノード数を小さくすることができず、検索効率が劣化する。
この発明は上記事情に着目してなされたもので、その目的とするところは、ペナルティの算出に必要な計算量を低減して新規データの挿入処理を高速に行えるようにし、かつ検索時に辿るべきノード数を抑制して検索効率を高めたデータ索引装置、データ索引方法及びプログラムを提供することにある。
上記目的を達成するためにこの発明の第1の観点は、属性とその属性値とからなる組を少なくとも1つ有するデータの集合を、UBI-Tree構造により記憶し管理するデータ索引装置にあって、上記データ集合と、上記UBI-Tree構造と、ペナルティの算出に使用する属性を予め定義した着目属性リストとを少なくとも記憶しておき、上記UBI-Tree構造中に新規データを挿入する際に、当該新規データが有する属性のうち、上記着目属性リストに定義された属性に該当する属性のみを用いてペナルティを算出し、上記新規データの挿入を行うようにしたものである。
また、この発明の第2の観点は、対象ノードに含まれる属性種類数をペナルティとして用いるか否かを指定する次元抑制ペナルティ無効化フラグをさらに記憶しておき、上記UBI-Tree構造中に新規データを挿入する際に、上記次元抑制ペナルティ無効化フラグを参照し、当該フラグがオンに設定されている場合には、対象ノードに含まれる属性種類数と、対象ノードが検索される確率のうち、対象ノードが検索される確率のみをペナルティとして用いてその値を算出し、上記フラグがオフに設定されている場合には上記対象ノードに含まれる属性種類数と上記対象ノードが検索される確率の両方をペナルティとして用いてその値を算出するようにしたものである。
この発明の第1の観点によれば、UBI-Tree構造中に新規データを挿入する際に、当該新規データが有する属性のうち、予め記憶しておいた着目属性リストに定義された属性に該当する属性のみを用いてペナルティが算出される。一般に、検索条件に用いる属性集合は事前に分かっていることが多い。したがって、このような場合に検索条件に用いる属性集合を着目属性リストに定義しておけば、検索精度を維持した上で、新規データが有するすべての属性についてペナルティを算出する場合に比べペナルティの計算量を減らすことができ、これにより新規データの挿入に要する時間を短縮すると共に装置の処理負荷を軽減することが可能となる。
この発明の第2の観点によれば、UBI-Tree構造中に新規データを挿入する際に、予め記憶しておいた次元抑制ペナルティ無効化フラグがオンに設定されている場合には、対象ノードに含まれる属性種類数をペナルティとして用いずに、対象ノードが検索される確率のみをペナルティとして用いてペナルティの計算が行われる。先に述べたように、検索条件に用いる属性集合は事前に分かっていることが多い。そしてその属性が、挿入対象のデータの多くが含む属性である場合には、対象ノードに含まれる属性種類数を次元抑制ペナルティ無効化フラグにより事前に無効化しておけば、検索精度を維持した上でペナルティの計算量を減らすことができ、これにより新規データの挿入に要する時間を短縮すると共に装置の処理負荷を軽減することが可能となる。
すなわちこの発明の第1及び第2の観点によれば、ペナルティの算出に必要な計算量が低減されて新規データの挿入処理を高速に行えるようになり、かつ検索時に辿るべきノード数が抑制されて検索効率を高めることが可能なデータ索引装置、データ索引方法及びプログラムを提供することができる。
この発明の一実施形態に係るデータ索引装置の機能構成を示すブロック図。 図1に示したデータ索引装置の記憶ユニットに記憶されるデータの一例を示す図。 図1に示したデータ索引装置の記憶ユニットに記憶される木構造情報の一例を示す図。 図1に示したデータ索引装置の記憶ユニットに記憶される属性表情報の一例を示す図。 図1に示したデータ索引装置の記憶ユニットに記憶される着目属性リスト情報の一例を示す図。 図1に示したデータ索引装置の記憶ユニットに記憶される次元抑制ペナルティフラグの一例を示す図。 新規挿入対象のデータの一例を示す図。 データの新規挿入に伴い更新された属性表情報の一例を示す図。
以下、図面を参照してこの発明に係わる実施形態を説明する。
[一実施形態]
図1は、この発明の一実施形態に係るデータ索引装置の機能構成を示すブロック図である。
本実施形態のデータ索引装置は、例えばデータベースサーバからなり、制御ユニット1と、通信インタフェースユニット2と、記憶ユニット3を備えている。通信インタフェースユニット2は、ネットワークNWで規定される通信プロトコルに従い、例えば図示しないセンサ群との間でその計測データを受信する機能を有する。
記憶ユニット3は、記憶媒体として例えばHDD(Hard Disc Drive)またはSSD(Solid State Drive)を使用したもので、この発明の一実施形態を実現する上で必要な木構造情報を記憶する記憶領域として、データ集合記憶部31と、木構造記憶部32と、属性表記憶部33と、着目属性リスト記憶部34と、次元抑制ペナルティフラグ記憶部35を備える。
データ集合記憶部31には、上記通信インタフェースユニット2により受信された計測データの集合が記憶される。個々の計測データは、属性とその属性値とからなる組を少なくとも1つ有する。図2の201〜205は計測データの一例を示したものである。例えば、計測データ201は属性として「センサID」、「時間」、「温度」及び「湿度」を有し、その属性値としてそれぞれ「1」、「3」、「20.3」及び「60」を有する。また計測データ202は、属性として「センサID」、「時間」及び「照度」を有し、その属性値としてそれぞれ「3」、「7」及び「6」を有する。すなわち、計測データは、各々1つ以上の属性と属性値との組を持ち、また属性の数と種類はデータ間で異なり得る。
木構造記憶部32には、上記データ集合をUBI-Treeにより索引付けした状態で管理するための木構造が記憶される。UBI-Treeの木構造は、「当該ノードが検索される確率」と「当該ノードに含まれる属性種類数」の組合せをペナルティとして用いる。図3はUBI-Treeの木構造の一例を示すもので、この例では複数のノード301〜306と、複数の計測データ201〜205とから構成される。計測データ201〜205は、図2に示したデータに対応する。
木の根元に位置するノード301はルートノードと呼ばれ、木の葉にあたるノード304〜306はリーフノードと呼ばれる。各ノード301〜306は他のノードあるいはデータへのポインタを保持する。例えば、ルートノード301はノード302へのポインタとノード303へのポインタを保持する。このことを単にノード301は子ノード302を保持すると表現する。ポインタにより接続されたノード間には親子関係があると見なされる。例えばルートノード301に対してノード302は子ノードと呼ばれる。逆に、ノード302に対してルートノード301は親ノードと呼ばれる。また、各ノードが保持する子ノードあるいはデータの数の上限値は「2」に設定されている。
なお、図3では図示を省略しているが、親ノードは各子ノードについて、当該子ノードの下位に存在するデータに関する範囲を表す情報を保持している。例えば、ルートノード301は、子ノード302以下に対し「センサID」が1〜10、「時間」が3〜10、「温度」が20.3〜21.1、「湿度」が60〜90のデータが存在している、という情報を保持している。同様に、ルートノード301は子ノード303以下に存在しているデータの範囲情報も保持している。検索を行う際には、当該範囲情報を用いて、検索条件を満たすノードだけを辿ることにより、検索条件を満たすデータを効率的に発見することが可能である。
属性表記憶部33には、上記データ集合記憶部31に記憶された計測データの集合が持つ属性の出現頻度、最小値及び最大値を表す情報が記憶される。図4はその一例を示すもので、図2に示したデータ集合の属性を表に表した場合を例示している。
着目属性リスト記憶部34には、上記データ集合記憶部31に新規データを挿入する際に、「当該ノードが検索される確率」をペナルティとして算出する場合の、算出対象とする属性のリストが予め記憶されている。図5はその一例を示すもので、この例では「時間」及び「温度」を着目属性として定義した場合を示している。
次元抑制ペナルティ無効化フラグ記憶部35には、次元抑制ペナルティ無効化フラグの状態(ON/OFF)が予め記憶される。次元抑制ペナルティ無効化フラグとは、「当該ノードに含まれる属性種類数」のことであり、これを無効化するとは「当該ノードが検索される確率」と「当該ノードに含まれる属性種類数」の組合せをペナルティとしている場合に、「当該ノードが検索される確率」だけをペナルティとすることを意味する。図6は、次元抑制ペナルティ無効化フラグがONに設定された状態を例示している。
制御ユニット1は、例えばCPU(Central Processing Unit)を備え、この発明の一実施形態を実現するために必要な制御機能として、データ検索部11と、データ挿入部12を有している。なお、これらのデータ検索部11及びデータ挿入部12は、何れも図示しないプログラムメモリに格納されたプログラムを上記CPUに実行させることにより実現される。
データ検索部11は、図示しない検索元の装置から送信されたデータ検索要求がネットワークNWを介して通信インタフェースユニット2で受信された場合に、当該受信されたデータ検索要求により指定された検索条件と、上記木構造記憶部32に記憶された木構造情報、及び属性表記憶部33に記憶された属性表情報に基づいて、ルートノード301から子ノード302,303及びリーフノード304〜306を順次辿って計測データを特定する。そして、この特定された計測データをデータ集合記憶部31から読み出し、この読み出された計測データを通信インタフェース2からネットワークNWを介して要求元の装置へ返送する処理を行う。
データ挿入部12は、以下のような処理機能を有する。
(1) 図示しないセンサから送信された新規計測データがネットワークNWを介して通信インタフェースユニット2で受信された場合に、当該受信された新規計測データが持つ属性の種類のうち、着目属性リスト記憶部34に記憶された着目属性リストに含まれる属性のみからペナルティを計算する。そして、この計算されたペナルティと、上記木構造記憶部32に記憶された木構造情報に基づいてノードを辿り、上記新規計測データを挿入すべきノードを特定する処理。
(2) 上記ペナルティを算出する際に、次元抑制ペナルティ無効化フラグ記憶部35に記憶されている次元抑制ペナルティ無効化フラグを参照し、当該フラグがONであれば「当該ノードに含まれる属性種類数」をペナルティとして用いずに「当該ノードが検索される確率」のみをペナルティとして計算する処理。
次に、以上のように構成されたデータ索引装置IUの動作を説明する。
ここでは、次元抑制ペナルティ無効化フラグが「ON」に設定され、さらに着目属性リストには「時間」と「温度」が記述されているものとする。なお、記憶ユニット3の木構造記憶部32には図3に示すUBI-Tree構造が、また属性表記憶部33には図4に示す属性表がそれぞれ記憶されているものとして説明を行う。
いま、図示しないセンサから新たな計測データが送信され、この新規計測データがネットワークNWを介して通信インタフェースユニット2で受信されたとする。図7に、このとき受信された新規計測データを示す。
上記新規計測データが受信されると、制御ユニットIUはデータ挿入部12を起動し、このデータ挿入部12の制御の下で以下のようなデータ挿入処理を実行する。すなわち、先ず上記受信された新規計測データに基づいて、属性表記憶部33に記憶された属性表を更新する。例えば、受信された新規計測データは属性として「センサID」、「時間」、「湿度」、「照度」、「音量」を含むため、図4に示す更新前の属性表の該当する行の出現頻度がそれぞれ“1”増加され、さらに「時間」、「照度」、「音量」の値は既存のデータ値よりも大きいため、対応する属性の最大値がそれぞれ更新される。図8はこの更新後の属性表を示す。
次に、木構造のルートノード301から、挿入先ノード選択アルゴリズムを用いながら挿入先のノードを選択していく。このとき、次元抑制ペナルティ無効化フラグ記憶部35に記憶された次元抑制ペナルティ無効化フラグを調べる。そして、当該フラグがONに設定されているかOFFに設定されているかを判定し、この判定結果に応じて「当該ノードに含まれる属性種類数」と「当該ノードが検索される確率」の両方をペナルティとするか、或いは「当該ノードが検索される確率」だけをペナルティとするかを決定する。また、「当該ノードが検索される確率」を算出する際には、上記受信された新規計測データに含まれる属性のうち、上記着目属性リスト記憶部33に記憶されている着目属性リストに記述された着目属性についてのみペナルティを算出する。
例えば、いま先に述べたように次元抑制ペナルティ無効化フラグがONに設定され、着目属性リストには「時間」と「温度」が記述されているとする。この場合、「当該ノードに含まれる属性種類数」はペナルティから除外され、「当該ノードが検索される確率」のみがペナルティとして用いられる。また、「当該ノードが検索される確率」を計算する際に、上記受信された新規計測データには属性として「時間」、「湿度」、「照度」、「音量」が含まれているものの、着目属性リストには上記したように「時間」と「温度」のみが記述されているため、「時間」についてのみ「当該ノードが検索される確率」がペナルティとして算出される。このときの「当該ノードが検索される確率」Xと、検索条件として「時間」を用いたときの確率Yは、次式で算出される。
当該ノードが検索される確率=XY
すなわち、右辺はすべての属性について足し合わせるのではなく、ペナルティの算出に用いる属性である「時間」についてのみ足し合わせたものとなる。
データ挿入部12は、ルートノード301において、挿入先ノード選択アルゴリズムを用いて挿入先のノードを以下のように選択する。すなわち、上記新規計測データをノード303に挿入する場合を仮定すると、ノード303に含まれる「時間」の値が元々「7〜9」であったものが、「7〜11」に変化する。すなわち、値の範囲は「2」だけ広がる。これに対し、新規計測データをノード302に挿入する場合を仮定すると、ノード302に含まれる「時間」の値が元々「3〜10」であったものが、「3〜11」に変化する。すなわち、値の範囲は「1」だけ広がる。ここで、「当該ノードが検索される確率」をペナルティとする場合には、値の範囲の広がりが小さい方が挿入先として選択される。したがって、この場合には「時間」の値の範囲の広がりが小さいノード302が挿入先として選択される。
次に、ノード302において、同様に挿入先ノード選択アルゴリズムを用いて挿入先のノードを選択する。この場合、「時間」の値の範囲の広がりはノード304よりもノード305の方が小さい。このため、ノード305が挿入先のノードとして選択され、このノード305に上記新規計測データが挿入される。
但し、上記ノード305に上記新規計測データを挿入すると、ノード305が保持するデータ数は「3」となってしまい、各ノードが保持する子ノードあるいはデータの数の上限値「2」を超えてしまう。そこで、ノード分割アルゴリズムによりノード305を分割する。なお、ノードを分割する際にも、先に述べた挿入先ノード選択アルゴリズムと同様に、次元抑制ペナルティ無効化フラグを調べ、かつ「当該ノードが検索される確率」を算出する際に、着目属性リストに記述されている属性のみを算出対象とする。
一方、上記新規計測データを挿入する際に、次元抑制ペナルティ無効化フラグがOFFに設定されていたとすると、「当該ノードに含まれる属性種類数」がペナルティとして使用される。そして、挿入先ノード選択アルゴリズムにより、ルートノード301に接続された2つのノード302,302ついて上記「当該ノードに含まれる属性種類数」が計算される。
例えば、いま新規計測データをノード303に挿入するものと仮定すると、ノード303に含まれる属性は元々「センサID」、「時間」、「照度」、「音量」の4種類であったものが、「センサID」、「時間」、「照度」、「音量」、「湿度」の5種類となり、属性種類数が「1」だけ増加する。これに対し、新規計測データをノード302に挿入するものと仮定すると、ノード302に含まれる属性が元々「センサID」、「時間」、「温度」、「湿度」の4種類であったものが、「センサID」、「時間」、「温度」、「湿度」、「照度」、「音量」の6種類となり、属性種類数が「2」増加する。このため、この場合には挿入先として属性の種類数の増加幅が少ないノード303が選択される。
このように、上記挿入先として選択されたノード303に連なるノードに新規計測データを挿入すれば、「音量」の属性をもつデータはノード303に連なるノードに絞られるため、「音量」を検索条件に用いた場合にはノード303以下の部分木のみを検索すれば良くなり、検索効率が向上する。
これに対し、挿入先としてノード302を選択した場合、「音量」の属性を持つ計測データがノード302に連なるノードとノード303に連なるノードに分散してしまうため、「音量=0〜10」を検索条件に用いた場合に、ノード302に連なる部分木とノード303に連なる部分木の両方を検索しなければならず、検索効率は低下する。
しかし、挿入先としてノード303を選択した場合、ノード302は「時間」の値が「3〜10」の計測データを傘下のノードに保持し、ノード303は「時間」の値が「7〜11」の計測データを傘下のノードに保持することになる。このため、例えば「時間=10」を検索条件に用いた場合、両方の部分木を検索する必要が生じる。これに対し、挿入先としてノード302を選択した場合には、「時間=10」という検索条件に対してノード302以下の部分木のみを検索すれば良い。このように、「音量=0〜10」のように、挿入されたすべての測定データのうち、一部のデータだけが保持する属性を検索条件とする場合には、「当該ノードに含まれる属性種類数」をペナルティとすることで検索効率が上がる。しかし、「時間」のように、多くのデータが保持する属性を検索条件とする場合には、「当該ノードに含まれる属性種類数」をペナルティとすることで検索効率が低下してしまう。したがって、多くのデータが保持する属性を検索条件とすることが多いことが事前に分かっている場合、本実施形態のように次元抑制ペナルティ無効化フラグをONに設定しておき、「当該ノードに含まれる属性種類数」をペナルティとして使用しないようにすることで、検索効率を高めることが可能となる。
また、新規計測データを挿入する際に、ノード302において挿入先ノード選択アルゴリズムにより新規計測データに含まれるすべての属性を用いて「当該ノードが検索される確率」を算出すると、ノード305ではなくノード304が挿入先として選択される。そして、この選択されたノード304に新規計測データを挿入すると、「時間」の値の範囲は「3〜3」から「3〜11」に増加して拡大幅が「8」になるものの、「センサID」は「1〜1」から「1〜2」へ増加するだけで拡大幅は「1」で済むことになる。また、「湿度」については値の範囲は増加しないで済む。逆に挿入先としてノード305を選択した場合、「時間」の値の範囲は「8〜10」から「8〜11」へ増加するだけで拡大幅は「1」で済むが、「センサID」や「湿度」の値の範囲の増加が大きくなる。
ルートノード301における挿入先ノードの選択アルゴリズムと同様に考えると、例えば「センサID」で検索する場合には、「センサID」の値の拡大幅が小さくなるように挿入先としてノード304を選択することで検索効率が向上する。一方、「時間」で検索する場合には、「時間」の値の拡大幅が小さくなるように挿入先としてノード305を選択することで検索効率が向上する。
したがって、検索条件に用いる属性が事前に分かっている場合には、本実施形態のように着目属性リスト記憶部34に検索条件に用いる属性の種類を予め記憶しておき、新規計測データに含まれる属性のうち、上記着目属性リストに記述された属性だけを用いて「当該ノードが検索される確率」をペナルティとして算出することで、検索効率を高めることが可能となる。
[他の実施形態]
なお、この発明は上記実施形態に限定されるものではない。例えば、上記一実施形態では、各ノードが保持する子ノードあるいはデータの数の上限値は「2」に設定されているとしたが、これに限らず他の正数値に設定しても良い。
また、前記一実施形態では、ペナルティを計算する際に、着目属性リストを参照して、「当該ノードが検索される確率」の算出に用いる属性を選択したが、これに限らず、属性表を更新する際に、着目属性リストを参照して、当該着目属性リストに記述されていない属性は属性表に追記しない、というようにしても良い。このようにすることで、ペナルティを計算する際には、属性表に存在しない属性は着目属性リストに記述されていないため、属性表を参照するだけで「当該ノードが検索される確率」の算出に用いる属性を選択することが可能となる。また属性表に、1カラムを増やし、着目属性リストに記述されているかどうかを示すフラグを記憶させることとしても良い。このようにすることにより、属性表を参照するだけで「当該ノードが検索される確率」の算出に用いる属性を選択することが可能となる。
さらに、前記一実施形態では、挿入する新規計測データに含まれる属性のうち、着目属性リストに記述された属性のみを用いてペナルティを算出するようにしたが、挿入する計測データに含まれる属性のうち、着目属性リストに記述された属性以外の属性を用いてペナルティを算出するようにしても良い。このようにすると、「この属性では検索しない」ことが事前に分かっている場合に、着目属性リストに属性を記述しておくことでペナルティの算出に用いないようにすることが可能となる。
さらに、前記一実施形態では、次元抑制ペナルティ無効化フラグ及び着目属性リストを事前にそれぞれ次元抑制ペナルティ無効化フラグ記憶部35及び着目属性記憶部34に記憶させておくものとしたが、外部の保守端末等から書き換え可能としても良い。これにより、検索要求の変化に応じて、これらの設定を動的に変化させることが可能となる。
また、前記一実施形態ではデータとしてセンサにより得られた温度、湿度、照度、音量等の計測データを取り扱う場合を例にとって説明した。しかし、それに限らず電流や電圧値、流体の流量、物質の濃度、明度、騒音レベル、位置、加速度などの計測データを取り扱ってよく、さらにはセンサ以外の例えばWebやインターネットを経由して取得した情報であってもよい。また、それら値に加えて、センサの特性や状態、計測日時等を示すメタデータを含む情報を取り扱ってもよい。その他、データ索引装置の構成やデータ挿入処理の手順と処理内容等についても、この発明の要旨を逸脱しない範囲で種々変形して実施可能である。
要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
IU…データ索引装置、NW…ネットワーク、1…制御ユニット、2…通信インタフェースユニット、3…記憶ユニット、11…データ検索部、12…データ挿入部、31…データ集合記憶部、32…木構造記憶部、33…属性表記憶部、34…着目属性リスト記憶部、35…次元抑制ペナルティ無効化フラグ記憶部。

Claims (5)

  1. 属性とその属性値とからなる組を少なくとも1つ有するデータの集合を、UBI-Tree構造により記憶し管理するデータ索引装置であって、
    前記データ集合と、前記UBI-Tree構造と、ペナルティの算出に使用する属性を予め定義した着目属性リストとを少なくとも記憶する木構造情報記憶手段と、
    前記UBI-Tree構造中に新規データを挿入する際に、当該新規データが有する属性のうち、前記着目属性リストに定義された属性に該当する属性のみを用いてペナルティを算出し、前記新規データの挿入を行うデータ挿入手段と
    を具備することを特徴とするデータ索引装置。
  2. 前記木構造情報記憶手段は、対象ノードに含まれる属性種類数をペナルティとして用いるか否かを指定する次元抑制ペナルティ無効化フラグをさらに記憶し、
    前記データ挿入手段は、前記UBI-Tree構造中に新規データを挿入する際に、前記次元抑制ペナルティ無効化フラグを参照し、当該フラグがオンに設定されている場合には、対象ノードに含まれる属性種類数と、対象ノードが検索される確率のうち、対象ノードが検索される確率のみをペナルティとして用いてその値を算出し、前記フラグがオフに設定されている場合には前記対象ノードに含まれる属性種類数と前記対象ノードが検索される確率の両方をペナルティとして用いてその値を算出する
    ことを特徴とする請求項1記載のデータ索引装置。
  3. 属性とその属性値とからなる組を少なくとも1つ有するデータの集合を、UBI-Tree構造により記憶し管理する装置が実行するデータ索引方法であって、
    前記データ集合と、前記UBI-Tree構造と、ペナルティの算出に使用する属性を予め定義した着目属性リストとを少なくとも木構造情報記憶手段に記憶させる過程と、
    前記UBI-Tree構造中に新規データを挿入する際に、前記着目属性リストを読み出し、前記新規データが有する属性のうち、前記読み出された着目属性リストに定義された属性に該当する属性のみを用いてペナルティを算出し、その算出結果をもとに前記新規データの挿入を行う過程と
    を具備することを特徴とするデータ索引方法。
  4. 前記記憶させる過程は、対象ノードに含まれる属性種類数をペナルティとして用いるか否かを指定する次元抑制ペナルティ無効化フラグをさらに記憶させ、
    前記新規データの挿入を行う過程は、前記UBI-Tree構造中に新規データを挿入する際に、前記次元抑制ペナルティ無効化フラグを参照し、当該フラグがオンに設定されている場合には、対象ノードに含まれる属性種類数と、対象ノードが検索される確率のうち、対象ノードが検索される確率のみをペナルティとして用いてその値を算出し、前記フラグがオフに設定されている場合には前記対象ノードに含まれる属性種類数と前記対象ノードが検索される確率の両方をペナルティとして用いてその値を算出する
    ことを特徴とする請求項3記載のデータ索引方法。
  5. 請求項1又は2に記載のデータ索引装置が具備するデータ挿入手段による処理を、前記データ索引装置が備えるコンピュータに実行させるプログラム。
JP2013099231A 2013-05-09 2013-05-09 データ索引装置、データ索引方法及びプログラム Active JP5953262B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013099231A JP5953262B2 (ja) 2013-05-09 2013-05-09 データ索引装置、データ索引方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013099231A JP5953262B2 (ja) 2013-05-09 2013-05-09 データ索引装置、データ索引方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2014219865A true JP2014219865A (ja) 2014-11-20
JP5953262B2 JP5953262B2 (ja) 2016-07-20

Family

ID=51938244

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013099231A Active JP5953262B2 (ja) 2013-05-09 2013-05-09 データ索引装置、データ索引方法及びプログラム

Country Status (1)

Country Link
JP (1) JP5953262B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180097920A (ko) * 2017-02-24 2018-09-03 주식회사 오비고 다수의 차량에 탑재된 모듈들을 관리하는 방법, 이를 이용한 차량 모듈 관리 장치 및 서버

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011170461A (ja) * 2010-02-16 2011-09-01 Nippon Telegr & Teleph Corp <Ntt> 情報蓄積検索方法及び情報蓄積検索プログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011170461A (ja) * 2010-02-16 2011-09-01 Nippon Telegr & Teleph Corp <Ntt> 情報蓄積検索方法及び情報蓄積検索プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6016020335; 荒川 豊、外3名: 'ユビキタスデータのためのインデキシング技術UBI-treeの改良' 電子情報通信学会技術研究報告 Vol.110 No.162, 20100728, 47〜52, 社団法人電子情報通信学会 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180097920A (ko) * 2017-02-24 2018-09-03 주식회사 오비고 다수의 차량에 탑재된 모듈들을 관리하는 방법, 이를 이용한 차량 모듈 관리 장치 및 서버
KR102415464B1 (ko) * 2017-02-24 2022-07-01 주식회사 오비고 다수의 차량에 탑재된 모듈들을 관리하는 방법, 이를 이용한 차량 모듈 관리 장치 및 서버

Also Published As

Publication number Publication date
JP5953262B2 (ja) 2016-07-20

Similar Documents

Publication Publication Date Title
US10055509B2 (en) Constructing an in-memory representation of a graph
CN107526777B (zh) 一种基于版本号对文件进行处理的方法及设备
US9411840B2 (en) Scalable data structures
CN108089893B (zh) 冗余资源的确定方法、装置、终端设备与存储介质
US8825581B2 (en) Simplifying a graph of correlation rules while preserving semantic coverage
US8364723B1 (en) Apparatus and method for realizing big data into a big object and non-transitory tangible machine-readable medium thereof
CN105989015B (zh) 一种数据库扩容方法和装置以及访问数据库的方法和装置
US11269954B2 (en) Data searching method of database, apparatus and computer program for the same
CN110019384B (zh) 一种血缘数据的获取方法、提供血缘数据的方法及装置
CN109815240B (zh) 用于管理索引的方法、装置、设备和存储介质
CN110807028B (zh) 用于管理存储系统的方法、设备和计算机程序产品
US10678789B2 (en) Batch data query method and apparatus
CN111209252A (zh) 一种文件元数据存储方法、装置及电子设备
CN109189343B (zh) 一种元数据落盘方法、装置、设备及计算机可读存储介质
CN108549666B (zh) 一种数据表的排序方法、装置、设备及存储介质
CN107193754B (zh) 进行数据存储用于搜索的方法及设备
US9471612B2 (en) Data processing method, data query method in a database, and corresponding device
KR101693108B1 (ko) 읽기 성능 개선을 위한 티-트리 인덱스를 이용한 데이터베이스 읽기 방법 및 그 장치
JP5953262B2 (ja) データ索引装置、データ索引方法及びプログラム
CN111666302A (zh) 用户排名的查询方法、装置、设备及存储介质
CN104537016B (zh) 一种确定文件所在分区的方法及装置
EP3995972A1 (en) Metadata processing method and apparatus, and computer-readable storage medium
CN113849482A (zh) 一种数据迁移方法、装置及电子设备
JP5953277B2 (ja) データ索引装置、データ索引方法及びプログラム
JP2018081603A (ja) Kvデータ構造変換装置、kvデータ構造変換方法、および、kvデータ構造変換プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150618

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160517

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: 20160607

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160613

R150 Certificate of patent or registration of utility model

Ref document number: 5953262

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150