JP6281287B2 - Information processing apparatus, search method, and program - Google Patents

Information processing apparatus, search method, and program Download PDF

Info

Publication number
JP6281287B2
JP6281287B2 JP2014001642A JP2014001642A JP6281287B2 JP 6281287 B2 JP6281287 B2 JP 6281287B2 JP 2014001642 A JP2014001642 A JP 2014001642A JP 2014001642 A JP2014001642 A JP 2014001642A JP 6281287 B2 JP6281287 B2 JP 6281287B2
Authority
JP
Japan
Prior art keywords
attribute
column
search
list
attribute column
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.)
Active
Application number
JP2014001642A
Other languages
Japanese (ja)
Other versions
JP2015130103A (en
Inventor
健太郎 山崎
健太郎 山崎
佑嗣 小林
佑嗣 小林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2014001642A priority Critical patent/JP6281287B2/en
Publication of JP2015130103A publication Critical patent/JP2015130103A/en
Application granted granted Critical
Publication of JP6281287B2 publication Critical patent/JP6281287B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、情報処理装置、検索方法、及び、プログラムに関する。   The present invention relates to an information processing device, a search method, and a program.

木構造を用いて属性列を検索するシステムの一例が、非特許文献1に記載されている。   An example of a system that searches an attribute string using a tree structure is described in Non-Patent Document 1.

非特許文献1に記載される多次元データ検索装置では、属性の集合である多次元データ(属性列)が用いられる。検索装置は、登録されている属性列群(登録属性列群)の中から、クエリとして入力された属性列(検索属性列)に合致する登録属性列を検索する。   In the multidimensional data search apparatus described in Non-Patent Document 1, multidimensional data (attribute string) that is a set of attributes is used. The search device searches a registered attribute string that matches the attribute string (search attribute string) input as a query from the registered attribute string group (registered attribute string group).

検索装置は、登録属性列群をトライ木で管理する。トライ木では、各階層に属性列の属性が対応づけられ、当該階層に対応する属性の一致判定を行うためのノードが配置される。各ノードは、検索データと比較を行う属性値、及び当該属性値と一致した場合に、次に辿る下層のノードを示すリンクを持つ。さらに、トライ木は、最下層に登録属性列を格納する葉ノードを持つ。検索装置は、検索属性列が入力されると、根ノードから、各ノードの属性値と検索属性列の属性値が一致するかどうかの判定を、葉ノードにたどり着くまで繰り返す。   The search device manages the registered attribute string group using a trie tree. In the trie tree, the attribute of the attribute column is associated with each hierarchy, and a node for performing matching determination of the attribute corresponding to the hierarchy is arranged. Each node has an attribute value to be compared with the search data, and a link indicating a lower layer node to be traced next when the node matches the attribute value. Furthermore, the trie tree has a leaf node that stores a registered attribute string in the lowest layer. When the search attribute string is input, the search device repeats from the root node whether or not the attribute value of each node matches the attribute value of the search attribute string until the leaf node is reached.

また、検索装置は、注目属性を用いて一致判定処理を省略(スキップ)する。検索装置は、検索を行うたびに、検索属性列と所定の注目属性に対応する階層で探索したノードとを記憶する。そして、検索装置は、新たな検索属性列が入力されると、過去の検索属性列と新たな検索属性列との間で、先頭からの各属性を比較する。ここで、注目属性より前の属性までの各属性値が同じであれば、新たな検索属性列の先頭から注目属性までを探索するノードは、過去の検索属性列と同一である。従って、この場合、検索装置は、注目属性に対応する階層のノードから新たな検索属性列の探索を開始する。   Further, the search device omits (skips) the matching determination process using the attention attribute. Each time a search is performed, the search device stores a search attribute string and a node searched in a hierarchy corresponding to a predetermined attention attribute. Then, when a new search attribute string is input, the search device compares each attribute from the beginning between the past search attribute string and the new search attribute string. Here, if the attribute values up to the attribute before the attribute of interest are the same, the node for searching from the head of the new search attribute string to the attribute of interest is the same as the past search attribute string. Therefore, in this case, the search device starts searching for a new search attribute string from a node in the hierarchy corresponding to the attribute of interest.

以上のように、非特許文献1に記載される検索装置では、注目属性までの一致判定処理をスキップすることにより、検索が高速化される。   As described above, in the search device described in Non-Patent Document 1, the search is speeded up by skipping the match determination processing up to the attribute of interest.

小林他、「多属性の照合を実現する拡張トライ木方式の提案と評価」、2012年電子情報通信学会通信ソサイエティ大会通信講演論文集2、2012年、p.365Kobayashi et al., “Proposal and Evaluation of Extended Tri-Tree Method for Multi-Attribute Matching”, 2012 IEICE Communication Society Conference Proceedings 2, 2012, p. 365

しかしながら、非特許文献1に記載の多次元データ検索装置では、過去の検索データと新たな検索データとの間で、注目属性より前の属性値が変化すると、注目属性までの一致判定処理をスキップできず、検索の高速化の効果が得られない。   However, in the multidimensional data search device described in Non-Patent Document 1, if the attribute value before the attention attribute changes between the past search data and the new search data, the matching determination process to the attention attribute is skipped. It is not possible to obtain the effect of speeding up the search.

本発明の目的は、上述の課題を解決し、多次元データの検索において、検索を高速化できる、検索装置、検索方法、及び、プログラムを提供することである。   An object of the present invention is to provide a search device, a search method, and a program that can solve the above-described problems and can speed up the search in searching for multidimensional data.

本発明の情報処理装置は、所定数の属性の各々の属性値を所定の属性順で配置した属性列のリストを記憶する属性列リスト記憶手段と、過去の検索属性列と新たな検索属性列との間の属性値の変化をもとに算出された、前記リストにおける前記過去の検索属性列に対応する属性列の位置と前記新たな検索属性列に対応する属性列の位置との間の距離をもとに、前記新たな検索属性列に対応する属性列の位置を特定する検索手段と、を備える。   An information processing apparatus according to the present invention includes an attribute column list storage unit that stores a list of attribute columns in which attribute values of a predetermined number of attributes are arranged in a predetermined attribute order, a past search attribute column, and a new search attribute column Between the position of the attribute column corresponding to the past search attribute column in the list and the position of the attribute column corresponding to the new search attribute column, calculated based on the change of the attribute value between Search means for specifying the position of the attribute string corresponding to the new search attribute string based on the distance.

本発明の検索方法は、所定数の属性の各々の属性値を所定の属性順で配置した属性列のリストを記憶し、過去の検索属性列と新たな検索属性列との間の属性値の変化をもとに算出された、前記リストにおける前記過去の検索属性列に対応する属性列の位置と前記新たな検索属性列に対応する属性列の位置との間の距離をもとに、前記新たな検索属性列に対応する属性列の位置を特定する。   The search method of the present invention stores a list of attribute columns in which attribute values of a predetermined number of attributes are arranged in a predetermined attribute order, and sets attribute values between a past search attribute column and a new search attribute column. Based on the distance between the position of the attribute column corresponding to the past search attribute column in the list and the position of the attribute column corresponding to the new search attribute column, calculated based on the change, The position of the attribute column corresponding to the new search attribute column is specified.

本発明のプログラムは、コンピュータに、所定数の属性の各々の属性値を所定の属性順で配置した属性列のリストを記憶し、過去の検索属性列と新たな検索属性列との間の属性値の変化をもとに算出された、前記リストにおける前記過去の検索属性列に対応する属性列の位置と前記新たな検索属性列に対応する属性列の位置との間の距離をもとに、前記新たな検索属性列に対応する属性列の位置を特定する、処理を実行させる。   The program of the present invention stores a list of attribute columns in which attribute values of a predetermined number of attributes are arranged in a predetermined attribute order in a computer, and attributes between a past search attribute column and a new search attribute column Based on the distance between the position of the attribute column corresponding to the past search attribute column in the list and the position of the attribute column corresponding to the new search attribute column calculated based on the change in value The process of specifying the position of the attribute string corresponding to the new search attribute string is executed.

本発明の効果は、多次元データの検索において、検索を高速化できることである。   The effect of the present invention is that the search can be speeded up in the search of multidimensional data.

本発明の第1の実施の形態の特徴的な構成を示すブロック図である。It is a block diagram which shows the characteristic structure of the 1st Embodiment of this invention. 本発明の第1の実施の形態における、検索システムの構成を示すブロック図である。It is a block diagram which shows the structure of the search system in the 1st Embodiment of this invention. 本発明の第1の実施の形態における、検索装置100がコンピュータにより実現される場合の構成を示すブロック図である。It is a block diagram which shows the structure in case the search device 100 is implement | achieved by the computer in the 1st Embodiment of this invention. 本発明の第1の実施の形態における、属性列の例を示す図である。It is a figure which shows the example of an attribute row | line in the 1st Embodiment of this invention. 本発明の第1の実施の形態における、属性列の他の例を示す図である。It is a figure which shows the other example of an attribute row | line | column in the 1st Embodiment of this invention. 本発明の第1の実施の形態における、属性値情報151の例を示す図である。It is a figure which shows the example of the attribute value information 151 in the 1st Embodiment of this invention. 本発明の第1の実施の形態における、属性列リスト121の例を示す図である。It is a figure which shows the example of the attribute column list 121 in the 1st Embodiment of this invention. 本発明の第1の実施の形態における、影響値情報141の例を示す図である。It is a figure which shows the example of the influence value information 141 in the 1st Embodiment of this invention. 本発明の第1の実施の形態における、検索結果181の例を示す図である。It is a figure which shows the example of the search result 181 in the 1st Embodiment of this invention. 本発明の第1の実施の形態における、差分属性列800の例を示す図である。It is a figure which shows the example of the difference attribute row | line | column 800 in the 1st Embodiment of this invention. 本発明の第1の実施の形態における、登録処理を示すフローチャートである。It is a flowchart which shows the registration process in the 1st Embodiment of this invention. 本発明の第1の実施の形態における、リスト更新処理を示すフローチャートである。It is a flowchart which shows the list update process in the 1st Embodiment of this invention. 本発明の第1の実施の形態における、登録処理の具体例を示す図である。It is a figure which shows the specific example of a registration process in the 1st Embodiment of this invention. 本発明の第1の実施の形態における、検索処理を示すフローチャートである。It is a flowchart which shows the search process in the 1st Embodiment of this invention. 本発明の第1の実施の形態における、検索処理の具体例を示す図である。It is a figure which shows the specific example of a search process in the 1st Embodiment of this invention. 本発明の第2の実施の形態における、登録処理の具体例を示す図である。It is a figure which shows the specific example of a registration process in the 2nd Embodiment of this invention. 本発明の第3の実施の形態における、検索システムの構成を示すブロック図である。It is a block diagram which shows the structure of the search system in the 3rd Embodiment of this invention. 本発明の第3の実施の形態における、ワイルドカード参照情報131の例を示す図である。It is a figure which shows the example of the wild card reference information 131 in the 3rd Embodiment of this invention. 本発明の第3の実施の形態における、登録処理の具体例を示す図である。It is a figure which shows the specific example of a registration process in the 3rd Embodiment of this invention. 本発明の第3の実施の形態における、検索処理の具体例を示す図である。It is a figure which shows the specific example of a search process in the 3rd Embodiment of this invention.

(第1の実施の形態)
本発明の第1の実施の形態について説明する。
(First embodiment)
A first embodiment of the present invention will be described.

はじめに、本発明の第1の実施の形態における属性列について説明する。   First, the attribute string in the first embodiment of the present invention will be described.

本発明の第1の実施の形態においては、検索システムは、登録されている属性列(登録属性列600)の中から、入力された属性列(検索属性列700、または、入力属性列)に合致する登録属性列600を検索する。   In the first embodiment of the present invention, the search system selects an input attribute column (search attribute column 700 or input attribute column) from registered attribute columns (registered attribute column 600). A matching registered attribute column 600 is searched.

図4、及び、図5は、本発明の第1の実施の形態における、属性列の例を示す図である。   4 and 5 are diagrams showing examples of attribute strings in the first embodiment of the present invention.

属性列では、所定数の属性の属性値が、所定の属性順(属性インデックス)に従って配置される。属性値は、文字や数値でもよいし、文字や数値のペア、セット、マップでもよい。また、属性列が、当該属性列の識別子等、属性インデックスごとの属性値以外の情報を含んでもよい。   In the attribute column, attribute values of a predetermined number of attributes are arranged according to a predetermined attribute order (attribute index). The attribute value may be a character or a numerical value, or may be a character, numerical value pair, set, or map. The attribute column may include information other than the attribute value for each attribute index, such as an identifier of the attribute column.

図4の属性列では、属性順を示す属性インデックス「1」、「2」、「3」に、文字「a」、「a」、「e」が対応づけられている。図5の属性列では、属性インデックス「1」、「2」、「3」に、文字列のペア{気分;良好}、{動作;歩行}、{位置;東京}が対応づけられている。   In the attribute column of FIG. 4, the characters “a”, “a”, and “e” are associated with the attribute indexes “1”, “2”, and “3” indicating the attribute order. In the attribute column of FIG. 5, a pair of character strings {mood; good}, {motion; walking}, {position; Tokyo} is associated with the attribute indexes “1”, “2”, and “3”.

次に、本発明の第1の実施の形態の構成について説明する。   Next, the configuration of the first exemplary embodiment of the present invention will be described.

図2は、本発明の第1の実施の形態における、検索システムの構成を示すブロック図である。   FIG. 2 is a block diagram showing the configuration of the search system according to the first embodiment of the present invention.

図2を参照すると、本発明の第1の実施の形態における検索システムは、検索装置100、登録属性列入力装置300、検索属性列入力装置400、及び、検索結果出力装置500を含む。検索装置100は、本発明の情報処理装置の一実施形態である。   Referring to FIG. 2, the search system according to the first exemplary embodiment of the present invention includes a search device 100, a registered attribute string input device 300, a search attribute string input device 400, and a search result output device 500. The search apparatus 100 is an embodiment of the information processing apparatus of the present invention.

登録属性列入力装置300は、登録属性列600を、キーボード等の入力デバイスや、データファイルにより受け付け、検索装置100に送信する。検索属性列入力装置400は、検索属性列700を、キーボード等の入力デバイスや、データファイルにより受け付け、前回の検索属性列700と新たな検索属性列700との差分である、差分属性列800を検索装置100に送信する。検索装置100は、差分属性列800を用いて、新たな検索属性列700に合致する登録属性列600を検索する。検索結果出力装置500は、検索装置100における検索結果を、ディスプレイ等の出力デバイスや、データファイルにより出力(表示)する。   The registered attribute string input device 300 accepts the registered attribute string 600 by an input device such as a keyboard or a data file, and transmits it to the search device 100. The search attribute string input device 400 accepts the search attribute string 700 by an input device such as a keyboard or a data file, and sets a difference attribute string 800 that is a difference between the previous search attribute string 700 and the new search attribute string 700. It transmits to the search device 100. The search device 100 uses the difference attribute column 800 to search for a registered attribute column 600 that matches the new search attribute column 700. The search result output device 500 outputs (displays) the search result in the search device 100 using an output device such as a display or a data file.

検索装置100は、リスト更新部110、リスト記憶部120、影響値記憶部140、属性値記憶部150、登録部160、検索結果記憶部180、及び、検索部190を含む。   The search device 100 includes a list update unit 110, a list storage unit 120, an influence value storage unit 140, an attribute value storage unit 150, a registration unit 160, a search result storage unit 180, and a search unit 190.

ここで、属性値記憶部150は、属性値情報151を記憶する。   Here, the attribute value storage unit 150 stores attribute value information 151.

属性値情報151は、属性列における各属性のとりうる値に付与される値インデックスを示す。   The attribute value information 151 indicates a value index given to a possible value of each attribute in the attribute column.

図6は、本発明の第1の実施の形態における、属性値情報151の例を示す図である。   FIG. 6 is a diagram illustrating an example of the attribute value information 151 according to the first embodiment of this invention.

属性値情報151は、「属性インデックス」、当該属性インデックスの属性のとりうる値を示す「属性値」、及び、当該属性値に付与される値インデックスである「値インデックス」を含む。値インデックスには、属性インデックスごとに、異なる属性値に1から順に異なる値が付与される。   The attribute value information 151 includes an “attribute index”, an “attribute value” indicating a possible value of the attribute of the attribute index, and a “value index” that is a value index assigned to the attribute value. In the value index, different attribute values are assigned in order from 1 to different attribute values for each attribute index.

図6の例では、属性インデックス「0」の属性値「a」、「b」に対して、値インデックス「0」、「1」がそれぞれ付与されている。また、属性インデックス「1」の属性値「a」、「d」に対して、値インデックス「0」、「1」がそれぞれ付与されている。属性インデックス「2」の属性値「e」、「f」に対して、値インデックス「0」、「1」がそれぞれ付与されている。   In the example of FIG. 6, the value indexes “0” and “1” are assigned to the attribute values “a” and “b” of the attribute index “0”, respectively. Also, value indexes “0” and “1” are assigned to the attribute values “a” and “d” of the attribute index “1”, respectively. Value indexes “0” and “1” are assigned to the attribute values “e” and “f” of the attribute index “2”, respectively.

リスト記憶部120は、属性列リスト121を記憶する。   The list storage unit 120 stores the attribute column list 121.

属性列リスト121は、各属性のとりうる値の全組み合わせに係る属性列を、値インデックスの昇順に並べたリストである。   The attribute column list 121 is a list in which attribute columns related to all combinations of values that each attribute can take are arranged in ascending order of the value index.

図7は、本発明の第1の実施の形態における、属性列リスト121の例を示す図である。   FIG. 7 is a diagram illustrating an example of the attribute column list 121 according to the first embodiment of this invention.

属性列リスト121は、「リストインデックス」、当該リストインデックスに対応する「属性列」、及び、「登録情報」を含む。ここで、リストインデックスは、属性列リスト121における各属性列の位置を示す。リストインデックスには、属性列リスト121の先頭の属性列から、0から順に値が付与される。属性列は、リストインデックスの位置に対応する属性列を示す。登録情報は、属性列に関して登録された情報を示す。   The attribute column list 121 includes a “list index”, an “attribute column” corresponding to the list index, and “registration information”. Here, the list index indicates the position of each attribute column in the attribute column list 121. Values are assigned to the list index in order from 0 from the top attribute column of the attribute column list 121. The attribute column indicates an attribute column corresponding to the position of the list index. The registration information indicates information registered regarding the attribute column.

図7の例では、登録情報として、属性列「aae」、「bdf」に対応する登録属性列600「aae」、「bdf」が、それぞれ登録されている。なお、登録情報には、登録属性列600が登録されているかどうかを示すフラグや、登録属性列600の識別子、登録属性列600に係る他の情報や処理へのリンクが設定されていてもよい。   In the example of FIG. 7, registration attribute columns 600 “aae” and “bdf” corresponding to the attribute columns “aae” and “bdf” are registered as registration information, respectively. In the registration information, a flag indicating whether or not the registration attribute column 600 is registered, an identifier of the registration attribute column 600, a link to other information and processing related to the registration attribute column 600 may be set. .

影響値記憶部140は、影響値情報141を記憶する。   The influence value storage unit 140 stores influence value information 141.

影響値情報141は、属性列における属性の値が、前回と新たな検索属性列700間で変化した場合に、属性列リスト121における、前回と新たな検索属性列700間の距離(リストインデックスの差分)への影響の大きさを示す。   When the attribute value in the attribute column changes between the previous and new search attribute column 700, the influence value information 141 indicates the distance between the previous and new search attribute column 700 in the attribute column list 121 (list index Indicates the magnitude of the effect on (difference).

図8は、本発明の第1の実施の形態における、影響値情報141の例を示す図である。   FIG. 8 is a diagram illustrating an example of the influence value information 141 according to the first embodiment of this invention.

影響値情報141は、「属性インデックス」、及び、当該属性インデックスの属性値の変化の影響の大きさを示す「影響値」を含む。   The influence value information 141 includes “attribute index” and “influence value” indicating the magnitude of the influence of the change of the attribute value of the attribute index.

属性インデックスi(0≦i≦N−1、Nは属性列の長さ)の属性の影響値Diは、例えば、数1式により算出される。   The attribute influence value Di of the attribute index i (0 ≦ i ≦ N−1, where N is the length of the attribute column) is calculated by, for example, Formula 1.

Figure 0006281287
Figure 0006281287

ここで、nData(j)は、属性インデックスjの属性のとりうる値の数を示す。   Here, nData (j) indicates the number of values that the attribute of the attribute index j can take.

図8の例では、前回と新たな検索属性列700間で属性インデックス「0」、「1」、「2」の属性値が変化した場合に、前回と新たな検索属性列700間の距離が、それぞれ、「4」、「2」、「1」の倍数で変化することを示している。   In the example of FIG. 8, when the attribute values of the attribute indexes “0”, “1”, and “2” change between the previous and new search attribute column 700, the distance between the previous and new search attribute column 700 is as follows. , Respectively, indicating a change in multiples of “4”, “2”, and “1”.

リスト更新部110は、登録属性列600に新たな属性値が含まれている場合に、属性値情報151、影響値情報141、及び、属性列リスト121を更新する。ここで、リスト更新部110は、属性値情報151において、新たな属性値に新たな値インデックスを付与する。また、リスト更新部110は、各属性について、数1式により影響値を算出することにより、影響値情報141を更新する。そして、リスト更新部110は、新たな属性値と他の属性のとりうる値の全組み合わせに係る新たな属性列を、属性列リスト121に挿入する。ここで、属性列リスト121における、新たな属性列の挿入位置は、数2式により算出される。   The list update unit 110 updates the attribute value information 151, the influence value information 141, and the attribute column list 121 when a new attribute value is included in the registered attribute column 600. Here, the list update unit 110 adds a new value index to the new attribute value in the attribute value information 151. In addition, the list update unit 110 updates the influence value information 141 by calculating the influence value using Equation 1 for each attribute. Then, the list update unit 110 inserts a new attribute column relating to all combinations of new attribute values and other attribute values into the attribute column list 121. Here, the insertion position of a new attribute column in the attribute column list 121 is calculated by the following equation (2).

Figure 0006281287
Figure 0006281287

ここで、V[i]は、属性列の属性インデックスiの値インデックスを示す。   Here, V [i] indicates a value index of the attribute index i of the attribute column.

登録部160は、属性列リスト121に、登録属性列600を登録する。ここで、属性列リスト121における、登録属性列600の登録位置は、上述の数2式により算出される。   The registration unit 160 registers the registered attribute column 600 in the attribute column list 121. Here, the registration position of the registered attribute column 600 in the attribute column list 121 is calculated by the above-described equation (2).

検索結果記憶部180は、検索結果181を記憶する。検索結果181は、前回の検索における検索結果を示す。   The search result storage unit 180 stores the search result 181. A search result 181 indicates a search result in the previous search.

図9は、本発明の第1の実施の形態における、検索結果181の例を示す図である。   FIG. 9 is a diagram illustrating an example of the search result 181 according to the first embodiment of this invention.

検索結果181は、属性列リスト121における、前回の検索属性列700に対応する属性列のリストインデックスを含む。図9の検索結果181は、前回の検索属性列700に対応する属性列のリストインデックスが「0」であることを示している。   The search result 181 includes a list index of the attribute column corresponding to the previous search attribute column 700 in the attribute column list 121. The search result 181 in FIG. 9 indicates that the list index of the attribute column corresponding to the previous search attribute column 700 is “0”.

検索部190は、差分属性列800、及び、影響値情報141をもとに、属性列リスト121における、前回の検索属性列700と新たな検索属性列700との間の距離を算出する。そして、検索部190は、算出した距離もとに、新たな検索属性列700に対応する属性列のリストインデックスを取得する。   The search unit 190 calculates the distance between the previous search attribute column 700 and the new search attribute column 700 in the attribute column list 121 based on the difference attribute column 800 and the influence value information 141. Then, the search unit 190 acquires the list index of the attribute column corresponding to the new search attribute column 700 based on the calculated distance.

図10は、本発明の第1の実施の形態における、差分属性列800の例を示す図である。   FIG. 10 is a diagram illustrating an example of the difference attribute column 800 according to the first embodiment of this invention.

差分属性列800では、前回の検索属性列700と新たな検索属性列700との間で変化した属性の属性インデックスごとに、前回の属性値と新たな属性値を示す。   The difference attribute column 800 indicates the previous attribute value and the new attribute value for each attribute index of the attribute that has changed between the previous search attribute column 700 and the new search attribute column 700.

図10の差分属性列800は、属性インデックス「0」の値が「a」から「b」に、属性インデックス「2」の属性値が「e」から「f」に変化したことを示す。   The difference attribute column 800 in FIG. 10 indicates that the value of the attribute index “0” has changed from “a” to “b”, and the attribute value of the attribute index “2” has changed from “e” to “f”.

検索部190は、属性列リスト121における、前回の検索属性列700に対応する属性列と新たな検索属性列700に対応する属性列との間の距離を、例えば、数3式により算出する。   The search unit 190 calculates the distance between the attribute column corresponding to the previous search attribute column 700 and the attribute column corresponding to the new search attribute column 700 in the attribute column list 121 by, for example, Equation 3.

Figure 0006281287
Figure 0006281287

ここで、Vp[i]は、前回の検索属性列700の属性インデックスiの値インデックス、Vn[i]は、新たな検索属性列700の属性インデックスiの値インデックスを示す。   Here, Vp [i] indicates the value index of the attribute index i of the previous search attribute column 700, and Vn [i] indicates the value index of the attribute index i of the new search attribute column 700.

そして、検索部190は、検索結果181により示される、前回の検索属性列700に対応する属性列のリストインデックスに、算出された距離を加算することにより、新たな検索属性列700に対応する属性列のリストインデックスを取得する。   Then, the search unit 190 adds the calculated distance to the list index of the attribute column corresponding to the previous search attribute column 700 indicated by the search result 181, so that the attribute corresponding to the new search attribute column 700 is added. Get the list index of the column.

さらに、検索部190は、属性列リスト121における、新たな検索属性列700に対応する属性列のリストインデックスの位置に設定されている登録情報を取得し、検索結果として検索結果出力装置500に出力する。   Further, the search unit 190 acquires registration information set at the position of the list index of the attribute column corresponding to the new search attribute column 700 in the attribute column list 121, and outputs it to the search result output device 500 as a search result. To do.

なお、検索装置100、登録属性列入力装置300、検索属性列入力装置400、及び、検索結果出力装置500は、それぞれ、プログラムに基づく制御によって動作するコンピュータであってもよい。   Note that the search device 100, the registered attribute string input device 300, the search attribute string input device 400, and the search result output device 500 may each be a computer that operates under control based on a program.

図3は、本発明の第1の実施の形態における、検索装置100がコンピュータにより実現される場合の構成を示すブロック図である。この場合、検索装置100は、コンピュータプログラムを実行するCPU(Central Processing Unit)101、データを記憶する記憶手段(記憶媒体)102、他の装置等とデータ通信を行う通信手段103、キーボード等の入力手段104、及び、ディスプレイ等の出力手段105を含む。   FIG. 3 is a block diagram showing a configuration when the search device 100 is realized by a computer in the first embodiment of the present invention. In this case, the search device 100 includes a CPU (Central Processing Unit) 101 that executes a computer program, a storage unit (storage medium) 102 that stores data, a communication unit 103 that performs data communication with other devices, an input from a keyboard, and the like. Means 104 and output means 105 such as a display.

CPU101は、リスト更新部110、登録部160、及び、検索部190の機能を実現するためのコンピュータプログラムを実行する。記憶手段102は、リスト記憶部120、影響値記憶部140、属性値記憶部150、及び、検索結果記憶部180のデータを記憶する。通信手段103は、登録属性列入力装置300、検索属性列入力装置400から、それぞれ、登録属性列600、差分属性列800を受信する。また、通信手段103は検索結果出力装置500へ、検索結果を送信する。なお、入力手段104が、ユーザ等から、登録属性列600、差分属性列800を受け付ける、あるいは、出力手段105が、ユーザ等へ検索結果を出力してもよい。   The CPU 101 executes a computer program for realizing the functions of the list update unit 110, the registration unit 160, and the search unit 190. The storage unit 102 stores data of the list storage unit 120, the influence value storage unit 140, the attribute value storage unit 150, and the search result storage unit 180. The communication unit 103 receives the registration attribute string 600 and the difference attribute string 800 from the registration attribute string input device 300 and the search attribute string input device 400, respectively. In addition, the communication unit 103 transmits the search result to the search result output device 500. The input unit 104 may receive the registration attribute column 600 and the difference attribute column 800 from the user or the like, or the output unit 105 may output the search result to the user or the like.

次に、本発明の第1の実施の形態の動作について説明する。   Next, the operation of the first exemplary embodiment of the present invention will be described.

はじめに、本発明の第1の実施の形態の登録処理について説明する。   First, registration processing according to the first embodiment of this invention will be described.

図11は、本発明の第1の実施の形態における、登録処理を示すフローチャートである。   FIG. 11 is a flowchart showing registration processing in the first embodiment of the present invention.

はじめに、検索装置100は、登録属性列入力装置300から登録属性列600を受信する(ステップS101)。   First, the search device 100 receives the registration attribute sequence 600 from the registration attribute sequence input device 300 (step S101).

リスト更新部110は、対象属性インデックスに0を設定する(ステップS102)。   The list update unit 110 sets 0 as the target attribute index (step S102).

リスト更新部110は、登録属性列600における対象属性インデックスの属性の値が、属性値情報151に設定されているかどうか(新たな属性値かどうか)を判定する(ステップS103)。   The list updating unit 110 determines whether the attribute value of the target attribute index in the registered attribute column 600 is set in the attribute value information 151 (whether it is a new attribute value) (step S103).

属性値情報151に設定されている場合(新たな属性値でない場合)(ステップS103/Y)、S105の処理へ進む。   If it is set in the attribute value information 151 (if it is not a new attribute value) (step S103 / Y), the process proceeds to S105.

属性値情報151に設定されていない場合(新たな属性値の場合)(ステップS103/N)、リスト更新部110は、後述するリスト更新処理を実行する(ステップS104)。これにより、リスト更新部110は、新たな属性値を属性値情報151に登録し、影響値情報141を更新する。さらに、リスト更新部110は、新たな属性値を含む属性列に対応する登録属性列600が登録可能となるように、属性列リスト121を更新する。   When the attribute value information 151 is not set (in the case of a new attribute value) (step S103 / N), the list update unit 110 executes a list update process described later (step S104). As a result, the list update unit 110 registers a new attribute value in the attribute value information 151 and updates the influence value information 141. Furthermore, the list update unit 110 updates the attribute column list 121 so that the registered attribute column 600 corresponding to the attribute column including the new attribute value can be registered.

リスト更新部110は、登録属性列600の全属性インデックスに対して処理を終了したか判定する(ステップS105)。   The list update unit 110 determines whether the processing has been completed for all attribute indexes in the registered attribute column 600 (step S105).

全インデックスに対して処理を終了していない場合(ステップS105/N)リスト更新部110は、対象属性インデックスをインクリメントし(ステップS106)、ステップS103からの処理を繰り返す。   When processing has not been completed for all indexes (step S105 / N), the list updating unit 110 increments the target attribute index (step S106) and repeats the processing from step S103.

全インデックスに対して処理を終了した場合(ステップS105/Y)、登録部160は、登録属性列600を登録すべき位置を示すリストインデックスを算出する(ステップS107)。   When the process is completed for all indexes (step S105 / Y), the registration unit 160 calculates a list index indicating a position where the registration attribute column 600 is to be registered (step S107).

登録部160は、算出したリストインデックスの位置に、登録属性列600を登録する(ステップS108)。   The registration unit 160 registers the registration attribute column 600 at the calculated position of the list index (step S108).

次に、本発明の第1の実施の形態のリスト更新処理について説明する。   Next, list update processing according to the first embodiment of this invention will be described.

図12は、本発明の第1の実施の形態における、リスト更新処理を示すフローチャートである。   FIG. 12 is a flowchart showing list update processing according to the first embodiment of this invention.

リスト更新部110は、属性値情報151に、登録属性列600における対象属性インデックスの属性値(新たな属性値)を追加する(ステップS201)。ここで、リスト更新部110は、属性値情報151において、新たな属性値に新たな値インデックスを付与する。   The list update unit 110 adds the attribute value (new attribute value) of the target attribute index in the registered attribute column 600 to the attribute value information 151 (step S201). Here, the list update unit 110 adds a new value index to the new attribute value in the attribute value information 151.

リスト更新部110は、影響値情報141を更新する(ステップS202)。ここで、リスト更新部110は、各属性について、数1式により影響値を算出する。   The list update unit 110 updates the influence value information 141 (step S202). Here, the list updating unit 110 calculates an influence value for each attribute using Equation (1).

リスト更新部110は、登録属性列600における対象属性インデックスの属性値(新たな属性値)と、他の属性インデックスのとりうる属性値との全組み合わせについて、新たな属性列を生成する(ステップS203)。   The list updating unit 110 generates a new attribute column for all combinations of the attribute value (new attribute value) of the target attribute index in the registered attribute column 600 and the attribute values that can be taken by other attribute indexes (step S203). ).

リスト更新部110は、ステップS203で生成した新たな属性列のうちの1つを選択する(ステップS204)。   The list update unit 110 selects one of the new attribute strings generated in step S203 (step S204).

リスト更新部110は、選択した属性列の挿入位置のリストインデックスを算出する(ステップS205)。ここで、リスト更新部110は、数2式により、挿入位置のリストインデックスを算出する。   The list update unit 110 calculates a list index of the insertion position of the selected attribute column (step S205). Here, the list update unit 110 calculates the list index of the insertion position using Equation (2).

リスト更新部110は、属性列リスト121における、算出したリストインデックスの位置に、属性列を挿入する(ステップS206)。ここで、リスト更新部110は、挿入位置以降の各属性列のリストインデックスをインクリメントする。   The list update unit 110 inserts an attribute column at the calculated list index position in the attribute column list 121 (step S206). Here, the list update unit 110 increments the list index of each attribute column after the insertion position.

リスト更新部110は、ステップS203で生成した全ての属性列について、ステップS204〜S206の処理を繰り返す(ステップS207)。   The list update unit 110 repeats the processes of steps S204 to S206 for all the attribute strings generated in step S203 (step S207).

次に、本発明の第1の実施の形態の登録処理の具体例を説明する。   Next, a specific example of the registration process according to the first embodiment of this invention will be described.

図13は、本発明の第1の実施の形態における、登録処理の具体例を示す図である。ここでは、図13の初期状態のような、属性値情報151、影響値情報141、及び、属性列リスト121が、それぞれ、属性値記憶部150、影響値記憶部140、及び、リスト記憶部120に記憶されていると仮定する。   FIG. 13 is a diagram illustrating a specific example of the registration process according to the first embodiment of this invention. Here, as in the initial state of FIG. 13, the attribute value information 151, the influence value information 141, and the attribute column list 121 are respectively converted into an attribute value storage unit 150, an influence value storage unit 140, and a list storage unit 120. It is assumed that

ここで、検索装置100が、図13のように、登録属性列600「bdf」を受信したと仮定する。この場合、対象属性インデックス「0」の属性値「b」は、属性値情報151に設定されていない(新たな属性値である)。リスト更新部110は、図13の状態1のように、属性値情報151において、対象属性インデックス「0」に属性値「b」を追加し、値インデックス「1」を付与する。リスト更新部110は、影響値情報141において、属性インデックス「0」、「1」、「2」の影響値として、それぞれ「1」、「1」、「1」を算出し、設定する。リスト更新部110は、対象属性インデックス「0」の属性値「b」を含む新たな属性列「bae」を生成する。リスト更新部110は、属性列「bae」のリストインデックスとして「1」を算出する。リスト更新部110は、リストインデックス「1」の位置に属性列「bae」を挿入する。   Here, it is assumed that the search device 100 receives the registration attribute string 600 “bdf” as shown in FIG. In this case, the attribute value “b” of the target attribute index “0” is not set in the attribute value information 151 (it is a new attribute value). The list update unit 110 adds the attribute value “b” to the target attribute index “0” and assigns the value index “1” in the attribute value information 151 as in state 1 of FIG. The list update unit 110 calculates and sets “1”, “1”, and “1” as the influence values of the attribute indexes “0”, “1”, and “2” in the influence value information 141, respectively. The list update unit 110 generates a new attribute string “bae” including the attribute value “b” of the target attribute index “0”. The list update unit 110 calculates “1” as the list index of the attribute column “bae”. The list update unit 110 inserts the attribute string “bae” at the position of the list index “1”.

また、対象属性インデックス「1」の属性値「d」は、属性値情報151に設定されていない(新たな属性値である)。リスト更新部110は、図13の状態2のように、属性値情報151において、対象属性インデックス「1」に属性値「d」を追加し、値インデックス「1」を付与する。リスト更新部110は、影響値情報141において、属性インデックス「0」、「1」、「2」のそれぞれの影響値として、それぞれ「2」、「1」、「1」を算出し、設定する。リスト更新部110は、対象属性インデックス「1」の属性値「d」を含む新たな属性列「ade」、「bde」を生成する。リスト更新部110は、属性列「ade」、「bde」のリストインデックスとして、それぞれ「1」、「3」を算出する。リスト更新部110は、リストインデックス「1」、「3」の位置に属性列「ade」、「bde」をそれぞれ挿入する。   Further, the attribute value “d” of the target attribute index “1” is not set in the attribute value information 151 (it is a new attribute value). The list update unit 110 adds the attribute value “d” to the target attribute index “1” and assigns the value index “1” in the attribute value information 151, as in state 2 in FIG. The list update unit 110 calculates and sets “2”, “1”, and “1” as the influence values of the attribute indexes “0”, “1”, and “2” in the influence value information 141, respectively. . The list update unit 110 generates new attribute strings “ade” and “bde” including the attribute value “d” of the target attribute index “1”. The list updating unit 110 calculates “1” and “3” as the list indexes of the attribute columns “ade” and “bde”, respectively. The list update unit 110 inserts attribute strings “ade” and “bde” at the positions of the list indexes “1” and “3”, respectively.

さらに、対象属性インデックス「2」の属性値「f」は、属性値情報151に設定されていない(新たな属性値である)。リスト更新部110は、図13の状態3のように、属性値情報151において、対象属性インデックス「2」に属性値「f」を追加し、値インデックス「1」を付与する。リスト更新部110は、影響値情報141において、属性インデックス「0」、「1」、「2」の影響値として、それぞれ「4」、「2」、「1」を算出し、設定する。リスト更新部110は、対象属性インデックス「2」の属性値「f」を含む新たな属性列「aaf」、「adf」、「baf」、「bdf」を生成する。リスト更新部110は、属性列「aaf」、「adf」、「baf」、「bdf」のリストインデックスとして、それぞれ「1」、「3」、「5」、「7」を算出する。リスト更新部110は、リストインデックス「1」、「3」、「5」、「7」の位置に属性列「aaf」、「adf」、「baf」、「bdf」をそれぞれ挿入する。   Furthermore, the attribute value “f” of the target attribute index “2” is not set in the attribute value information 151 (it is a new attribute value). The list update unit 110 adds the attribute value “f” to the target attribute index “2” in the attribute value information 151 and assigns the value index “1” as in state 3 in FIG. The list update unit 110 calculates and sets “4”, “2”, and “1” as the influence values of the attribute indexes “0”, “1”, and “2” in the influence value information 141, respectively. The list update unit 110 generates new attribute strings “aaf”, “adf”, “baf”, “bdf” including the attribute value “f” of the target attribute index “2”. The list updating unit 110 calculates “1”, “3”, “5”, and “7” as the list indexes of the attribute columns “aaf”, “adf”, “baf”, and “bdf”, respectively. The list update unit 110 inserts attribute columns “aaf”, “adf”, “baf”, and “bdf” at the positions of the list indexes “1”, “3”, “5”, and “7”, respectively.

次に、登録部160は、登録属性列600「bdf」のリストインデックスとして、「7」を算出する。登録部160は、図13の状態3のように、リストインデックス「7」の位置に、登録属性列600「bdf」を登録する。   Next, the registration unit 160 calculates “7” as the list index of the registration attribute column 600 “bdf”. The registration unit 160 registers the registration attribute column 600 “bdf” at the position of the list index “7” as in the state 3 in FIG.

次に、本発明の第1の実施の形態の検索処理について説明する。   Next, search processing according to the first embodiment of this invention will be described.

図14は、本発明の第1の実施の形態における、検索処理を示すフローチャートである。   FIG. 14 is a flowchart showing search processing in the first embodiment of the present invention.

はじめに、検索装置100は、検索属性列入力装置400から差分属性列800を受信する(ステップS301)。   First, the search device 100 receives the difference attribute sequence 800 from the search attribute sequence input device 400 (step S301).

検索部190は、差分属性列800と影響値情報141とをもとに、前回の検索属性列700と新たな検索属性列700との間の距離を算出する(ステップS302)。ここで、検索部190は、数3式により、前回の検索属性列700と新たな検索属性列700との間の距離を算出する。   The search unit 190 calculates the distance between the previous search attribute column 700 and the new search attribute column 700 based on the difference attribute column 800 and the influence value information 141 (step S302). Here, the search unit 190 calculates the distance between the previous search attribute sequence 700 and the new search attribute sequence 700 using Equation (3).

検索部190は、検索結果181とステップS302で算出した距離とをもとに、新たな検索属性列700に対応する属性列のリストインデックスを算出する(ステップS303)。ここで、検索部190は、検索結果181により示される、前回の検索属性列700に対応する属性列のリストインデックスに、算出した距離を加算することにより、新たな検索属性列700に対応する属性列のリストインデックスを算出する。   The search unit 190 calculates the list index of the attribute column corresponding to the new search attribute column 700 based on the search result 181 and the distance calculated in step S302 (step S303). Here, the search unit 190 adds the calculated distance to the list index of the attribute column corresponding to the previous search attribute column 700 indicated by the search result 181, so that the attribute corresponding to the new search attribute column 700 is added. Calculate the list index of the column.

検索部190は、属性列リスト121における、新たな検索属性列700に対応する属性列のリストインデックスの位置に登録されている登録情報を取得する(ステップS304)。ここで、例えば、登録情報として登録属性列600が設定されている場合、新たな検索属性列700に合致する登録属性列600が登録されていることを意味する。   The search unit 190 acquires registration information registered at the position of the list index of the attribute column corresponding to the new search attribute column 700 in the attribute column list 121 (step S304). Here, for example, when the registration attribute column 600 is set as registration information, it means that the registration attribute column 600 that matches the new search attribute column 700 is registered.

検索部190は、取得した登録情報を、検索結果として検索結果出力装置500に出力する(ステップS305)。   The search unit 190 outputs the acquired registration information as a search result to the search result output device 500 (step S305).

検索部190は、新たな検索属性列700に対応する属性列のリストインデックスで、検索結果181を更新する(ステップS306)。   The search unit 190 updates the search result 181 with the list index of the attribute column corresponding to the new search attribute column 700 (step S306).

次に、本発明の第1の実施の形態の検索処理の具体例を説明する。   Next, a specific example of search processing according to the first embodiment of this invention will be described.

図15は、本発明の第1の実施の形態における、検索処理の具体例を示す図である。ここでは、図15のような、属性値情報151、影響値情報141、属性列リスト121、及び、検索結果181が、それぞれ、属性値記憶部150、影響値記憶部140、リスト記憶部120、及び、検索結果記憶部180に記憶されていると仮定する。   FIG. 15 is a diagram illustrating a specific example of search processing according to the first embodiment of this invention. Here, as shown in FIG. 15, the attribute value information 151, the influence value information 141, the attribute column list 121, and the search result 181 are respectively converted into an attribute value storage unit 150, an influence value storage unit 140, a list storage unit 120, It is assumed that the search result storage unit 180 stores the search result.

ここで、前回の検索属性列700「aae」、新たな検索属性列700「bdf」に対して、検索装置100が、図15のような差分属性列800を受信したと仮定する。この場合、検索部190は、図15のように、前回の検索属性列700「aae」と新たな検索属性列700「bdf」との間の距離として「7」を算出する。新たな検索属性列700「bdf」に対応する属性列のリストインデックスとして「7」を算出する。そして、検索部190は、リストインデックス「7」の位置に登録されている登録情報「bdf」を取得し、検索結果として出力する。さらに、検索部190は、検索結果181のリストインデックスを「7」で更新する。   Here, it is assumed that the search apparatus 100 receives the difference attribute column 800 as shown in FIG. 15 for the previous search attribute column 700 “aae” and the new search attribute column 700 “bdf”. In this case, the search unit 190 calculates “7” as the distance between the previous search attribute column 700 “aae” and the new search attribute column 700 “bdf” as shown in FIG. “7” is calculated as the list index of the attribute column corresponding to the new search attribute column 700 “bdf”. Then, the search unit 190 acquires the registration information “bdf” registered at the position of the list index “7” and outputs it as a search result. Further, the search unit 190 updates the list index of the search result 181 with “7”.

なお、検索部190は、検索結果記憶部180に検索結果181が記憶されていない場合は、例えば、新たな検索属性列700と属性列リスト121の各属性列とを比較することにより、新たな検索属性列700に対応する属性列のリストインデックスを特定する。   When the search result 181 is not stored in the search result storage unit 180, the search unit 190 compares the new search attribute column 700 with each attribute column in the attribute column list 121, for example. The list index of the attribute column corresponding to the search attribute column 700 is specified.

以上により、本発明の第1の実施の形態の動作が完了する。   Thus, the operation of the first exemplary embodiment of the present invention is completed.

なお、本発明の第1の実施の形態では、検索装置100が、検索属性列入力装置400から差分属性列800を受信している。しかしながら、検索装置100は、検索属性列入力装置400から新たな検索属性列700を受信し、差分属性列800を生成してもよい。   In the first embodiment of the present invention, the search device 100 receives the difference attribute sequence 800 from the search attribute sequence input device 400. However, the search device 100 may receive the new search attribute sequence 700 from the search attribute sequence input device 400 and generate the difference attribute sequence 800.

また、本発明の第1の実施の形態では、検索結果記憶部180が1つの検索結果181を記憶している。しかしながら、検索結果記憶部180は、ユーザ識別子ごとに検索結果181を記憶し、検索部190が、検索属性列入力装置400から差分属性列800とともに受信したユーザ識別子に対応する検索結果181を用いて、検索を行ってもよい。   In the first embodiment of the present invention, the search result storage unit 180 stores one search result 181. However, the search result storage unit 180 stores the search result 181 for each user identifier, and the search unit 190 uses the search result 181 corresponding to the user identifier received from the search attribute sequence input device 400 together with the difference attribute sequence 800. A search may be performed.

また、本発明の第1の実施の形態では、検索部190は、前回の検索属性列700と新たな検索属性列700との間の属性値の変化をもとに、前回の検索属性列700に対応する属性列と新たな検索属性列700に対応する属性列との間の距離を算出する。しかしながら、検索部190は、前回の検索属性列700の代わりに、前回以前の過去の検索属性列700を用いてもよい。この場合、検索部190は、過去と新たな検索属性列700間の属性値の変化をもとに、過去と新たな検索属性列700に対応する属性列間の距離を算出する。そして、検索部190は、過去の検索属性列700に対応する属性列のリストインデックスに、算出した距離を加算することにより、新たな検索属性列700に対応する属性列のリストインデックスを取得する。   In the first embodiment of the present invention, the search unit 190 uses the change in the attribute value between the previous search attribute column 700 and the new search attribute column 700 to change the previous search attribute column 700. The distance between the attribute column corresponding to と and the attribute column corresponding to the new search attribute column 700 is calculated. However, the search unit 190 may use the past search attribute sequence 700 before the previous time instead of the previous search attribute sequence 700. In this case, the search unit 190 calculates the distance between the attribute strings corresponding to the past and new search attribute strings 700 based on the change in the attribute value between the past and new search attribute strings 700. Then, the search unit 190 acquires the list index of the attribute column corresponding to the new search attribute column 700 by adding the calculated distance to the list index of the attribute column corresponding to the past search attribute column 700.

次に、本発明の第1の実施の形態の特徴的な構成を説明する。図1は、本発明の第1の実施の形態の特徴的な構成を示すブロック図である。   Next, a characteristic configuration of the first exemplary embodiment of the present invention will be described. FIG. 1 is a block diagram showing a characteristic configuration of the first embodiment of the present invention.

図1を参照すると、検索装置(情報処理装置)100は、リスト記憶部(属性列リスト記憶手段)120と検索部(検索手段)190とを含む。リスト記憶部120は、所定数の属性の各々の属性値を所定の属性順で配置した属性列リスト121を記憶する。検索部190は、過去の新たな検索属性列間の属性値の変化をもとに算出された、属性列リスト121における過去と新たな検索属性列に対応する属性列間の距離をもとに、新たな検索属性列に対応する属性列の位置を特定する。   Referring to FIG. 1, the search device (information processing device) 100 includes a list storage unit (attribute string list storage unit) 120 and a search unit (search unit) 190. The list storage unit 120 stores an attribute column list 121 in which attribute values of a predetermined number of attributes are arranged in a predetermined attribute order. The search unit 190 is based on the distance between the attribute columns corresponding to the past and new search attribute columns in the attribute column list 121 calculated based on the change of the attribute value between the past new search attribute columns. The position of the attribute column corresponding to the new search attribute column is specified.

本発明の第1の実施の形態によれば、多次元データの検索において、検索を高速化できる。その理由は、検索部190が、過去と新たな検索属性列間の属性値の変化をもとに算出された、属性列リスト121における過去と新たな検索属性列に対応する属性列間の距離をもとに、新たな検索属性列に対応する属性列の位置を特定するためである。   According to the first embodiment of the present invention, it is possible to speed up the search in searching for multidimensional data. This is because the distance between attribute columns corresponding to the past and new search attribute columns in the attribute column list 121 calculated by the search unit 190 based on a change in attribute values between the past and new search attribute columns. This is because the position of the attribute column corresponding to the new search attribute column is specified based on the above.

これにより、過去と新たな検索属性列間でどの属性の値が変化しても、新たな検索属性列と登録属性列との間の各属性の値の比較を行うことなく、属性列リスト121における新たな検索属性列に対応する属性列の位置を特定し、検索結果を得ることができる。   As a result, regardless of which attribute value changes between the past and the new search attribute column, the attribute column list 121 is not compared without comparing the value of each attribute between the new search attribute column and the registered attribute column. The position of the attribute column corresponding to the new search attribute column in can be specified, and the search result can be obtained.

(第2の実施の形態)
次に、本発明の第2の実施の形態について説明する。
(Second Embodiment)
Next, a second embodiment of the present invention will be described.

本発明の第1の実施の形態では、登録属性列600の登録に伴って属性列リスト121が更新されると、検索結果181が示す前回の検索属性列700に対応する属性列のリストインデックスと属性列リスト121との整合がとれなくなる。そのため、正しい検索結果を得るためには、検索を行う前に全ての登録属性列600の登録を完了する、もしくは、登録属性列600が入力されるたびに検索結果181の初期化を行う必要がある。   In the first embodiment of the present invention, when the attribute column list 121 is updated as the registered attribute column 600 is registered, the list index of the attribute column corresponding to the previous search attribute column 700 indicated by the search result 181 Matching with the attribute column list 121 becomes impossible. Therefore, in order to obtain a correct search result, it is necessary to complete the registration of all the registered attribute columns 600 before performing a search, or to initialize the search results 181 every time the registered attribute column 600 is input. is there.

本発明の第2の実施の形態では、属性列リスト121の更新とともに、検索結果181も更新される。   In the second embodiment of the present invention, the search result 181 is updated along with the update of the attribute column list 121.

本発明の第2の実施の形態の構成は、本発明の第1の実施の形態(図2)と同様となる。   The configuration of the second embodiment of the present invention is the same as that of the first embodiment (FIG. 2) of the present invention.

リスト更新部110は、属性列リスト121を更新するときに、検索結果181を更新する。   The list update unit 110 updates the search result 181 when updating the attribute column list 121.

次に、本発明の第2の実施の形態の動作について説明する。   Next, the operation of the second exemplary embodiment of the present invention will be described.

はじめに、本発明の第2の実施の形態の登録処理について説明する。   First, a registration process according to the second embodiment of this invention will be described.

上述のリスト更新処理(図12)のステップS206において、リスト更新部110は、新たな属性列を属性列リスト121に挿入するときに、以下の処理を行う。すなわち、リスト更新部110は、新たな属性列の挿入位置のリストインデックスが、検索結果181のリストインデックスより小さい場合、検索結果181のリストインデックスをインクリメントする。   In step S <b> 206 of the list update process (FIG. 12), the list update unit 110 performs the following process when inserting a new attribute column into the attribute column list 121. That is, the list update unit 110 increments the list index of the search result 181 when the list index of the insertion position of the new attribute column is smaller than the list index of the search result 181.

次に、本発明の第2の実施の形態の登録処理の具体例を説明する。   Next, a specific example of registration processing according to the second embodiment of this invention will be described.

図16は、本発明の第2の実施の形態における、登録処理の具体例を示す図である。ここでは、図16の初期状態のような属性値情報151、影響値情報141、及び、属性列リスト121が、それぞれ、属性値記憶部150、影響値記憶部140、及び、リスト記憶部120に記憶されていると仮定する。また、図16の初期状態のような検索結果181が、検索結果記憶部180に記憶されていると仮定する。に記憶されていると仮定する。   FIG. 16 is a diagram showing a specific example of the registration process in the second embodiment of the present invention. Here, the attribute value information 151, the influence value information 141, and the attribute column list 121 as in the initial state of FIG. 16 are stored in the attribute value storage unit 150, the influence value storage unit 140, and the list storage unit 120, respectively. Assume that it is remembered. Further, it is assumed that the search result 181 as in the initial state of FIG. 16 is stored in the search result storage unit 180. It is assumed that

ここで、検索装置100が、図16のように、登録属性列600「bhf」を受信したと仮定する。この場合、対象属性インデックス「1」の属性値「h」は、属性値情報151に設定されていない(新たな属性値である)。リスト更新部110は、図16の状態1のように、属性値情報151において、対象属性インデックス「1」に属性値「h」を追加し、値インデックス「2」を付与する。リスト更新部110は、影響値情報141において、属性インデックス「0」、「1」、「2」の影響値として、それぞれ「6」、「2」、「1」を算出し、設定する。リスト更新部110は、対象属性インデックス「1」の属性値「h」を含む新たな属性列「ahe」、「ahf」、「bhe」、「bhf」を生成する。リスト更新部110は、属性列「ahe」のリストインデックスとして「4」を算出する。リスト更新部110は、リストインデックス「4」の位置に属性列「ahe」を挿入するときに、検索結果181のリストインデックスを「8」にインクリメントする。さらに、リスト更新部110は、属性列「ahf」のリストインデックスとして「5」を算出する。リスト更新部110は、リストインデックス「5」の位置に属性列「ahf」を挿入するときに、検索結果181のリストインデックスを「9」にインクリメントする。   Here, it is assumed that the search device 100 receives the registration attribute string 600 “bhf” as shown in FIG. In this case, the attribute value “h” of the target attribute index “1” is not set in the attribute value information 151 (it is a new attribute value). The list update unit 110 adds the attribute value “h” to the target attribute index “1” and assigns the value index “2” in the attribute value information 151 as in state 1 in FIG. The list updating unit 110 calculates and sets “6”, “2”, and “1” as the influence values of the attribute indexes “0”, “1”, and “2” in the influence value information 141, respectively. The list updating unit 110 generates new attribute strings “ahe”, “ahf”, “bhe”, “bhf” including the attribute value “h” of the target attribute index “1”. The list update unit 110 calculates “4” as the list index of the attribute column “ahe”. The list updating unit 110 increments the list index of the search result 181 to “8” when inserting the attribute string “ahe” at the position of the list index “4”. Furthermore, the list update unit 110 calculates “5” as the list index of the attribute column “ahf”. The list update unit 110 increments the list index of the search result 181 to “9” when the attribute string “ahf” is inserted at the position of the list index “5”.

なお、本発明の第2の実施の形態の検索処理は、本発明の第1の実施の形態(図14)と同様となる。   Note that the search processing of the second embodiment of the present invention is the same as that of the first embodiment (FIG. 14) of the present invention.

以上により、本発明の第2の実施の形態の動作が完了する。   Thus, the operation of the second exemplary embodiment of the present invention is completed.

本発明の第2の実施の形態によれば、登録属性列600の登録に伴って属性列リスト121が更新されても、正しい検索結果を得ることができる。その理由は、リスト更新部110が、属性列リスト121を更新するときに、検索結果181を更新するためである。   According to the second embodiment of the present invention, a correct search result can be obtained even if the attribute column list 121 is updated as the registered attribute column 600 is registered. The reason is that the list update unit 110 updates the search result 181 when the attribute column list 121 is updated.

(第3の実施の形態)
次に、本発明の第3の実施の形態について説明する。
(Third embodiment)
Next, a third embodiment of the present invention will be described.

本発明の第1の実施の形態では、登録属性列600の属性値にワイルドカードを含む場合に検索を行うことができない。ここで、ワイルドカードは、属性値がどのような値でもマッチする属性値である。本発明の第3の実施の形態では、ワイルドカードの属性値を「*」により示す。例えば、ある属性列の属性インデックス「1」の属性値が「*」の場合、他の属性列の属性インデックス「1」の属性値がどのような値でも、当該他の属性列の属性インデックス「1」の属性は、当該属性列の属性インデックス「1」の属性に合致すると判断される。   In the first embodiment of the present invention, the search cannot be performed when the attribute value of the registered attribute column 600 includes a wild card. Here, the wild card is an attribute value that matches any attribute value. In the third embodiment of the present invention, the attribute value of the wild card is indicated by “*”. For example, when the attribute value of the attribute index “1” of a certain attribute column is “*”, whatever the attribute value of the attribute index “1” of the other attribute column is, the attribute index “ It is determined that the attribute “1” matches the attribute of the attribute index “1” of the attribute column.

本発明の第3の実施の形態では、ワイルドカードの属性値を含む登録属性列600も、属性列リスト121に登録される。そして、ワイルドカード参照情報131を用いて、検索属性列700と合致する、ワイルドカードの属性値を含む登録属性列600が検索される。   In the third embodiment of the present invention, a registered attribute column 600 including a wild card attribute value is also registered in the attribute column list 121. Then, using the wild card reference information 131, a registered attribute column 600 including a wild card attribute value that matches the search attribute column 700 is searched.

はじめに、本発明の第3の実施の形態の構成について説明する。   First, the configuration of the third exemplary embodiment of the present invention will be described.

図17は、本発明の第3の実施の形態における、検索システムの構成を示すブロック図である。   FIG. 17 is a block diagram showing a configuration of a search system according to the third embodiment of the present invention.

図17を参照すると、本発明の第3の実施の形態における検索装置100は、本発明の第1の実施の形態における検索装置100の構成(図2)に加えて、さらに、ワイルドカード参照記憶部130を含む。ワイルドカード参照記憶部130は、ワイルドカード参照情報131を記憶する。   Referring to FIG. 17, the search device 100 according to the third embodiment of the present invention further includes a wild card reference storage in addition to the configuration (FIG. 2) of the search device 100 according to the first embodiment of the present invention. Part 130. The wild card reference storage unit 130 stores wild card reference information 131.

ワイルドカード参照情報131は、属性列リスト121におけるある属性列と、当該属性列600が合致する、ワイルドカードの属性値を含む他の属性列との関係を示す。   The wild card reference information 131 indicates the relationship between a certain attribute column in the attribute column list 121 and another attribute column that includes the wild card attribute value that matches the attribute column 600.

図18は、本発明の第3の実施の形態における、ワイルドカード参照情報131の例を示す図である。   FIG. 18 is a diagram illustrating an example of the wild card reference information 131 according to the third embodiment of this invention.

ワイルドカード参照情報131は、「参照元」、及び、「参照先」を含む。ここで、「参照元」、及び、「参照先」はリストインデックスであり、属性列リスト121における参照元のリストインデックスの属性列が、参照先のリストインデックスの、ワイルドカードの属性値を含む属性列に合致することを示す。   The wild card reference information 131 includes “reference source” and “reference destination”. Here, “reference source” and “reference destination” are list indexes, and the attribute column of the list index of the reference source in the attribute column list 121 includes an attribute including the wildcard attribute value of the list index of the reference destination. Indicates that the column matches.

図18の例では、参照元「0」に参照先「4」が対応づけられており、リストインデックス「0」の属性列が、ワイルドカードの属性値を含む、リストインデックス「4」の属性列に合致することを示す。すなわち、リストインデックス「4」に登録されている属性列は、リストインデックス「0」の属性列の属性の少なくとも一部の属性値をワイルドカードで置き換えた属性列である。   In the example of FIG. 18, the reference source “0” is associated with the reference destination “4”, and the attribute column of the list index “0” includes the wild card attribute value. Indicates that it matches. That is, the attribute column registered in the list index “4” is an attribute column in which at least some of the attribute values of the attribute column of the list index “0” are replaced with wild cards.

リスト更新部110は、登録属性列600に新たな属性値が含まれている場合に、属性値情報151、影響値情報141、属性列リスト121に加えて、ワイルドカード参照情報131も更新する。   When a new attribute value is included in the registered attribute column 600, the list update unit 110 updates the wild card reference information 131 in addition to the attribute value information 151, the influence value information 141, and the attribute column list 121.

次に、本発明の第3の実施の形態の動作について説明する。   Next, the operation of the third exemplary embodiment of the present invention will be described.

はじめに、本発明の第3の実施の形態の登録処理について説明する。   First, the registration process according to the third embodiment of the present invention will be described.

上述のリスト更新処理(図12)のステップS206において、リスト更新部110は、新たな属性列を属性列リスト121に挿入するときに、以下のように、ワイルドカード参照情報131を更新する。すなわち、リスト更新部110は、属性列リスト121に、ワイルドカードの属性値を含む新たな属性列に合致する他の属性列がある場合、当該他の属性列のリストインデックスを参照元、新たな属性列のリストインデックスを参照先に追加する。また、リスト更新部110は、属性列リスト121に、新たな属性列が合致する、ワイルドカードの属性値を含む他の属性列がある場合、新たな属性列のリストインデックスを参照元、当該他の属性列のリストインデックスを参照先に追加する。   In step S206 of the above-described list update process (FIG. 12), the list update unit 110 updates the wild card reference information 131 as follows when inserting a new attribute column into the attribute column list 121. In other words, when there is another attribute column that matches the new attribute column including the wildcard attribute value in the attribute column list 121, the list update unit 110 uses the list index of the other attribute column as a reference source and creates a new attribute column. Add the list index of the attribute column to the reference destination. In addition, when there is another attribute column including a wild card attribute value that matches the new attribute column in the attribute column list 121, the list update unit 110 uses the list index of the new attribute column as the reference source, the other Add the list index of the attribute column to the reference destination.

ここで、リスト更新部110は、新たな属性列の各属性インデックスについて、以下の処理により、ワイルドカードの属性値を含む新たな属性列に合致する他の属性列、または、新たな属性列が合致する、ワイルドカードの属性値を含む他の属性列を抽出する。   Here, for each attribute index of the new attribute column, the list update unit 110 creates another attribute column that matches the new attribute column including the wild card attribute value or a new attribute column by the following processing. Extract other attribute strings that contain wildcard attribute values that match.

すなわち、リスト更新部110は、属性列リスト121における、新たな属性列の挿入位置のリストインデックスから、属性インデックスに対する影響値分減じたリストインデックスを算出する。ここで、新たな属性列の当該属性インデックスの属性値がワイルドカードの場合は、当該算出したリストインデックスの属性列が、新たな属性列に合致する属性列である。一方、当該算出したリストインデックスの属性列の当該属性インデックスの属性値がワイルドカードの場合は、当該算出したリストインデックスの属性列は、新たな属性列が合致する属性列である。リスト更新部110は、このようなリストインデックスの減算、及び、合致判定を、「当該属性インデックスに対する属性値の数−1」回繰り返す。   That is, the list update unit 110 calculates a list index obtained by subtracting the influence value for the attribute index from the list index of the insertion position of the new attribute column in the attribute column list 121. Here, when the attribute value of the attribute index of the new attribute column is a wild card, the attribute column of the calculated list index is an attribute column that matches the new attribute column. On the other hand, when the attribute value of the attribute index of the calculated list index attribute column is a wild card, the calculated attribute column of the list index is an attribute column that matches the new attribute column. The list update unit 110 repeats such subtraction of the list index and matching determination “number of attribute values for the attribute index−1” times.

次に、本発明の第3の実施の形態の登録処理の具体例を説明する。   Next, a specific example of registration processing according to the third embodiment of this invention will be described.

図19は、本発明の第3の実施の形態における、登録処理の具体例を示す図である。ここでは、図19の初期状態のような、属性値情報151、影響値情報141、及び、属性列リスト121が、それぞれ、属性値記憶部150、影響値記憶部140、及び、リスト記憶部120に記憶されていると仮定する。   FIG. 19 is a diagram showing a specific example of registration processing in the third embodiment of the present invention. Here, as in the initial state of FIG. 19, the attribute value information 151, the influence value information 141, and the attribute column list 121 are respectively converted into an attribute value storage unit 150, an influence value storage unit 140, and a list storage unit 120. It is assumed that

ここで、検索装置100が、図19のように、ワイルドカードの属性値を含む登録属性列600「a*f」を受信したと仮定する。この場合、対象属性インデックス「1」の属性値「*」は、属性値情報151に設定されていない(新たな属性値である)。リスト更新部110は、図19の状態1のように、属性値情報151において、対象属性インデックス「1」に属性値「*」を追加し、値インデックス「2」を付与する。リスト更新部110は、影響値情報141において、属性インデックス「0」、「1」、「2」の影響値として、それぞれ「6」、「2」、「1」を算出し、設定する。リスト更新部110は、対象属性インデックス「1」の属性値「*」を含む新たな属性列「a*e」、「a*f」、「b*e」、「b*f」を生成する。   Here, it is assumed that the search device 100 has received a registered attribute column 600 “a * f” including a wild card attribute value as shown in FIG. In this case, the attribute value “*” of the target attribute index “1” is not set in the attribute value information 151 (it is a new attribute value). The list update unit 110 adds the attribute value “*” to the target attribute index “1” and assigns the value index “2” in the attribute value information 151 as in state 1 of FIG. The list updating unit 110 calculates and sets “6”, “2”, and “1” as the influence values of the attribute indexes “0”, “1”, and “2” in the influence value information 141, respectively. The list update unit 110 generates new attribute strings “a * e”, “a * f”, “b * e”, and “b * f” including the attribute value “*” of the target attribute index “1”. .

リスト更新部110は、属性列「a*e」のリストインデックスとして「4」を算出する。リスト更新部110は、リストインデックス「4」の位置に属性列「a*e」を挿入する。リスト更新部110は、属性インデックス「1」について、リストインデックスを「2」、「0」の順に減じながら、合致判定を行う。また、リスト更新部110は、属性インデックス「2」について、リストインデックスを「3」に減じて、合致判定を行う。この結果、リスト更新部110は、リストインデックス「2」、「0」の属性列「ade」、「aae」を、属性列「a*e」に合致する属性列として抽出する。そして、リスト更新部110は、図19の状態2のように、ワイルドカード参照情報131に、参照元「0」、「2」に対して、参照先「4」を設定する。   The list update unit 110 calculates “4” as the list index of the attribute column “a * e”. The list update unit 110 inserts the attribute string “a * e” at the position of the list index “4”. The list update unit 110 performs a match determination on the attribute index “1” while reducing the list index in the order of “2” and “0”. Further, the list update unit 110 performs the match determination for the attribute index “2” by reducing the list index to “3”. As a result, the list update unit 110 extracts the attribute columns “ade” and “aae” of the list indexes “2” and “0” as attribute columns that match the attribute column “a * e”. Then, the list update unit 110 sets the reference destination “4” for the reference sources “0” and “2” in the wildcard reference information 131 as in the state 2 of FIG.

リスト更新部110は、属性列「a*f」、「b*e」、「b*f」についても、同様に、図19の状態2のように、ワイルドカード参照情報131に、参照元、及び、参照先を設定する。   Similarly, the list update unit 110 also sets the reference source, the wild card reference information 131 for the attribute columns “a * f”, “b * e”, and “b * f” as in state 2 of FIG. And the reference destination is set.

次に、登録部160は、登録属性列600「a*f」のリストインデックスとして「5」を算出する。登録部160は、図19の状態2のように、リストインデックス「5」の位置に、登録属性列600「a*f」を登録する。   Next, the registration unit 160 calculates “5” as the list index of the registration attribute column 600 “a * f”. The registration unit 160 registers the registration attribute column 600 “a * f” at the position of the list index “5” as in state 2 in FIG.

次に、本発明の第3の実施の形態の検索処理について説明する。   Next, search processing according to the third embodiment of this invention will be described.

上述の検索処理(図14)のステップS303において、検索部190は、新たな検索属性列700に対応する属性列のリストインデックスを参照元とする参照先を、ワイルドカード参照情報131から取得する。さらに、検索部190は、取得した参照先を参照元とする参照先を、ワイルドカード参照情報131から取得することを繰り返す。これにより、新たな検索属性列700に合致する、ワイルドカードを含む属性列のリストインデックスが抽出される。   In step S <b> 303 of the above-described search process (FIG. 14), the search unit 190 acquires from the wildcard reference information 131 a reference destination that uses the list index of the attribute column corresponding to the new search attribute column 700 as a reference source. Furthermore, the search unit 190 repeats acquiring a reference destination using the acquired reference destination as a reference source from the wild card reference information 131. As a result, the list index of the attribute column including the wild card that matches the new search attribute column 700 is extracted.

ステップS304において、検索部190は、新たな検索属性列700に対するリストインデックス、及び、取得した参照先のリストインデックスの位置に登録されている登録情報を取得する。ここで、例えば、参照先のリストインデックスの位置の登録情報として登録属性列600が設定されている場合、新たな検索属性列700に合致する、ワイルドカードを含む登録属性列600が登録されていることを意味する。   In step S304, the search unit 190 acquires the list index for the new search attribute column 700 and the registration information registered at the position of the acquired reference list index. Here, for example, when the registration attribute column 600 is set as the registration information of the position of the reference list index, the registration attribute column 600 including a wild card that matches the new search attribute column 700 is registered. Means that.

ステップS305において、検索部190は、取得した登録情報を、検索結果として検索結果出力装置500に出力する。   In step S305, the search unit 190 outputs the acquired registration information to the search result output device 500 as a search result.

図20は、本発明の第3の実施の形態における、検索処理の具体例を示す図である。ここでは、図20のような、属性値情報151、影響値情報141、属性列リスト121、及び、検索結果181が、それぞれ、属性値記憶部150、影響値記憶部140、リスト記憶部120、及び、検索結果記憶部180に記憶されていると仮定する。また、図20のような、ワイルドカード参照情報131が、ワイルドカード参照記憶部130に記憶されていると仮定する。   FIG. 20 is a diagram illustrating a specific example of search processing according to the third embodiment of the present invention. Here, as shown in FIG. 20, the attribute value information 151, the influence value information 141, the attribute column list 121, and the search result 181 are respectively converted into an attribute value storage unit 150, an influence value storage unit 140, a list storage unit 120, It is assumed that the search result storage unit 180 stores the search result. Further, it is assumed that wild card reference information 131 as illustrated in FIG. 20 is stored in the wild card reference storage unit 130.

ここで、前回の検索属性列700「aae」、新たな検索属性列700「adf」に対して、検索装置100が、図20のような差分属性列800を受信したと仮定する。この場合、検索部190は、図20のように、前回の検索属性列700「aae」と新たな検索属性列700「adf」との間の距離として「3」を算出する。検索部190は、新たな検索属性列700「adf」に対応する属性列のリストインデックスとして「3」を算出する。さらに、検索部190は、参照元「3」に対する参照先「5」を取得する。そして、検索部190は、参照先「5」に登録されている登録情報「a*f」を出力する。さらに、検索部190は、検索結果181のリストインデックスを「3」で更新する。   Here, it is assumed that the search device 100 receives the difference attribute column 800 as shown in FIG. 20 for the previous search attribute column 700 “aae” and the new search attribute column 700 “adf”. In this case, the search unit 190 calculates “3” as the distance between the previous search attribute string 700 “aae” and the new search attribute string 700 “adf” as shown in FIG. The search unit 190 calculates “3” as the list index of the attribute column corresponding to the new search attribute column 700 “adf”. Furthermore, the search unit 190 acquires a reference destination “5” for the reference source “3”. Then, the search unit 190 outputs the registration information “a * f” registered in the reference destination “5”. Further, the search unit 190 updates the list index of the search result 181 with “3”.

以上により、本発明の第3の実施の形態の動作が完了する。   Thus, the operation of the third embodiment of the present invention is completed.

本発明の第3の実施の形態によれば、登録属性列600の属性値にワイルドカードを含む場合でも、検索を行うことができる。その理由は、検索部190が、ワイルドカード参照情報131を用いて、属性列リスト121における、新たな検索属性列700と合致する、ワイルドカードを含む属性列の位置を特定するためである。   According to the third embodiment of the present invention, a search can be performed even when a wild card is included in the attribute value of the registered attribute column 600. The reason is that the search unit 190 uses the wild card reference information 131 to specify the position of the attribute column including the wild card that matches the new search attribute column 700 in the attribute column list 121.

以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。   While the present invention has been described with reference to the embodiments, the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.

本発明は、属性列の検索を行う検索装置やデータベースに適用できる。また、本発明は、属性列にユーザの状態情報を用いることにより、リアルタイムなマッチングが必要なコンシェルジュサービスやリアルタイム広告配信等の状況依存サービスに適用できる。   The present invention can be applied to a search device or a database that searches an attribute string. Further, the present invention can be applied to a situation-dependent service such as a concierge service that requires real-time matching and real-time advertisement distribution by using user status information in an attribute column.

100 検索装置
101 CPU
102 記憶手段
103 通信手段
104 入力手段
105 出力手段
110 リスト更新部
120 リスト記憶部
121 属性列リスト
130 ワイルドカード参照記憶部
131 ワイルドカード参照情報
140 影響値記憶部
141 影響値情報
150 属性値記憶部
151 属性値情報
160 登録部
180 検索結果記憶部
181 検索結果
190 検索部
300 登録属性列入力装置
400 検索属性列入力装置
500 検索結果出力装置
600 登録属性列
700 検索属性列
800 差分属性列
100 search device 101 CPU
DESCRIPTION OF SYMBOLS 102 Memory | storage means 103 Communication means 104 Input means 105 Output means 110 List update part 120 List memory | storage part 121 Attribute string list 130 Wild card reference memory | storage part 131 Wild card reference information 140 Influence value memory | storage part 141 Influence value information 150 Attribute value memory | storage part 151 Attribute value information 160 Registration unit 180 Search result storage unit 181 Search result 190 Search unit 300 Registered attribute sequence input device 400 Search attribute sequence input device 500 Search result output device 600 Registered attribute sequence 700 Search attribute sequence 800 Difference attribute sequence

Claims (10)

所定数の属性の各々の属性値を所定の属性順で配置した属性列のリストを記憶する属性列リスト記憶手段と、
過去の検索属性列と新たな検索属性列との間の属性値の変化をもとに算出された、前記リストにおける前記過去の検索属性列に対応する属性列の位置と前記新たな検索属性列に対応する属性列の位置との間の距離をもとに、前記新たな検索属性列に対応する属性列の位置を特定する検索手段と、
を備え
前記所定数の属性の各々において、とりうる属性値の各々にインデックスが付与され、
前記リストは、前記所定数の属性の各々のとりうる属性値の組み合わせに係る属性列をインデックスの順番に配置したリストであり、
前記検索手段は、前記所定数の属性の各々について算出した、前記過去の検索属性列と前記新たな検索属性列との間の当該属性に係る属性値のインデックスの変化量に、属性列における当該属性の次の属性から末尾の属性までの各々のとりうる属性値の数の積を乗じた値の総和により、前記距離を算出する、
情報処理装置。
Attribute column list storage means for storing a list of attribute columns in which attribute values of a predetermined number of attributes are arranged in a predetermined attribute order;
The position of the attribute column corresponding to the past search attribute column in the list and the new search attribute column calculated based on the change of the attribute value between the past search attribute column and the new search attribute column Search means for specifying the position of the attribute column corresponding to the new search attribute column based on the distance between the position of the attribute column corresponding to
Equipped with a,
In each of the predetermined number of attributes, an index is assigned to each possible attribute value,
The list is a list in which attribute columns related to combinations of attribute values that can be taken by each of the predetermined number of attributes are arranged in the order of indexes.
The search means calculates the change amount of the index of the attribute value related to the attribute between the past search attribute string and the new search attribute string calculated for each of the predetermined number of attributes in the attribute string. The distance is calculated by the sum of values multiplied by the product of the number of attribute values that can be taken from the next attribute to the last attribute.
Information processing device.
前記検索手段は、前記過去の検索属性列に対応する属性列の位置に、前記算出された距離を加えることにより、前記新たな検索属性列に対応する属性列の位置を取得する、
請求項1に記載の情報処理装置。
The search means acquires the position of the attribute column corresponding to the new search attribute column by adding the calculated distance to the position of the attribute column corresponding to the past search attribute column,
The information processing apparatus according to claim 1.
さらに、前記所定数の属性のいずれかのとりうる属性値に新たな値が追加された場合に、当該新たな値に新たなインデックスを付与し、前記所定数の属性の各々のとりうる属性値の新たな組み合わせに係る属性列を追加することにより、前記リストを更新する、リスト更新手段を含む、
請求項1または2に記載の情報処理装置。
Further, when a new value is added to any attribute value that can be taken by any of the predetermined number of attributes, a new index is assigned to the new value, and the attribute value that can be taken by each of the predetermined number of attributes Including a list updating means for updating the list by adding an attribute column relating to the new combination of
The information processing apparatus according to claim 1 or 2 .
前記リスト更新手段は、前記リストが更新された場合に、前記過去の検索属性列の位置を更新する、
請求項に記載の情報処理装置。
The list update means updates the position of the past search attribute string when the list is updated.
The information processing apparatus according to claim 3 .
前記所定数の属性のうちの少なくとも1つのとりうる属性値がワイルドカードを含み、
さらに、前記リストにおけるワイルドカードを含む属性列の位置と当該属性列に合致する属性列の位置との関係を示す、ワイルドカード参照情報を記憶するワイルドカード参照記憶手段を含み、
前記検索手段は、前記ワイルドカード参照情報をもとに、前記新たな検索属性列に対応する属性列の位置に対する、当該属性列が合致するワイルドカードを含む属性列の位置を特定する、
請求項1乃至のいずれかに記載の情報処理装置。
At least one possible attribute value of the predetermined number of attributes includes a wild card,
Furthermore, a wild card reference storage means for storing wild card reference information indicating a relationship between a position of an attribute column including a wild card in the list and a position of an attribute column matching the attribute column,
The search means specifies the position of an attribute column that includes a wildcard that matches the attribute column with respect to the position of the attribute column corresponding to the new search attribute column, based on the wild card reference information.
The information processing apparatus according to any one of claims 1 to 4.
さらに、登録属性列に係る情報を、前記リストにおける、当該登録属性列に対応する位置に関連付ける登録手段を含み、
前記検索手段は、前記新たな検索属性列の位置に関連付けられた前記登録属性列に係る情報を出力する、
請求項1乃至のいずれかに記載の情報処理装置。
And registration means for associating information relating to the registration attribute column with a position corresponding to the registration attribute column in the list,
The search means outputs information related to the registered attribute string associated with the position of the new search attribute string;
The information processing apparatus according to any one of claims 1 to 5.
コンピュータに具備された属性列リスト記憶手段が、所定数の属性の各々の属性値を所定の属性順で配置した属性列のリストを記憶し、
前記コンピュータに具備された検索手段が、過去の検索属性列と新たな検索属性列との間の属性値の変化をもとに算出された、前記リストにおける前記過去の検索属性列に対応する属性列の位置と前記新たな検索属性列に対応する属性列の位置との間の距離をもとに、前記新たな検索属性列に対応する属性列の位置を特定する、検索方法であって、
前記所定数の属性の各々において、とりうる属性値の各々にインデックスが付与され、
前記リストは、前記所定数の属性の各々のとりうる属性値の組み合わせに係る属性列をインデックスの順番に配置したリストであり、
前記検索手段は、前記新たな検索属性列に対応する属性列の位置を特定する場合、前記所定数の属性の各々について算出した、前記過去の検索属性列と前記新たな検索属性列との間の当該属性に係る属性値のインデックスの変化量に、属性列における当該属性の次の属性から末尾の属性までの各々のとりうる属性値の数の積を乗じた値の総和により、前記距離を算出する、
検索方法。
An attribute column list storage means provided in the computer stores a list of attribute columns in which attribute values of a predetermined number of attributes are arranged in a predetermined attribute order;
An attribute corresponding to the past search attribute string in the list, calculated by the search means provided in the computer based on a change in attribute value between the past search attribute string and the new search attribute string A search method for identifying a position of an attribute column corresponding to the new search attribute column based on a distance between a column position and an attribute column position corresponding to the new search attribute column ,
In each of the predetermined number of attributes, an index is assigned to each possible attribute value,
The list is a list in which attribute columns related to combinations of attribute values that can be taken by each of the predetermined number of attributes are arranged in the order of indexes.
In the case where the position of the attribute column corresponding to the new search attribute column is specified, the search unit calculates the interval between the past search attribute column and the new search attribute column calculated for each of the predetermined number of attributes. The sum of the values obtained by multiplying the amount of change in the index of the attribute value related to the attribute by the product of the number of attribute values that can be taken from the attribute next to the attribute in the attribute column to the last attribute is calculated as the distance. calculate,
retrieval method.
前記検索手段は、前記新たな検索属性列に対応する属性列の位置を特定する場合、前記過去の検索属性列に対応する属性列の位置に、前記算出された距離を加えることにより、前記新たな検索属性列に対応する属性列の位置を取得する、
請求項に記載の検索方法。
When specifying the position of the attribute string corresponding to the new search attribute string , the search means adds the calculated distance to the position of the attribute string corresponding to the past search attribute string, thereby The position of the attribute column corresponding to the search attribute column
The search method according to claim 7 .
コンピュータに、
所定数の属性の各々の属性値を所定の属性順で配置した属性列のリストを記憶し、
過去の検索属性列と新たな検索属性列との間の属性値の変化をもとに算出された、前記リストにおける前記過去の検索属性列に対応する属性列の位置と前記新たな検索属性列に対応する属性列の位置との間の距離をもとに、前記新たな検索属性列に対応する属性列の位置を特定する、処理を実行させるプログラムであって、
前記所定数の属性の各々において、とりうる属性値の各々にインデックスが付与され、
前記リストは、前記所定数の属性の各々のとりうる属性値の組み合わせに係る属性列をインデックスの順番に配置したリストであり、
前記新たな検索属性列に対応する属性列の位置を特定する場合、前記所定数の属性の各々について算出した、前記過去の検索属性列と前記新たな検索属性列との間の当該属性に係る属性値のインデックスの変化量に、属性列における当該属性の次の属性から末尾の属性までの各々のとりうる属性値の数の積を乗じた値の総和により、前記距離を算出する、
処理を実行させるプログラム。
On the computer,
Storing a list of attribute columns in which attribute values of a predetermined number of attributes are arranged in a predetermined attribute order;
The position of the attribute column corresponding to the past search attribute column in the list and the new search attribute column calculated based on the change of the attribute value between the past search attribute column and the new search attribute column A program for executing a process for identifying a position of an attribute column corresponding to the new search attribute column based on a distance between the attribute column and the position of the attribute column corresponding to
In each of the predetermined number of attributes, an index is assigned to each possible attribute value,
The list is a list in which attribute columns related to combinations of attribute values that can be taken by each of the predetermined number of attributes are arranged in the order of indexes.
When specifying the position of the attribute column corresponding to the new search attribute column, it relates to the attribute between the past search attribute column and the new search attribute column calculated for each of the predetermined number of attributes. The distance is calculated by the sum of values obtained by multiplying the change amount of the attribute value index by the product of the number of attribute values that can be taken from the attribute next to the end attribute in the attribute column.
A program that executes processing.
前記新たな検索属性列に対応する属性列の位置を特定する場合、前記過去の検索属性列に対応する属性列の位置に、前記算出された距離を加えることにより、前記新たな検索属性列に対応する属性列の位置を取得する、  When specifying the position of the attribute column corresponding to the new search attribute column, adding the calculated distance to the position of the attribute column corresponding to the past search attribute column, Get the position of the corresponding attribute column,
処理を実行させる、請求項9に記載のプログラム。The program according to claim 9, wherein the program is executed.
JP2014001642A 2014-01-08 2014-01-08 Information processing apparatus, search method, and program Active JP6281287B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014001642A JP6281287B2 (en) 2014-01-08 2014-01-08 Information processing apparatus, search method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014001642A JP6281287B2 (en) 2014-01-08 2014-01-08 Information processing apparatus, search method, and program

Publications (2)

Publication Number Publication Date
JP2015130103A JP2015130103A (en) 2015-07-16
JP6281287B2 true JP6281287B2 (en) 2018-02-21

Family

ID=53760769

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014001642A Active JP6281287B2 (en) 2014-01-08 2014-01-08 Information processing apparatus, search method, and program

Country Status (1)

Country Link
JP (1) JP6281287B2 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2013108333A1 (en) * 2012-01-18 2015-05-11 日本電気株式会社 SEARCH DEVICE, SEARCH METHOD, AND SEARCH PROGRAM
JP5765253B2 (en) * 2012-01-24 2015-08-19 富士通株式会社 Area search method, area search program, and information processing apparatus

Also Published As

Publication number Publication date
JP2015130103A (en) 2015-07-16

Similar Documents

Publication Publication Date Title
CN111460311A (en) Search processing method, device and equipment based on dictionary tree and storage medium
JP2017224184A (en) Machine learning device
CN106095738B (en) Recommending form fragments
KR100995861B1 (en) Module and method for searching named entity of terms from the named entity database using named entity database and mining rule merged ontology schema
CN107004141A (en) To the efficient mark of large sample group
CN111461301A (en) Serialized data processing method and device, and text processing method and device
JP2019032704A (en) Table data structuring system and table data structuring method
CN109858031B (en) Neural network model training and context prediction method and device
CN109299443B (en) News text duplication eliminating method based on minimum vertex coverage
JP6281287B2 (en) Information processing apparatus, search method, and program
JP5565632B2 (en) Map information output device and program
JP2010015394A (en) Link destination presentation device and computer program
JP2021163477A (en) Method, apparatus, electronic device, computer-readable storage medium, and computer program for image processing
JP6641456B2 (en) Computer system and data classification method
JP5188290B2 (en) Annotation apparatus, annotation method and program
JP6413597B2 (en) Analysis program, analysis method, and analysis apparatus
JP2019125025A (en) System, method for managing document data, and program
JP5305971B2 (en) Abbreviation estimation apparatus and method
JP5701830B2 (en) Document structure analysis apparatus and program
KR20150096848A (en) Apparatus for searching data using index and method for using the apparatus
US11886459B2 (en) Data management system and data management method
JP6292886B2 (en) Layouting device, layouting method and layouting program
KR101077982B1 (en) Apparatus and method for browsing documents using dynamic threshold
US20220100804A1 (en) Data retrieving apparatus, method, and program
CN105930162A (en) Subgraph search-based feature location method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170829

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171019

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180108

R150 Certificate of patent or registration of utility model

Ref document number: 6281287

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150