This topic introduces the release notes of Ganos. Ganos is a spatio-temporal database engine.

Minor engine version Description
3.8
  • New features:
    • The ST_AsDatasetFile function is added. This function is used to convert a specific part of a raster object to a BYTEA-type file.
    • The ST_RasterDrivers function is added. This function is used to query all drivers that are supported by raster data sources in Ganos.
  • Bug fixed:

    The bug that causes the ST_Clip function to return reprojection failures in a specific spatial reference system is fixed.

3.7
  • Performance optimization:

    The ST_SubRaster function is optimized. This function can be used to convert a raster object to a new raster object based on the data that is extracted from a specific pyramid level or specific bands of the original raster object. This function can also be used to convert multi-band remote sensing images to three-band images that can be recognized by AI technologies.

  • Bugs fixed:
    • The bug that may cause Ganos to unexpectedly exit when Ganos parses invalid histograms is fixed.
    • The bug that may cause Ganos to unexpectedly exit after projection settings are modified is fixed.
    • The bug that may cause Ganos to unexpectedly exit when raster data is imported into Ganos is fixed.
3.6
  • New features:
    • The ST_RPCGeoreference function is added. This function is used to query the rational polynomial coefficients (RPC) model of a raster object.
    • The ST_SetRPCGeoreference function is added. This function is used to configure the RPC model of a raster object.
    • The ST_RPCRectify function is added. This function is used to calibrate a raster object based on the RPC model of the raster object and return the raster object that is calibrated.
    • A parallel mechanism is added. This mechanism is used to create GiST indexes in parallel.
  • Bug fixed:

    The bug that may prevent the pg_dump plug-in from backing up custom spatial reference identifiers (SRIDs) is fixed.

3.5
  • Performance optimization:

    Ganos is optimized. The optimized Ganos can automatically delete the chunk data of a raster object when the raster object is updated based on another raster object.

  • Bugs fixed:
    • The bug that prevents trajectory-related plug-ins from being upgraded is fixed.
    • The bug that causes resampling errors is fixed. This bug is triggered if the Average resampling method is used to resample raster objects.
    • The bug that may cause the queries on a trajectory object to return inaccurate results is fixed. This bug is triggered if multiple timestamps show the same trajectory point along the trajectory.
    • The bug that causes Ganos to exit if the conversion of geo-spatial objects fails is fixed. Ganos is optimized to report the causes of the failures.
3.4
  • New features:
    • Feature signatures are supported for large spatio-temporal objects. This accelerates the process to create indexes on spatio-temporal data, expedites spatial joins, and optimizes the storage method for spatio-temporal objects. The polar_enable_storage_partial parameter is added. This parameter is used to specify optimized storage for spatio-temporal objects. Optimized storage allows users to store the metadata of spatio-temporal objects in-row and store the entity data of spatio-temporal objects off-row. For more information, see Feature signature-based storage optimization for large spatio-temporal objects.
    • The ST_ImportFrom function is added. This function is used to import raster objects in parallel.
    • The ST_BuildPyramid function is added. This function is used to build pyramids for raster objects in parallel.
    • Empty trajectory objects are supported, and null trajectory objects can also be returned if the specified requirements are not met.
  • Bugs fixed:
    • The bug that may cause the ST_AddZ function to return inaccurate results is fixed. This bug is triggered if the values of specific input parameters are 16-bit signed integers.
    • The bug that prevents the trajectory module from being upgraded is fixed.
    • The bug that prevents specific functions of the trajectory module from using indexes is fixed.
    • The bug that prevents specific ND functions from working as expected is fixed. If this bug is triggered, these ND functions cannot identify two periods of time that do not intersect and consequently return the value error rather than the value false.
