JP2015069302A - インデクス作成装置および空間情報検索装置 - Google Patents

インデクス作成装置および空間情報検索装置 Download PDF

Info

Publication number
JP2015069302A
JP2015069302A JP2013201534A JP2013201534A JP2015069302A JP 2015069302 A JP2015069302 A JP 2015069302A JP 2013201534 A JP2013201534 A JP 2013201534A JP 2013201534 A JP2013201534 A JP 2013201534A JP 2015069302 A JP2015069302 A JP 2015069302A
Authority
JP
Japan
Prior art keywords
index
vertex
search
polygon
geohash
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.)
Pending
Application number
JP2013201534A
Other languages
English (en)
Inventor
陽子 梅垣
Yoko Umegaki
陽子 梅垣
晋平 西田
Shimpei Nishida
晋平 西田
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.)
Hitachi Solutions Ltd
Original Assignee
Hitachi Solutions Ltd
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 Hitachi Solutions Ltd filed Critical Hitachi Solutions Ltd
Priority to JP2013201534A priority Critical patent/JP2015069302A/ja
Publication of JP2015069302A publication Critical patent/JP2015069302A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

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

Abstract

【課題】インデクスの小容量化と空間情報の高速な検索とを実現する。【解決手段】インデクス作成サーバ12は、多角形の各頂点の緯度と経度を含む空間情報がメタデータとして埋め込まれた地図データを対象として、多角形を検索するためのインデクスを作成する。このために、インデクス作成部121は、多角形の空間情報に含まれる各頂点の緯度と経度をジオハッシュに変換して、変換された各頂点のジオハッシュの上位文字列側から、各頂点のジオハッシュに共通する最大共通文字列を抽出し、その最大共通文字列を含むインデクスを作成する。検索サーバ13の検索部131は、検索条件の点の緯度と経度をジオハッシュに変換し、インデクス作成部121によって作成されたインデクスに含まれる最大共通文字列と、索条件の点のジオハッシュとに基づいてインデクスを選択することによって、選択されたインデクスに対応する多角形を含むリーフを特定する。【選択図】図1

Description

