WO2019160133A1 - 情報管理装置、情報管理方法及び情報管理プログラム - Google Patents

情報管理装置、情報管理方法及び情報管理プログラム Download PDF

Info

Publication number
WO2019160133A1
WO2019160133A1 PCT/JP2019/005769 JP2019005769W WO2019160133A1 WO 2019160133 A1 WO2019160133 A1 WO 2019160133A1 JP 2019005769 W JP2019005769 W JP 2019005769W WO 2019160133 A1 WO2019160133 A1 WO 2019160133A1
Authority
WO
WIPO (PCT)
Prior art keywords
bit string
unit
key
search
value
Prior art date
Application number
PCT/JP2019/005769
Other languages
English (en)
French (fr)
Inventor
淳 磯村
貴司 久保
一兵衛 内藤
花舘 蔵之
Original Assignee
日本電信電話株式会社
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
Priority claimed from JP2019020118A external-priority patent/JP6911877B2/ja
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to CN201980013813.5A priority Critical patent/CN111727427B/zh
Priority to US16/970,387 priority patent/US11238046B2/en
Priority to EP19754451.3A priority patent/EP3739466A4/en
Publication of WO2019160133A1 publication Critical patent/WO2019160133A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2264Multidimensional index structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases

Abstract

時空間情報管理装置(20)は、時空間情報を複数のノードに分散して管理する情報管理装置であって、時空間情報を1次元ビット列に変換、分割し、変換した1次元ビット列の前方ビット列を少なくともキーに格納させ、該キーのバリューに後方ビット列及び対応データを、格納先のノードに格納させる格納部(24)と、検索対象の時空間情報の範囲条件を1次元ビット列に変換、分割し、検索先のノードから、少なくとも分割した前方ビットを用いてキーを検索し、検索されたキーのバリューから、分割した後方ビット列に対応するバリューを検索し、検索したバリューに含まれる対応データを検索結果として出力する検索部(25)と、を有する。

Description

情報管理装置、情報管理方法及び情報管理プログラム
 本発明は、情報管理装置、情報管理方法及び情報管理プログラムに関する。
 IoT(Internet of Things)時代の到来に伴い、IoT機器によって取得されたデータが、ネットワークを介して、多様な使われ方をされるようになっている。このIoT機器が、車両、ドローン、スマートフォンなどの移動機器である場合、実際の取得データに時間情報及び位置情報(時空間情報)が対応付けられるため、データ量が膨大となる。このため、IoT機器のデータを扱う事業者からは、膨大な量のデータを適切に蓄積できるとともに、これらのデータの中から、時空間情報を用いて、効率的かつ高速にデータを検索できるデータベースシステムが求められていた。
 そこで、従来、蓄積したデータを表の形式で管理することによって、空間の範囲検索を含み、汎用的な検索に対応することができる関係データベース管理システム(RDBMS)が提案されている(非特許文献1参照)。
 また、他のデータベース技術として、大量のデータを複数のノードに分散して格納し、限られた検索条件に対して高速に検索できる分散キーバリューストアが提案されている(非特許文献2参照)。そして、分散キーバリューストアにおける検索条件の制限を緩和するために、一つのキーに複数のバリューを格納することでセカンダリインデクスを構築する技術が提案されている(非特許文献3参照)。また、時空間情報を扱う技術として、時空間情報を1次元のビット列に変換し、効率的に格納および検索する技術が提案されている(非特許文献4参照)。
リレーショナルデータベースとは、[online]、[平成30年2月2日検索]、インターネット<URL:https://aws.amazon.com/jp/relational-database> IoTに適したNoSQL・分散Key-Valueストア、[online]、[平成30年2月2日検索]、インターネット<URL:https://thinkit.co.jp/story/2014/09/25/5280?page=0%2C1> redis、[online]、[平成30年2月2日検索]、インターネット<URL:https://redis.io/topics/indexes> STCode: The Text Encoding Algorithm for Latitude/Longitude/Time、[online]、[平成30年2月2日検索]、インターネット<URL:https://link.springer.com/chapter/10.1007%2F978-3-319-03611-3_10>
 RDBMSに時空間情報を蓄積する場合、データを格納または削除する度にインデクスを更新する必要がある。しかしながら、RDBMSでは、インデクス更新のための時間が発生するため、膨大な量のデータを扱う場合、その更新時間も膨大になるという問題があった。
 また、分散キーバリューストアでセカンダリインデクスを用い、時空間情報を1次元のビット列に変換した場合であっても、時空間情報という多次元情報による範囲検索が困難であり、時空間情報を用いた効率的かつ高速なデータ検索は難しかった。
 さらに、セカンダリインデクスを用いる場合、一つのキーに大量のバリューが格納されると、データストアを構成するノード間で処理負荷が偏り、大幅に性能が低下するというおそれもある。
 本発明は、上記に鑑みてなされたものであって、時空間情報を含む大量のデータを適切に分散して格納できるとともに、時空間情報を用いて効率的かつ高速にデータを検索できる情報管理装置、情報管理方法及び情報管理プログラムを提供することを目的とする。
 上述した課題を解決し、目的を達成するために、本発明に係る情報管理装置は、時間情報及び位置情報を含む時空間情報と該時空間情報に対応する対応データとを、キーバリューストアである複数のノードに分散して管理する情報管理装置であって、格納対象の情報のうち時空間情報を1次元ビット列に変換し、変換した1次元ビット列を前方ビット列及び後方ビット列に分割し、少なくとも分割した前方ビット列をキーに格納させ、該キーのバリューに、分割した後方ビット列及び対応データを格納先のノードに格納させる格納部と、検索対象の時空間情報の範囲条件を1次元ビット列に変換し、変換した1次元ビット列を前方ビット列及び後方ビット列に分割し、検索先のノードから、少なくとも分割した前方ビットを用いてキーを検索し、検索されたキーのバリューから、分割した後方ビット列に対応するバリューを検索し、検索したバリューに含まれる対応データを検索結果として出力する検索部と、を有することを特徴とする。
 本発明によれば、時空間情報を含む大量のデータを適切に分散して格納できるとともに、時空間情報を用いて効率的かつ高速にデータを検索できる。
図1は、実施の形態1における情報管理システムの構成の一例を示す図である。 図2は、図1に示すデータ送信機器が送信する取得データのデータ構成の一例を示す図である。 図3は、図1に示すノードが記憶するデータのデータ構成の一例を示す図である。 図4は、図1に示す端末装置が送信する検索要求のデータ構成の一例を示す図である。 図5は、図1に示す時空間情報管理装置が出力する検索結果のデータ構成の一例を示す図である。 図6は、図1に示す時空間情報管理装置の構成の一例を示す図である。 図7は、図1に示す格納部の処理の流れを説明する図である。 図8は、図1に示すデータ記憶システム内のデータ保持形式を説明する図である。 図9は、図1に示す検索部の処理の流れを説明する図である。 図10は、図1に示すデータ記憶システム内のデータ保持形式を説明する図である。 図11は、図6に示す時空間情報管理装置による情報の格納処理の処理手順を示すフローチャートである。 図12は、図6に示す時空間情報管理装置による情報の検索処理の処理手順を示すフローチャートである。 図13は、従来のデータベースシステムのデータ分散を説明する図である。 図14は、本実施の形態1に係る時空間情報管理装置が行うデータ分散を説明する図である。 図15は、従来のデータベースシステムのデータ分散を説明する図である。 図16は、本実施の形態1に係る時空間情報管理装置が行うデータ分散を説明する図である。 図17は、実施の形態1の変形例に係る時空間情報管理装置の構成の一例を示す図である。 図18は、分散先ノード組合せ情報のデータ構成の一例を示す図である。 図19は、図17に示す時空間情報管理装置による情報の格納処理の処理手順を示すフローチャートである。 図20は、図17に示す時空間情報管理装置による情報の検索処理の処理手順を示すフローチャートである。 図21は、図17に示す時空間情報管理装置が選択できるノードの組合せを示す図である。 図22は、実施の形態2における情報管理システムの構成の一例を示す図である。 図23は、図22に示すデータ記憶システムが記憶するデータのデータ構成の一例を示す図である。 図24は、図22に示す時空間情報管理装置の構成の一例を示す図である。 図25は、図24に示す格納部の処理の流れを説明する図である。 図26は、図22に示すデータ記憶システム内のデータ保持形式を説明する図である。 図27は、図24に示す検索部の処理の流れを説明する図である。 図28は、図22に示すデータ記憶システム内のデータ保持形式を説明する図である。 図29は、図24に示す時空間情報管理装置による情報の格納処理の処理手順を示すフローチャートである。 図30は、図24に示す時空間情報管理装置による情報の検索処理の処理手順を示すフローチャートである。 図31は、プログラムが実行されることにより、時空間情報管理装置が実現されるコンピュータの一例を示す図である。
 以下、図面を参照して、本発明の一実施形態を詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
