JP2012058836A - Distributed processing system and distributed processing method - Google Patents
Distributed processing system and distributed processing method Download PDFInfo
- Publication number
- JP2012058836A JP2012058836A JP2010198978A JP2010198978A JP2012058836A JP 2012058836 A JP2012058836 A JP 2012058836A JP 2010198978 A JP2010198978 A JP 2010198978A JP 2010198978 A JP2010198978 A JP 2010198978A JP 2012058836 A JP2012058836 A JP 2012058836A
- 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.)
- Granted
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
Abstract
Description
本発明は、所定の複数のメッシュに区画可能な地図を構成する地図データの分散処理を行う分散処理システム及び分散処理方法に関する。 The present invention relates to a distributed processing system and a distributed processing method for performing distributed processing of map data constituting a map that can be partitioned into a plurality of predetermined meshes.
近年のWebページの爆発的な増加に伴い、ネットワーク上に存在する情報量は、膨大なものとなっている。このようなネットワーク上の膨大な情報量に対する処理を行うためのソフトウェアフレームワークとして、MapReduceが知られている(例えば、非特許文献1)。 With the explosion of web pages in recent years, the amount of information existing on the network has become enormous. MapReduce is known as a software framework for performing processing for such an enormous amount of information on a network (for example, Non-Patent Document 1).
ここで、MapReduceは、多数のコンピューターの集合であるコンピュータ・クラスターを用いて並列処理させるためのフレームワークである。MapReduceは、所定の処理を行うために、処理の対象となる入力データを複数の断片に分割して複数のコンピューターに割り当て、各コンピューターにおいて、Map定義に従った処理を並列に行ってKEY−VALUE型のデータを中間ファイルとして生成し、当該KEY−VALUE型のデータをソートして同一のKEYで束ねてKEY毎に当該中間ファイルを処理するコンピュータを割り当てるMapタスクと、割り当てられた各コンピューターにおいて、Reduce定義に従った処理を並列に行って処理結果を集約し、当該所定の処理の結果を得るReduceタスクとからなる。MapReduceによれば、膨大な情報量に対する分散処理をMapタスクとReduceタスクとに分割して実現している。
また、近年では、このMapReduceを実装したオープンソースソフトウェアとしてHadoopが知られており、Hadoopを用いることで大規模分散処理を誰でも容易に実行可能となっている。
Here, MapReduce is a framework for performing parallel processing using a computer cluster that is a set of many computers. In order to perform predetermined processing, MapReduce divides input data to be processed into a plurality of fragments and assigns them to a plurality of computers. In each computer, processing according to the Map definition is performed in parallel to perform KEY-VALUE. A Map task that generates type data as an intermediate file, sorts the KEY-VALUE type data, bundles them with the same KEY, and assigns a computer that processes the intermediate file for each KEY, and each assigned computer, It consists of a Reduce task that performs processing according to the Reduce definition in parallel, aggregates the processing results, and obtains the result of the predetermined processing. According to MapReduce, distributed processing for an enormous amount of information is realized by dividing it into a Map task and a Reduce task.
In recent years, Hadoop is known as open source software that implements MapReduce, and anyone can easily perform large-scale distributed processing by using Hadoop.
ところで、近年では、インターネット上で地図情報の配信が盛んに行われており、例えば、地図上で店舗名等を検索すると、当該店舗の属する地図を表示するサービス等が知られている。このようなサービスは、地図を形成するためのインデックスデータを適切に生成することで実現される。ここで、地図は、地図を緯度(N)経度(E)に区画可能であり、インターネット上の地図は緯度経度に区画された複数のメッシュで形成されている。そのため、インデックスの生成を複数のコンピュータ(サーバ)で分散して行うためには、インデックスデータの生成をメッシュ毎(メッシュ単位)に行うことが好ましい。 Incidentally, in recent years, map information has been actively distributed on the Internet. For example, when a store name or the like is searched on a map, a service that displays a map to which the store belongs is known. Such a service is realized by appropriately generating index data for forming a map. Here, the map can divide the map into latitude (N) longitude (E), and the map on the Internet is formed of a plurality of meshes divided into latitude and longitude. For this reason, in order to distribute the index generation among a plurality of computers (servers), it is preferable to generate the index data for each mesh (mesh unit).
しかしながら、地図上で一定の範囲を持った地図要素(例えば、建物、自然物、地域等)は、複数のメッシュにまたがる場合があり、このような場合、単にメッシュ毎に分散したのでは、適切なインデックスデータを生成することはできない。 However, map elements with a certain range on the map (for example, buildings, natural objects, regions, etc.) may span multiple meshes. In such a case, it is appropriate to simply distribute each mesh. Index data cannot be generated.
本発明は、複数のメッシュにまたがる地図要素を含む地図データについての処理を、当該地図要素の位置、大きさを意識することなく、分散処理に最適なメッシュ単位でスケール可能な分散処理を行うことのできる分散処理システム及び分散処理方法を提供することを目的とする。 The present invention performs processing for map data including map elements that span a plurality of meshes, and is capable of scaling in units of meshes that are optimal for distributed processing, without regard to the position and size of the map elements. An object of the present invention is to provide a distributed processing system and a distributed processing method.
本発明者らは、メッシュ単位毎に分散処理するために好適なKEY−VALUE型のデータセットの生成方法を新たに開発することで、本発明を完成するに至った。なお、以下において「シャッフル」とは、生成したKEY−VALUE型のデータセットを整理し、当該データセットをKEYでソートする処理を含む。 The present inventors have completed the present invention by newly developing a method for generating a KEY-VALUE type data set suitable for performing distributed processing for each mesh unit. In the following, “shuffle” includes processing of organizing the generated KEY-VALUE type data set and sorting the data set by KEY.
(1) 所定の複数のメッシュに区画可能な地図を構成する地図データの分散処理を、前記所定の複数のメッシュ毎に、ネットワークを介して接続された複数のサーバの一をシャッフルにより割り当てて並列実行する分散処理システムであって、前記複数のサーバの少なくとも一部が、前記地図データ、及び、前記所定の複数のメッシュをそれぞれ識別するメッシュ識別データと当該メッシュの前記地図上の位置を示す位置情報とを関連付けて記憶手段に記憶する記憶制御手段と、前記地図に含まれる領域地図要素が前記地図上で占める閉領域を表す範囲指定情報を前記記憶手段から読み出す領域取得手段と、前記地図に含まれる点地図要素が前記地図上で位置する点を表す範囲指定情報を前記記憶手段から読み出す点要素取得手段と、前記記憶手段から前記メッシュ識別データ及び前記位置情報を読み出して、複数の前記メッシュのうち、前記領域取得手段が読み出した前記範囲指定情報が表す前記閉領域の少なくとも一部を含むメッシュ及び前記点要素取得手段が読み出した前記範囲指定情報が表す前記点を含むメッシュを特定するメッシュ特定手段と、特定した前記メッシュを識別するメッシュ識別データをKEYとし、前記範囲指定情報をVALUEとするKEY−VALUE型データを前記メッシュ特定手段が特定したメッシュの数だけ生成するデータ生成手段と、生成した前記KEY−VALUE型データを用いて、前記領域地図要素及び前記点地図要素の位置関係に関する処理を、前記メッシュ特定手段が特定した前記メッシュ毎に、前記複数のサーバの一をシャッフルにより割り当てて並列実行させる実行処理振り分け手段と、を備える分散処理システム。 (1) Parallel processing of map data constituting a map that can be partitioned into a plurality of predetermined meshes by assigning one of a plurality of servers connected via a network to each predetermined plurality of meshes by shuffling In the distributed processing system to be executed, at least a part of the plurality of servers includes the map data, mesh identification data for identifying each of the predetermined plurality of meshes, and a position indicating the position of the mesh on the map Storage control means for associating and storing information in the storage means, area acquisition means for reading out the range designation information representing the closed area occupied by the area map element included in the map on the map, and the map Point element acquisition means for reading range designation information representing points where the included point map elements are located on the map from the storage means; and The mesh identification data and the position information are read out from the storage unit, and the mesh including at least a part of the closed region represented by the range designation information read out by the region acquisition unit out of the plurality of meshes and the point element acquisition KEY-VALUE type data in which mesh specifying means for specifying a mesh including the point represented by the range designation information read by the means, mesh identification data for identifying the identified mesh is set to KEY, and the range designation information is set to VALUE. Using the data generation means for generating the number of meshes specified by the mesh specification means, and the generated KEY-VALUE type data, the processing relating to the positional relationship between the area map elements and the point map elements is performed with the mesh specification. For each mesh specified by the means, one of the plurality of servers is shuffled. A distributed processing system comprising: an execution processing distribution unit that allocates and executes in parallel.
(1)の分散処理システムによれば、メッシュ特定手段は、分散処理の対象となる閉領域の範囲指定情報の少なくとも一部を含むメッシュ及び点の範囲指定情報を含むメッシュを特定する。データ生成手段は、特定したメッシュの識別データをKEY、範囲指定情報をVALUEとするKEY−VALUE型のデータセットを、メッシュ特定手段が特定したメッシュの数だけ生成する。そして、実行処理振り分け手段は、生成したKEY−VALUE型のデータセットをシャッフルすることでKEYでソートし、KEY−VALUE型のデータセットに対する処理をメッシュ特定手段が特定したメッシュ毎に複数のサーバに割り当てて実行させる。 According to the distributed processing system of (1), the mesh specifying unit specifies a mesh including at least a part of the range specifying information of the closed region to be distributed and a mesh including the point range specifying information. The data generation means generates KEY-VALUE type data sets in which the identification data of the identified mesh is KEY and the range designation information is VALUE, as many as the number of meshes specified by the mesh specification means. Then, the execution processing distribution unit sorts the generated KEY-VALUE type data set by KEY by shuffling, and performs processing on the KEY-VALUE type data set to a plurality of servers for each mesh specified by the mesh specifying unit. Assign and execute.
これにより、KEY−VALUE型のデータセット、特に分散処理の対象となる閉領域の範囲指定情報が、処理が振り分けられた複数のサーバの全てに対し提供されるため、メッシュ単位毎に分散処理するために好適なKEY−VALUE型のデータセットを生成することができる。その結果、閉領域が複数のメッシュにまたがる場合であっても、閉領域の位置、大きさを意識することなく、分散処理に最適なメッシュ単位でスケール可能な分散処理を行うことができる。なお、KEY−VALUE型のデータセットはシャッフルによりKEYでソートされているので、分散処理システムは、同一のKEYを持つデータセットについて、同一のサーバで領域地図要素及び点地図要素の位置関係に関する処理を並列実行させることができる。 As a result, the KEY-VALUE type data set, in particular, the range specification information of the closed region to be distributed is provided to all of the plurality of servers to which the processing is distributed, so distributed processing is performed for each mesh unit. Therefore, a suitable KEY-VALUE type data set can be generated. As a result, even when the closed region extends over a plurality of meshes, it is possible to perform distributed processing that can be scaled in units of meshes that are optimal for distributed processing, without being aware of the position and size of the closed region. Since the KEY-VALUE type data set is sorted by KEY by shuffle, the distributed processing system performs processing related to the positional relationship between the area map element and the point map element on the same server for the data set having the same KEY. Can be executed in parallel.
(2) 前記メッシュ特定手段は、前記範囲指定情報に含まれる任意の地点情報が属する基点メッシュを特定する基点メッシュ特定手段と、前記基点メッシュ特定手段が特定した前記基点メッシュに隣接する隣接メッシュを特定する隣接メッシュ特定手段と、前記隣接メッシュ特定手段が特定した前記隣接メッシュに前記範囲指定情報が示す前記閉領域の少なくとも一部が含まれるか否かを判定する包含判定手段と、を備える(1)に記載の分散処理システム。 (2) The mesh specifying unit includes a base point mesh specifying unit that specifies a base point mesh to which arbitrary point information included in the range specifying information belongs, and an adjacent mesh adjacent to the base point mesh specified by the base point mesh specifying unit. And an inclusion determining unit that determines whether or not at least part of the closed region indicated by the range designation information is included in the adjacent mesh specified by the adjacent mesh specifying unit. The distributed processing system according to 1).
(2)の分散処理システムによれば、範囲指定情報の任意の地点情報が属する基点メッシュを特定してから、この基点メッシュに隣接するメッシュのうち範囲指定情報の少なくとも一部が含まれるメッシュを、範囲指定情報の少なくとも一部を含むメッシュと判定する。これにより、閉領域が複数のメッシュにまたがる場合であっても、当該複数のメッシュを適切に取得することができる。なお、「隣接する」とは、当該メッシュの周囲8個のメッシュだけでなく、範囲指定情報の大きさによっては、周囲24個、49個・・・等のメッシュも含む。 According to the distributed processing system of (2), after specifying a base point mesh to which arbitrary point information of the range designation information belongs, a mesh including at least a part of the range designation information among meshes adjacent to the base point mesh is included. The mesh is determined to include at least a part of the range designation information. Thereby, even when the closed region extends over a plurality of meshes, the plurality of meshes can be appropriately acquired. Note that “adjacent” includes not only 8 meshes around the mesh but also meshes of 24, 49, etc., depending on the size of the range designation information.
(3) 所定の複数のメッシュに区画可能な地図を構成する地図データの分散処理を、前記所定の複数のメッシュ毎に、ネットワークを介して接続された複数のサーバの一をシャッフルにより割り当てて並列実行する分散処理方法であって、前記複数のサーバの少なくとも一部が、前記地図データ、及び、前記所定の複数のメッシュをそれぞれ識別するメッシュ識別データと当該メッシュの前記地図上の位置を示す位置情報とを関連付けて記憶手段に記憶する記憶制御ステップと、前記地図に含まれる領域地図要素が前記地図上で占める閉領域を表す範囲指定情報を前記記憶手段から読み出す領域取得ステップと、前記地図に含まれる点地図要素が前記地図上で位置する点を表す範囲指定情報を前記記憶手段から読み出す点要素取得ステップと、前記記憶手段から前記メッシュ識別データ及び前記位置情報を読み出して、複数の前記メッシュのうち、前記領域取得ステップで読み出した前記範囲指定情報が表す前記閉領域の少なくとも一部を含むメッシュ及び前記点要素取得ステップで読み出した前記範囲指定情報が表す前記点を含むメッシュを特定するメッシュ特定ステップと、特定した前記メッシュを識別するメッシュ識別データをKEYとし、前記範囲指定情報をVALUEとするKEY−VALUE型データを前記メッシュ特定ステップが特定したメッシュの数だけ生成するデータ生成ステップと、生成した前記KEY−VALUE型データを用いて、前記領域地図要素及び前記点地図要素の位置関係に関する処理を、前記メッシュ特定ステップが特定した前記メッシュ毎に、前記複数のサーバの一をシャッフルにより割り当てて並列実行させる実行処理振り分けステップと、を備える分散処理システム。 (3) Parallel processing for distributing map data constituting a map that can be partitioned into a plurality of predetermined meshes by assigning one of a plurality of servers connected via a network to each predetermined plurality of meshes by shuffling A distributed processing method to be executed, wherein at least a part of the plurality of servers includes the map data, mesh identification data for respectively identifying the predetermined plurality of meshes, and a position indicating the position of the mesh on the map A storage control step for associating and storing information in the storage means, an area acquisition step for reading out range designation information representing the closed area occupied by the area map element included in the map on the map from the storage means, and the map A point element acquisition step of reading out range designation information representing a point where the included point map element is located on the map from the storage means The mesh identification data and the position information are read from the storage means, and the mesh including at least a part of the closed region represented by the range designation information read in the region acquisition step among the plurality of meshes and the point KEY-VALUE that specifies a mesh including the point represented by the range designation information read in the element acquisition step, mesh identification data for identifying the identified mesh is KEY, and the range designation information is VALUE. Using the data generation step for generating the type data as many as the number of meshes specified by the mesh specification step, and the generated KEY-VALUE type data, the processing relating to the positional relationship between the area map element and the point map element is performed as described above. For each mesh identified by the mesh identification step A distributed processing system comprising: an execution processing distribution step in which one of the plurality of servers is allocated by shuffle and executed in parallel.
(3)の分散処理方法によれば、(1)の分散処理システムと同様の効果を奏する。 According to the distributed processing method of (3), the same effects as those of the distributed processing system of (1) are obtained.
本発明によれば、地図要素の位置、大きさを意識することなく、分散処理に最適なメッシュ単位でスケール可能な分散処理を行うことができる。 According to the present invention, it is possible to perform distributed processing that can be scaled in units of meshes optimal for distributed processing, without being aware of the position and size of map elements.
以下、本発明の実施形態について図面を参照して説明する。 Embodiments of the present invention will be described below with reference to the drawings.
[分散処理システム1の概要]
はじめに、図1を参照して本実施形態の分散処理システム1の概要について説明する。
[Overview of Distributed Processing System 1]
First, an overview of the
分散処理システム1は、図1(1)に示すように、マスタサーバMと複数のワーカーサーバWとを含んで構成される。分散処理システム1は、前述のMapReduceを実装したオープンソースソフトウェアであるHadoop等を用いて実現することができる。
マスタサーバMは、所定の処理の対象となる入力データを多数の断片に区切り、ワーカーサーバWを割り当ててそれぞれについて処理を行うようにワーカーサーバWに要求を行う。ワーカーサーバWは、マスタサーバMからの要求を受け、Map定義に従って入力データからKEY−VALUE型のデータセットを中間ファイルとして生成するとともに、生成したKEY−VALUE型のデータセットをKEY毎にソートし、その処理の完了をマスタサーバMに通知する。そしてマスタサーバMは、当該KEY毎にワーカーサーバWを割り当ててそれぞれについて処理を行うようにワーカーサーバWに要求を行う。ワーカーサーバWは、マスタサーバMからの要求を受け、Reduce定義に従って、それぞれがKEY−VALUE型のデータセットについての処理を行い、その結果を集約し、位置関係に関する所定の処理、例えば、インデックスデータの生成処理の結果を得る。
As shown in FIG. 1A, the
The master server M makes a request to the worker server W to divide input data to be subjected to predetermined processing into a large number of fragments, assign the worker server W, and perform processing for each. The worker server W receives a request from the master server M, generates a KEY-VALUE type data set from the input data as an intermediate file according to the Map definition, and sorts the generated KEY-VALUE type data set for each KEY. The completion of the process is notified to the master server M. Then, the master server M requests the worker server W to allocate the worker server W for each KEY and perform processing for each. The worker server W receives a request from the master server M, performs processing for each KEY-VALUE type data set according to the Reduce definition, aggregates the results, and performs predetermined processing relating to the positional relationship, for example, index data. The result of the generation process is obtained.
本実施形態では、図1(2)に示す地図A(メッシュA1,A2,A3,A4,A5,A6を含む)の領域地図要素100に対する処理を複数のワーカーサーバWで行うこととし、その一例として、領域地図要素100と点地図要素110との関係を判定することとしている。ここで、領域地図要素100はビルや、駅から所定の距離以内の地域等のようなある一定の範囲を有する地図要素であり、点地図要素110はレストラン等のような地図上で点として扱われる地図要素である。本実施形態では、点地図要素110が領域地図要素100に包含されるか否か、一例としては、あるレストランがあるビル内に存在するか否かを判定する処理を、複数のワーカーサーバWが分散して行う。
In the present embodiment, the processing for the
[分散処理システム1の機能構成]
次に、図2を参照して、分散処理システム1の機能構成について説明する。
[Functional configuration of distributed processing system 1]
Next, the functional configuration of the distributed
分散処理システム1は、メッシュを識別するメッシュID(メッシュ識別データ)をKEYとするKEY−VALUE型のデータセットを生成する領域地図要素処理2及び点地図要素処理3(Mapタスク)と、生成したKEY−VALUE型のデータセットに対する処理をメッシュ毎に(メッシュ単位で)行う領域内外判定処理4(Reduceタスク)と、を実行する。なお、領域地図要素処理2、点地図要素処理3及び領域内外判定処理4は、ワーカーサーバWが実行するが、個々のワーカーサーバWは、領域地図要素処理2、点地図要素処理3及び領域内外判定処理4の何れの処理を実行するサーバとしても機能することが可能で、マスタサーバMが必要に応じて振り分ける。そのため、1つのワーカーサーバWが、領域地図要素処理2だけでなく点地図要素処理3を実行する場合もあり、また、領域内外判定処理4を実行する場合もある。また、マスタサーバM自身は、ワーカーサーバWとしても機能し得る。
The distributed
領域地図要素処理2を実行するため、分散処理システム1は、記憶制御手段21と、領域取得手段22と、メッシュ特定手段23と、データ生成手段24と、実行処理振り分け手段25と、を含んで構成される。
In order to execute the area
記憶制御手段21は、分散処理システム1の任意の場所に設けられた記憶手段5を制御し、記憶手段5に所定の情報を記憶する。
ここで、記憶手段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からデータを読み出して処理を行うことが、データローカリティ上好適であるといえる。
The
Here, the memory | storage means 5 is comprised including mesh DB51 and map element DB52. As shown in FIG. 3A, the
The
Note that the worker server W itself does not need to include the
領域取得手段22は、処理すべき領域地図要素が地図上で占める閉領域を表す範囲指定情報を、任意の場所に設けられた地図要素DB52から読み出す。
The
メッシュ特定手段23は、メッシュDB51からメッシュID及び位置情報を読み出して、領域取得手段22が読み出した範囲指定情報が表す閉領域の少なくとも一部を含むメッシュを特定する。
ここで、領域取得手段22が取得した範囲指定情報が表す閉領域は一定の範囲からなる領域地図要素に係る範囲指定情報が表す閉領域であるため、メッシュ特定手段23が特定するメッシュは複数存在する可能性がある。そこで、本実施形態では、メッシュ特定手段23は、基点決定手段231と、基点メッシュ特定手段232と、隣接メッシュ特定手段233と、包含判定手段234と、を含むこととしている。
The
Here, since the closed region indicated by the range specifying information acquired by the
基点決定手段231は、範囲指定情報が表す閉領域に含まれる任意の地点情報を決定する。任意の地点情報としては、例えば、領域地図要素の中心点や領域地図要素の頂点等が考えられるが、本実施形態では、任意の地点情報として領域地図要素の中心点を用いている。そのため、基点決定手段231は、領域地図要素の中心点を算出する。なお、中心点の算出は、任意の方法により行うことができ、所定のアルゴリズムに従って算出することとしてもよく、地図要素DB52に予め記憶しておくこととしてもよい。
The base
基点メッシュ特定手段232は、範囲指定情報が表す閉領域に含まれる任意の地点情報(中心点)が属するメッシュを基点メッシュとして特定する。
The base point
隣接メッシュ特定手段233は、基点メッシュに隣接するメッシュを隣接メッシュとして特定する。なお、隣接メッシュ特定手段233は、基点メッシュの周囲8個(隣接する)のメッシュだけでなく、領域地図要素の大きさによっては、基点メッシュの周囲24個、49個・・・等といった基点メッシュの周囲のメッシュを取得することとしてもよい。
The adjacent
包含判定手段234は、隣接メッシュに範囲指定情報が表す閉領域の少なくとも一部が含まれるか否かを判定する。
The
ここで、図4を参照して、メッシュ特定手段23が範囲指定情報が表す閉領域の少なくとも一部を含むメッシュを取得する処理の流れについて説明する。
Here, with reference to FIG. 4, the flow of processing in which the
はじめに、メッシュ特定手段23(基点決定手段231)は、領域地図要素100の任意の地点情報である中心点100Aを決定する(図4(1))。
続いて、メッシュ特定手段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が特定されている。
First, the mesh identification unit 23 (base point determination unit 231) determines a
Subsequently, the mesh specifying unit 23 (base mesh specifying unit 232) specifies the mesh A5 to which the
Subsequently, the mesh specifying means 23 (adjacent mesh specifying means 233) acquires adjacent meshes A1, A2, A3, A4, A6,... That are meshes around the mesh A5 (FIG. 4 (3)).
Finally, the mesh specifying unit 23 (inclusion determining unit 234) determines whether or not at least part of the closed region indicated by the range designation information is included for each of the adjacent meshes A1, A2, A3, A4, A6. And a mesh including at least a part of the closed region represented by the range designation information is specified (FIG. 4 (4)). In FIG. 4 (4), meshes A2, A3, A5, and A6 are specified as meshes including at least a part of the closed region represented by the range designation information of the
図2に戻り、データ生成手段24は、メッシュ特定手段23が取得したメッシュをKEY、領域取得手段22が読み出した範囲指定情報をVALUEとするKEY−VALUE型のデータセットを、メッシュ特定手段23が取得したメッシュの数だけ生成する。例えば、データ生成手段24は、「KEY:メッシュA2、VALUE:領域地図要素100の範囲指定情報」、「KEY:メッシュA3、VALUE:領域地図要素100の範囲指定情報」、「KEY:メッシュA5、VALUE:領域地図要素100の範囲指定情報」、「KEY:メッシュA6、VALUE:領域地図要素100の範囲指定情報」といったKEY−VALUE型のデータセットを生成する。
Returning to FIG. 2, the
実行処理振り分け手段25は、KEY−VALUE型のデータセットをシャッフル、すなわち、KEY−VALUE型のデータセットをKEYでソートしメッシュ単位で(メッシュ特定手段23が取得したメッシュ毎に)領域内外判定処理4を実行するワーカーサーバWに振り分けることで、生成したKEY−VALUE型のデータセットに対する処理をメッシュ単位に分散して領域内外判定処理4を実行させる。
The execution
続いて、点地図要素処理3を実行するため、分散処理システム1は、記憶制御手段31と、点要素取得手段32と、メッシュ特定手段33と、データ生成手段34と、実行処理振り分け手段35と、を含んで構成される。なお、点地図要素処理3を実行するための各手段は、領域地図要素処理2を実行するための各手段と基本的に同一であるため、詳細な説明は省略する。
Subsequently, in order to execute the point map element process 3, the distributed
記憶制御手段31は、分散処理システム1の任意の場所に設けられた記憶手段5を制御し、記憶手段5に所定の情報を記憶する。点要素取得手段32は、点地図要素の範囲指定情報(地点情報)を地図要素DB52から読み出す。メッシュ特定手段33は、点要素取得手段32が読み出した範囲指定情報を含むメッシュを特定する。ここで、点地図要素の範囲指定情報は、範囲を有しない地点情報であるため、メッシュ特定手段33は、当該地点情報が属するメッシュを特定すれば足りる。無論、点地図要素が一定の範囲を有する場合には、メッシュ特定手段23と同様の処理を行うこととしてもよい。
The
データ生成手段34は、メッシュ特定手段33が特定したメッシュをKEY、点要素取得手段32が読み出した範囲指定情報をVALUEとするKEY−VALUE型のデータセットを生成する。例えば、あるレストラン(レストラン1〜N)があるビル内に存在するか否かを判定する場合、データ生成手段34は、「KEY:レストラン1の属するメッシュ、VALUE:レストラン1の範囲指定情報」、「KEY:レストラン2の属するメッシュ、VALUE:レストラン2の範囲指定情報」・・・「KEY:レストランNの属するメッシュ、VALUE:レストランNの範囲指定情報」といったKEY−VALUE型のデータセットを生成する。
The
実行処理振り分け手段35は、KEY−VALUE型のデータセットをシャッフル、すなわち、KEY−VALUE型のデータセットをKEYでソートしメッシュ単位で領域内外判定処理4を実行するワーカーサーバWに振り分けることで、生成したKEY−VALUE型のデータセットに対する処理をメッシュ単位に分散して領域内外判定処理4を実行させる。このことにより、領域内外判定処理4を実行するワーカーサーバWは、KEYとして割り当てられたメッシュIDが示す所定のメッシュに含まれる範囲指定情報を全て得ることができる。
The execution
このように、領域内外判定処理4を実行するワーカーサーバWには、KEYでソートされたKEY−VALUE型のデータセットが提供されるため、分散処理システム1では、同一のKEYを持つデータセットについて、同一のワーカーサーバWで領域地図要素及び点地図要素の位置関係に関する処理を並列実行させることができる。
Thus, since the KEY-VALUE type data set sorted by the KEY is provided to the worker server W that executes the area inside /
続いて、領域内外判定処理4を実行するため、分散処理システム1は、メッシュ単位で地図上の位置関係に関する処理を実行する処理実行手段41を含んで構成される。
例えば、領域内外判定処理4を実行するワーカーサーバWには、「KEY:メッシュA2、VALUE:領域地図要素100の範囲指定情報」及び「KEY:メッシュA2、VALUE:メッシュA2に属するレストランの範囲指定情報」といったKEY−VALUE型のデータセットが与えられ、当該ワーカーサーバWにおいて、地図上の位置関係に関する処理、一例としては、当該レストランが領域地図要素100内に存在するか否かが判定される。レストランが領域地図要素100内に存在するか否かの判定(空間演算)は、例えば、オープンソースソフトウェアであるJTS等を用いることで実現することができる。
Subsequently, the distributed
For example, for the worker server W that executes the area inside /
なお、実行処理振り分け手段25(35)で処理が振り分けられたワーカーサーバWが領域内外判定処理4を実行するものであるが、振り分けによっては領域地図要素処理2又は点地図要素処理3を実行したワーカーサーバW自体が領域内外判定処理4を実行するワーカーサーバWになり得る。
The worker server W to which the process is distributed by the execution process distribution unit 25 (35) executes the area inside /
[分散処理システム1を構成する各サーバのハードウェア構成]
以上説明した分散処理システム1を構成する各サーバのハードウェアは、一般的なコンピュータによって構成することができる。一般的なコンピュータは、例えば、制御部として、中央処理装置(CPU)を備える他、記憶部として、メモリ(RAM、ROM)、ハードディスク(HDD)及び光ディスク(CD、DVD等)を、ネットワーク通信装置として、各種有線及び無線LAN装置を、表示装置として、例えば、液晶ディスプレイ、プラズマディスプレイ等の各種ディスプレイを、入力装置として、例えば、キーボード及びポインティング・デバイス(マウス、トラッキングボール等)を適宜備え、これらは、バスラインにより接続されている。このような一般的なコンピュータにおいて、CPUは、分散処理システム1を構成する各サーバを統括的に制御し、各種プログラムを適宜読み出して実行することにより、上述したハードウェアと協働し、本発明に係る各種機能を実現している。
[Hardware configuration of each server constituting the distributed processing system 1]
The hardware of each server configuring the distributed
[分散処理システム1の処理]
次に、図5を参照して、分散処理システム1の処理について説明する。
[Processing of distributed processing system 1]
Next, processing of the distributed
[領域地図要素処理2]
S201:領域取得手段22は、領域地図要素が地図上で占める閉領域を表す範囲指定情報を地図要素DB52から読み出す。
例えば、点地図要素111,112,113,114,115,116が領域地図要素100に存在するか否かを判定する場合(図6参照)、領域取得手段22は領域地図要素100の範囲指定情報を地図要素DB52から読み出す。
[Area map element processing 2]
S201: The
For example, when determining whether or not the
S202:メッシュ特定手段23は、メッシュDB51からメッシュID及び位置情報を読み出して、S201で読み出した範囲指定情報が表す閉領域の少なくとも一部を含むメッシュを特定する。具体的には、メッシュ特定手段23は、領域地図要素100の中心点を決定し、当該中心点の属する基点メッシュを特定する。そして、メッシュ特定手段23は、基点メッシュに隣接する隣接メッシュを取得するとともに、当該隣接メッシュのうち、範囲指定情報が表す閉領域の少なくとも一部を含むメッシュを特定する。更に、メッシュ特定手段23は、当該閉領域の全ての部分について上記特定を完了するまで、当該隣接メッシュに更に隣接する隣接メッシュを取得して同様の処理を繰り返す。
図6では、領域地図要素100の範囲指定情報が表す閉領域の少なくとも一部を含むメッシュとして、メッシュA2,A3,A5,A6が取得されている。
S202: The
In FIG. 6, meshes A <b> 2, A <b> 3, A <b> 5, A <b> 6 are acquired as meshes including at least a part of the closed region represented by the range designation information of the
S203:データ生成手段24は、S202で特定したメッシュをKEY、S201で読み出した範囲指定情報をVALUEとするKEY−VALUE型のデータセットを、S202で特定したメッシュの数だけ生成する。
図6では、「KEY:メッシュA2、VALUE:領域地図要素100の範囲指定情報」、「KEY:メッシュA3、VALUE:領域地図要素100の範囲指定情報」、「KEY:メッシュA5、VALUE:領域地図要素100の範囲指定情報」、「KEY:メッシュA6、VALUE:領域地図要素100の範囲指定情報」といったKEY−VALUE型のデータセットが生成される。
S203: The
In FIG. 6, “KEY: Mesh A2, VALUE: Range specification information of
S204:実行処理振り分け手段25は、KEY−VALUE型のデータセットをメッシュ単位で領域内外判定処理4を実行するワーカーサーバWに振り分ける。
図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に振り分ける。
S204: The execution
In FIG. 6, “KEY: Mesh A2, VALUE: Range specification information of
[点地図要素処理3]
S301:点要素取得手段32は、点地図要素の範囲指定情報(地点情報)を地図要素DB52から読み出す。
図6では、領域地図要素100内に存在するか否かを判定する点地図要素111,112,113,114,115,116の範囲指定情報を地図要素DB52から読み出す。
[Point map element processing 3]
S301: The point element acquisition means 32 reads the range specification information (point information) of the point map element from the
In FIG. 6, the range designation information of the
S302:メッシュ特定手段33は、メッシュDB51からメッシュID及び位置情報を読み出して、S301で読み出した範囲指定情報を含むメッシュを特定する。
図6では、点地図要素111を含むメッシュとしてメッシュA2を取得し、点地図要素112を含むメッシュとしてメッシュA5を取得し、点地図要素113を含むメッシュとしてメッシュA5を取得し、点地図要素114を含むメッシュとしてメッシュA3を取得し、点地図要素115を含むメッシュとしてメッシュA3を取得し、点地図要素116を含むメッシュとしてメッシュA6を取得する。
S302: The
In FIG. 6, the mesh A2 is acquired as a mesh including the
S303:データ生成手段34は、S302で特定したメッシュをKEY、S301で読み出した範囲指定情報をVALUEとするKEY−VALUE型のデータセットを生成する。
図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型のデータセットが生成される。
S303: The
In FIG. 6, “KEY: Mesh A2, VALUE: Range designation information of
S304:実行処理振り分け手段35は、KEY−VALUE型のデータセットをメッシュ単位で領域内外判定処理4を実行するワーカーサーバWに振り分ける。
図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に振り分ける。
S304: The execution
In FIG. 6, “KEY: Mesh A2, VALUE: Range specification information of the
[領域内外判定処理4]
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の範囲指定情報」を取得する。
[Inside / outside area determination processing 4]
S401: Each of the worker servers W that executes the area inside /
In FIG. 6, the worker server W that performs processing of the mesh A <b> 2 has “KEY: mesh A <b> 2, VALUE: range specification information of the
S402:処理実行手段41は、地図上の位置関係に関する処理、例えば、点地図要素111〜116が領域地図要素100内に存在するか否かを判定する処理を実行する。なお、地図上の位置関係に関する処理は、例えば、オープンソースソフトウェアであるJTS等を用いることで実現することができる。
図6では、点地図要素112、115は、領域地図要素100内に存在すると判定され、点地図要素111,113,114,116は、領域地図要素100内に存在しないと判定される。
S402: The process execution means 41 executes a process related to the positional relationship on the map, for example, a process of determining whether or not the
In FIG. 6, the
[分散処理システム1の効果]
本実施形態の分散処理システム1では、複数のメッシュにまたがる領域地図要素100に関する処理をメッシュ単位に分散して行う際に、領域地図要素100がまたがるメッシュの全てに領域地図要素100の範囲指定情報を持たせることとしている。これにより、領域地図要素の位置や大きさに関係なく、分散処理に最適なメッシュ単位でスケール可能な分散処理を行うことができる。
また、分散処理システム1による分散処理の結果、一例として、図7のようなインデックスDBを生成することができる。例えば、あるレストランがあるビルの中に存在していることを示すインデックスデータを生成することができる。また、例えば、環七(東京都道318号環状七号線)通り沿いの一定の範囲を領域地図要素として設定すれば、あるラーメン屋が環七沿いのものであることを示すインデックスデータを生成することもできる。また、駅から徒歩5分圏内の範囲を領域地図要素として設定すれば、ある店がある駅から徒歩5分以内に存在することを示すインデックスデータを生成することができる。
[Effect of distributed processing system 1]
In the distributed
As an example, as a result of the distributed processing by the distributed
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されるものではない。 As mentioned above, although embodiment of this invention was described, this invention is not restricted to embodiment mentioned above. The effects described in the embodiments of the present invention are only the most preferable effects resulting from the present invention, and the effects of the present invention are limited to those described in the embodiments of the present invention. is not.
1 分散処理システム
2 領域地図要素処理
21 記憶制御手段
22 領域取得手段
23 メッシュ特定手段
24 データ生成手段
25 実行処理振り分け手段
3 点地図要素処理
31 記憶制御手段
32 点要素取得手段
33 メッシュ特定手段
34 データ生成手段
35 実行処理振り分け手段
4 領域内外判定処理
41 処理実行手段
5 記憶手段
51 メッシュDB
52 地図要素DB
M マスタサーバ
W ワーカーサーバ
DESCRIPTION OF
52 Map Element DB
M Master server W Worker server
Claims (3)
前記複数のサーバの少なくとも一部が、前記地図データ、及び、前記所定の複数のメッシュをそれぞれ識別するメッシュ識別データと当該メッシュの前記地図上の位置を示す位置情報とを関連付けて記憶手段に記憶する記憶制御手段と、
前記地図に含まれる領域地図要素が前記地図上で占める閉領域を表す範囲指定情報を前記記憶手段から読み出す領域取得手段と、
前記地図に含まれる点地図要素が前記地図上で位置する点を表す範囲指定情報を前記記憶手段から読み出す点要素取得手段と、
前記記憶手段から前記メッシュ識別データ及び前記位置情報を読み出して、複数の前記メッシュのうち、前記領域取得手段が読み出した前記範囲指定情報が表す前記閉領域の少なくとも一部を含むメッシュ及び前記点要素取得手段が読み出した前記範囲指定情報が表す前記点を含むメッシュを特定するメッシュ特定手段と、
特定した前記メッシュを識別するメッシュ識別データをKEYとし、前記範囲指定情報をVALUEとするKEY−VALUE型データを前記メッシュ特定手段が特定したメッシュの数だけ生成するデータ生成手段と、
生成した前記KEY−VALUE型データを用いて、前記領域地図要素及び前記点地図要素の位置関係に関する処理を、前記メッシュ特定手段が特定した前記メッシュ毎に、前記複数のサーバの一をシャッフルにより割り当てて並列実行させる実行処理振り分け手段と、
を備える分散処理システム。 Distribution of map data constituting a map that can be partitioned into a plurality of predetermined meshes is performed in parallel by assigning one of a plurality of servers connected via a network by shuffle to each of the predetermined plurality of meshes. A processing system,
At least a part of the plurality of servers stores the map data and mesh identification data for identifying the predetermined plurality of meshes in association with position information indicating the positions of the meshes on the map in the storage unit. Storage control means for
A region acquisition unit that reads out from the storage unit range designation information that represents a closed region occupied by the region map element included in the map on the map;
Point element acquisition means for reading out range designation information representing points where point map elements included in the map are located on the map;
The mesh identification data and the position information are read from the storage unit, and the mesh including at least a part of the closed region represented by the range designation information read by the region acquisition unit among the plurality of meshes and the point element Mesh specifying means for specifying a mesh including the point represented by the range specifying information read by the acquiring means;
Data generating means for generating KEY-VALUE type data having the mesh identification data for identifying the identified mesh as KEY and the range specifying information as VALUE as many as the number of meshes specified by the mesh specifying means;
Using the generated KEY-VALUE type data, one of the servers is shuffled for each mesh specified by the mesh specifying means for processing related to the positional relationship between the area map element and the point map element. Execution processing distribution means for executing in parallel,
A distributed processing system.
前記範囲指定情報に含まれる任意の地点情報が属する基点メッシュを特定する基点メッシュ特定手段と、
前記基点メッシュ特定手段が特定した前記基点メッシュに隣接する隣接メッシュを特定する隣接メッシュ特定手段と、
前記隣接メッシュ特定手段が特定した前記隣接メッシュに前記範囲指定情報が示す前記閉領域の少なくとも一部が含まれるか否かを判定する包含判定手段と、
を備える請求項1に記載の分散処理システム。 The mesh specifying means includes
Base point mesh specifying means for specifying a base point mesh to which any point information included in the range designation information belongs;
An adjacent mesh specifying means for specifying an adjacent mesh adjacent to the base mesh specified by the base mesh specifying means;
Inclusion determination means for determining whether or not at least a part of the closed region indicated by the range designation information is included in the adjacent mesh specified by the adjacent mesh specifying means;
The distributed processing system according to claim 1.
前記複数のサーバの少なくとも一部が、前記地図データ、及び、前記所定の複数のメッシュをそれぞれ識別するメッシュ識別データと当該メッシュの前記地図上の位置を示す位置情報とを関連付けて記憶手段に記憶する記憶制御ステップと、
前記地図に含まれる領域地図要素が前記地図上で占める閉領域を表す範囲指定情報を前記記憶手段から読み出す領域取得ステップと、
前記地図に含まれる点地図要素が前記地図上で位置する点を表す範囲指定情報を前記記憶手段から読み出す点要素取得ステップと、
前記記憶手段から前記メッシュ識別データ及び前記位置情報を読み出して、複数の前記メッシュのうち、前記領域取得ステップで読み出した前記範囲指定情報が表す前記閉領域の少なくとも一部を含むメッシュ及び前記点要素取得ステップで読み出した前記範囲指定情報が表す前記点を含むメッシュを特定するメッシュ特定ステップと、
特定した前記メッシュを識別するメッシュ識別データをKEYとし、前記範囲指定情報をVALUEとするKEY−VALUE型データを前記メッシュ特定ステップが特定したメッシュの数だけ生成するデータ生成ステップと、
生成した前記KEY−VALUE型データを用いて、前記領域地図要素及び前記点地図要素の位置関係に関する処理を、前記メッシュ特定ステップが特定した前記メッシュ毎に、前記複数のサーバの一をシャッフルにより割り当てて並列実行させる実行処理振り分けステップと、
を備える分散処理システム。 Distribution of map data constituting a map that can be partitioned into a plurality of predetermined meshes is performed in parallel by assigning one of a plurality of servers connected via a network by shuffle to each of the predetermined plurality of meshes. A processing method,
At least a part of the plurality of servers stores the map data and mesh identification data for identifying the predetermined plurality of meshes in association with position information indicating the positions of the meshes on the map in the storage unit. A storage control step to
An area acquisition step of reading out range designation information representing a closed area occupied on the map by an area map element included in the map;
A point element acquisition step of reading out range designation information representing points where the point map elements included in the map are located on the map;
The mesh identification data and the position information are read from the storage means, and the mesh including at least a part of the closed region represented by the range designation information read in the region acquisition step among the plurality of meshes and the point element A mesh specifying step for specifying a mesh including the point represented by the range designation information read in the obtaining step;
A data generation step for generating KEY-VALUE type data having the mesh identification data for identifying the identified mesh as KEY and the range designation information as VALUE for the number of meshes identified by the mesh identification step;
Using the generated KEY-VALUE type data, one of the servers is shuffled for each mesh identified by the mesh identifying step, with respect to the positional relationship between the area map element and the point map element. Execution process distribution step to be executed in parallel,
A distributed processing system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010198978A JP5171904B2 (en) | 2010-09-06 | 2010-09-06 | Distributed processing system and distributed processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010198978A JP5171904B2 (en) | 2010-09-06 | 2010-09-06 | Distributed processing system and distributed processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012058836A true JP2012058836A (en) | 2012-03-22 |
JP5171904B2 JP5171904B2 (en) | 2013-03-27 |
Family
ID=46055907
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010198978A Expired - Fee Related JP5171904B2 (en) | 2010-09-06 | 2010-09-06 | Distributed processing system and distributed processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5171904B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014038616A (en) * | 2012-08-15 | 2014-02-27 | Hon Hai Precision Industry Co Ltd | Index construction system of large amounts of data, and construction method of the same |
CN112307025A (en) * | 2020-10-29 | 2021-02-02 | 杭州海康威视数字技术股份有限公司 | Method and device for constructing distributed index |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009217000A (en) * | 2008-03-11 | 2009-09-24 | Fujitsu Microelectronics Ltd | Drawing processor, drawing processing program, and drawing processing method |
-
2010
- 2010-09-06 JP JP2010198978A patent/JP5171904B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009217000A (en) * | 2008-03-11 | 2009-09-24 | Fujitsu Microelectronics Ltd | Drawing processor, drawing processing program, and drawing processing method |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014038616A (en) * | 2012-08-15 | 2014-02-27 | Hon Hai Precision Industry Co Ltd | Index construction system of large amounts of data, and construction method of the same |
CN112307025A (en) * | 2020-10-29 | 2021-02-02 | 杭州海康威视数字技术股份有限公司 | Method and device for constructing distributed index |
CN112307025B (en) * | 2020-10-29 | 2024-06-04 | 杭州海康威视数字技术股份有限公司 | Distributed index construction method and device |
Also Published As
Publication number | Publication date |
---|---|
JP5171904B2 (en) | 2013-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10394847B2 (en) | Processing data in a distributed database across a plurality of clusters | |
CN110297799B (en) | Data management system and method | |
CN106156138B (en) | The foundation of the spatial index of point of interest, Perimeter method and apparatus | |
Walshaw et al. | Multilevel mesh partitioning for heterogeneous communication networks | |
JP2018518733A (en) | File operation method and apparatus | |
CN102779183B (en) | Data inquiry method, equipment and system | |
US9342222B2 (en) | Accessible chart navigation using object neighborhood | |
JP2011170774A (en) | Device and method for generation of decision tree, and program | |
Aguilar et al. | On the performance and scalability of an HPC enhanced multi agent system based evacuation simulator | |
CN114691806A (en) | Data query method, display method, device, electronic equipment and storage medium | |
EP3008597B1 (en) | Method for the continuous processing of two-level data on a system with a plurality of nodes | |
JP5171904B2 (en) | Distributed processing system and distributed processing method | |
CN110569225A (en) | Data storage method and system | |
Goga et al. | Performance analysis of WRF simulations in a public cloud and HPC environment | |
JP2006244480A (en) | Entity look-up system | |
Vasavi et al. | Framework for geospatial query processing by integrating cassandra with hadoop | |
Fox | Large scale data analytics on clouds | |
RU2610587C2 (en) | Method of spatial object storage by means of flexible hierarchical structure and a permanent data medium | |
Wang et al. | Geospatial big data analytics engine for spark | |
KR20100091757A (en) | Method, system and computer-readable recording medium for providing distributed programming environment by using distributed space | |
KR101690315B1 (en) | Parallel neighbor search system and method thereof | |
US11610151B2 (en) | Distribution system, data management apparatus, data management method, and computer-readable recording medium | |
KR102147175B1 (en) | Geo data managing method, apparatus and program based on geo key for efficiency improvement of geo data processing | |
Huang et al. | Distributed asteroid discovery system for large astronomical data | |
CN114116948A (en) | Geographic vector data space buffer area analysis method, device, equipment and medium |
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 |