All Products
Search
Document Center

ApsaraDB RDS:Release notes for Ganos

Last Updated:May 22, 2023

This topic describes the release notes for Ganos. Ganos is a spatio-temporal database engine for ApsaraDB RDS for PostgreSQL.

Version

Description

5.5

  • New features:

    • The ST_MosaicFrom function is enhanced to support parallel operations.

    • The ST_MosaicFrom function is enhanced to perform mosaic operations on images or projections that are at different resolutions.

  • Bug fixes:

    • The bug that causes unexpected downtime when you call the ST_makeTrajectory function to construct a two-point trajectory by using the start time and end time of the trajectory is fixed.

5.4

  • New features:

    • The ST_ClusterDBSCAN function is added to support the density-based spatial clustering of applications with noise (DBSCAN) algorithm in a latitude and longitude coordinate.

    • The ST_CurveRecognize function is added to identify a curve of a trajectory and the curvature radius.

    • The ST_AsGrid function is optimized to compute degenerated grids in 2D.

    • The pgRouting extension is upgraded to 3.4.2.

  • Bug fixes:

    None.

5.3

  • New features:

    • Ganos is compatible with PostGIS 3.3.2.

    • The ST_Angle function is added to return each rotation angle of a trajectory as an array.

    • The ST_CurvatureRadius function is added to return each curvature radius of a trajectory as an array.

  • Bug fixes:

    The bug that the ST_AsTable function fails when x,y,t is NULL is fixed.

5.1

  • New features:

    • The conversion between the GeoHash strings and INT-type values is supported.

      • The ST_GeoHashID function is added to convert GeoHash strings into INT-type values.

      • The ST_GeoHashFromID function is added to convert INT-type values into GeoHash strings.

    • The partial update feature is supported by vector pyramids that are used to accelerate data display.

    • The ST_InterpolateRaster function is added to support spatial interpolation.

    • The ST_Contour function is added to generate contours.

    • The ST_Statistics function is added to collect statistics on and analyze custom weights on raster data in MultiPoint mode.

    • The ST_Resample function is added to resample a trajectory.

    • The ST_Density function is added to calculate the density of a trajectory.

    • The ST_StayPoint function is added to identify the stay points of a trajectory.

  • Bug fixes:

    • The bug that the raster object becomes empty after the ST_BuildHistogram function is called is fixed.

    • The bug that downtime and Z-value errors are caused by null values for the ST_AsTable function is fixed.

    • The bug that incorrect results are returned when the GeoHash mode is used for the ST_Split function is fixed.

    • The bug that causes errors in attribute field encoding for the ST_Tile function is fixed.

4.9

  • New features:

    • The ST_Intersection aggregate function is added to aggregate an array of geometry objects.

    • The ST_AddZ function is added to accept an array of z-axis values as a parameter and convert a 2D or 3DM geometry to a 3D or 4D geometry.

    • The ST_SetValue function is enhanced to support the settings of pixel values based on the spatial range of a geometry object.

    • The ST_ExportTo function is enhanced to export raster objects as Cloud Optimized GeoTIFF (COG) files.

    • The ST_CreateRast function is enhanced to convert multiple raster records or arrays into raster objects.

    • The ST_Split function is enhanced to support the settings of start time when you want to split a trajectory by time. The enhanced function also supports the splitting of a trajectory by trajectory point index.

  • Bug fixes:

    • The bug that the ST_makeTrajectory function may cause system downtime is fixed.

    • The bug that the ST_lcsSimilarity function cannot identify the time range measured in days is fixed.

    • The bug that the ST_AsEWKB function cannot convert trajectories created from data tables is fixed.

    • The bug that causes memory usage problems when the ST_BuildPyramid function is called to create a vector pyramid based on a large amount of data is fixed.

4.8

New features:

  • The ST_Union function is enhanced to support batch execution based on memory usage to prevent out-of-memory (OOM) errors caused by large data volumes.

  • The ST_SetValue function is supported. This function allows you to specify pixel values at specified pixel positions.

  • HDFS-based operations on raster data are supported.

    • The ST_CreateRast function is enhanced to create raster data based on Hadoop Distributed File System (HDFS).

    • The ST_ImportFrom function is enhanced to import raster data based on HDFS.

    • The ST_ExportTo function is enhanced to export raster data to HDFS.

4.7

  • New features:

    • The ST_makeTrajectory function is enhanced to convert rows in a table into trajectories.

    • The ST_AsTable function is added to convert trajectories into tables.

  • Bug fixes:

    The bug due to which a temporary table created by an anonymous user cannot be automatically deleted when raster data is restored is fixed.