[実施の形態1]
 本発明の実施1の形態について説明する。図1は、実施の形態1における情報管理システムの構成の一例を示す図である。
 図1に示すように、実施の形態1に係る情報管理システム1は、データ送信機器10、時空間情報管理装置20(情報管理装置)、データ記憶システム30及び端末装置40を有する。時空間情報管理装置20は、データ送信機器10、データ記憶システム30及び端末装置40と、ネットワーク等によって接続する。
 データ送信機器10は、IoT機器である。データ送信機器10は、例えば、車両、ドローン或いはスマートフォンなどの移動機器である。データ送信機器10は、移動しながら取得したデータを、時空間情報管理装置20に送信する。データ送信機器10は、時間情報及び位置情報を含む時空間情報と該時空間情報に対応する対応データとを対応付けた取得データを、時空間情報管理装置20に送信する。データ送信機器10は、1台でもよく、複数台でもよい。
 図2は、図1に示すデータ送信機器10が送信する取得データのデータ構成の一例を示す図である。図2のリストL1に示すように、データ送信機器10による取得データは、データ取得時刻を示す時間情報と経度及び緯度を示す位置情報とに、データ送信機器10が取得した各種データ(データ部)を対応付けた構成を有する。例えば、データ送信機器10は、時刻「2017/1/1 10:15:30」に、経度「27.1984°」及び緯度「-15.2958°」の位置で取得した「data1」を、時間情報及び位置情報に対応付けて時空間情報管理装置20に送信する。
 図1に戻り、時空間情報管理装置20の概略について説明する。時空間情報管理装置20は、データ送信機器10によって送信された取得データを、キーバリューストアである複数のノード1~Nに分散して格納することで管理する。また、時空間情報管理装置20は、ノード1~Nが格納するデータの中から、検索対象の時空間情報の範囲条件に対応する対応データを検索結果として出力する。時空間情報管理装置20は、要部として、格納部24及び検索部25を有する。なお、時空間情報管理装置20は、データ送信機器10またはアプリケーション41に組み込まれた構成でもよい。
 格納部24は、取得データをノード1~Nに分散して格納する。格納部24は、格納対象の情報のうち時空間情報を1次元ビット列に変換し、変換した1次元ビット列を前方ビット列及び後方ビット列に分割する。そして、格納部24は、分割した前方ビット列をキーに格納させ、該キーのバリューに、分割した後方ビット列及び対応データを格納先のノードに格納させる。後述するように、格納部24は、ある時間、ある地域にデータが偏った場合であっても、それぞれのデータに対して、異なるノードを格納先として設定するため、格納先を分散させることができる。
 検索部25は、検索対象の時空間情報の範囲条件に対応する対応データを検索結果として出力する。検索部25は、検索対象の時空間情報の範囲条件を1次元ビット列に変換し、変換した1次元ビット列を前方ビット列及び後方ビット列に分割する。そして、検索部25は、検索先のノードから、分割した前方ビットを用いてキーを検索し、検索されたキーのバリューから、分割した後方ビット列に対応するバリューを検索し、検索したバリューに含まれる対応データを検索結果として出力する。後述するように、検索部25は、検索先のノードの台数を絞って検索を行うことから、1台のノードに検索が集中することもなく検索の負荷を低減することができるとともに、全ノードに検索をおこなうこともないため、検索処理の高速化を図ることができる。
 データ記憶システム30は、キーバリューストアである複数のノード1~Nを有する。ノード1~Nは、例えば、ストレージを有し、ストレージへのデータ入出力を実行するサーバであり、それぞれのサーバが連動してデータ入出力に関する動作を行う。
 図3は、図1に示すノード1~Nが記憶するデータのデータ構成の一例を示す図である。図3のリストL2に示すように、ノード1~Nが記憶するデータのデータ構成は、セカンダリインデクス部を有するキーバリュー型を想定している。
 具体的には、ノード1~Nは、リストL2のように、ノードの識別情報、キー、バリューの項目を有する構成でデータを記憶する。そして、リストL2に示すように、バリューには、セカンダリインデクス部と、対応データが格納されるデータ部とが設けられる。後述するように、キーには、時空間情報をビット列変換した際の前方ビット列が格納される。また、バリューのセカンダリインデクスには、時空間情報をビット列変換した際の後方ビット列が格納される。
 具体的には、リストL2では、例えば、ノードN1が、「前方ビット列1」を格納するキーのバリューのうち、セカンダリインデクス部に「後方ビット列1」が格納され、データ部に「data1」を格納することを示す。
 図1に戻り、端末装置40について説明する。端末装置40は、ユーザが所有するスマートフォン等であり、アプリケーション41を有する。アプリケーション41は、ルート案内や障害地点通知などのための検索を、時空間情報管理装置20に要求する機能を有する。例えば、端末装置40は、検索対象の時空間情報の範囲条件を検索条件として、時空間情報管理装置20に検索要求を送信する。
 図4は、図1に示す端末装置40が送信する検索要求のデータ構成の一例を示す図である。図4のリストL3に示すように、検索要求データは、検索対象の時空間情報の始端を示すデータ列と終端となるデータ列とが対応付けられたデータ構成を有する。リストL3では、検索対象の時空間情報の範囲を示す始端及び終端のそれぞれについて、時刻、経度、緯度が示される。端末装置40は、リストL3の例では、時刻が「2017/1/1 09:00:00」から「2017/1/1 09:15:00」の範囲であり、経度「27°」から「28°」であって緯度が「-16°」から「-15°」の範囲を、検索対象の時空間情報の範囲条件として要求する。
 図5は、図1に示す時空間情報管理装置20が出力する検索結果のデータ構成の一例を示す図である。時空間情報管理装置20は、図3に示す検索条件を基にノード1~Nのデータを検索する。そして、時空間情報管理装置20は、例えば、図5に示すリストL4を検索結果として、端末装置40に返却する。時空間情報管理装置20は、リストL4に示すように、検索条件に該当する該当バリューとして、「data1」を返却する。
[時空間情報管理装置の構成]
 次に、時空間情報管理装置20の構成について説明する。図6は、図1に示す時空間情報管理装置20の構成の一例を示す図である。図6に示すように、時空間情報管理装置20は、通信部21、記憶部22及び制御部23を有する。なお、時空間情報管理装置20は、物理サーバであってもよいし、物理サーバ上に展開された仮想サーバであってもよい。
 通信部21は、ネットワーク2等を介して接続された他の装置との間で、各種情報を送受信する通信インタフェースである。通信部21は、NIC(Network Interface Card)等で実現され、LAN(Local Area Network)やインターネットなどの電気通信回線を介した他の装置と制御部23(後述)との間の通信を行う。
 記憶部22は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、光ディスク等の記憶装置である。なお、記憶部22は、RAM(Random Access Memory)、フラッシュメモリ、NVSRAM(Non Volatile Static Random Access Memory)等のデータを書き換え可能な半導体メモリであってもよい。記憶部22は、時空間情報管理装置20で実行されるOS(Operating System)や各種プログラムを記憶する。さらに、記憶部22は、プログラムの実行で用いられる各種情報を記憶する。
 制御部23は、時空間情報管理装置20全体を制御する。制御部23は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)等の電子回路や、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等の集積回路である。また、制御部23は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、内部メモリを用いて各処理を実行する。また、制御部23は、各種のプログラムが動作することにより各種の処理部として機能する。制御部23は、格納部24及び検索部25を有する。
[格納部の構成]
 格納部24は、格納受付部241、第1の変換部242、第1の分割部243、第1のハッシュ値計算部244、格納先ノード計算部245(格納先ノード選択部)、キー設定部246、バリュー設定部247及び格納指示部248を有する。
 格納受付部241は、データ送信機器10から送信された取得データを、格納対象のデータとして、入力を受付ける。取得データは、前述したように、時間情報及び位置情報を含む時空間情報と該時空間に対応する対応データとを対応付けたものである。具体的には、取得データは、時刻、経度、緯度、データ部を有する。
 第1の変換部242は、入力を受け付けた取得データのうち、時空間情報を1次元ビット列に変換する。すなわち、第1の変換部242は、時刻、経度、緯度を1次元ビット列に変換する。
 第1の分割部243は、第1の変換部242が変換した1次元ビット列を、前方ビット列及び後方ビット列に分割する。そして、第1のハッシュ値計算部244は、第1の変換部242が変換した前方ビット列のハッシュ値を計算する。
 格納先ノード計算部245は、第1のハッシュ値計算部244が計算したハッシュ値を基に格納先のノードを選択する。具体的には、格納先ノード計算部245は、(1)式を用いて、格納先のノード番号を計算し、計算結果として得られた番号のノードを格納先のノードとして選択する。なお、(1)式では、分散先のノード数が設定されており、1台のノードの番号が解として算出される。