3.3
  • New features:
    • The ST_JaccardSimilarity function is added. This function is used to calculate the similarity between trajectory objects.
    • The ST_Transform function is added. This function is used to convert a trajectory object from a spatial reference system to another spatial reference system.
  • Performance optimization:

    A new parameter is provided for users to specify the spatial extent of a vector pyramid. This parameter is used if Ganos cannot automatically calculate the spatial extent of the vector pyramid that users want to build.

  • Bug fixed:

    The bug that causes invalid data catalogs is fixed.

3.2
  • New features:
    • Stream-based images can be returned for new vector pyramids. This accelerates the graphical display of vector data.
    • The JPEG 2000 compression algorithm is added. This algorithm is used to compress 16-bit raster data before the data is stored.
    • The ganos_update function is added. Users can run the select ganos_update() ; command to upgrade all plug-ins of Ganos to the latest versions.
    • The TRAJECTORY data type is added:
      • Native spatio-temporal indexes are supported.
      • GiST indexes are supported for trajectory objects, and six operator families are provided for users to create GiST indexes in six dimensions.
      • The BOXND data type is added to describe the spatio-temporal extent of trajectory objects and store trajectory objects.
      • The following operators are added to compare the spatio-temporal relationships between two objects from different dimensions: && operator, @> operator, and <@ operator. The && operator is used to check whether two objects intersect. The @> operator is used to check whether the left operand-specified object includes the right operand-specified object. The <@ operator is used to check whether the left operand-specified object is included in the right operand-specified object.
      • The ST_ndIntersects, ST_ndDWithin, ST_ndContains, and ST_ndWithin functions are added. These functions are used to process trajectory objects.
      • New features are added. These new features are used to collect statistics of trajectory objects and estimate scan costs based on the statistics.
      • TrajGiST indexes are supported. TrajGiST indexing is an improved indexing method.
  • Performance optimization:
    • The ST_DWithin function is optimized to query distances at higher performance.
    • The GiST index-based two-phase query optimization method is used to query spatio-temporal extent at higher performance.
    • The mechanism that is used to build vector pyramids is optimized:
      • The source data from all coordinate systems that provide SRIDs is supported. The source data is based on the EPSG:3857 or EPSG:4326 coordinate reference system.
      • The pixelSize parameter is added. This parameter is used to aggregate point data. The aggregation helps reduce the number of tiles.
  • Bugs fixed:
    • The bug that causes an improper intersection of trajectory objects on the t axis is fixed.
    • The bug that causes failures in updating raster objects is fixed.
    • The bug that may cause binary files not to respond is fixed. This bug is triggered if the binary files are upgraded to later versions.
    • The bug that causes an abnormally large number of tiles at the top level of a vector pyramid is fixed. This bug is triggered if the default parameter settings are used to build point data for the vector pyramid.