4.6

  • New features:

    • Raster data stored in self-managed Multi-Cloud Object Storage (MinIO) buckets can be accessed. For more information, see Object storage paths.

    • The ST_PointValues function is added to return the pixel values of all bands.

  • Bug fixes:

    • The bug due to which the ST_Clip function causes the incorrect order of bands is fixed.

    • The bug that causes low performance during raster updates is fixed. This bug occurs due to missing indexes on primary keys.

    • The bug that retries are not supported when you cannot access the trajectory objects stored in an Object Storage Service (OSS) bucket is fixed.

4.5

  • New features:

    Ganos is compatible with PostgreSQL 14.

  • Performance improvements:

    The cache for trajectory objects stored in external storage media is increased. This improves access performance.

  • Bug fixes:

    • The bug that causes missing file suffixes when raster data is exported to an OSS bucket is fixed.

    • The bug that causes failed statistics on specific raster data is fixed.

4.4

  • New features:

    • The ST_LinearStretch function is supported to linearly stretch a raster and return a new raster.

    • The ST_BuildPercentiles function is supported to calculate the percentiles of the specified bands of a raster.

    • The ST_ComputeStatistics function is supported to collect all statistics about a raster. The statistics include the histogram and percentiles.

    • The ST_Percentile function is supported to query the percentiles of the specified bands of a raster.

  • Performance improvements:

    • The ST_SummaryStats and ST_BuildHistogram functions support parallel computations.

    • The ST_ExportTo function is optimized. If the specified file exists, the function returns false rather than an error message.

    • The ST_ImportFrom function is optimized. If an import error occurs, the function returns the details about the error. You can troubleshoot the error based on the error details.

  • Bug fixes:

    • The bug due to which half a pixel of a raster that is cropped may be lost when values are rounded up or rounded down is fixed.

    • The bug due to which the data of a raster cannot be properly imported or collected if the data contains values such as NAN and INF is fixed.

4.3

  • New features:

    • The ST_PixelAsPolygon function is supported to convert a specified pixel of a raster into a polygon object.

    • The ST_PixelAsPolygons function is supported to convert the pixels at a specified position of a raster into polygon objects.

    • The ST_PixelAsPoint function is supported to convert a specified pixel of a raster into a geometric object that is represented by a specified point of the geometric object.

    • The ST_PixelAsCentroid function is supported to convert a specified pixel of a raster into a geometric object that is represented by the point in the center of the geometric object.

    • The ST_PixelAsPoints function is supported to convert the pixels at a specified position of a raster into geometric objects, each of which is represented by a specified point in the geometric object.

    • The ST_PixelAsCentroids function is supported convert the pixels at a specified position of a raster into geometric objects, each of which is represented by the point in the center of the geometric object.

  • Performance improvements:

  • Bug fixes:

    • The bug due to which an incorrect spatial reference identifier (SRID) is obtained when raster data is imported in the Network Common Data Form (NetCDF) format is fixed.

    • The issue that multiple bounding boxes cannot be properly updated if the results of the equals operations on the bounding boxes are incorrect is fixed.

4.1

  • Performance improvements:

    • The ST_ImportFrom function is enhanced to enable Ganos to map an OSS object to an in-memory file. This way, data import is accelerated.

    • The operator family trajgist_ops_multi is added for GiST indexing and TrajGiST indexing. You can create a GiST index or a TrajGiST index on multiple bounding boxes.

    • Vector pyramids are added to support queries of metadata.

  • Bug fixes:

    • The bug that causes memory leaks when Ganos is used to check whether two specified trajectories intersect is fixed.

4.0

  • Performance improvements:

    • The functions that are used to calculate the different values of a raster surface are optimized to return rasters rather than pixel matrixes. These functions are ST_Hillshade, ST_Slope, and ST_Aspect.

    • The ST_Split function is optimized to split a trajectory into sub-trajectories based on a specified rule.

  • Bug fixes:

    The bug due to which the ST_SrEqual function fails to check whether two spatial reference systems are the same in specific scenarios is fixed.