Figure JPOXMLDOC01-appb-M000001
 キー設定部246は、第1の分割部243が分割した前方のビット列を、格納先のノードのキーに格納する設定を行う。そして、バリュー設定部247は、格納先のノードのキーのうち、キー設定部246が設定したキーのバリューに、第1の分割部243が分割した後方ビット列及び対応データを格納する設定を行う。格納指示部248は、キー設定246部及びバリュー設定部247の設定に応じて、格納先のノードにデータを格納させる。
 このように、格納部24は、(1)式を用いることによって、各キーの違いに応じて、異なるノードを格納先として選択する。したがって、格納部24は、同じ時間や同じ地域のデータであっても、複数のノードに分けて格納して、格納先を分散するため、ノードに対する格納の負荷を低減することができる。また、格納部24は、時空間情報を、1次元ビット列変換法を用いて変換し、1次元ビット列に変換した時空間情報のうちの前方ビットをキーとして使用する。このように、格納部24は、比較的簡易な変換処理である1次元ビット列変換法を用いて、キーを作成するため、キー作成に要する時間を短縮することができる。
[検索部の構成]
 次に、検索部25について説明する。検索部25は、検索受付部251、第2の変換部252、第2の分割部253、第2のハッシュ値計算部254、検索先ノード計算部255(検索先ノード取得部)、キー検索部256、後方ビット列検索部257及びバリュー返却部258(出力部)を有する。
 検索受付部251は、端末装置40から送信された検索条件の入力を受け付ける。検索条件は、ルート案内や障害地点通知などに用いるための、検索対象の時空間情報の範囲条件である。具体的には、検索情報は、図4のリストL3に示すように、時刻、経度、緯度の始端及び終端を示す情報である。
 第2の変換部252は、検索を受けた検索対象の時空間情報の範囲条件を、1次元ビット列に変換する。第2の分割部253は、第2の変換部252が変換した1次元ビット列を前方ビット列及び後方ビット列に分割する。第2のハッシュ値計算部254は、第2の分割部253が分割した前方ビット列のハッシュ値を計算する。
 検索先ノード計算部255は、第2のハッシュ値計算部254が計算したハッシュ値を基に検索先のノードを求める。具体的には、検索先ノード計算部255は、(2)式を用いて、検索先のノード番号を計算し、計算結果として得られた番号のノードを検索の際のノードとする。(2)式では、(1)式で分散先のノード数Dが複数台設定されている場合には、(1)式で設定された台数分の解が出る。
Figure JPOXMLDOC01-appb-M000002
 キー検索部256は、検索先のノードから、第2の分割部253が分割した前方ビット列と一致するキーを検索する。そして、後方ビット列検索部257は、キー検索部256が検索したキーのバリューから、第2の分割部が分割した後方ビット列と前方一致するバリューを検索する。
 バリュー返却部258は、後方ビット列検索部257が検索したバリューに含まれる対応データを、検索結果として出力する。言い換えると、バリュー返却部258は、後方ビット列検索部257が検索したバリューに含まれる対応データを、端末装置40に返却する。
 検索部25は、(2)式を用いることによって、検索先のノードの台数を絞って検索処理を実行する。したがって、実施の形態1では、1台のノードに検索が集中することもなく検索の負荷を低減することができるとともに、全ノードに検索を行うこともないため、検索処理の高速化を図ることができる。
[格納部の処理の流れ]
 次に、図7を参照して、格納部24の処理の流れについて具体的に説明する。図7は、図1に示す格納部24の処理の流れを説明する図である。
 図7に示すように、例えば、格納受付部241が、「時刻(unix_timestamp):1483196400,経度:40.7212905884,緯度:-73.8441925049,データ部:“test_data1”」であるデータの入力を受け付けた場合について説明する。
 この場合、第1の変換部242は、3次元Z曲線により時刻「1483196400」、経度「40.7212905884」,緯度「-73.8441925049」を1次元ビット列(例:96ビット)に変換する。得られた1次元ビット列は、「101010101101111001010110100110111010110010100010001000100011101001110111000100110011001000011011」である。
 続いて、第1の分割部243は、1次元ビット列を前方ビット列(例:45ビット)、後方ビット列(例:51ビット)に分割する。具体的には、第1の分割部243は、「101010101101111001010110100110111010110010100010001000100011101001110111000100110011001000011011」のうち、前方の45ビット「101010101101111001010110100110111010110010100」を前方ビット列とし、後方の51ビット「010001000100011101001110111000100110011001000011011」を後方ビット列として分割する。
 第1のハッシュ値計算部244は、前方ビット列「101010101101111001010110100110111010110010100」のハッシュ値を計算する。例えば、第1のハッシュ値計算部244は、ハッシュ関数としてmurmurhashを用い、前方ビット列「101010101101111001010110100110111010110010100」のハッシュ値を「8088516515490849671」と計算する。
 そして、格納先ノード計算部245は、第1のハッシュ値計算部244が計算したハッシュ値「8088516515490849671」を(1)式に適用し、格納先ノードの番号を計算する。例えば、D=3、N=10の場合であって、ノード番号W=1、W=2またはW=3のうち、今回は、W=1が選ばれたものとする。
 キー設定部246は、ノードW1のキーに前方ビット列「101010101101111001010110100110111010110010100」を格納するように設定する。そして、バリュー設定部247は、格納先のノードW1のキー「101010101101111001010110100110111010110010100」のバリューのうち、セカンダリインデクス部に、後方ビット列「010001000100011101001110111000100110011001000011011」を格納し、データ部に「test_data1」を格納する設定を行う。そして、この格納指示部248は、キー設定246部及びバリュー設定部247の設定に応じて、格納先のノードにデータを格納させる。
 図8は、図1に示すデータ記憶システム30内のデータ保持形式を説明する図である。図8のリストL2aに示すように、図7に示す格納部24の設定に従い、ノード「1」のキーに「101010101101111001010110100110111010110010100」が格納される。そして、リストL2aに示すように、このキー「101010101101111001010110100110111010110010100」のバリューのうち、セカンダリインデクス部に、「010001000100011101001110111000100110011001000011011」が格納され、データ部に「test_data1」が格納される。
[検索部の処理の流れ]
 次に、図9を参照して、検索部25の処理の流れについて具体的に説明する。図9は、図1に示す検索部25の処理の流れを説明する図である。また、図10は、図1に示すデータ記憶システム30内のデータ保持形式を説明する図である。
 図9に示すように、例えば、検索受付部251が、検索条件として、「時刻(unix_timestamp):1483194823~1483196748,経度:40.7211685180~40.7213401794,緯度:-73.8442611694~-73.8439178466」の入力を受け付けた場合について説明する。
 この場合、第2の変換部252は、3次元Z曲線により時刻「1483194823~1483196748」、経度「経度:40.7211685180~40.7213401794」、緯度「-73.8442611694~-73.8439178466」の入力範囲を1次元ビット列に変換する。この例では、60ビットで表現が可能であり、第2の変換部252は、ビット列「101010101101111001010110100110111010110010100010001000100011」を得ることができる。
 続いて、第2の分割部253は、1次元ビット列を前方ビット列(例:45ビット)、後方ビット列(例:51ビット)に分割する。具体的には、第2の分割部253は、「101010101101111001010110100110111010110010100010001000100011」のうち前方の45ビット「101010101101111001010110100110111010110010100」を前方ビット列とし、後方の15ビット「010001000100011」を後方ビット列として分割する。
 第2のハッシュ値計算部254は、前方ビット列「101010101101111001010110100110111010110010100」のハッシュ値を計算する。例えば、第2のハッシュ値計算部254は、ハッシュ関数としてmurmurhashを用い、前方ビット列「101010101101111001010110100110111010110010100」のハッシュ値を「8088516515490849670」と計算する。
 そして、検索先ノード計算部255は、第2のハッシュ値計算部254が計算したハッシュ値「8088516515490849670」を(2)式に適用し、検索先ノードの番号を計算する。例えば、D=3、N=10の場合であって、(2)式により、検索先ノードが、R=1、かつ、R=2、かつ、R=3であると求められる。したがって、図10のリストL2aのうち、ノード「1」,「2」,「3」が検索先ノードとして求められる(図10の(1)参照)。
 そして、キー検索部256は、検索先のノードから、前方ビット列「101010101101111001010110100110111010110010100」と一致するキーを検索する。この結果、リストL2aに示すように、ノード「1」の欄C1のキーが検索キーとして検索される(図10の(2)参照)。
 続いて、後方ビット列検索部257は、キー検索部256が検索したキーのバリューから、後方ビット列「010001000100011」と前方一致するセカンダリインデクス部を検索する。この結果、ノード「1」の欄C1のキーに対応するバリューのうち、後方ビット列「010001000100011」と前方一致する欄C2が検索バリューとして検索される(図10の(3)参照)。
 そして、バリュー返却部258は、後方ビット列検索部257が検索した欄C2のセカンダリインデクス部に対応するデータ部のデータ「test_data1」(図10の欄C3参照)を、検索に該当するバリューとして、端末装置40に返却する(図10の(4)参照)。
