JP5171904B2 - 分散処理システム及び分散処理方法 - Google Patents
分散処理システム及び分散処理方法 Download PDFInfo
- Publication number
- JP5171904B2 JP5171904B2 JP2010198978A JP2010198978A JP5171904B2 JP 5171904 B2 JP5171904 B2 JP 5171904B2 JP 2010198978 A JP2010198978 A JP 2010198978A JP 2010198978 A JP2010198978 A JP 2010198978A JP 5171904 B2 JP5171904 B2 JP 5171904B2
- Authority
- JP
- Japan
- Prior art keywords
- mesh
- map
- point
- meshes
- key
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
Description
また、近年では、このMapReduceを実装したオープンソースソフトウェアとしてHadoopが知られており、Hadoopを用いることで大規模分散処理を誰でも容易に実行可能となっている。
はじめに、図1を参照して本実施形態の分散処理システム1の概要について説明する。
マスタサーバMは、所定の処理の対象となる入力データを多数の断片に区切り、ワーカーサーバWを割り当ててそれぞれについて処理を行うようにワーカーサーバWに要求を行う。ワーカーサーバWは、マスタサーバMからの要求を受け、Map定義に従って入力データからKEY−VALUE型のデータセットを中間ファイルとして生成するとともに、生成したKEY−VALUE型のデータセットをKEY毎にソートし、その処理の完了をマスタサーバMに通知する。そしてマスタサーバMは、当該KEY毎にワーカーサーバWを割り当ててそれぞれについて処理を行うようにワーカーサーバWに要求を行う。ワーカーサーバWは、マスタサーバMからの要求を受け、Reduce定義に従って、それぞれがKEY−VALUE型のデータセットについての処理を行い、その結果を集約し、位置関係に関する所定の処理、例えば、インデックスデータの生成処理の結果を得る。
次に、図2を参照して、分散処理システム1の機能構成について説明する。
ここで、記憶手段5は、メッシュDB51と地図要素DB52とを含んで構成される。メッシュDB51は、図3(1)に示すように、メッシュを識別するメッシュIDに対応付けて、当該メッシュの地図上の位置を示す位置情報を含む地図情報を記憶する。なお、メッシュとは、地図を緯度経度に区画したものである。地図要素DB52は、図3(2)に示すように、地図要素IDに対応付けて、範囲指定情報及び地図要素名を含む地図要素情報を記憶する。なお、地図要素は、点要素の場合もあり、四角形の範囲を有する地図要素の場合もあり、更には多角形の範囲を有する地図要素の場合もある。このような地図要素の範囲指定情報の指定は、任意に行うことができるが、本実施形態では地図要素の頂点の緯度経度を指定することで、地図要素の範囲指定情報を指定することとしている。
記憶制御手段21は、例えば、メッシュIDと当該メッシュIDの位置情報とを関連付けて記憶手段5のメッシュDB51に記憶する。
なお、ワーカーサーバWが各種情報を読み出す先を特定可能であれば、当該ワーカーサーバW自体が記憶手段5を備える必要はない。記憶手段5は、ワーカーサーバWがアクセス可能な任意の場所に設けることができる。勿論、記憶手段5にアクセスする処理を行う領域地図要素処理2及び点地図要素処理3を実行するワーカーサーバWが自ノードの備える記憶手段5からデータを読み出して処理を行うことが、データローカリティ上好適であるといえる。
ここで、領域取得手段22が取得した範囲指定情報が表す閉領域は一定の範囲からなる領域地図要素に係る範囲指定情報が表す閉領域であるため、メッシュ特定手段23が特定するメッシュは複数存在する可能性がある。そこで、本実施形態では、メッシュ特定手段23は、基点決定手段231と、基点メッシュ特定手段232と、隣接メッシュ特定手段233と、包含判定手段234と、を含むこととしている。
続いて、メッシュ特定手段23(基点メッシュ特定手段232)は、中心点100Aの属するメッシュA5を特定する(図4(2))。
続いて、メッシュ特定手段23(隣接メッシュ特定手段233)は、メッシュA5の周囲のメッシュである隣接メッシュA1,A2,A3,A4,A6・・・を取得する(図4(3))。
最後に、メッシュ特定手段23(包含判定手段234)は、隣接メッシュA1,A2,A3,A4,A6・・・のそれぞれについて、範囲指定情報が表す閉領域の少なくとも一部が含まれるか否かを判定し、範囲指定情報が表す閉領域の少なくとも一部を含むメッシュを特定する(図4(4))。図4(4)では、領域地図要素100の範囲指定情報が表す閉領域の少なくとも一部を含むメッシュとして、メッシュA2,A3,A5,A6が特定されている。
例えば、領域内外判定処理4を実行するワーカーサーバWには、「KEY:メッシュA2、VALUE:領域地図要素100の範囲指定情報」及び「KEY:メッシュA2、VALUE:メッシュA2に属するレストランの範囲指定情報」といったKEY−VALUE型のデータセットが与えられ、当該ワーカーサーバWにおいて、地図上の位置関係に関する処理、一例としては、当該レストランが領域地図要素100内に存在するか否かが判定される。レストランが領域地図要素100内に存在するか否かの判定(空間演算)は、例えば、オープンソースソフトウェアであるJTS等を用いることで実現することができる。
以上説明した分散処理システム1を構成する各サーバのハードウェアは、一般的なコンピュータによって構成することができる。一般的なコンピュータは、例えば、制御部として、中央処理装置(CPU)を備える他、記憶部として、メモリ(RAM、ROM)、ハードディスク(HDD)及び光ディスク(CD、DVD等)を、ネットワーク通信装置として、各種有線及び無線LAN装置を、表示装置として、例えば、液晶ディスプレイ、プラズマディスプレイ等の各種ディスプレイを、入力装置として、例えば、キーボード及びポインティング・デバイス(マウス、トラッキングボール等)を適宜備え、これらは、バスラインにより接続されている。このような一般的なコンピュータにおいて、CPUは、分散処理システム1を構成する各サーバを統括的に制御し、各種プログラムを適宜読み出して実行することにより、上述したハードウェアと協働し、本発明に係る各種機能を実現している。
次に、図5を参照して、分散処理システム1の処理について説明する。
S201:領域取得手段22は、領域地図要素が地図上で占める閉領域を表す範囲指定情報を地図要素DB52から読み出す。
例えば、点地図要素111,112,113,114,115,116が領域地図要素100に存在するか否かを判定する場合(図6参照)、領域取得手段22は領域地図要素100の範囲指定情報を地図要素DB52から読み出す。
図6では、領域地図要素100の範囲指定情報が表す閉領域の少なくとも一部を含むメッシュとして、メッシュA2,A3,A5,A6が取得されている。
図6では、「KEY:メッシュA2、VALUE:領域地図要素100の範囲指定情報」、「KEY:メッシュA3、VALUE:領域地図要素100の範囲指定情報」、「KEY:メッシュA5、VALUE:領域地図要素100の範囲指定情報」、「KEY:メッシュA6、VALUE:領域地図要素100の範囲指定情報」といったKEY−VALUE型のデータセットが生成される。
図6では、「KEY:メッシュA2、VALUE:領域地図要素100の範囲指定情報」を領域内外判定処理4を実行するワーカーサーバWのうちのあるワーカーサーバW(又は複数、以下同じ)に振り分け、「KEY:メッシュA3、VALUE:領域地図要素100の範囲指定情報」を領域内外判定処理4を実行するワーカーサーバWのうちの別のワーカーサーバWに振り分け、「KEY:メッシュA5、VALUE:領域地図要素100の範囲指定情報」を領域内外判定処理4を実行するワーカーサーバWのうちの更に別のワーカーサーバWに振り分け、「KEY:メッシュA6、VALUE:領域地図要素100の範囲指定情報」を領域内外判定処理4を実行するワーカーサーバWのうちの更に別のワーカーサーバWに振り分ける。
S301:点要素取得手段32は、点地図要素の範囲指定情報(地点情報)を地図要素DB52から読み出す。
図6では、領域地図要素100内に存在するか否かを判定する点地図要素111,112,113,114,115,116の範囲指定情報を地図要素DB52から読み出す。
図6では、点地図要素111を含むメッシュとしてメッシュA2を取得し、点地図要素112を含むメッシュとしてメッシュA5を取得し、点地図要素113を含むメッシュとしてメッシュA5を取得し、点地図要素114を含むメッシュとしてメッシュA3を取得し、点地図要素115を含むメッシュとしてメッシュA3を取得し、点地図要素116を含むメッシュとしてメッシュA6を取得する。
図6では、「KEY:メッシュA2、VALUE:点地図要素111の範囲指定情報」、「KEY:メッシュA3、VALUE:点地図要素114の範囲指定情報」、「KEY:メッシュA3、VALUE:点地図要素115の範囲指定情報」、「KEY:メッシュA5、VALUE:点地図要素112の範囲指定情報」、「KEY:メッシュA5、VALUE:点地図要素113の範囲指定情報」、「KEY:メッシュA6、VALUE:点地図要素116の範囲指定情報」といったKEY−VALUE型のデータセットが生成される。
図6では、「KEY:メッシュA2、VALUE:点地図要素111の範囲指定情報」を領域内外判定処理4を実行するワーカーサーバWのうちのあるのワーカーサーバWに振り分け、「KEY:メッシュA3、VALUE:点地図要素114の範囲指定情報」及び「KEY:メッシュA3、VALUE:点地図要素115の範囲指定情報」を領域内外判定処理4を実行するワーカーサーバWのうちの別のワーカーサーバWに振り分け、「KEY:メッシュA5、VALUE:点地図要素112の範囲指定情報」及び「KEY:メッシュA5、VALUE:点地図要素113の範囲指定情報」を領域内外判定処理4を実行するワーカーサーバWのうちの更に別のワーカーサーバWに振り分け、「KEY:メッシュA6、VALUE:点地図要素116の範囲指定情報」を領域内外判定処理4を実行するワーカーサーバWのうちの更に別のワーカーサーバWに振り分ける。
S401:領域内外判定処理4を実行するワーカーサーバWのそれぞれは、S204及びS304で振り分けられたKEY−VALUE型のデータセットを、メッシュ単位で取得する。なお、領域内外判定処理4を実行するワーカーサーバWは、HadoopのMultipleInputsクラスを利用することで、領域地図要素100の範囲指定情報及び点地図要素111〜116の範囲指定情報を同時に取得し読み込むことができる。
図6では、メッシュA2の処理を行うワーカーサーバWは、「KEY:メッシュA2、VALUE:領域地図要素100の範囲指定情報」及び「KEY:メッシュA2、VALUE:点地図要素111の範囲指定情報」を取得し、メッシュA3の処理を行うワーカーサーバWは、「KEY:メッシュA3、VALUE:領域地図要素100の範囲指定情報」、「KEY:メッシュA3、VALUE:点地図要素114の範囲指定情報」及び「KEY:メッシュA3、VALUE:点地図要素115の範囲指定情報」を取得し、メッシュA5の処理を行うワーカーサーバWは、「KEY:メッシュA5、VALUE:領域地図要素100の範囲指定情報」、「KEY:メッシュA5、VALUE:点地図要素112の範囲指定情報」及び「KEY:メッシュA5、VALUE:点地図要素113の範囲指定情報」を取得し、メッシュA6の処理を行うワーカーサーバWは、「KEY:メッシュA6、VALUE:領域地図要素100の範囲指定情報」及び「KEY:メッシュA6、VALUE:点地図要素116の範囲指定情報」を取得する。
図6では、点地図要素112、115は、領域地図要素100内に存在すると判定され、点地図要素111,113,114,116は、領域地図要素100内に存在しないと判定される。
本実施形態の分散処理システム1では、複数のメッシュにまたがる領域地図要素100に関する処理をメッシュ単位に分散して行う際に、領域地図要素100がまたがるメッシュの全てに領域地図要素100の範囲指定情報を持たせることとしている。これにより、領域地図要素の位置や大きさに関係なく、分散処理に最適なメッシュ単位でスケール可能な分散処理を行うことができる。
また、分散処理システム1による分散処理の結果、一例として、図7のようなインデックスDBを生成することができる。例えば、あるレストランがあるビルの中に存在していることを示すインデックスデータを生成することができる。また、例えば、環七(東京都道318号環状七号線)通り沿いの一定の範囲を領域地図要素として設定すれば、あるラーメン屋が環七沿いのものであることを示すインデックスデータを生成することもできる。また、駅から徒歩5分圏内の範囲を領域地図要素として設定すれば、ある店がある駅から徒歩5分以内に存在することを示すインデックスデータを生成することができる。
2 領域地図要素処理
21 記憶制御手段
22 領域取得手段
23 メッシュ特定手段
24 データ生成手段
25 実行処理振り分け手段
3 点地図要素処理
31 記憶制御手段
32 点要素取得手段
33 メッシュ特定手段
34 データ生成手段
35 実行処理振り分け手段
4 領域内外判定処理
41 処理実行手段
5 記憶手段
51 メッシュDB
52 地図要素DB
M マスタサーバ
W ワーカーサーバ
Claims (3)
- 所定の複数のメッシュに区画可能な地図を構成する地図データの分散処理を、前記所定の複数のメッシュ毎に、ネットワークを介して接続された複数のサーバの一をシャッフルにより割り当てて並列実行する分散処理システムであって、
前記複数のサーバの少なくとも一部が、前記地図データ、及び、前記所定の複数のメッシュをそれぞれ識別するメッシュ識別データと当該メッシュの前記地図上の位置を示す位置情報とを関連付けて記憶手段に記憶する記憶制御手段と、
前記地図に含まれる領域地図要素が前記地図上で占める閉領域を表す範囲指定情報を前記記憶手段から読み出す領域取得手段と、
前記地図に含まれる点地図要素が前記地図上で位置する点を表す範囲指定情報を前記記憶手段から読み出す点要素取得手段と、
前記記憶手段から前記メッシュ識別データ及び前記位置情報を読み出して、複数の前記メッシュのうち、前記領域取得手段が読み出した前記範囲指定情報が表す前記閉領域の少なくとも一部を含むメッシュ及び前記点要素取得手段が読み出した前記範囲指定情報が表す前記点を含むメッシュを特定するメッシュ特定手段と、
特定した前記メッシュを識別するメッシュ識別データをKEYとし、前記範囲指定情報をVALUEとするKEY−VALUE型データを前記メッシュ特定手段が特定したメッシュの数だけ生成するデータ生成手段と、
生成した前記KEY−VALUE型データを用いて、前記領域地図要素及び前記点地図要素の位置関係に関する処理を、前記メッシュ特定手段が特定した前記メッシュ毎に、前記複数のサーバの一をシャッフルにより割り当てて並列実行させる実行処理振り分け手段と、
を備える分散処理システム。 - 前記メッシュ特定手段は、
前記範囲指定情報に含まれる任意の地点情報が属する基点メッシュを特定する基点メッシュ特定手段と、
前記基点メッシュ特定手段が特定した前記基点メッシュに隣接する隣接メッシュを特定する隣接メッシュ特定手段と、
前記隣接メッシュ特定手段が特定した前記隣接メッシュに前記範囲指定情報が示す前記閉領域の少なくとも一部が含まれるか否かを判定する包含判定手段と、
を備える請求項1に記載の分散処理システム。 - 所定の複数のメッシュに区画可能な地図を構成する地図データの分散処理を、前記所定の複数のメッシュ毎に、ネットワークを介して接続された複数のサーバの一をシャッフルにより割り当てて並列実行する分散処理方法であって、
前記複数のサーバの少なくとも一部が、前記地図データ、及び、前記所定の複数のメッシュをそれぞれ識別するメッシュ識別データと当該メッシュの前記地図上の位置を示す位置情報とを関連付けて記憶手段に記憶する記憶制御ステップと、
前記地図に含まれる領域地図要素が前記地図上で占める閉領域を表す範囲指定情報を前記記憶手段から読み出す領域取得ステップと、
前記地図に含まれる点地図要素が前記地図上で位置する点を表す範囲指定情報を前記記憶手段から読み出す点要素取得ステップと、
前記記憶手段から前記メッシュ識別データ及び前記位置情報を読み出して、複数の前記メッシュのうち、前記領域取得ステップで読み出した前記範囲指定情報が表す前記閉領域の少なくとも一部を含むメッシュ及び前記点要素取得ステップで読み出した前記範囲指定情報が表す前記点を含むメッシュを特定するメッシュ特定ステップと、
特定した前記メッシュを識別するメッシュ識別データをKEYとし、前記範囲指定情報をVALUEとするKEY−VALUE型データを前記メッシュ特定ステップが特定したメッシュの数だけ生成するデータ生成ステップと、
生成した前記KEY−VALUE型データを用いて、前記領域地図要素及び前記点地図要素の位置関係に関する処理を、前記メッシュ特定ステップが特定した前記メッシュ毎に、前記複数のサーバの一をシャッフルにより割り当てて並列実行させる実行処理振り分けステップと、
を備える分散処理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010198978A JP5171904B2 (ja) | 2010-09-06 | 2010-09-06 | 分散処理システム及び分散処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010198978A JP5171904B2 (ja) | 2010-09-06 | 2010-09-06 | 分散処理システム及び分散処理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012058836A JP2012058836A (ja) | 2012-03-22 |
JP5171904B2 true JP5171904B2 (ja) | 2013-03-27 |
Family
ID=46055907
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010198978A Expired - Fee Related JP5171904B2 (ja) | 2010-09-06 | 2010-09-06 | 分散処理システム及び分散処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5171904B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI459223B (zh) * | 2012-08-15 | 2014-11-01 | Hon Hai Prec Ind Co Ltd | 海量資料索引建立系統及方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009217000A (ja) * | 2008-03-11 | 2009-09-24 | Fujitsu Microelectronics Ltd | 描画処理装置、描画処理プログラムおよび描画処理方法 |
-
2010
- 2010-09-06 JP JP2010198978A patent/JP5171904B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2012058836A (ja) | 2012-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10394847B2 (en) | Processing data in a distributed database across a plurality of clusters | |
CN106156138B (zh) | 兴趣点的空间索引的建立、周边搜索方法和装置 | |
Walshaw et al. | Multilevel mesh partitioning for heterogeneous communication networks | |
JP2018518733A (ja) | ファイル操作方法及び装置 | |
US20160026355A1 (en) | Accessible chart navigation using object neighborhood | |
JP2016103132A (ja) | 有限要素演算プログラム、有限要素演算装置および有限要素演算方法 | |
JP5967786B2 (ja) | シミュレーション装置 | |
CN105637489A (zh) | 分布式数据库系统中的异步垃圾收集 | |
CN110569225A (zh) | 一种数据存储方法及系统 | |
JP2006244480A (ja) | エンティティルックアップシステム | |
Goga et al. | Performance analysis of WRF simulations in a public cloud and HPC environment | |
Vasavi et al. | Framework for geospatial query processing by integrating cassandra with hadoop | |
JP5171904B2 (ja) | 分散処理システム及び分散処理方法 | |
Fox | Large scale data analytics on clouds | |
KR100983479B1 (ko) | 분산 스페이스를 이용하여 분산 프로그래밍 환경을 제공하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체 | |
RU2610587C2 (ru) | Способ пространственного хранения объекта посредством гибкой иерархической структуры и постоянный носитель информации | |
US11610151B2 (en) | Distribution system, data management apparatus, data management method, and computer-readable recording medium | |
KR102147175B1 (ko) | 공간 데이터 처리효율 증대를 위한 공간키 기반 공간 데이터 관리방법, 장치 및 프로그램 | |
CN114116948A (zh) | 地理矢量数据空间缓冲区分析方法、装置、设备及介质 | |
Huang et al. | Distributed asteroid discovery system for large astronomical data | |
Kim et al. | Design and implementation strategy of a parallel agent-based Schelling model | |
JP7136227B2 (ja) | 経路探索支援装置、経路探索支援方法、及びプログラム | |
KR101940251B1 (ko) | 하둡 맵리듀스 기반의 공간 지식 추출 시스템 | |
JP6515686B2 (ja) | 並列計算機システム、保守装置、保守方法、および保守プログラム | |
JP6817504B1 (ja) | 位置空間識別方法、位置空間識別子付与装置及びコンピュータプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20120312 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120718 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120807 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20120904 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121005 |
|
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: 20121127 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121225 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5171904 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
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 |
|
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 |
|
LAPS | Cancellation because of no payment of annual fees |