3.9

  • New features:

    • The ST_removeDriftPoints function is added to delete the drift points of a trajectory based on a specified rule.

    • The ST_Split function is added to split a trajectory based on a specified spatial geometric object.

    • The ST_ExportTo function is added to export a trajectory as an external file. Only metadata is retained in the database that stores the trajectory.

    • The ST_IsExternal function is added to check whether a trajectory is stored in an external file.

    • The ST_importFrom function is added to migrate a trajectory from the external file that stores the trajectory to the original database.

    • The ST_StorageLocation function is added to query the location of an external file of a trajectory.

    • The ST_AKID function is added to query the AccessKey ID that is used to read trajectory data from OSS.

    • The ST_SetAccessKey function is added to configure an AccessKey pair that is used to read trajectory data from OSS. An AccessKey pair consists of an AccessKey ID and an AccessKey secret. An AccessKey ID is similar to a username, and an AccessKey secret is similar to a password.

    • The ST_SetAkId function is added to configure an AccessKey ID that is used to read trajectory data from OSS.

    • The ST_SetAkSecret function is added to configure an AccessKey secret that is used to read trajectory data from OSS.

    • The ST_SetStorageLocation function is added to specify the storage location of an external file when trajectory data is read from the external file.

    • The ST_DeleteGTF function is added to delete the files that contain the exported trajectories from a specified folder.

  • Bug fixes:

    • The bug due to which data cannot be queried based on strings when a vector pyramid is being created is fixed.

    • The bug due to which layers cannot be displayed when QGIS is connected is fixed.

3.8

  • New features:

    • The ST_AsDatasetFile function is added to convert a specified part of a raster into a BYTEA-type file.

    • The ST_RasterDrivers function is added to query all drivers that are supported by raster data sources in Ganos.

    • The Ganos_FDW module is added. This module provides the FOREIGN DATA WRAPPER (FDW) extension. This extension is used to access the spatial vector data that is stored in OSS buckets.

      • The ST_FDWDrivers function is added to obtain all drivers that are supported by the data sources of the Ganos_FDW extension.

      • The ST_ForeignTables function is added to query the name of a table from an external database.

      • The ST_RegForeignTables function is added to define a table in data sources that are supported by the Ganos_FDW extension as an external table.

  • Bug fixes:

    The bug due to which the ST_Clip function encounters reprojection failures if a spatial reference system is specified is fixed.

3.7

  • Performance improvements:

    The ST_SubRaster function is optimized to convert the pixel types of raster objects and increase the pixel values. This function can also be used to convert multi-band remote sensing images into three-band images that can be recognized by AI technologies.

  • Bug fixes:

    • The bug due to which Ganos unexpectedly exits when Ganos parses invalid histograms is fixed.

    • The bug due to which Ganos unexpectedly exits after projection settings are modified is fixed.

    • The bug due to which Ganos unexpectedly exits when raster data is imported into Ganos is fixed.

3.6

  • New features:

    • The ST_RPCGeoreference function is added to query the rational polynomial coefficients (RPC) model of a raster.

    • The ST_SetRPCGeoreference function is added to configure the RPC model of a raster.

    • The ST_RPCRectify function is added to calibrate a raster based on the RPC model of the raster and return a calibrated raster.

    • A parallel mechanism is added. This mechanism is used to create GiST indexes in parallel.

  • Bug fixes:

    The bug that may prevent the pg_dump plug-in from backing up custom SRIDs is fixed.

3.5

  • Performance improvements:

    Ganos is optimized. When a raster is updated based on a different raster, Ganos can automatically delete the data chunks of the original raster.

  • Bug fixes:

    • The bug due to which trajectory-related extensions cannot be upgraded is fixed.

    • The bug that causes resampling errors when the Average resampling method is used to resample raster objects is fixed.

    • The bug due to which inaccurate results are returned for queries on a trajectory object is fixed. This bug is triggered when multiple timestamps show the same trajectory point along the trajectory.

    • The bug due to which Ganos exits when the conversion of geo-spatial objects fails is fixed. Ganos is optimized to report the causes of the failures.

3.4

  • New features:

    • The ST_ImportFrom function is added to import raster data in parallel.

    • The ST_BuildPyramid function is added to build pyramids for raster data in parallel.

    • Empty trajectory objects are supported, and null trajectory objects can be returned if the specified requirements are not met.

  • Bug fixes:

    • The bug due to which the ST_AddZ function returns inaccurate results is fixed. This bug is triggered when the values of input parameters are 16-bit signed integers.

    • The bug due to which the trajectory module cannot be upgraded is fixed.

    • The bug due to which specific functions of the trajectory module cannot use indexes is fixed.

    • The bug due to which specific ND functions cannot run 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 to calculate the similarity between trajectory objects.

    • The ST_Transform function is added to convert a trajectory object from a spatial reference system into a different spatial reference system.

  • Performance improvements:

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

  • Bug fixes:

    The bug that causes invalid data catalogs is fixed.

