Abstract:
A method, system, and computer program product for implementing a multi-column/multi-row constraint. Lock techniques prevent access collisions even when two or more concurrently running software applications are attempting to insert rows into the same relational database table (subject to the same multi-column/multi-row constraints). The method commences by receiving (e.g., from a first process) a first row to be inserted into a relational database table where the row comprises at least two constrained columns corresponding to the multi-column/multi-row constraint, then receiving (e.g., from a second process) a second row to be inserted into the same table. Using column locks, the method recognizes the potential for conflicting row insertions, and manages locks to prevent conflicting access grants to the two constrained columns of the existing database table. The evaluation of the multi-column/multi-row constraint is performed over the first row to be inserted and a row or rows of the relational database table.
Abstract:
Systems, methods, and other embodiments are disclosed for correcting errors in the geo-spatial locations of acquired image data. In one embodiment, acquired aerial or satellite image data is segmented to generate extracted boundary data. The extracted boundary data represents boundaries of features of a portion of the Earth's surface, but at incorrect geo-spatial coordinates. The extracted boundary data is matched to expected boundary data derived from ground truth data. The expected boundary data represents boundaries of the features at correct geo-spatial coordinates. Adjustment parameters are generated that represent a geo-spatial misalignment between the extracted boundary data and the expected boundary data. Metadata in a header of the acquired image data is modified to include the adjustment parameters. The adjustment parameters may be applied to the acquired image data to generate corrected image data at correct geo-spatial coordinates.
Abstract:
Computerized systems, methods, and other embodiments associated with generating virtual map tiles according to an ad hoc specification are described. In one embodiment, a method includes defining, in response to receiving a request through an interface of a map server, virtual map tiles according to an ad hoc specification. The ad hoc specification indicates characteristics of the virtual map tiles including at least a format and map content of the virtual map tiles. The method includes computing the virtual map tiles from at least the map content specified by the ad hoc specification and according to the format indicated by the ad hoc specification. Computing the virtual map tiles includes computing the virtual map tiles in response to receiving the request. The method includes transmitting the virtual map tiles to a client device to cause the viewable region of the electronic map to be displayed on the client device.
Abstract:
Systems, methods, and other embodiments associated with indexing spatial data in a distributed file system using local indexes are described. In one embodiment, a method includes dividing the spatial data into splits. Each of the splits includes a portion of the spatial data and includes additional sub-units that further sub-divide the spatial data. The example method may also include populating index records for the sub-units using metadata extracted from the spatial data. The metadata for each of the sub-units describes sub-unit characteristics of a respective one of the sub-units and split characteristics of one of the splits associated with the respective one of the sub-units. The method includes indexing the spatial data by generating local indexes using the index records with one of the local indexes for each of the splits and generating a global index that identifies the local indexes.
Abstract:
Systems, methods, and other embodiments associated with index-based optimization of geometric figured-related queries are described. In one embodiment, a method includes receiving two points selected from a corpus of spatial data. A hierarchical index on the data is accessed to choose candidate nodes. The index is a hierarchical arrangement of nodes arranged in paths from root node entries to leaf node entries such that each node is contained in all nodes in a path leading to the node. The method includes determining a spatial relationship between the two points and the candidate nodes in the index. The candidate nodes are a proper subset of the nodes in the index, such that the spatial relationship is not determined between the two points and some non-candidate nodes. A candidate node is selected based on the determined angles for processing related to construction of a geometric figure describing the spatial data.
Abstract:
Systems, methods, and other embodiments associated with feature generalization leveraging topological model functionality are described. In one embodiment, a method includes loading primitives associated with a first feature and a second feature into a topological model. The topological model may be an existing topological model or a topological model that is created by the feature generalization methods and systems described herein. The topological model stores primitives that are shared by the first feature and the second feature as a single unique shared primitive. The method includes generalizing respective primitives including at least one shared primitive to produce corresponding respective generalized primitives, and associating a generalized primitive corresponding to the shared primitive with the first feature and the second feature, while maintaining alignment across shared edges of adjacent features and hierarchical relationships between features.