[格納処理の処理手順]
 次に、時空間情報管理装置20による情報の格納処理の処理手順について説明する。図11は、図6に示す時空間情報管理装置20による情報の格納処理の処理手順を示すフローチャートである。
 図11に示すように、格納受付部241がデータ送信機器10から送信された取得データの入力を受け付けると(ステップS11)、第1の変換部242は、入力を受け付けた取得データのうち、時空間情報である時刻、経度、緯度を1次元ビット列に変換する(ステップS12)。
 続いて、第1の分割部243は、第1の変換部242が変換した1次元ビット列を、前方ビット列及び後方ビット列に分割する(ステップS13)。そして、第1のハッシュ値計算部244は、第1の変換部242が変換した前方ビット列のハッシュ値を計算する(ステップS14)。
 格納先ノード計算部245は、第1のハッシュ値計算部244が計算したハッシュ値を基に格納先のノードを計算する(ステップS15)。具体的には、格納先ノード計算部245は、(1)式を用いて、格納先のノード番号を計算し、計算結果として得られた番号のノードを格納先のノードとして選択する。
 キー設定部246は、第1の分割部243が分割した前方のビット列を、格納先のノードのキーに格納する設定を行う(ステップS16)。そして、バリュー設定部247は、格納先のノードのキーのうち、キー設定部246が設定したキーのバリューに、第1の分割部243が分割した後方ビット列及び対応データを格納する設定を行う(ステップS17)。格納指示部248は、キー設定246部及びバリュー設定部247の設定に応じて、格納先のノードにデータを格納させる指示を行い(ステップS18)、格納処理を終了する。
[検索処理の処理手順]
 次に、時空間情報管理装置20による情報の検索処理の処理手順について説明する。図12は、図6に示す時空間情報管理装置20による情報の検索処理の処理手順を示すフローチャートである。
 図12に示すように、まず、検索受付部251は、端末装置40から送信された時刻、経度、緯度の始端及び終端を示す情報を、検索条件として、入力を受け付ける(ステップS21)。そして、第2の変換部252は、入力値を、1次元ビット列に変換する(ステップS22)。
 続いて、第2の分割部253は、第2の変換部252が変換した1次元ビット列を前方ビット列及び後方ビット列に分割する(ステップS23)。そして、第2のハッシュ値計算部254は、第2の分割部253が分割した前方ビット列のハッシュ値を計算する(ステップS24)。
 検索先ノード計算部255は、第2のハッシュ値計算部254が計算したハッシュ値を基に検索先のノードを計算する(ステップS25)。具体的には、検索先ノード計算部255は、(2)式を用いて、検索先のノード番号を計算し、計算結果として得られた番号のノードを検索際のノードとする。
 そして、キー検索部256は、検索先のノードから、第2の分割部253が分割した前方ビット列と一致する(等価である)キーを検索する(ステップS26)。そして、後方ビット列検索部257は、キー検索部256が検索したキーのバリューに存在する後方ビット列に対し、第2の分割部が分割した後方ビット列と前方一致するバリューを検索する(ステップS27)。
 バリュー返却部258は、後方ビット列検索部257が検索したバリューに含まれる対応データを、検索に該当するバリューとして端末装置40に返却し(ステップS28)、検索処理を終了する。
[実施の形態1の効果]
 このように、実施の形態1に係る時空間情報管理装置20は、格納対象の情報のうち時空間情報を1次元ビット列に変換し、変換した1次元ビット列を前方ビット列及び後方ビット列に分割し、分割した前方ビット列をキーに格納させ、該キーのバリューに、分割した後方ビット列及び対応データを格納先のノードに格納させる。この際、時空間情報管理装置20は、前方ビット列のハッシュ値を計算し、計算したハッシュ値を(1)式に適用して、格納先のノード番号を取得している。ここで、(1)式では1つのノード番号を求めている。
 本実施の形態1では、(1)式において、分散先のノード数Dを設定する。これによって、データが同じキー「A」を有する場合でも、各データは、D台のノードに分かれて格納される。また、本実施の形態1では、データがキー「B」を有すれば、(1)式において異なるキーのハッシュ値が計算されるため、キー「A」のデータが格納されるノードとは、別の複数台のノードのいずれかに格納される。
 したがって、時空間情報管理装置20によれば、ある時間及びある地域において、データが偏った場合であっても、それぞれのデータに対し、格納先のノードとして、それぞれ異なるノードが算出される。このため、時空間情報管理装置20によれば、同じ時間や同じ地域のデータを格納する場合であっても、複数のノードにそれぞれ分散して格納することができ、ノード間での負荷の偏りを軽減することができる。この結果、時空間情報管理装置20によれば、時空間情報を含む大量のデータを適切に分散して格納できる。
 図13及び図15は、従来のデータベースシステムのデータ分散を説明する図である。図14及び図16は、本実施の形態1に係る時空間情報管理装置20が行うデータ分散を説明する図である。
 図13に示すように、従来のデータ処理装置20Pは、予め定義した領域で時空間データを分割し、データ配置を決定する。このため、従来では、領域に応じてデータの粗密が異なり、特定のノードに負荷を集中していた。したがって、従来では、特定のノードの負荷を分散させるために、ノードの追加に伴うデータの再配置が発生してしまい(図13の(1)参照)、格納先情報の追加及び更新が必要となる。
 また、図15に示すように、事前の定義領域の割り当てる従来の手法では、ノード間で負荷が偏るという問題があった(図15の(1),(2)参照)。例えば、東京都を4地域に事前に分割し、4つのノードにそれぞれエリア1~4を割り当てた場合、エリア1では、データが少なく負荷が少ないのに対し、エリア4ではデータが多く負荷が大きくなる。このように、従来手法では、エリアに応じてデータの粗密が異なり、特定のノードに負荷が集中していた。
 特に、移動するIoT機器は、時間帯(ラッシュ時と夜間)や地域(都会と郊外)によって存在する機器の数が大幅に異なる。このため、従来手法では、キーに時間情報や位置情報を保持した状態でセカンダリインデクスを利用すると、一つのキーが保持するバリュー数が大幅に異なり、結果として分散キーバリューストアを構成するノード間で負荷の偏りが発生していた。すなわち、従来手法では、特定のノードへの負荷集中が発生していた。
 これに対し、図14に示すように、時空間情報管理装置20では、常に複数のノードにデータを分散するため、各ノードが保持するデータ量が均等に分散し、性能を維持することができる。また、図16に示すように、本実施の形態1によれば、データを複数のノードに分散して格納し、検索時に複数のノードからデータを取得するため、ノード間で負荷が均一になる。言い換えると、時間帯や地域に応じたデータの偏りに影響を受けずにデータを分散できる。したがって、時空間情報管理装置20によれば、時空間情報という多次元の情報をデータストアに効率的に格納することができる。
 また、時空間情報管理装置20は、検索対象の時空間情報の範囲条件を1次元ビット列に変換し、変換した1次元ビット列を前方ビット列及び後方ビット列に分割して、検索先のノードから、分割した前方ビットを用いてキーを検索し、検索されたキーのバリューから、分割した後方ビット列に対応するバリューを検索し、検索したバリューに含まれる対応データを検索結果として出力する。
 ここで、時空間情報管理装置20は、全ノードに対して検索を行うのではなく、(2)式を用いて計算した一定数(D台)のノードに絞ってキー検索を行う。その後、検索されたキーのセカンダリインデクス部による前方一致検索を行い、格納されたデータを検索する。このため、時空間情報管理装置20は、1台のノードに検索が集中することもない。また、時空間情報管理装置20は、一定数のノードに絞ってキー検索を行うため、全ノードにキー検索を行う場合と比して、検索処理の負荷を低減しながら、検索処理を効率かつ高速に実行することができる。
 また、従来のRDBMSでは、時空間情報の格納時に、大量のデータが格納されるたびにインデクスの作成および更新が必要となり、インデクス作成処理のために一定以上の時間が必要となる。これに対し、時空間情報管理装置20は、時空間情報の格納時に、1次元ビット列変換法を用いて時空間情報を変換し、このうちの前方ビットをキーとして用いる。1次元ビット列変換法は比較的簡易な処理であるため、時空間情報管理装置20は、従来よりも、インデクス作成処理の時間を削減することができる。したがって、時空間情報管理装置20は、従来の格納手法に比して、多次元の情報である時空間情報の格納を高速化かつ効率化できる。
 このように、本実施の形態1に係る時空間情報管理装置20を用いて、時空間情報を格納及び検索することによって、データストアを構成するノード間での処理負荷を分散することができる。このため、時空間情報管理装置20によれば、移動するIoT機器のデータを扱う事業者は、膨大な量のデータを高速に格納することができる。また、時空間情報管理装置20によれば、事業者は、時空間情報の範囲条件による高速な検索を行えることが可能になるため、展開可能なサービスを拡大する効果が期待できる。