本発明は、空間情報を検索するためのインデクスを作成するインデクス作成装置およびそのインデクスを用いて空間情報を検索する空間情報検索装置に関する。
従来より、経緯度を用いて空間情報を検索する技術が知られている。
例えば、特許文献1は、多角形を成す空間情報が埋め込まれた地図データから、その多角形を形成する各頂点の緯度と経度を抽出し、空間情報の検索に利用する方法を開示する。特許文献1に記載の方法では、インデクス(索引)作成時に、多角形の各頂点の空間情報から、その多角形が外接する外接矩形を算出し、リーフとの対応づけを行う。これにより、検索時に判定対象を絞ることが可能となるため、高速に検索することが可能となる。ここで述べるリーフとは、検索エンジンやデータベースのインデクスにおいて、一般的に用いられるツリーデータ構造におけるリーフを指す。
補足すると、この方法では、インデクス作成時に、算出した外接矩形に対応するリーフを、その外接矩形の情報からアルゴリズムによって生成する。算出した外接矩形に対応するリーフが既に存在する場合は、その外接矩形に内接する多角形をそのリーフの子ノードとする。そして、検索時には、検索条件として与えられたある点を含むリーフを選択し、そのリーフが持つノードのみを検索対象とする。
このように経緯度を用いる場合は、頂点をn個有する多角形の各頂点の緯度と経度の情報を抽出し、2n個の数値により外接矩形を算出する必要がある。また、その外接矩形に対応するリーフをアルゴリズムによって生成する必要がある。
一方、空間情報の形式には、ジオハッシュという空間情報を文字列で表現する技術がある。ジオハッシュは、緯度と経度の組を一つの文字列で表現する。ジオハッシュは、階層構造を持ち、32分木インデクス上の位置を示す。例えば、空文字なら全世界、1文字なら世界全体を均等な32区域に分割したいずれかの領域を表す。文字列が長いほどジオハッシュが表す矩形の範囲は狭小化し、精度が高くなる。逆に、末尾文字列を削ると、ジオハッシュが表す矩形の範囲は広大化し、精度が低くなる。このように、ジオハッシュは末尾文字列を調整するだけで、任意の精度で範囲を表現することが可能である。
例えば、特許文献2は、緯度と経度の組をジオハッシュに変換し、ジオハッシュによって表された位置情報により所定のサイズの矩形領域に存在しているユーザ端末を検索する情報処理装置を開示する。
特開2010−160591号公報 特開2013−45319号公報
上述したように、経緯度を用いる空間情報検索方法では、インデクス作成時に緯度と経度の2つの数値より数学的演算を用いて外接矩形を算出する。また、その外接矩形に対応するリーフをアルゴリズムによって生成する。
しかし、経緯度を用いた方法は、1つの頂点が緯度と経度の2つの数値を有するため、やや複雑な処理を行う必要があり、空間検索において最適な方法とは言い難い。
本発明の目的は、予めジオハッシュを求めておくことによって、位置を示すデータを数値2つの組から文字列1つに簡略化し、インデクスの小容量化と空間情報の高速な検索とを実現することができるインデクス作成装置および空間情報検索装置を提供することである。
上記の目的を達成するため、本発明のインデクス作成装置は、
多角形の各頂点の緯度と経度を含む空間情報がメタデータとして埋め込まれた地図データを対象として、当該多角形を検索するためのインデクスを作成するインデクス作成装置であって、
前記多角形の空間情報に含まれる各頂点の緯度と経度をジオハッシュに変換して、当該変換された各頂点のジオハッシュの上位文字列側から、当該各頂点のジオハッシュに共通する最大の長さの文字列である最大共通文字列を抽出し、当該最大共通文字列を含むインデクスを作成するインデクス作成手段を備えることを特徴とする。
好ましくは、本発明のインデクス作成装置は、
前記インデクス作成手段が、前記多角形の最東端の頂点、最西端の頂点、最南端の頂点、および最北端の頂点の各位置を前記インデクスに含めることを特徴とする。
また、本発明の空間情報検索装置は、
検索条件の点の緯度と経度をジオハッシュに変換する検索条件変換手段と、
上述したインデクス作成装置によって作成されたインデクスに含まれる最大共通文字列と、前記検索条件変換手段によって変換された検索条件の点のジオハッシュとに基づいてインデクスを選択することによって、当該選択されたインデクスに対応する多角形を含むリーフを特定するリーフ特定手段と、
を備えることを特徴とする。
また、本発明の空間情報検索装置は、
検索条件の点の緯度と経度をジオハッシュに変換する検索条件変換手段と、
上述したインデクス作成装置によって作成されたインデクスに含まれる最大共通文字列と、前記検索条件変換手段によって変換された検索条件の点のジオハッシュとに基づいてインデクスを選択することによって、当該選択されたインデクスに対応する多角形を含むリーフを特定するリーフ特定手段と、
前記リーフ特定手段によって特定されたリーフに含まれる多角形の中から、当該多角形の最東端の頂点、最西端の頂点、最南端の頂点、および最北端の頂点を四辺にそれぞれ含む矩形の領域の中に前記検索条件の点が存在する多角形を選択する多角形選択手段と、
を備えることを特徴とする。
本発明によれば、予めジオハッシュを求めておくことによって、位置を示すデータを数値2つの組から文字列1つに簡略化し、インデクスの小容量化と空間情報の高速な検索とを実現することができる。
本発明の実施形態に係る空間情報検索システムの構成の一例を示す図である。 地図データを含むファイルの一例を示す図である。 観客席に付与されている空間情報の一例を示す図である。 観客席の各頂点の緯度と経度から変換されたジオハッシュの一例を示す図である。 観客席に対応する四角形(多角形)のインデクスの構成の一例を示す図である。 観客席を含むリーフの一例を示す図である。 インデクスデータの構成の一例を示す図である。 インデクス作成処理の流れの一例を示す図である。 検索処理の流れの一例を示す図である。 多角形の最東西南北端の位置と検索点の位置とに基づいてインデクスを絞り込む処理の流れの一例を示す図である。
以下、本発明の実施形態に係るインデクス作成装置および空間情報検索装置について図面を参照しながら説明する。
図1は、本発明の実施形態に係る空間情報検索システム10の構成の一例を示す。
空間情報検索システム10は、ファイルサーバ11と、インデクスサーバ12と、検索サーバ13とを有する。これらの各サーバは、ネットワーク14に接続されており、相互に通信することができる。
なお、インデクスサーバ12は本発明のインデクス作成装置の一例であり、検索サーバ13は本発明の空間情報検索装置の一例である。
ファイルサーバ11は、CPU(Central Processing Unit)と、RAM(Random Access Memory)等で構成される主メモリと、ハードディスク等で構成される記憶装置113とを有する。記憶装置113には、対象ファイル群1131とファイル読出・書込プログラムが格納されている。
ファイルサーバ11のCPUが記憶装置113から主メモリにファイル読出・書込プログラムを読み込んで実行することにより、ファイル書込部111と、ファイル読出部112との各部の機能が実現される。
対象ファイル群1131は、地図データを含むファイルの集合である。
ファイル書込部111は、図示しないクライアント端末からファイルを受信し、そのファイルを記憶装置113に書き込んで対象ファイル群1131に付け加える。
ファイル読出部112は、インデクスサーバ12による要求に応答して対象ファイル群113の中から要求されたファイルを取得し、そのファイルをインデクスサーバ12に送信する。
インデクスサーバ12は、CPUと、RAM等で構成される主メモリと、ハードディスク等で構成される記憶装置124とを有する。記憶装置124には、インデクスデータ1241とインデクス作成プログラムが格納されている。
インデクスサーバ12のCPUが記憶装置124から主メモリにインデクス作成プログラムを読み込んで実行することにより、インデクス作成部121と、インデクスデータ書込部122と、インデクスデータ読出部123との各部の機能が実現される。
インデクス作成部121は、ファイルサーバ11にファイルを要求し、取得したファイル中の地図データに含まれる多角形のインデクスを作成する。インデクス作成部121は本発明のインデクス作成手段の一例である。
インデクスデータ書込部122は、インデクス作成部121によって作成されたインデクスにファイルの場所を示すファイルURI(Uniform Resource Identifier)を付加し、記憶装置124にインデクスデータ1241として書き込む。
インデクスデータ読出部123は、検索サーバ13の要求に応答して記憶装置124からインデクスデータ1241を読み出し、検索サーバ13に送信する。
検索サーバ13は、CPUと、RAM等で構成される主メモリと、ハードディスク等で構成される記憶装置132とを有する。記憶装置132には、検索プログラムが格納されている。
検索サーバ13のCPUが記憶装置132から主メモリに検索プログラムを読み込んで実行することにより、検索部131の機能が実現される。
検索部131は、図示しないクライアント端末から検索要求を受信すると、インデクスサーバ12にインデクスデータ1241を要求する。そして、検索部131は、取得したインデクスデータ1241に基づいて空間情報を検索し、クライアント端末に検索結果を返す。検索部131は、本発明の検索条件変換手段とリーフ特定手段とリーフ選択手段の一例である。
なお、上述したシステム構成は一例に過ぎず、異なるシステム構成とすることも可能である。例えば、図1には、ファイルサーバ11とインデクスサーバ12と検索サーバ13とが別々のコンピュータで実現される例を示したが、これらは同一のコンピュータで実現されてもよい。また、これらの各サーバに加えて、クライアント端末も同一のコンピュータで実現されてもよい。さらに、検索サーバ13とクライアント端末が同一のコンピュータで実現され、ファイルサーバ11とインデクスサーバ12とは異なるコンピュータで実現される構成でもよい。
図2は、地図データ23を含むファイル20の一例を示す。
ファイル20は、例えば、PDF形式のファイルであり、その名称はinfo1.pdfである。ファイル20は、開催する日時21や場所22等の文字で表現されるテキストデータと、観客席24や打上場所25のような図形で表現される情報を含む地図データ23とで構成される。
地図データ23に含まれる観客席24や打上場所25のような図形には空間情報がメタデータとして予め付与されている。なお、地図データ23が空間情報の検索対象であり、日時情報21や場所情報22等のテキストデータは空間情報の検索対象ではない。
ここで、頂点A、頂点B、頂点C、および頂点Dは、観客席24を成す四角形(多角形)の各頂点である。また、点Eは後述する検索条件の点(以下、検索点という。)である。
図3は、観客席24に付与されている空間情報31の一例を示す。
空間情報31は、名称(観客席)と、図2の観客席24の図形の各頂点の緯度と経度を示す数値の配列とを保持している。頂点Aの経緯度形式で表現した空間情報は、座標(35.670964,139.745896)であり、35.670964は頂点Aの緯度、139.745896は頂点Aの経度である。なお、観客席24は四角形であるため、図3で示す配列の要素は4つであるが、本発明の多角形には点や直線、5角形以上の多角形が含まれる。多角形には1以上であれば頂点がいくつ存在してもかまわない。多角形を形成する頂点の数分だけ、配列の要素数が存在する。
検索時にある検索点を検索条件としたとき、この要素数が3つ以上の場合は、各要素に格納された頂点で形成される多角形の範囲内に検索点が含まれるときに、検索サーバ13の検索部131はその多角形の範囲に検索点が内包されていると判定する。要素が2つの場合は、各要素に格納された頂点2点をつなぐ線分上に検索点が存在するときに、検索部131はその線分の範囲に検索点が内包されていると判定する。要素が1つの場合は、要素に格納された頂点と検索点が一致するときに、検索部131はその頂点の範囲に検索点が内包されていると判定する。
図4は、観客席24の各頂点の緯度と経度から変換されたジオハッシュの一例を示す。図形データに含まれるある多角形のインデクスを作成するとき、インデクスサーバ12のインデクス作成部121は、まず、その多角形の各頂点における緯度と経度をジオハッシュに変換する。緯度と経度からジオハッシュへの変換方法は公知であり、その説明は省略する。
次に、インデクス作成部121は、その多角形についてインデクス50を作成する。図5は、観客席24に対応する四角形(多角形)のインデクス50の構成の一例を示す。
インデクス50は、多角形の索引である。インデクス50は、各頂点の位置51と、最大共通文字列52と、最東端の位置53と、最西端の位置54と、最南端の位置55と、最北端の位置56とを含む。
各頂点の位置51は、多角形の各頂点の位置をジオハッシュで示す。
最大共通文字列52は、多角形の全ての頂点のジオハッシュの上位文字列側から抽出された最大の長さの共通の文字列である。最大共通文字列52は、図6に示すリーフ61の位置と大きさを特定する。
最東端の位置53は、最も東に位置する頂点(観客席24では頂点B)のジオハッシュである。
最西端の位置54は、最も西に位置する頂点(観客席24では頂点D)のジオハッシュである。
最南端の位置55は、最も南に位置する頂点(観客席24では頂点C)のジオハッシュである。
最北端の位置56は、最も北に位置する頂点(観客席24では頂点A)のジオハッシュである。
なお、図5では最東端の位置のジオハッシュを53、最西端の位置のジオハッシュを54、最南端の位置のジオハッシュを55、最北端の位置のジオハッシュを56とそれぞれのカラムに格納しているが、最東西南北端と各頂点のジオハッシュの紐付けさえ可能であれば、形式はこれに限らない。
図6に示すように、リーフ61は、多角形の全ての頂点を包含する矩形の領域である。矩形62は、多角形の最東端の頂点、最西端の頂点、最南端の頂点、および最北端の頂点を四辺にそれぞれ含む矩形の領域である。
インデクス作成部121は、各頂点のジオハッシュの末尾文字列を1文字ずつ削って最大共通文字列52を求める。例えば、観客席24の頂点A、頂点B、頂点C、および頂点Dのジオハッシュは、それぞれ頂点A(Xn76gvxy7mss)、頂点B(xn76uj90jkpu)、頂点C(Xn76uj25hbrb)、頂点D(xn76gvqx56pb)であるため、最大共通文字列はxn76となる。1文字削ると1階層広い範囲を表すジオハッシュの特徴から、最大共通文字列は多角形のすべての頂点を含むリーフ61を示す。つまり、図6の例では、最大共通文字列xn76は、観客席24の頂点A、頂点B、頂点C、頂点Dすべてを包含するリーフ61を示す。
インデクス作成部121が多角形のインデクス50を作成すると、インデクスデータ書込部122は、そのインデクス50を含むインデクスデータ1241を記憶装置124に書き込む。
インデクスデータ1241は、図7に示すように、ファイルURI71と、インデクス72とで構成される。
ファイルURI71は、インデクス72に対応する多角形の空間情報を含むファイルの存在する場所を示す。
インデクス72には、インデクス作成部121によって作成されたインデクス50が格納される。
インデクスデータ書込部122は、インデクス作成部121が1つのファイル中の図形データに含まれる全ての多角形のインデクスを作成し終えたときに、全ての多角形のインデクスを含むインデクスデータ1241を記憶装置124に書き込んでもよいし、インデクス作成部121が個々の多角形のインデクス50を作成するごとに、そのインデクス50を記憶装置124のインデクスデータ1241に付加してもよい。
図8は、インデクス作成処理の流れの一例を示す。
インデクスサーバ12がインデクス作成処理を開始するとき、インデクス作成部121はインデクスを作成する対象となるファイルの送信をファイルサーバ11に要求する。ファイルサーバ11のファイル読出部112は、インデクスサーバ12による要求に応答して対象ファイル群113の中から要求されたファイルを取得し、そのファイルをインデクスサーバ12に送信する。
インデクス作成部121は、ファイルを受信すると、そのファイルに含まれるメタデータを抽出する。そして、インデクス作成部121は、抽出されたメタデータに多角形の空間情報が存在しているか否かを判定する(S101)。多角形の空間情報が存在していた場合(S101:YES)、インデクス作成部121は、空間情報からこの多角形の頂点の座標を抽出する(S102)。次に、インデクス作成部121は、抽出した座標の形式がジオハッシュ形式であるか否かを判定する(S103)。ジオハッシュ形式でない場合(S103:NO)、インデクス作成部121は、経緯度形式であるか否かを判定する(S108)。経緯度形式であった場合(S108:YES)、インデクス作成部121は、その多角形の各頂点の経緯度をそれぞれジオハッシュに変換し(S109)、ステップS104に進む。
ステップS108で経緯度形式でないと判定された場合(S108:NO)、インデクス作成部121は、ステップS101に戻り、受信したファイルのメタデータに次の多角形の空間情報が存在しているか否かを判定する。
ステップS103で抽出した座標の形式がジオハッシュ形式であると判定された場合(S103:YES)、インデクス作成部121は、各頂点の最大共通文字列を算出する(S104)。そして、インデクス作成部121は、多角形の各頂点のジオハッシュ値と、最大共通文字列と、各頂点の中で最東端、最西端、最南端、最北端に存在する頂点のジオハッシュ値を含むインデクス50を作成する(S105)。
インデクス作成部121によってインデクス50が作成されると、インデクスデータ書込み部122は、そのインデクス50にファイルURIを付加し、記憶装置124にインデクスデータ1241として格納する(S106)。
そして、ステップS101に戻り、インデクス作成部121は、受信したファイルのメタデータに次の多角形の空間情報が存在しているか否かを判定する。ステップS101で次の多角形の空間情報が存在していないと判定された場合(S101:No)、インデクス作成部121は、インデクス作成処理を終了する。
図9は、検索処理の流れの一例を示す。
ユーザは、クライアント端末を用いて、検索対象のファイルと、緯度と経度で示される検索条件の点の位置とを指定する。指定する検索対象のファイルは1つであってもよいし、複数であってもよい。更には、検索対象のファイルとして、ファイルサーバ11の記憶装置113に格納されている対象ファイル群1131に含まれる全ファイルを指定することもできる。クライアント端末は、検索対象のファイルを指定する情報と、検索条件の点の位置とを含む検索要求を検索サーバ12に送信する。
検索サーバが、クライアント端末から、検索要求を受信すると、検索部131は、検索要求に含まれる情報で指定されるファイルのインデクスデータをインデクスサーバ12に要求する。インデクスサーバ12のインデクスデータ読出部123は、検索サーバ13の要求に応答して記憶装置124からインデクスデータ1241を読み出し、検索サーバ13に送信する。
検索サーバ13がインデクスデータを受信すると、検索部131は、検索条件に含まれる検索点の緯度と経度をジオハッシュに変換する(S201)。次に、検索部131は、受信したインデクスデータに含まれる各最大共通文字列52と、検索点のジオハッシュとに基づいてインデクスを選択することによって、当該選択されたインデクスに対応する多角形を含むリーフを特定する(S202)。
例えば、図2の点Eの緯度と経度(35.670354,139.746008)を含む検索要求をクライアント端末から受信したとする。このとき、検索部131は、ステップS201において、この緯度と経度をジオハッシュに変換し、xn76gvxfy5bjを取得する。そして、検索部131は、ステップS202において、文字列の長さnのジオハッシュを、末尾から1文字ずつ削ったn個のジオハッシュに分解する。例えば、点Eのジオハッシュ値の場合は、x、xn、xn7、xn76、xn76g、xn76gv、xn76gvx、xn76gvxf、xn76gvxfy、xn76gvxfy5、xn76gvxfy5b、xn76gvxfy5bjに分解する。検索部131は、これらのジオハッシュ値を最大共通文字列52と文字列比較し、合致するリーフ61を求める。この場合、ジオハッシュ値xn76が図2の観客席24の最大共通文字列52と一致するため、検索部131は、観客席24を含むリーフ61を特定する。
次に、検索部131は、ステップS202で特定された各リーフ61に含まれる多角形の中から、その多角形の最東端の頂点、最西端の頂点、最南端の頂点、および最北端の頂点を四辺にそれぞれ含む矩形の領域の中に検索点が存在する多角形を選択する(S203)。ステップS203の処理の詳細は、図10を用いて説明する。
まず、検索部131は、ステップS202の処理で1つ以上のリーフ61が特定されたか否かを判定する(S301)。1つもリーフ61が特定されなかった場合(S301:NO)、検索部131は検索処理を終了する。
一方、1つ以上のリーフ61が特定された場合(S301:YES)、検索部131はその中の1つのリーフ61を選択し(S302)、更に、そのリーフ61に含まれる多角形のインデクス50を1つ選択する(S303)。そして、検索部131は、検索点が多角形の最東端と最西端の間に位置するか判定する(S304)。具体的には、検索部131は、選択されたインデクス50に含まれる最東端の位置53のジオハッシュ値と最西端の位置54のジオハッシュ値の間に、検索点のジオハッシュ値があるか否かを判定する。ステップS304の判定が成り立つ場合(S304:YES)、検索部131は、次に、検索点が多角形の最南端と最北端の間に位置するか判定する(S305)。具体的には、検索部131は、選択されたインデクス50に含まれる最南端の位置55のジオハッシュ値と最北端の位置56のジオハッシュ値の間に、検索点のジオハッシュ値があるか否かを判定する。ステップS305の判定も成り立つ場合(S305:YES)、検索部131は、選択されているインデクス50と、そのインデクス50に対応する多角形の空間情報を含むファイルの存在する場所を示すファイルURI71とを検索サーバ13の主メモリ内の所定の記憶領域に一時退避する(S306)。
次に、検索部131は、ステップS302で選択したリーフ61に含まれる全ての多角形のインデクス50について判定が終了したか否かを判定する(S307)。検索部131は、全ての多角形のインデクス50についての判定が終了している場合(S307:YES)ステップS308に進む。一方、判定が終了していないリーフ61が残っている場合(S307:NO)、検索部131は、ステップS303に戻ってステップS302の処理で選択されたリーフ61に含まれる他の多角形のインデクス50を選択する。
そして、検索部131は、ステップS202の処理で特定された全てのリーフ61についての判定が終了したか否かを判定する(S308)。検索部131は、全てのリーフ61についての判定が終了している場合(S308:YES)、検索処理を終了する。一方、判定が終了していないリーフ61が残っている場合(S308:NO)、検索部131は、ステップS302に戻ってステップS202の処理で特定された他のリーフ61を選択する。
ステップS303およびS304の判定が成り立たなかった場合(S303:NO、S304:NO)も、検索部131は、ステップS307に進み、ステップS302で選択したリーフ61に含まれる全ての多角形のインデクス50について判定が終了したか否かを判定する。
ステップS305で退避したインデクス50とファイルURI71とは、図9のステップS203の処理の結果であり、次のステップS204に渡される。
ステップS203に続いて、検索部131は、内包判定を行い、検索点が各多角形の範囲内に存在する多角形に絞り込む(S204)。内包判定の方法については、一般的であるため詳しく述べないが、例えば水平線分の交差回数を用いて判定する方法が広く知られている。
検索部131は、ステップS204で絞り込まれた多角形のインデクス50と、その多角形の空間情報を含むファイルの存在する場所を示すファイルURI71とを検索結果としてクライアント端末に送信する(S205)。なお、最初にユーザによって指定された検索対象のファイルが1つのみである場合には、検索部131は、ステップS205において、ステップS204で絞り込まれたインデクス50のみを検索結果としてクライアント端末に送信してもよい。
なお、上述した実施形態では、インデクス50の最東端の位置53と最西端の位置54と最南端の位置55と最北端の位置56にはジオハッシュが含まれるとしたが、インデクス50の最東端の位置53には最も東に位置する頂点の緯度を格納し、最西端の位置54には最も西に位置する頂点の緯度を格納し、最南端の位置55には最も南に位置する頂点の経度を格納し、最北端の位置56には最も北に位置する頂点の経度を格納してもよい。ただし、この場合、検索部131は、ステップS304において、選択されたインデクス50に含まれる最東端の位置53の緯度と最西端の位置54の緯度の間に、検索点の緯度があるか否かを判定し、ステップS305において、選択されたインデクス50に含まれる最南端の位置55の経度と最北端の位置56の経度の間に、検索点の経度があるか否かを判定することとなる。
以上説明したように、本発明によれば、予めジオハッシュを求めておくことによって、処理で用いるデータを数値2つの組から文字列1つに簡略化することができる。
また、ジオハッシュを用いた空間検索では、ジオハッシュ自身が地球上のある範囲の矩形を示す文字列であることから、従来技術のインデクスの作成および検索時に外接矩形を算出していた部分とリーフの生成にアルゴリズムを用いていた部分の計算処理を、部分文字列の比較処理のみに置き換えることができる。
この結果、高速なインデクス作成および空間情報の検索が可能となる。
10…空間情報検索システム、11…ファイルサーバ、111…ファイル書込部、112…ファイル読出部、113…記憶装置、1131…対象ファイル群、12…インデクスサーバ、121…インデクス作成部、122…インデクスデータ書込部、123…インデクスデータ読出部、124…記憶装置、1241…インデクスデータ、13…検索サーバ、14…ネットワーク、20…ファイル、23…地図データ、31…空間情報、50…インデクス、61…リーフ、62…多角形の最東端の頂点、最西端の頂点、最南端の頂点、および最北端の頂点を四辺にそれぞれ含む矩形の領域

