JP5383776B2 - グラフインデックス更新装置 - Google Patents
グラフインデックス更新装置 Download PDFInfo
- Publication number
- JP5383776B2 JP5383776B2 JP2011244065A JP2011244065A JP5383776B2 JP 5383776 B2 JP5383776 B2 JP 5383776B2 JP 2011244065 A JP2011244065 A JP 2011244065A JP 2011244065 A JP2011244065 A JP 2011244065A JP 5383776 B2 JP5383776 B2 JP 5383776B2
- Authority
- JP
- Japan
- Prior art keywords
- vector data
- node
- graph index
- index
- graph
- 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
Links
- 238000000034 method Methods 0.000 claims description 57
- 238000012545 processing Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 4
- 238000003860 storage Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
複数のベクトルデータと前記複数のベクトルデータ間のリンク関係を示すグラフインデックスとを格納するデータベースと、前記複数のベクトルデータのうちの特定のベクトルデータから、前記グラフインデックスが示すリンク関係を辿ることで他のベクトルデータを検索する検索部と、前記データベースのグラフインデックスの更新を行うインデックス更新部とを備えており、
前記インデックス更新部は、
前記複数のベクトルデータの一部又は全部によって構成される特定のベクトルデータ集合を特定する処理と、
前記ベクトルデータ集合に属する第1のベクトルデータから、第2のベクトルデータを、前記グラフインデックスを用いて、前記検索部によって検索させる処理と、
前記グラフインデックスを用いた検索における前記リンク関係を辿る過程において取得した第3のベクトルデータと前記第2のベクトルデータとの間の距離が、前記第1のベクトルデータから前記第2のベクトルデータまでの距離より短い場合には、前記第3のベクトルデータと前記第2のベクトルデータとの間に新たなリンクを生成して前記データベースの前記グラフインデックスを更新する処理と
を行う構成となっている
グラフインデックス更新装置。
前記第2のベクトルデータは、前記ベクトルデータ集合において、前記第1のベクトルデータに対して最も近いベクトルデータである
項目1に記載のグラフインデックス更新装置。
前記インデックス更新部は、さらに、
前記第2のベクトルデータから、前記第1のベクトルデータを、前記検索部によって検索させる処理と、
前記グラフインデックスを用いた検索における前記リンク関係を辿る過程によって取得した第4のベクトルデータと前記第1のベクトルデータとの間の距離が、前記第3のベクトルデータから前記第1のベクトルデータまでの距離より短い場合には、前記第4のベクトルデータと前記第1のベクトルデータとの間に新たなリンクを生成して前記データベースの前記グラフインデックスを更新する処理と
を行う構成となっている
項目1又は2に記載のグラフインデックス更新装置。
データベースに格納された複数のベクトルデータの一部又は全部によって構成される特定のベクトルデータ集合を特定するステップと、
前記ベクトルデータ集合に属する第1のベクトルデータから、第2のベクトルデータを、前記複数のベクトルデータ間のリンク関係を示すグラフインデックスを用いて検索するステップと、
前記グラフインデックスを用いた検索の過程において取得した第3のベクトルデータと前記第2のベクトルデータとの間の距離が、前記第1のベクトルデータから前記第2のベクトルデータまでの距離より短い場合には、前記第3のベクトルデータと前記第2のベクトルデータとの間に新たなリンクを生成して、前記グラフインデックスを更新するステップと
を備えた装置のグラフインデックス更新方法。
項目4に記載の各ステップをコンピュータに実行させるためのコンピュータプログラム。
第1実施形態のグラフインデックス更新装置を説明する前提として、この更新装置を含む検索システム全体の構成を、図1に基づいて説明する。
・複数のベクトルデータの一部又は全部によって構成される特定のベクトルデータ集合を特定する処理;
・ベクトルデータ集合に属する第1のベクトルデータから、第2のベクトルデータを、グラフインデックスを用いて、検索部12によって検索させる処理;
・グラフインデックスを用いた検索におけるリンク関係を辿る過程において取得した第3のベクトルデータと第2のベクトルデータとの間の距離が、第1のベクトルデータから第2のベクトルデータまでの距離より短い場合には、第3のベクトルデータと第2のベクトルデータとの間に新たなリンクを生成してデータベース11のグラフインデックスを更新する処理。
以下、図2をさらに参照しながら、本実施形態の更新装置を用いたグラフインデックスの更新手順を詳しく説明する。なお、以下の説明では、ベクトルデータのことをノードと称することがある。また、以下に説明する更新手順は、特に説明のない限り、基本的にはインデックス更新部13により実行される。
まず、インデックス更新部13が、ノード集合Sを特定する。ここで、本実施形態では、グラフインデックスの初期状態を、図3(a)に示す状態であると仮定する。この状態において、ノードDをこのグラフインデックスから削除する(図3(b)参照)。本実施形態では、削除されたノードDに直接に連結していたノードSn(本実施形態ではS1〜S4)によってノード集合Sが形成される。
ついで、インデックス更新部13が、ノード集合Sから、始点のノードとして、任意の一つのノードSi(第1のベクトルデータの一例に相当)を特定する。本実施形態では、ノードS1を始点ノードとする。
次に、インデックス更新部13が、選択したノードS1から最も距離が近いノードSj(本例ではS2)を、集合Sから取得する。ノードSjは、第2のベクトルデータの一例に相当する。
検索結果として得られたn個のノードの中にノードS2が含まれていた場合には、ノードS1とノードS2との間に既にパス(つまりリンク)が存在すると判断できる。したがってこの場合は、新たにリンクを生成する必要はないので、ステップSA−8に進む。ステップSA−4での判断がNoであった場合には次のステップSA−5に進む。
次に、インデックス更新部13は、検索結果として得られたn個のノード中に、ノードS1とノードS2との間の距離よりもノードS2からの距離が近いノードP(第3のベクトルデータの一例に相当)が検索されたかどうかを判定する。このようなノードPが検索された場合(かつノードS1とノードS2間には途中までのパスが存在する場合)、ノードPとノードS2との間にリンクを生成する(図4(a)及び(b)参照)。その後、ステップSA−8に移る。
n個の検索結果中に、「ノードS1とノードS2との間の距離よりもノードS2からの距離が近いノード」が検索されなかった場合(つまり、ノードS2から最も近いノードがS1であった場合であり、かつ、両者間に全くパスが存在しない場合)には、ノードS1とノードS2との間にリンクを生成する。
集合Sに他のノードがあれば、それをS2とし、上記したノードS2をS1として、ステップSA−3からの処理を再度行う。前記作業を、集合Sに属するすべてのノードについて行ったら、上記手順を終了する。
次に、第2実施形態に係るグラフインデックス更新装置を、図7及び図8を参照しながら説明する。なお、第2実施形態の説明においては、前記した第1実施形態と基本的に共通する処理手順あるいは構成については、符号を援用することにより、説明の煩雑を避ける。
・各々のグラフインデックスに対応するノード集合をSA,SBとし、
・これらのノード集合SA又はSBから任意の1ノードを取得し、
・ノード集合SA及びSBで構成されるノード集合Sを本発明のベクトルデータ集合と把握して、
・前記実施形態の手法により、集合S内のノード間でのリンク結合を行う
ことが可能である。
11 データベース
111 ベクトルデータDB
112 格納グラフインデックスDB
12 検索部
13 インデックス更新部
2 クライアント端末
3 ネットワーク
Claims (5)
- 複数のベクトルデータと前記複数のベクトルデータ間のリンク関係を示すグラフインデックスとを格納するデータベースと、前記複数のベクトルデータのうちの特定のベクトルデータから、前記グラフインデックスが示すリンク関係を辿ることで他のベクトルデータを検索する検索部と、前記データベースのグラフインデックスの更新を行うインデックス更新部とを備えており、
前記インデックス更新部は、
前記複数のベクトルデータの一部又は全部によって構成される特定のベクトルデータ集合を特定する処理と、
前記ベクトルデータ集合に属する第1のベクトルデータから、第2のベクトルデータを、前記グラフインデックスを用いて、前記検索部によって検索させる処理と、
前記グラフインデックスを用いた検索における前記リンク関係を辿る過程において取得した第3のベクトルデータと前記第2のベクトルデータとの間の距離が、前記第1のベクトルデータから前記第2のベクトルデータまでの距離より短い場合には、前記第3のベクトルデータと前記第2のベクトルデータとの間に新たなリンクを生成して前記データベースの前記グラフインデックスを更新する処理と
を行う構成となっている
グラフインデックス更新装置。 - 前記第2のベクトルデータは、前記ベクトルデータ集合において、前記第1のベクトルデータに対して最も近いベクトルデータである
請求項1に記載のグラフインデックス更新装置。 - 前記インデックス更新部は、さらに、
前記第2のベクトルデータから、前記第1のベクトルデータを、前記検索部によって検索させる処理と、
前記グラフインデックスを用いた検索における前記リンク関係を辿る過程によって取得した第4のベクトルデータと前記第1のベクトルデータとの間の距離が、前記第3のベクトルデータから前記第1のベクトルデータまでの距離より短い場合には、前記第4のベクトルデータと前記第1のベクトルデータとの間に新たなリンクを生成して前記データベースの前記グラフインデックスを更新する処理と
を行う構成となっている
請求項1又は2に記載のグラフインデックス更新装置。 - データベースに格納された複数のベクトルデータの一部又は全部によって構成される特定のベクトルデータ集合を特定するステップと、
前記ベクトルデータ集合に属する第1のベクトルデータから、第2のベクトルデータを、前記複数のベクトルデータ間のリンク関係を示すグラフインデックスを用いて検索するステップと、
前記グラフインデックスを用いた検索の過程において取得した第3のベクトルデータと前記第2のベクトルデータとの間の距離が、前記第1のベクトルデータから前記第2のベクトルデータまでの距離より短い場合には、前記第3のベクトルデータと前記第2のベクトルデータとの間に新たなリンクを生成して、前記グラフインデックスを更新するステップと
を備えた装置のグラフインデックス更新方法。 - 請求項4に記載の各ステップをコンピュータに実行させるためのコンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011244065A JP5383776B2 (ja) | 2011-11-08 | 2011-11-08 | グラフインデックス更新装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011244065A JP5383776B2 (ja) | 2011-11-08 | 2011-11-08 | グラフインデックス更新装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013101441A JP2013101441A (ja) | 2013-05-23 |
JP5383776B2 true JP5383776B2 (ja) | 2014-01-08 |
Family
ID=48622017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011244065A Active JP5383776B2 (ja) | 2011-11-08 | 2011-11-08 | グラフインデックス更新装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5383776B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6040141B2 (ja) * | 2013-12-09 | 2016-12-07 | 日本電信電話株式会社 | キーワード付与装置、キーワード付与方法及びプログラム |
KR101989029B1 (ko) * | 2017-12-11 | 2019-06-13 | 한양대학교 산학협력단 | 복수의 쓰레드를 이용하는 그래프 엔진 및 그 그래프 엔진의 동작 방법 |
WO2022230017A1 (ja) * | 2021-04-26 | 2022-11-03 | 三菱電機株式会社 | 情報処理装置、制御方法、及び制御プログラム |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5208001B2 (ja) * | 2008-06-09 | 2013-06-12 | ヤフー株式会社 | ベクトルデータ検索装置 |
JP5014399B2 (ja) * | 2009-10-20 | 2012-08-29 | ヤフー株式会社 | 検索データ管理装置 |
-
2011
- 2011-11-08 JP JP2011244065A patent/JP5383776B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2013101441A (ja) | 2013-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10733055B1 (en) | Methods and apparatus related to graph transformation and synchronization | |
US10754853B2 (en) | Virtual edge of a graph database | |
CN111008521B (zh) | 生成宽表的方法、装置及计算机存储介质 | |
JP2012137908A (ja) | クラスタリング装置及びクラスタリング方法 | |
CN109522271B (zh) | 一种b+树节点的批量插入和删除方法及装置 | |
CN111324577B (zh) | 一种Yml文件读写的方法及装置 | |
US11386063B2 (en) | Data edge platform for improved storage and analytics | |
WO2014000578A1 (en) | Method and apparatus for processing database data in distributed database system | |
JP5383776B2 (ja) | グラフインデックス更新装置 | |
JP2020123320A (ja) | インデックスを管理するための方法、装置、設備及び記憶媒体 | |
JP5292384B2 (ja) | グラフインデックス再構成装置 | |
KR101480670B1 (ko) | 대용량 그래프 데이터베이스에서 최단 경로를 탐색하는 방법 | |
CN104657385A (zh) | 一种节点的查找方法及装置 | |
JP2019144780A (ja) | 生成装置、生成方法、及び生成プログラム | |
JP5059239B1 (ja) | オントロジースキーマーに基づくインスタンス経路の探索方法及び装置 | |
JP2018156458A (ja) | 生成装置、生成方法、及び生成プログラム | |
JP6293335B1 (ja) | 生成装置、生成方法、及び生成プログラム | |
JP2010250569A (ja) | 画像検索装置 | |
JP7121706B2 (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
JP6498266B2 (ja) | 生成装置、生成方法、及び生成プログラム | |
JP5652282B2 (ja) | 検索制御プログラム、検索制御方法、検索システム | |
KR101299555B1 (ko) | 해시 함수 기반의 인덱스를 이용한 텍스트 검색 장치 및 방법 | |
JP2020187644A (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
JP2014059867A (ja) | 順序インデックス生成システム及びその方法 | |
JP6333306B2 (ja) | 検索データ管理装置、検索データ管理方法、および検索データ管理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130702 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130722 |
|
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: 20130903 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131001 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5383776 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |