All Products
Search
Document Center

Lindorm:Overview

Last Updated:Apr 17, 2024

Lindorm Ganos is a native extension of the Lindorm wide table engine (LindormTable). It is compatible with the APIs of SQL, GeoMesa, and streaming engines. By using Lindorm Ganos, you can efficiently store, query, and analyze spatio-temporal data based on Lindorm wide tables. If you need to analyze and process spatio-temporal trajectories in your business, we recommend that you activate the Lindorm Ganos feature.

Background information

Large amounts of spatio-temporal trajectory data is generated in various scenarios, such as travelling, Internet of Vehicles (IoV), Internet of Things (IoT), autonomous driving, logistics, and the geographic information system (GIS). Users need to use the spatio-temporal trajectory data to query spatio-temporal ranges, determine geofences, or perform data mining. For example, users can use spatio-temporal trajectory data to query the vehicles that have passed through an area within a specified period of time, monitor whether a vehicle deviates from the planned route in real time, or query all vehicles that are 500 meters around the current location.

Lindorm Ganos acts the similar role as the PostGIS extender in PostgreSQL and the geographic range query feature in MongoDB. Lindorm Ganos supports standard geometry objects and provides spatio-temporal indexes for efficient queries on spatio-temporal data. In addition, Lindorm Ganos can provide high throughput and scalability with low storage costs. Therefore, Lindorm Ganos is a cost-effective solution for you to process spatio-temporal trajectory data.

Supported interfaces

Lindorm Ganos supports the interfaces of SQL, GeoMesa, and streaming engines.

Category

SQL interfaces

GeoMesa interfaces

Streaming engine interfaces

Supported interfaces

Standard SQL interfaces

GeoTools APIs or ECQL interfaces

Standard Flink SQL interfaces

Features

  • Provides the spatio-temporal data processing features of GeoMesa, MongoDB, and Redis.

  • Provides functions that are compatible with PostGIS.

  • Provides functions used to calculate trajectory data.

Inherits the features of open source GeoMesa.

  • Provides all streaming computing features of Apache Flink.

  • Provides a large number of PostGIS-compatible spatio-temporal functions.

  • Provides functions used to calculate trajectory data.

  • Supports real-time geofence filtering and trajectory aggregation.

Performance

Lindorm Ganos SQL is superior to open source GeoMesa in performance because Lindorm Ganos SQL adopts a variety of technologies such as query rewrite, parallel queries, shards, and optimized spatial approximation algorithms.

Lindorm Ganos GeoMesa is superior to open source GeoMesa and HBase in performance.

Lindorm Ganos for streaming engines offers excellent query performance by providing technologies such as in-memory indexes and parallel queries.

Orientation

Lindorm Ganos SQL is applicable to applications that use SQL interfaces such as PostGIS or the spatial-temporal features of GeoMesa, MongoDB, and Redis.

Lindorm Ganos GeoMesa is applicable to applications that use open source GeoMesa.

Lindorm Ganos for streaming engines is applicable to the migration of spatio-temporal applications that use streaming engines such as Flink and Spark.

Lindorm Ganos SQL

Features

The following table describes the features supported by Lindorm Ganos SQL.

Feature

Description

Standard spatial data types such as points, line strings, and polygons

Lindorm Ganos SQL supports point, LineString, and polygon objects. For more information, see Spatial data types.

Standard SQL syntax

  • Syntax used to create a spatio-temporal table: CREATE TABLE.

  • Syntax used to insert spatio-temporal data: UPSERT.

  • Syntax used to query spatio-temporal data: SELECT.

For more information about the SQL syntax supported by Lindorm Ganos SQL, see DDL and DML.

Common spatio-temporal functions

For more information about other spatio-temporal functions, see Overview.

Spatio-temporal primary key index

Spatio-temporal primary key indexes can be used to accelerate spatio-temporal queries in which only spatial ranges or spatial and time ranges are specified as conditions.

  • Specify only spatial ranges as conditions in a query:

    CREATE TABLE gtest(id INT, g GEOMETRY(POINT), name VARCHAR, PRIMARY KEY(Z-ORDER(g),id));
  • Specify spatial and time ranges as conditions in a query:

    CREATE TABLE gtest(id INT, g GEOMETRY(POINT), name VARCHAR, t LONG, PRIMARY KEY(Z-ORDER(g,t),id));

Spatio-temporal secondary index

Spatio-temporal secondary indexes can be used to accelerate spatio-temporal queries in which only spatial ranges or spatial and time ranges are specified as conditions.

  • Specify only spatial ranges as conditions in a query:

    CREATE INDEX idx ON gtest (Z-ORDER(g));
  • Specify spatial and time ranges as conditions in a query:

    CREATE INDEX idx ON gtest (Z-ORDER(g,t));
Note

You do not need to create a redundant replica for spatio-temporal data because Lindorm Ganos SQL supports spatio-temporal secondary indexes.

Features provided by LindormTable

  • Cold storage

  • Hot and cold data separation

  • Dynamic columns

For more information about the features provided by LindormTable, see Developer Guide.

Scenarios

Lindorm Ganos SQL is applicable to manage and query spatio-temporal data in traveling, navigation, aviation, Internet of Vehicles (IoV), and logistics scenarios. The following table describes the common scenarios of Lindorm Ganos SQL.

Scenario

Example

The storage and query of trajectory data

  • Query the trajectory of an object in the specified spatial range within the last 24 hours.

  • Compress and store large amounts of historical trajectory data to reduce storage costs.

Geographic grid aggregation

  • Aggregate trajectory points and filter queries based on H3 grids and the specified precision.

  • Count the number of vehicles in different regions and display the data in heatmaps.

Real-time geofencing

  • Monitor whether the location of a vehicle deviates from the specified range and raise alarms in real time.

  • Determine prices and services in ride hailing based on the spatial grid to which the boarding location belongs.

Location-based services

Search for the information about restaurants five kilometers around the current location.

Lindorm Ganos GeoMesa

Lindorm Ganos GeoMesa is compatible with open source ecosystems such as GeoMesa and GeoServer and can be used to store, query, analyze, and mine spatial or spatio-temporal data.