3.0
  • New features:
    • Network Common Data Form (NetCDF) files that contain subsets are supported. These files can be imported based on specific layer names.
    • The following functions are added to query and specify the custom metadata and time series data of a raster file:
      • The ST_MetaItems function is used to query the names of all custom metadata items in a raster file.
      • The ST_MetaData function is used to query the custom metadata items of a raster file and return metadata items in the JSON format.
      • The ST_SetMetaData function is used to configure the metadata items of a raster file.
      • The ST_BeginDateTime function is used to query the start time of a raster file.
      • The ST_EndDateTime function is used to query the end time of a raster file.
      • The ST_SetBeginDateTime function is used to specify the start time of a raster file.
      • The ST_SetEndDateTime function is used to specify the end time of a raster file.
      • The ST_SetDateTime function is used to specify the start time, end time, and band acquisition time of a raster file.
    • The following functions are added to convert a raster object to a BYTEA-type image:
      • The ST_AsImage function is used to convert a raster object to a BYTEA-type image.
      • The ST_AsPNG function is used to convert a raster object to a BYTEA-type image and save the image as a PNG file.
      • The ST_AsJPEG function is used to convert a raster object to a BYTEA-type image and save the image as a JPEG file.
    • The GEOMGRID data type is added, and the functions that are used to manage this type of data are provided:
      • The GEOMGRID data type is added.
      • The ST_AsText function is used to convert data from the GEOMGRID data type to the TEXT data type.
      • The ST_AsGeometry function is used to convert data from the GEOMGRID data type to the GEOMETRY data type.
      • The ST_AsBinary function is used to convert data from the GEOMGRID data type to the BINARY data type.
      • The ST_AsBox function is used to convert data from the GEOMGRID data type to the BOX data type.
      • The ST_AsGrid function is used to convert data from the GEOMETRY data type to the GEOMGRID data type.
      • The ST_GridFromText function is used to convert data from the TEXT data type to the GEOMGRID data type.
      • The ST_GridFromBinary function is used to convert data from the BINARY data type to the GEOMGRID data type.
      • The ST_Intersects function is used to check whether a grid object intersects with a geometry object.
      • The ST_Contains function is used to check whether a grid object includes another grid object or a geometry object.
      • The ST_Within function is used to check whether a grid object is included in another grid object or a geometry object.
    • The following functions are added to support vector pyramids and display vector pyramids at high speeds:
      • The ST_BuildPyramid function is used to build a vector pyramid.
      • The ST_DeletePyramid function is used to delete a vector pyramid.
      • The ST_Tile function is used to query the tile data of a vector pyramid in the MVT format.
  • Bugs fixed:
    • The bug that exhausts memory resources when users build pyramids is fixed.
    • The bug that prevents Ganos from creating a trajectory point on January 1, 2000 for a moving object is fixed.
    • The bug that causes the ST_Intersection function to return inaccurate sub-trajectories for a moving object is fixed.
2.9
  • New features:
    • The Cloud Optimized GeoTIFF (COG) format is supported. Ganos can read pyramid data that are stored in COG files.
    • The ST_AddZ function is added. This function is used to add the z-coordinate to a geometry object based on the pixel values of the raster in which the geometry object resides.
    • The following functions are added to efficiently query the spatial extent of raster objects based on pyramid levels:
      • The ST_Extent function is used to query the spatial extent of a raster object and return a bounding box.
      • The ST_Envelope function is used to query the spatial extent of a raster object and return a geometry object.
      • The ST_ConvexHull function is used to query the spatial extent of a raster object and return a geometry object.
      • The ST_Height function is used to query the pixel height of a raster object.
      • The ST_Width function is used to query the pixel width of a raster object.
      • The ST_XMin function is used to query the minimum x-coordinate of a raster object.
      • The ST_YMin function is added to query the minimum y-coordinate of a raster object.
      • The ST_XMax function is used to query the maximum x-coordinate of a raster object.
      • The ST_YMax function is used to query the maximum y-coordinate of a raster object.
  • Bugs fixed:
    • The bug that limits the performance of Ganos is fixed. This bug is triggered if Ganos splits external raster data into chunks by using the 1 × n chunking model. After this bug is fixed, users can customize the size per chunk.
    • The bug that causes the ST_Values function to return linear objects whose coordinates on specific axes do not follow the sorting rules is fixed.
    • The bug that causes the ST_BestPyramidLevel function to return negative values is fixed.
    • The bug that causes the ST_BuildPyramid function to repeatedly build pyramids is fixed.
    • The bug that prevents chunk tables from being cleared in a timely manner is fixed. This bug is triggered if users truncate raster tables.
    • The bug that prevents the ST_ExportTo function from exporting the CreateOption property is fixed.
    • The bug that causes errors when the ST_ClearChunks function is invoked is fixed. This bug is triggered if the name of the table on which the function is invoked contains both uppercase and lowercase letters.
    • The bug that causes failures in creating an overview for an external pyramid is fixed.
    • The bug that causes failures in creating an internal pyramid for a raster object that has an external pyramid is fixed.
    • The bug that causes queries on raster objects to return inaccurate statistics is fixed. This bug is triggered if the raster objects contain NaN values.