[実施の形態1の変形例]
 次に、実施の形態の変形例1について説明する。図17は、実施の形態1の変形例に係る時空間情報管理装置の構成の一例を示す図である。図17に示すように、時空間情報管理装置20Aは、図6に示す時空間情報管理装置20の制御部23に代えて制御部23Aを有する。時空間情報管理装置20Aは、記憶部22に、分散先ノード組合せ情報221Aを有する。
 分散先ノード組合せ情報221Aは、予め作成された格納先のノードの組合せ表である。図18は、分散先ノード組合せ情報221Aのデータ構成の一例を示す図である。図18に示すように、分散先ノード組合せ情報221Aは、パターン番号k(k=0,1,2,3,・・・,-1)と、分散先のノード番号の組合せiとが対応付けられた一覧表である。なお、nは、ノードの台数であり、dは、格納先のノードの台数である。
 制御部23Aは、格納部24A及び検索部25Aを有する。格納部24Aは、図6に示す格納先ノード計算部245に代えて、格納先ノード計算部245Aを有する。格納先計算部245Aは、分散先のノードの組合せを選択する。格納先計算部245Aは、第1の分割部243が分割した前方ビットをキーとし、第1のハッシュ値計算部244が計算したハッシュ値を用いて、分散先のノードの組合せを選択する。
 具体的には、格納先計算部245Aは、(3)式を用いて、分散先のノード番号の組合せのパターン番号kを計算する。
Figure JPOXMLDOC01-appb-M000003
 続いて、格納先ノード計算部245Aは、パターン番号kに対応するノード番号の組合せiを、分散先ノードの組合せ情報221Aから取得し、組合せiに含まれるノード中から、格納先のノードを(4)式を用いて計算する。
Figure JPOXMLDOC01-appb-M000004
 そして、実施の形態と同様に、キー設定部246、バリュー設定部247及び格納指示部248は、格納先ノード計算部245Aが計算した格納先のノードにデータを格納させる。
 また、検索部25Aは、検索先ノード計算部255に代えて、検索先ノード計算部255Aを有する。検索先ノード計算部255Aは、検索先のノードの組合せを選択する。検索先ノード計算部255Aは、第2の分割部253が分割した前方ビットをキーとして、第2のハッシュ値計算部254が計算したハッシュ値を、(3)式に適用し、検索先のノードの組合せを計算する。
 具体的には、格納先計算部245Aは、(3)式を用いて、分散先のノード番号の組合せのパターン番号kを計算する。
 続いて、キー設定部256は、パターン番号kに対応するノード番号の組合せiを、分散先ノードの組合せ情報221Aから取得し、組合せiに含まれるノードの中から、第2の分割部253が分割した前方ビット列と一致するキーを検索する。そして、実施の形態1と同様に、後方ビット列検索部257は、キー検索部256が検索したキーのバリューから、第2の分割部が分割した後方ビット列と前方一致するバリューを検索する。そして、バリュー返却部258は、後方ビット列検索部257が検索したバリューに含まれる対応データを、検索結果として出力する。
[格納処理の処理手順]
 次に、時空間情報管理装置20Aによる情報の格納処理の処理手順について説明する。図19は、図17に示す時空間情報管理装置20Aによる情報の格納処理の処理手順を示すフローチャートである。図19に示すステップS11A~ステップS14Aは、図11に示すステップS11~ステップS14と同じ処理である。
 格納先計算部245Aは、(3)式を用いて、分散先のノードの組合せのパターン番号kを取得する(ステップS15-1A)。格納先ノード計算部245Aは、パターン番号kに対応するノード番号の組合せiを、分散先ノードの組合せ情報221Aから取得し、組合せiに含まれるノード中から、格納先のノードを、(4)式を用いて計算する(ステップS15-2A)。図19に示すステップS16A~ステップS18Aは、図11に示すステップS16~ステップS18と同じ処理である。
[検索処理の処理手順]
 次に、時空間情報管理装置20Aによる情報の検索処理の処理手順について説明する。図20は、図17に示す時空間情報管理装置20Aによる情報の検索処理の処理手順を示すフローチャートである。図20に示すステップS21A~ステップS24Aは、図12に示すステップS21~ステップS24と同じ処理である。
 検索先ノード計算部255Aは、第2のハッシュ値計算部254が計算したハッシュ値を基に、検索先のノードの組合せを取得する(ステップS25A)。検索先ノード計算部255Aは、第2のハッシュ値計算部254が計算したハッシュ値を、(3)式に適用し、検索先のノードの組合せのパターン番号kを計算し、パターン番号kに対応するノード番号の組合せiを、分散先ノードの組合せ情報221Aから取得する。
 そして、キー検索部256は、検索先ノード計算部255Aが求めた組合せのノードから、第2の分割部253が分割した前方ビット列と一致する(等価である)キーを検索する(ステップS26A)。図20のステップS27及びステップS28は、図12のステップS27及びステップS28と同じ処理である。
[実施の形態1の変形例の効果]
 このように、時空間情報管理装置20では、予め、格納先のノードの組合せ表を作成しておき、格納時には、第1の分割部243が分割した前方ビットの値をキーとして、ノードの組合せを選択し、選択したノードのいずれかに格納処理を行う。また、時空間情報管理装置20では、検索時には、第2の分割部253が分割した前方ビットの値をキーとして、検索先のノードの組合せを求め、求めた組合せのノードに対して検索を行う。
 図21は、図17に示す時空間情報管理装置20Aが選択できるノードの組合せを示す図である。図21では、Nを4台とし、Dを2台とした例を示す。図21に示すように、時空間情報管理装置20Aは、全ノードに対する全ての組合せを、格納先として選択できるため、全ノードに均等に負荷を分散することができる。また、時空間情報管理装置20Aは、検索先のノードの組合せを正確に取得できるため、適切な検索も実現することができる。
[実施の形態2]
 本発明の実施の形態2について説明する。図22は、実施の形態2における情報管理システムの構成の一例を示す図である。
 図22に示すように、実施の形態2に係る情報管理システム201は、複数のノード1~Nがクラスタ構成で動作するデータ記憶システム230を有する。そして、情報管理システム201は、格納部224及び検索部225を有する時空間情報管理装置220(情報管理装置)を有する。時空間情報管理装置220は、データ送信機器10によって送信された取得データ(例えば、図2のリストL1)を、データ記憶システム230に格納することで管理する。また、時空間情報管理装置220は、データ記憶システム230が格納するデータの中から、検索対象の時空間情報の範囲条件に対応する対応データを検索結果として出力する。
 格納部224は、格納対象の情報のうち時空間情報を1次元ビット列に変換し、変換した1次元ビット列を前方ビット列及び後方ビット列に分割する。そして、格納部224は、格納対象の情報についてラベル番号を計算し、分割した前方ビット列及びラベル番号をキーに格納させ、該キーのバリューに、分割した後方ビット列及び対応データをデータ記憶システム230に格納させる。
 検索部225は、検索対象の時空間情報の範囲条件に対応する対応データを検索結果として出力する。検索部225は、検索対象の時空間情報の範囲条件を1次元ビット列に変換し、変換した1次元ビット列を前方ビット列及び後方ビット列に分割する。そして、検索部25は、検索先のノードから、分割した前方ビット及びラベル番号と等価であるキーを検索し、検索されたキーのバリューから、分割した後方ビット列に対応するバリューを検索し、検索したバリューに含まれる対応データを検索結果として出力する。
 データ記憶システム230は、キーバリューストアである複数のノード1~Nがクラスタ構成で動作する。図23は、図22に示すデータ記憶システム230が記憶するデータのデータ構成の一例を示す図である。図23のリストL22に示すように、ノード1~Nが記憶するデータのデータ構成は、セカンダリインデクス部を有するキーバリュー型を想定している。
 具体的には、ノード1~Nは、リストL22のように、リストL2(図3参照)と同様に、ノードの識別情報、キー、バリューの項目を有する構成でデータを記憶する。リストL22は、リスト2と異なり、キーには、時空間情報をビット列変換した際の前方ビット列及びラベル番号が格納される。
 そして、リストL22では、例えば、ノードN1が、「前方ビット列1_ラベル番号」を格納するキーのバリューのうち、セカンダリインデクス部に「後方ビット列1」が格納され、データ部に「data1」を格納することを示す。
[時空間情報管理装置の構成]
 次に、時空間情報管理装置220の構成について説明する。図24は、図22に示す時空間情報管理装置220の構成の一例を示す図である。図24に示すように、時空間情報管理装置220は、時空間情報管理装置20と比して、格納部224及び検索部225を有する制御部223を有する。
[格納部の構成]
 格納部224は、格納受付部241、第1の変換部242、第1の分割部243、ラベル計算部2245、キー設定部2246、バリュー設定部247及び格納指示部248を有する。格納受付部241、第1の変換部242、第1の分割部243、キー設定部2246、バリュー設定部247及び格納指示部248は、図6に示す第1の変換部242、第1の分割部243、バリュー設定部247及び格納指示部248と同じ処理を行う。なお、ノードの台数であるDの値は、可変であり、格納時には決められている。
 ラベル計算部2245は、第1の分割部243が分割した前方ビットとともにキーに格納するラベル番号を計算する。ラベル計算部2245は、(5)式を用いてラベル番号を計算する。