Claims (4)

  1. 多角形の各頂点の緯度と経度を含む空間情報がメタデータとして埋め込まれた地図データを対象として、当該多角形を検索するためのインデクスを作成するインデクス作成装置であって、
    前記多角形の空間情報に含まれる各頂点の緯度と経度をジオハッシュに変換して、当該変換された各頂点のジオハッシュの上位文字列側から、当該各頂点のジオハッシュに共通する最大の長さの文字列である最大共通文字列を抽出し、当該最大共通文字列を含むインデクスを作成するインデクス作成手段を備えることを特徴とするインデクス作成装置。
  2. 前記インデクス作成手段が、前記多角形の最東端の頂点、最西端の頂点、最南端の頂点、および最北端の頂点の各位置を前記インデクスに含めることを特徴とする請求項1に記載のインデクス作成装置。
  3. 検索条件の点の緯度と経度をジオハッシュに変換する検索条件変換手段と、
    請求項1に記載のインデクス作成装置によって作成されたインデクスに含まれる最大共通文字列と、前記検索条件変換手段によって変換された検索条件の点のジオハッシュとに基づいてインデクスを選択することによって、当該選択されたインデクスに対応する多角形を含むリーフを特定するリーフ特定手段と、
    を備えることを特徴とする空間情報検索装置。
  4. 検索条件の点の緯度と経度をジオハッシュに変換する検索条件変換手段と、
    請求項2に記載のインデクス作成装置によって作成されたインデクスに含まれる最大共通文字列と、前記検索条件変換手段によって変換された検索条件の点のジオハッシュとに基づいてインデクスを選択することによって、当該選択されたインデクスに対応する多角形を含むリーフを特定するリーフ特定手段と、
    前記リーフ特定手段によって特定されたリーフに含まれる多角形の中から、当該多角形の最東端の頂点、最西端の頂点、最南端の頂点、および最北端の頂点を四辺にそれぞれ含む矩形の領域の中に前記検索条件の点が存在する多角形を選択する多角形選択手段と、
    を備えることを特徴とする空間情報検索装置。