2.8
  • New features:
    • The following functions are added to efficiently query the metadata of raster objects:
      • The ST_XMin function is used to query the minimum x-coordinate of a raster object.
      • The ST_YMin function is used to query the minimum y-coordinate of a raster object.
      • The ST_XMax function is used to query the maximum x-coordinate of a raster object.
      • The ST_YMax function is used to query the maximum y-coordinate of a raster object.
      • The ST_ChunkHeight function is used to query the chunk height of a raster object.
      • The ST_ChunkWidth function is used to query the chunk width of a raster object.
      • The ST_ChunkBands function is used to query the number of bands based on which the data of a raster object is split into chunks.
    • The ST_SrFromEsriWkt function is added to convert a spatial reference string from the Esri format to the OGC format.
    • The Zstandard (Zstd) compression algorithm and the Snappy compression algorithm are added. These algorithms are used to compress raster data.
    • Point cloud files in binary format can be copied.
    • The PROJ_LIB and GDAL_DATA environment variables are supported, and the related data can be deployed.
  • Bugs fixed:
    • The bug that causes Ganos to unexpectedly exit due to an invalid Object Storage Service (OSS) path is fixed.
    • The bug that causes inconsistencies between the imported SRIDs and original SRIDs of specific raster objects is fixed.
2.7
  • New features:
    • The following MD5 functions are added. These functions are used to manage spatial raster objects. The management operations include data consistency check and duplicate removal:
      • The ST_MD5Sum function is used to query the MD5 value of a raster object.
      • The ST_SetMD5Sum function is used to set the MD5 value of a raster object.
    • The following functions are added to authenticate the spatial raster objects that are stored in OSS buckets:
      • The ST_AKId function is used to query the AccessKey ID of a raster object that is stored in an OSS bucket.
      • The ST_SetAccessKey function is used to specify the AccessKey ID and AccessKey secret of a raster object that is stored in an OSS bucket.
      • The ST_SetAKId function is used to specify the AccessKey ID of a raster object that is stored in an OSS bucket.
      • The ST_SetAKSecret function is used to specify the AccessKey secret of a raster object that is stored in an OSS bucket.
    • The following functions are added to manage the metadata of a spatial raster object:
      • The ST_ScaleX function is used to query the pixel width of a raster object on the x axis of the spatial reference system.
      • The ST_ScaleY function is used to query the pixel width of a raster object on the y axis of the spatial reference system.
      • The ST_SetScale function is used to set the pixel width of a raster object in the spatial reference system.
      • The ST_SkewX function is used to query the skew of a raster object on the x axis of the spatial reference system.
      • The ST_SkewY function is used to query the skew of a raster object on the y axis of the spatial reference system.
      • The ST_SetSkew function is used to set the skew of a raster object in the spatial reference system.
      • The ST_UpperLeftX function is used to query the x-coordinate of the pixel in the upper-left corner of a raster object in the spatial reference system.
      • The ST_UpperLeftY function is used to query the y-coordinate of the pixel in the upper-left corner of a raster object in the spatial reference system.
      • The ST_SetUpperLeft function is used to query the coordinates of the pixel in the upper-left corner of a raster object in the spatial reference system.
      • The ST_PixelWidth function is used to query the pixel width of a raster object in the spatial reference system.
      • The ST_PixelHeight function is used to query the pixel height of a raster object in the spatial reference system.
  • Bug fixed:

    The bug that causes failures in upgrading extensions is fixed. This bug is triggered if aggregate functions are invoked during the upgrade process.

2.6
  • New feature:

    The ST_Clip function is added. This function is used to clip objects based on pixel coordinates.

  • Bugs fixed:
    • The bug that causes the ST_NearestApproachDistance function to have an invalid name is fixed.
    • The bug that causes the ST_MosaicFrom function to unexpectedly exit is fixed.