Figure JPOXMLDOC01-appb-M000005
 キー設定部2246は、第1の分割部243が分割した前方のビット列と、ラベル計算部2245が計算したラベル番号とを1組として、データ記憶システム230のキーへ格納する設定を行う。そして、バリュー設定部247は、格納先のノードのキーのうち、キー設定部2246が設定したキーのバリューに、第1の分割部243が分割した後方ビット列及び対応データを格納する設定を行う。格納指示部248は、キー設定246部及びバリュー設定部247の設定に応じて、格納先のノードにデータを格納させる。
 このように、格納部224は、(5)式を用いることによって、ラベル番号を求め、求めたラベル番号を前方ビット列に対応付けてキーに格納する。
[検索部の構成]
 次に、検索部225について説明する。検索部225は、検索受付部251、第2の変換部252、第2の分割部253、ラベル導出部2255、キー検索部2256、後方ビット列検索部257及びバリュー返却部258(出力部)を有する。検索受付部251、第2の変換部252、第2の分割部253、後方ビット列検索部257及びバリュー返却部258は、図6に示す検索受付部251、第2の変換部252、第2の分割部253、後方ビット列検索部257及びバリュー返却部258と同じ処理を行う。
 ラベル導出部2255は、格納時に決められたDの値から検索対象のラベル番号を導出する。
 キー検索部2256は、データ管理システム230から、第2の分割部253が分割した前方ビット列及びラベル番号と一致するキーを検索する。そして、後方ビット列検索部257は、キー検索部2256が検索したキーのバリューから、第2の分割部が分割した後方ビット列と前方一致するバリューを検索する。バリュー返却部258は、後方ビット列検索部257が検索したバリューに含まれる対応データを、検索結果として出力する。
[格納部の処理の流れ]
 次に、図25を参照して、格納部224の処理の流れについて具体的に説明する。図25は、図24に示す格納部224の処理の流れを説明する図である。
 図25に示すように、例えば、格納受付部241が、「時刻(unix_timestamp):1483196400,経度:40.7212905884,緯度:-73.8441925049,データ部:“test_data1”」であるデータの入力を受け付けた場合について説明する。
 この場合、第1の変換部242は、3次元Z曲線により時刻「1483196400」、経度「40.7212905884」,緯度「-73.8441925049」を1次元ビット列(例:96ビット)に変換する。得られた1次元ビット列は、「101010101101111001010110100110111010110010100010001000100011101001110111000100110011001000011011」である。
 続いて、第1の分割部243は、1次元ビット列を前方ビット列(例:45ビット)、後方ビット列(例:51ビット)に分割する。具体的には、第1の分割部243は、「101010101101111001010110100110111010110010100010001000100011101001110111000100110011001000011011」のうち、前方の45ビット「101010101101111001010110100110111010110010100」を前方ビット列とし、後方の51ビット「010001000100011101001110111000100110011001000011011」を後方ビット列として分割する。
 続いて、ラベル計算部2245は、(5)式に基づきラベル番号を計算する。例えば、D=3の場合、ラベル番号L=0、L=1またはL=2のうち、今回は、L=0が選ばれたものとする。
 キー設定部2246は、データ記憶システム230のキーに前方ビット列及びラベル番号「101010101101111001010110100110111010110010100-0」を格納するように設定する。そして、バリュー設定部247は、キー「101010101101111001010110100110111010110010100-0」のバリューのうち、セカンダリインデクス部に、後方ビット列「010001000100011101001110111000100110011001000011011」を格納し、データ部に「test_data1」を格納する設定を行う。そして、この格納指示部248は、キー設定2246部及びバリュー設定部247の設定に応じて、データ記憶システム230にデータを格納させる。
 図26は、図22に示すデータ記憶システム230内のデータ保持形式を説明する図である。図26のリストL22aに示すように、図24に示す格納部224の設定に従い、ノード「1」のキーに「101010101101111001010110100110111010110010100-0」が格納される。そして、リストL22aに示すように、このキー「101010101101111001010110100110111010110010100-0」のバリューのうち、セカンダリインデクス部に、「010001000100011101001110111000100110011001000011011」が格納され、データ部に「test_data1」が格納される。
[検索部の処理の流れ]
 次に、図27を参照して、検索部225の処理の流れについて具体的に説明する。図27は、図24に示す検索部225の処理の流れを説明する図である。また、図28は、図22に示すデータ記憶システム230内のデータ保持形式を説明する図である。
 図27に示すように、例えば、検索受付部251が、検索条件として、「時刻(unix_timestamp):1483194823~1483196748,経度:40.7211685180~40.7213401794,緯度:-73.8442611694~-73.8439178466」の入力を受け付けた場合について説明する。
 この場合、第2の変換部252は、3次元Z曲線により時刻「1483194823~1483196748」、経度「経度:40.7211685180~40.7213401794」、緯度「-73.8442611694~-73.8439178466」の入力範囲を1次元ビット列に変換する。この例では、60ビットで表現が可能であり、第2の変換部252は、ビット列「101010101101111001010110100110111010110010100010001000100011」を得ることができる。
 続いて、第2の分割部253は、1次元ビット列を前方ビット列(例:45ビット)、後方ビット列(例:51ビット)に分割する。具体的には、第2の分割部253は、「101010101101111001010110100110111010110010100010001000100011」のうち前方の45ビット「101010101101111001010110100110111010110010100」を前方ビット列とし、後方の15ビット「010001000100011」を後方ビット列として分割する。
 ラベル導出部2255は、Dの値から検索対象のラベル番号を導出する。そして、キー検索部2256は、データ記憶システム230から、前方ビット列及びラベル番号と等価であるキーを検索する。例えば、D=3の場合、「101010101101111001010110100110111010110010100-0」、「101010101101111001010110100110111010110010100-1」、「101010101101111001010110100110111010110010100-2」のキーを検索する。この結果、リストL22aに示すように、ノード「1」の欄C11のキーが検索キーとして検索される(図28の(1),(2)参照)。
 続いて、後方ビット列検索部257は、キー検索部256が検索したキーのバリューから、後方ビット列「010001000100011」と前方一致するセカンダリインデクス部を検索する。この結果、ノード「1」の欄C11のキーに対応するバリューのうち、後方ビット列「010001000100011」と前方一致する欄C12が検索バリューとして検索される(図28の(3)参照)。
 そして、バリュー返却部258は、後方ビット列検索部257が検索した欄C12のセカンダリインデクス部に対応するデータ部のデータ「test_data1」(図28の欄C13参照)を、検索に該当するバリューとして、端末装置40に返却する。(図28の(4)参照)。
[格納処理の処理手順]
 次に、時空間情報管理装置220による情報の格納処理の処理手順について説明する。図29は、図24に示す時空間情報管理装置220による情報の格納処理の処理手順を示すフローチャートである。
 図29に示すステップS31~ステップS33は、図11に示すステップS11~ステップS13と同じ処理である。ラベル計算部2245は、第1の分割部243が分割した前方ビットとともにキーに格納するラベル番号を(5)式を用いて計算する(ステップS34)。キー設定部2246は、第1の分割部243が分割した前方のビット列と、ラベル計算部2245が計算したラベル番号とを1組として、データ記憶システム230のキーへ格納する設定を行う(ステップS35)。図29に示すステップS36及びステップS37は、図11に示すステップS17及びステップS18と同じ処理である。
[検索処理の処理手順]
 次に、時空間情報管理装置220による情報の検索処理の処理手順について説明する。図30は、図24に示す時空間情報管理装置220による情報の検索処理の処理手順を示すフローチャートである。
 図30に示すステップS41~ステップS43は、図12に示すステップS21~ステップS23と同じ処理である。ラベル導出部2255は、Dの値から検索対象のラベル番号を導出する(ステップS44)。
 キー検索部2256は、データ記憶システム230のから、第2の分割部253が分割した前方ビット列及びラベル番号と等価であるキーを検索する(ステップS45)。図30に示すステップS46及びステップS47は、図12に示すステップS27及びステップS28と同じ処理である。
 この実施の形態2の処理を行うことによって、複数のノード1~Nがクラスタ構成で動作するデータ記憶システム230についても適用が可能であり、複数のノードにそれぞれ分散して格納することができ、ノード間での負荷の偏りを軽減することができる。
[システム構成等]
 図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
 また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的におこなうこともでき、あるいは、手動的に行なわれるものとして説明した処理の全部又は一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
 図31は、プログラムが実行されることにより、時空間情報管理装置20が実現されるコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
 メモリ1010は、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
 ハードディスクドライブ1090は、例えば、OS(Operating System)1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、時空間情報管理装置20の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、時空間情報管理装置20における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。
 また、上述した実施形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。
 なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
 以上、本発明者によってなされた発明を適用した実施形態について説明したが、本実施形態による本発明の開示の一部をなす記述及び図面により本発明は限定されることはない。すなわち、本実施形態に基づいて当業者等によりなされる他の実施形態、実施例及び運用技術等は全て本発明の範疇に含まれる。
 1,201 情報管理システム
 10 データ送信機器
 20,20A,220 時空間情報管理装置
 21 通信部
 22 記憶部
 23,23A,223 制御部
 24,24A,224 格納部
 25,25A,225 検索部
 30,230 データ記憶システム
 40 端末装置
 41 アプリケーション
 221A 分散先ノード組合せ情報
 241 格納受付部
 242 第1の変換部
 243 第1の分割部
 244 第1のハッシュ値計算部
 245,245A 格納先ノード計算部
 246,2246 キー設定部
 247 バリュー設定部
 248 格納指示部
 251 検索受付部
 252 第2の変換部
 253 第2の分割部
 254 第2のハッシュ値計算部
 255,255A 検索先ノード計算部
 256,2256 キー検索部
 257 後方ビット列検索部
 258 バリュー返却部
 2245 ラベル計算部
 2255 ラベル導出部