3.2

  • New features:

    • BYTEA-type images can be returned for vector pyramids. This feature can be used to visualize 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. You can run the select ganos_update() ; command to upgrade all extensions 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 you to create GiST indexes in six dimensions.

      • The BOXND data type is added. This data type is used to describe the spatio-temporal extents of trajectory objects and store trajectory objects.

      • The following operators are added. These operators are used 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. The features are used to collect statistics about trajectory objects and estimate scan costs based on the statistics.

      • TrajGiST indexes are supported. TrajGiST indexing is an optimized indexing method.

  • Performance improvements:

    • 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 extents 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.

  • Bug fixes:

    • 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 due to which binary files do not respond after they are upgraded to later versions is fixed.

    • The bug that causes an abnormally large number of tiles at the top layer of a vector pyramid when the default parameter settings are used to create point data for the vector pyramid is fixed.

3.0

  • New features:

    • NetCDF files that contain subsets are supported. These files can be imported into specified layers based on the layer names that you specify.

    • 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 added to query the names of all custom metadata items in a raster file.

      • The ST_MetaData function is modified to query the custom metadata items of a raster file and return metadata items in the JSON format.

      • The ST_SetMetaData function is added to specify a metadata item of a raster.

      • The ST_BeginDateTime function is added to obtain the start time of a raster.

      • The ST_EndDateTime function is added to obtain the end time of a raster.

      • The ST_SetBeginDateTime function is added to specify the start time of a raster.

      • The ST_SetEndDateTime function is added to specify the end time of a raster.

      • The ST_SetDateTime function is added to specify the start time and end time of a raster and the time when a band is obtained.

    • The following functions are added to convert a raster into a BYTEA-type image:

      • The ST_AsImage function is added to convert a raster into a BYTEA-type image.

      • The ST_AsPNG function is added to convert a raster into a BYTEA-type image and save the image as a PNG file.

      • The ST_AsJPEG function is added to convert a raster into a BYTEA-type image and save the image as a JPEG file.

    • The GEOMGRID data type is added, and new functions are provided to manage this type of data:

      • The GEOMGRID data type is added.

      • The ST_AsText function is added to convert data from the GEOMGRID data type to the TEXT data type.

      • The ST_AsGeometry function is added to convert data from the GEOMGRID data type to the GEOMETRY data type.

      • The ST_AsBinary function is added to convert data from the GEOMGRID data type to the BINARY data type.

      • The ST_AsBox function is added to convert data from the GEOMGRID data type to the BOX data type.

      • The ST_AsGrid function is added to convert data from the GEOMETRY data type to the GEOMGRID data type.

      • The ST_GridFromText function is added to convert data from the TEXT data type to the GEOMGRID data type.

      • The ST_GridFromBinary function is added to convert data from the BINARY data type to the GEOMGRID data type.

      • The ST_Intersects function is added to check whether a grid object intersects with a geometric object.

      • The ST_Contains function is added to check whether a grid object includes another grid object or a geometric object.

      • The ST_Within function is added to check whether a grid object is included in another grid object or a geometric object.

    • The following functions are added to support vector pyramids and display vector pyramids at high speeds:

      • The ST_BuildPyramid function is added to build a vector pyramid.

      • The ST_DeletePyramid function is added to delete a vector pyramid.

      • The ST_Tile function is added to query the tile data of a vector pyramid in the MVT format.

  • Bug fixes:

    • The bug due to which memory resources are exhausted when you build pyramids is fixed.

    • The bug due to which Ganos cannot create a trajectory point on January 1, 2000 for a moving object is fixed.

    • The bug due to which the ST_Intersection function returns inaccurate sub-trajectories for a moving object is fixed.