JP2013201534A 2013-09-27 2013-09-27 インデクス作成装置および空間情報検索装置 Pending JP2015069302A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013201534A JP2015069302A (ja) 2013-09-27 2013-09-27 インデクス作成装置および空間情報検索装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013201534A JP2015069302A (ja) 2013-09-27 2013-09-27 インデクス作成装置および空間情報検索装置

Publications (1)

Publication Number Publication Date
JP2015069302A true JP2015069302A (ja) 2015-04-13

Family

ID=52835932

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013201534A Pending JP2015069302A (ja) 2013-09-27 2013-09-27 インデクス作成装置および空間情報検索装置

Country Status (1)

Country Link
JP (1) JP2015069302A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170044163A (ko) * 2015-06-30 2017-04-24 바이두 온라인 네트웍 테크놀러지 (베이징) 캄파니 리미티드 주행 노선 매칭 방법, 장치 및 저장 매체
CN112136123A (zh) * 2017-03-02 2020-12-25 维鲁斯托塔尔Slu公司 表征文件以进行相似性搜索

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170044163A (ko) * 2015-06-30 2017-04-24 바이두 온라인 네트웍 테크놀러지 (베이징) 캄파니 리미티드 주행 노선 매칭 방법, 장치 및 저장 매체
JP2018502349A (ja) * 2015-06-30 2018-01-25 百度在綫網絡技術(北京)有限公司 走行ルートマッチング方法、装置及び記録媒体
KR101976294B1 (ko) * 2015-06-30 2019-08-28 바이두 온라인 네트웍 테크놀러지 (베이징) 캄파니 리미티드 주행 노선 매칭 방법, 장치 및 저장 매체
US10520326B2 (en) 2015-06-30 2019-12-31 Baidu Online Network Technology (Beijing) Co., Ltd. Driving route matching method and apparatus, and storage medium
CN112136123A (zh) * 2017-03-02 2020-12-25 维鲁斯托塔尔Slu公司 表征文件以进行相似性搜索