Claims (7)

  1.  時間情報及び位置情報を含む時空間情報と該時空間情報に対応する対応データとを、キーバリューストアである複数のノードに分散して管理する情報管理装置であって、
     格納対象の情報のうち前記時空間情報を1次元ビット列に変換し、変換した1次元ビット列を前方ビット列及び後方ビット列に分割し、格納先のノードに、少なくとも分割した前方ビット列をキーに格納させ、該キーのバリューに、分割した後方ビット列及び前記対応データを格納させる格納部と、
     検索対象の時空間情報の範囲条件を1次元ビット列に変換し、変換した1次元ビット列を前方ビット列及び後方ビット列に分割し、検索先のノードから、少なくとも分割した前方ビットを用いてキーを検索し、検索されたキーのバリューから、分割した後方ビット列に対応するバリューを検索し、検索したバリューに含まれる対応データを検索結果として出力する検索部と、
     を有することを特徴とする情報管理装置。
  2.  前記格納部は、
     前記格納対象の情報のうち前記時空間情報を1次元ビット列に変換する第1の変換部と、
     前記第1の変換部が変換した1次元ビット列を前方ビット列及び後方ビット列に分割する第1の分割部と、
     前記第1の分割部が分割した前方ビット列のハッシュ値を計算する第1のハッシュ値計算部と、
     前記第1のハッシュ値計算部が計算したハッシュ値を基に格納先のノードを選択する格納先ノード選択部と、
     前記第1の分割部が分割した前方のビット列を、前記格納先のノードのキーに格納する設定を行うキー設定部と、
     前記格納先のノードのキーのうち、前記キー設定部が設定したキーのバリューに、前記第1の分割部が分割した後方ビット列及び前記対応データを格納する設定を行うバリュー設定部と、
     前記キー設定部及び前記バリュー設定部の設定に応じて、前記格納先のノードにデータを格納させる格納指示部と、
     を含むことを特徴とする請求項1に記載の情報管理装置。
  3.  前記検索部は、
     検索対象の時空間情報の範囲条件を1次元ビット列に変換する第2の変換部と、
     前記第2の変換部が変換した1次元ビット列を前方ビット列及び後方ビット列に分割する第2の分割部と、
     前記第2の分割部が分割した前方ビット列のハッシュ値を計算する第2のハッシュ値計算部と、
     第2のハッシュ値計算部が計算したハッシュ値を基に検索先のノードを求める検索先ノード取得部と、
     前記検索先のノードから、前記第2の分割部が分割した前方ビット列と一致するキーを検索するキー検索部と、
     前記キー検索部が検索したキーのバリューから、前記第2の分割部が分割した後方ビット列と前方一致するバリューを検索する後方ビット列検索部と、
     前記後方ビット列検索部が検索したバリューに含まれる対応データを検索結果として出力する出力部と、
     を有することを特徴とする請求項1または2に記載の情報管理装置。
  4.  前記複数のノードは、クラスタ構成で動作し、
     前記格納部は、
     前記格納対象の情報のうち前記時空間情報を1次元ビット列に変換する第1の変換部と、
     前記第1の変換部が変換した1次元ビット列を前方ビット列及び後方ビット列に分割する第1の分割部と、
     前記第1の分割部が分割した前方ビットとともにキーに格納するラベル番号を計算するラベル計算部と、
     前記第1の分割部が分割した前方のビット列と前記ラベル計算部が計算したラベル番号とを、前記クラスタ構成で動作する複数のノードのキーに格納する設定を行うキー設定部と、
     前記格納先のノードのキーのうち、前記キー設定部が設定したキーのバリューに、前記第1の分割部が分割した後方ビット列及び前記対応データを格納する設定を行うバリュー設定部と、
     前記キー設定部及び前記バリュー設定部の設定に応じて、前記格納先のノードにデータを格納させる格納指示部と、
     を含むことを特徴とする請求項1に記載の情報管理装置。
  5.  前記検索部は、
     検索対象の時空間情報の範囲条件を1次元ビット列に変換する第2の変換部と、
     前記第2の変換部が変換した1次元ビット列を前方ビット列及び後方ビット列に分割する第2の分割部と、
     検索対象のラベル番号を導出するラベル導出部と、
     前記クラスタ構成で動作する複数のノードから、前記第2の分割部が分割した前方ビット列及び前記ラベル導出部が計算したラベル番号と一致するキーを検索するキー検索部と、
     前記キー検索部が検索したキーのバリューから、前記第2の分割部が分割した後方ビット列と前方一致するバリューを検索する後方ビット列検索部と、
     前記後方ビット列検索部が検索したバリューに含まれる対応データを検索結果として出力する出力部と、
     を有することを特徴とする請求項4に記載の情報管理装置。
  6.  時間情報及び位置情報を含む時空間情報と該時空間情報に対応する対応データとを、キーバリューストアである複数のノードに分散して管理する情報管理装置が実行する情報管理方法であって、
     格納対象の情報のうち前記時空間情報を1次元ビット列に変換し、少なくとも変換した1次元ビット列を前方ビット列及び後方ビット列に分割し、格納先のノードに、分割した前方ビット列をキーに格納させ、該キーのバリューに、分割した後方ビット列及び前記対応データを格納させる工程と、
     検索対象の時空間情報の範囲条件を1次元ビット列に変換し、変換した1次元ビット列を前方ビット列及び後方ビット列に分割し、検索先のノードから、少なくとも分割した前方ビットを用いてキーを検索し、検索されたキーのバリューから、分割した後方ビット列に対応するバリューを検索し、検索したバリューに含まれる対応データを検索結果として出力する工程と、
     を含んだことを特徴とする情報管理方法。
  7.  格納対象の時間情報及び位置情報を含む時空間情報と該時空間情報に対応する対応データとのうち前記時空間情報を1次元ビット列に変換し、変換した1次元ビット列を前方ビット列及び後方ビット列に分割し、格納先のキーバリューストアであるノードに、少なくとも分割した前方ビット列をキーに格納させ、該キーのバリューに、分割した後方ビット列及び前記対応データを格納させるステップと、
     検索対象の時空間情報の範囲条件を1次元ビット列に変換し、変換した1次元ビット列を前方ビット列及び後方ビット列に分割し、検索先のノードから、少なくとも分割した前方ビットを用いてキーを検索し、検索されたキーのバリューから、分割した後方ビット列に対応するバリューを検索し、検索したバリューに含まれる対応データを検索結果として出力するステップと、
     をコンピュータに実行させるための情報管理プログラム。
PCT/JP2019/005769 2018-02-19 2019-02-18 情報管理装置、情報管理方法及び情報管理プログラム WO2019160133A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201980013813.5A CN111727427B (zh) 2018-02-19 2019-02-18 信息管理装置、信息管理方法和记录介质
US16/970,387 US11238046B2 (en) 2018-02-19 2019-02-18 Information management device, information management method, and information management program
EP19754451.3A EP3739466A4 (en) 2018-02-19 2019-02-18 INFORMATION MANAGEMENT DEVICE, PROCEDURE AND PROGRAM

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP2018027368 2018-02-19
JP2018-027368 2018-02-19
JP2018129528 2018-07-06
JP2018-129528 2018-07-06
JP2019020118A JP6911877B2 (ja) 2018-02-19 2019-02-06 情報管理装置、情報管理方法及び情報管理プログラム
JP2019-020118 2019-02-06

Publications (1)

Publication Number Publication Date
WO2019160133A1 true WO2019160133A1 (ja) 2019-08-22

Family

ID=67620128

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/005769 WO2019160133A1 (ja) 2018-02-19 2019-02-18 情報管理装置、情報管理方法及び情報管理プログラム

Country Status (2)