2.9

  • New features:

    • The COG format is supported. Ganos can read pyramid data that are stored in COG files.

    • The ST_AddZ function is added to allow you to add the z coordinate to a geometric object based on the pixel values of the raster in which the geometric object resides.

    • The following functions are added to efficiently query the spatial extents of rasters based on pyramid levels:

      • The ST_Extent function is added to query the spatial extent of a raster and return a bounding box.

      • The ST_Envelope function is added to query the spatial extent of a raster and return a geometric object.

      • The ST_ConvexHull function is added to obtain the minimum convex geometry that encloses all geometries within a raster.

      • The ST_Height function is added to query the pixel height of a raster.

      • The ST_Width function is added to query the pixel width of a raster.

      • The ST_XMin function is modified to query the minimum x coordinate of a raster.

      • The ST_YMin function is modified to query the minimum y coordinate of a raster.

      • The ST_XMax function is modified to query the maximum x coordinate of a raster.

      • The ST_YMax function is modified to query the maximum y coordinate of a raster.

  • Bug fixes:

    • The bug that limits the performance of Ganos is fixed. This bug is triggered when Ganos splits external raster data into chunks by using the 1 × n chunking model. After this bug is fixed, you can customize the size per chunk.

    • The bug due to which the ST_Values function returns linear objects whose coordinates on specific axes do not follow the sorting rules is fixed.

    • The bug due to which the ST_BestPyramidLevel function returns negative values is fixed.

    • The bug due to which the ST_BuildPyramid function repeatedly builds pyramids is fixed.

    • The bug due to which chunk tables cannot be cleared in a timely manner when you truncate raster tables is fixed.

    • The bug due to which the ST_ExportTo function is invalid on the CreateOption parameter is fixed.

    • The bug that causes errors when the ST_ClearChunks function is invoked is fixed. This bug is triggered when the name of the table on which the function is invoked contains both uppercase letters 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 that has an external pyramid is fixed.

    • The bug due to which inaccurate statistics are returned for queries on rasters is fixed. This bug is triggered when the rasters contain NaN values.

2.8

  • New features:

    • The following functions are added to efficiently query the metadata of rasters:

      • The ST_XMin function is added to query the minimum x coordinate of a raster.

      • The ST_YMin function is added to query the minimum y coordinate of a raster.

      • The ST_XMax function is added to query the maximum x coordinate of a raster.

      • The ST_YMax function is added to query the maximum y coordinate of a raster.

      • The ST_ChunkHeight function is added to query the chunk height of a raster.

      • The ST_ChunkWidth function is added to query the chunk width of a raster.

      • The ST_ChunkBands function is added to query the number of bands based on which the data of a raster 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 can be copied in binary format.

    • The PROJ_LIB and GDAL_DATA environment variables can be configured, and the relevant data can be deployed.

  • Bug fixes:

    • The bug due to which Ganos unexpectedly exits when an invalid OSS path is specified is fixed.

    • The bug that causes inconsistencies between the imported SRIDs and original SRIDs of specific rasters is fixed.

2.7

  • New features:

    • The following MD5 functions are added. These functions are used to manage spatial rasters. The management operations include data consistency check and duplicate removal:

      • The ST_MD5Sum function is added to query the MD5 value of a raster.

      • The ST_SetMD5Sum function is added to specify the MD5 value of a raster.

    • The following functions are added to authenticate the spatial rasters that are stored in OSS buckets:

      • The ST_AKId function is added to query the AccessKey ID of a raster that is stored in an OSS bucket.

      • The ST_SetAccessKey function is added to configure the AccessKey ID and the AccessKey secret that are used to access a raster object stored in an OSS bucket.

      • The ST_AKId function is added to specify the AccessKey ID of a raster that is stored in an OSS bucket.

      • The ST_SetAKSecret function is added to specify the AccessKey secret of a raster that is stored in an OSS bucket.

    • The following functions are added to manage the metadata of a spatial raster:

      • The ST_ScaleX function is added to query the pixel width of a raster on the x-axis of the spatial reference system.

      • The ST_ScaleY function is added to query the pixel width of a raster on the y-axis of the spatial reference system.

      • The ST_SetScale function is added to specify the pixel width of a raster in the spatial reference system.

      • The ST_SkewX function is added to query the skew of a raster on the x-axis of the spatial reference system.

      • The ST_SkewY function is added to query the skew of a raster on the y-axis of the spatial reference system.

      • The ST_SetSkew function is added to specify the skew of a raster in the spatial reference system.

      • The ST_UpperLeftX function is added to query the x-coordinate of the pixel in the upper-left corner of a raster in the spatial reference system.

      • The ST_UpperLeftY function is added to query the y-coordinate of the pixel in the upper-left corner of a raster in the spatial reference system.

      • The ST_SetUpperLeft function is added to query the coordinates of the pixel in the upper-left corner of a raster in the spatial reference system.

      • The ST_PixelWidth function is added to query the pixel width of a raster in the spatial reference system.

      • The ST_PixelHeight function is added to query the pixel height of a raster in the spatial reference system.

  • Bug fixes:

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

2.6

  • New features:

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

  • Bug fixes:

    • The name of the ST_NearestApproachDistance function is corrected.

    • The bug due to which the ST_MosaicFrom function unexpectedly exits is fixed.