Partitioning of geographic data
First Claim
1. A method for improving efficiency of storage and retrieval of geographic data in a distributed database system by generating a data object identifier (ID), the method comprising:
- receiving a geographical data object for storage in the distributed database system, the distributed database system comprising a plurality of shards;
generating a grid ID based on spatial information contained in the geographical data object;
storing the geographical data object in a shard of the plurality of shards based on the grid ID;
generating a shardlet ID indicating a shardlet location in the shard where the geographical data object is stored;
generating a sequence ID indicating data placement of the geographical data object within the shardlet location;
assigning the data object ID to the stored geographical data object, the data object ID comprising the grid ID, the shardlet ID, and the sequence ID; and
in response to receiving a request from a user to access the stored geographical data object, retrieving the stored geographical data object from the distributed database system based on the data object ID.
1 Assignment
0 Petitions
Accused Products
Abstract
Improving the efficiency of distributed database systems in providing geographically related information is provided by generating a data object identifier (ID) in association with geographical data. A geographical data object is received for storage in the distributed database system. A grid ID is generated based on spatial information contained in the geographical data object, a shardlet ID is generated indicating a shardlet location in a given shard on which the geographical data object is stored, and a sequence ID is generated indicating data placement within the shardlet location. The data object ID is assigned to the geographical data object, the data object ID comprising the grid ID, the shardlet ID, and the sequence ID.
-
Citations
19 Claims
-
1. A method for improving efficiency of storage and retrieval of geographic data in a distributed database system by generating a data object identifier (ID), the method comprising:
-
receiving a geographical data object for storage in the distributed database system, the distributed database system comprising a plurality of shards; generating a grid ID based on spatial information contained in the geographical data object; storing the geographical data object in a shard of the plurality of shards based on the grid ID; generating a shardlet ID indicating a shardlet location in the shard where the geographical data object is stored; generating a sequence ID indicating data placement of the geographical data object within the shardlet location; assigning the data object ID to the stored geographical data object, the data object ID comprising the grid ID, the shardlet ID, and the sequence ID; and in response to receiving a request from a user to access the stored geographical data object, retrieving the stored geographical data object from the distributed database system based on the data object ID. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method for improving efficiency of storage and retrieval of geographic data in a distributed database system by generating a data object identifier (ID), the method comprising:
-
receiving a search request from a mapping application, wherein the search request defines a geographical area; translating the geographical area to a plurality of grid IDs; and retrieving a plurality of geographical data objects from the distributed database system, the distributed database system comprising a plurality of shards in which the plurality of geographical data objects are stored, wherein a retrieved geographical data object is identified by a data object ID comprised in part of a grid ID from the plurality of grid IDs, the data object ID having been generated upon receipt of the geographical data object for storage in the distributed database system by; generating the grid ID based on spatial information contained in the geographical data object; storing the geographical data object in a shard of the plurality of shards based on the grid ID; generating a shardlet ID indicating a shardlet location in the shard where the geographical data object is stored; generating a sequence ID indicating data placement of the geographical data object within the shardlet location; and assigning the data object ID to the stored geographical data object, the data object ID comprising the grid ID, the shardlet ID, and the sequence ID. - View Dependent Claims (15, 16, 17)
-
-
18. A system for improving efficiency of storage and retrieval of geographic data in a distributed database system by generating a data object identifier (ID), the system comprising:
-
a plurality of append-only shards, each storing a plurality of geographical data objects; a central database, storing a mapping of a plurality of shardlet IDs to the plurality of append-only shards where a first geographical data object is stored; a processor, configured to execute instructions, the instructions comprising; receiving the first geographical data object for storage in the distributed database system; generating a grid ID based on spatial information contained in the first geographical data object; storing the first geographical data object in an append-only shard of the plurality of append-only shards based on the grid ID; generating a shardlet ID indicating a shardlet location in the append-only shard where the first geographical data object is stored; generating a sequence ID indicating data placement of the first geographical data object within the shardlet location; assigning a data object ID to the stored first geographical data object, the data object ID comprising the grid ID, the shardlet ID, and the sequence ID; and in response to receiving a request from a user to access the stored first geographical data object, retrieving the stored first geographical data object from the distributed database system based on the data object ID. - View Dependent Claims (19)
-
Specification