Country Link
US (1) US11238046B2 (ja)
WO (1) WO2019160133A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021186737A1 (ja) * 2020-03-19 2021-09-23 日本電信電話株式会社 情報管理方法、情報管理プログラム及び情報管理装置
WO2021186738A1 (ja) * 2020-03-19 2021-09-23 日本電信電話株式会社 情報管理方法、情報管理プログラム及び情報管理装置
CN113722286A (zh) * 2020-05-26 2021-11-30 杭州海康威视数字技术股份有限公司 时空数据压缩方法、装置、服务器及存储介质
CN115203379A (zh) * 2022-09-15 2022-10-18 太平金融科技服务(上海)有限公司深圳分公司 检索方法、装置、计算机设备、存储介质和程序产品

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11360683B1 (en) * 2019-04-06 2022-06-14 Pliops Ltd. Logical raid

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014002519A (ja) * 2012-06-18 2014-01-09 Hitachi Ltd 時空間データ管理システム、時空間データ管理方法、及びそのプログラム

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6618117B2 (en) * 1997-07-12 2003-09-09 Silverbrook Research Pty Ltd Image sensing apparatus including a microcontroller
FI991261A (fi) * 1999-06-02 2000-12-03 Nokia Networks Oy Trie-rakenteeseen perustuva funktionaalinen muisti
US7117504B2 (en) * 2001-07-10 2006-10-03 Microsoft Corporation Application program interface that enables communication for a network software platform
JP2003208764A (ja) * 2002-01-16 2003-07-25 Sony Corp 変調装置および方法、記録媒体、並びにプログラム
JP3813136B2 (ja) * 2003-04-25 2006-08-23 インターナショナル・ビジネス・マシーンズ・コーポレーション 通信制御装置、通信制御方法、通信制御プログラム、通信制御用データ構造
WO2005020152A1 (ja) * 2003-08-21 2005-03-03 Matsushita Electric Industrial Co., Ltd. 人物検出装置および人物検出方法
US7805460B2 (en) * 2006-10-26 2010-09-28 Polytechnic Institute Of New York University Generating a hierarchical data structure associated with a plurality of known arbitrary-length bit strings used for detecting whether an arbitrary-length bit string input matches one of a plurality of known arbitrary-length bit string
JP4277918B2 (ja) * 2007-04-13 2009-06-10 日本電気株式会社 データ検索装置、データ検索方法およびデータ検索用プログラム
WO2008142799A1 (ja) * 2007-05-24 2008-11-27 Fujitsu Limited 情報検索プログラム、該プログラムを記録した記録媒体、情報検索方法、および情報検索装置
US8723795B2 (en) * 2008-04-24 2014-05-13 Oblong Industries, Inc. Detecting, representing, and interpreting three-space input: gestural continuum subsuming freespace, proximal, and surface-contact modes
JP4514810B2 (ja) * 2008-05-18 2010-07-28 株式会社エスグランツ ビット列検索装置、検索方法及びプログラム
US8200693B2 (en) * 2009-06-26 2012-06-12 Fair Isaac Corporation Decision logic comparison and review
JP5165662B2 (ja) * 2009-10-27 2013-03-21 株式会社高速屋 ビット列キー分類・分配装置、分類・分配方法及びプログラム
JP5418218B2 (ja) * 2009-12-25 2014-02-19 富士通株式会社 情報処理プログラム、情報検索プログラム、情報処理装置、および情報検索装置
KR101540899B1 (ko) * 2010-04-09 2015-07-30 미쓰비시덴키 가부시키가이샤 화상 부호화 장치
JP5630275B2 (ja) * 2011-01-11 2014-11-26 ソニー株式会社 検索装置、検索方法、及びプログラム
US20120240098A1 (en) * 2011-03-18 2012-09-20 Viacom International, Inc. Software Development and Publishing Platform
US20130091266A1 (en) * 2011-10-05 2013-04-11 Ajit Bhave System for organizing and fast searching of massive amounts of data
HUE045386T2 (hu) * 2013-01-04 2019-12-30 Samsung Electronics Co Ltd Eljárás slice-szegmensek entrópiadekódolására
JP6187478B2 (ja) * 2013-01-11 2017-08-30 日本電気株式会社 インデックスキー生成装置及びインデックスキー生成方法並びに検索方法
KR101554569B1 (ko) * 2014-01-28 2015-09-22 서울대학교산학협력단 스카이라인 질의 시스템 및 방법
JP6666312B2 (ja) * 2017-08-03 2020-03-13 株式会社日立製作所 多次元データ管理システム及び多次元データ管理方法
US10574258B1 (en) * 2019-04-17 2020-02-25 Infineon Technologies Ag Open pin detection for analog-to-digital converter
WO2020227718A1 (en) * 2019-05-09 2020-11-12 Catalog Technologies, Inc. Data structures and operations for searching, computing, and indexing in dna-based data storage

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014002519A (ja) * 2012-06-18 2014-01-09 Hitachi Ltd 時空間データ管理システム、時空間データ管理方法、及びそのプログラム

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
IOT NI TEKISHITA NOSQL•BUNSAN KEY-VALUE SUTOA (NOSQL SUITED TO IOT/DISTRIBUTED KEY-VALUE STORE, 2 February 2018 (2018-02-02), Retrieved from the Internet <URL:https://thinkit.co.jp/story/2014/09/25/5280?page=0%2C1>
NAGAI TAKUYA , MITSUDA NARUKI , FUKUYASU NAOKI , MATSUNOBE TAKUO , AJISAKA TSEUNEO : "A study on the construction and operation of distributed database for sensor data server ", INFORMATION PROCESSING SOCIETY OF JAPAN , TECHNICAL REPORT OF IEICE, vol. 182, no. 23, 17 October 2013 (2013-10-17), JP, pages 1 - 8, XP009522430 *
REDIS, 2 February 2018 (2018-02-02), Retrieved from the Internet <URL:https://redis.io/topics/indexes>
See also references of EP3739466A4
ST CODE: THE TEXT ENCODING ALGORITHM FOR LATITUDE/LONGITUDE/TIME, 2 February 2018 (2018-02-02), Retrieved from the Internet <URL:https://link.springer.com/chapter/10.1007%2F978-3-319-03611-3_10>
WHAT IS A RELATIONAL DATABASE?, 2 February 2018 (2018-02-02), Retrieved from the Internet <URL:https://aws.amazon.com/jp/relational-database>

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021186737A1 (ja) * 2020-03-19 2021-09-23 日本電信電話株式会社 情報管理方法、情報管理プログラム及び情報管理装置
WO2021186738A1 (ja) * 2020-03-19 2021-09-23 日本電信電話株式会社 情報管理方法、情報管理プログラム及び情報管理装置
US20230064789A1 (en) * 2020-03-19 2023-03-02 Nippon Telegraph And Telephone Corporation Information management method, information management program, and information management device
JP7355219B2 (ja) 2020-03-19 2023-10-03 日本電信電話株式会社 情報管理方法、情報管理プログラム及び情報管理装置
JP7364039B2 (ja) 2020-03-19 2023-10-18 日本電信電話株式会社 情報管理方法、情報管理プログラム及び情報管理装置
CN113722286A (zh) * 2020-05-26 2021-11-30 杭州海康威视数字技术股份有限公司 时空数据压缩方法、装置、服务器及存储介质
CN115203379A (zh) * 2022-09-15 2022-10-18 太平金融科技服务(上海)有限公司深圳分公司 检索方法、装置、计算机设备、存储介质和程序产品

Also Published As

Publication number Publication date
US11238046B2 (en) 2022-02-01
US20210109925A1 (en) 2021-04-15

Similar Documents

Publication Publication Date Title
WO2019160133A1 (ja) 情報管理装置、情報管理方法及び情報管理プログラム
JP6911877B2 (ja) 情報管理装置、情報管理方法及び情報管理プログラム
US11188562B2 (en) Adaptive distribution for hash operations
US11403284B2 (en) System for data sharing platform based on distributed data sharing environment based on block chain, method of searching for data in the system, and method of providing search index in the system
KR102133951B1 (ko) 짧은 링크 처리 방법, 디바이스, 및 서버
US20180276274A1 (en) Parallel processing database system with a shared metadata store
US20160323367A1 (en) Massively-scalable, asynchronous backend cloud computing architecture
US20110307470A1 (en) Distributed database management system and distributed database management method
JP5719323B2 (ja) 分散処理システム、ディスパッチャおよび分散処理管理装置
US11281720B2 (en) Efficient and scalable time-series data storage and retrieval over a network
WO2019120093A1 (en) Cardinality estimation in databases
US20150278303A1 (en) Dynamic rules to optimize common information model queries
US20180321706A1 (en) Timestamp Alignment Across a Plurality Of Computing Devices
US9953067B2 (en) Method and system for processing data in a parallel database environment
Wang et al. Distributed collaborative filtering recommendation algorithm based on DHT
JP2018147301A (ja) 計算機システム及び処理の割当方法
KR102060198B1 (ko) 고-중첩 추정에 민감한 스케치들 생성
US20170161508A1 (en) Management device, method executed by the management device, and non-transitory computer-readable storage medium
US10083121B2 (en) Storage system and storage method
CN106202303B (zh) 一种Chord路由表压缩方法及优化文件查找方法
JP5472885B2 (ja) プログラム、ストリームデータ処理方法及びストリームデータ処理計算機
JP7355219B2 (ja) 情報管理方法、情報管理プログラム及び情報管理装置
JP7364039B2 (ja) 情報管理方法、情報管理プログラム及び情報管理装置
JP5594460B2 (ja) 送信情報制御装置、方法及びプログラム
JP5874915B2 (ja) データストリーム処理システム、管理装置、データストリーム処理方法、および、コンピュータ・プログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19754451

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2019754451

Country of ref document: EP

Effective date: 20200813