Similar Documents

Publication Publication Date Title
Danko The digital chart of the world project
CN104567894B (zh) 用于提供地图数据的装置和方法及其系统
CN109478184B (zh) 识别、处理和显示数据点聚类
Chen et al. A scale-adaptive DEM for multi-scale terrain analysis
JP6279325B2 (ja) マップ作成
US20050034062A1 (en) Methods and systems for encoding geographic coordinates and features in a portable document format file
CN110263117B (zh) 一种用于确定兴趣点poi数据的方法与装置
Tucci et al. Using spatial analysis and geovisualization to reveal urban changes: Milan, Italy, 1737–2005
KR20220160534A (ko) 지리적 위치 구역의 인코딩 방법, 인코딩 모델을 구축하는 방법 및 장치
JP2015132539A (ja) 日照量計算装置、経路提案装置および日照量計算方法
CN111611992A (zh) 确定兴趣面的方法、装置和计算机设备
JP2015069302A (ja) インデクス作成装置および空間情報検索装置
WO2016136189A1 (ja) Sarデータ検索装置、方法および記録媒体
CN108920684B (zh) 一种科技资源空间数据整编方法和系统
US9436715B2 (en) Data management apparatus and data management method
CN111353011B (zh) 地点数据集及其建立方法和装置、数据处理方法和装置
Leplat et al. GENOR: A Generic Platform For Indicator Assessment In City Planning.
CN116630564B (zh) 针对大规模全要素场景的三维地理编码方法
JP7200022B2 (ja) 地図作成装置、方法およびプログラム
JP7260989B2 (ja) 地図情報提供装置、方法およびプログラム
JP5670944B2 (ja) 文書要約装置及び方法及びプログラム
JP5094659B2 (ja) 地域圏を表す地域名を抽出する地域名抽出方法及び装置
Zhou et al. Tile‐based polygon overlay of vector data in a virtual globe
JP6209488B2 (ja) 距離閾値指定装置,距離閾値指定方法、距離閾値指定プログラム
Korstanje Geodata Data Types

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20150401

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20150413

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20150617

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20150623