AnalyticDB for PostgreSQL is an online, distributed cloud data warehousing service that consists of multiple compute nodes and provides massively parallel processing (MPP) data warehousing solutions. AnalyticDB for PostgreSQL is developed by Alibaba Cloud based on open source Greenplum Database with enhanced, in-depth extensions.

Supported extensions

AnalyticDB for PostgreSQL supports the following extensions:

  • PostGIS: processes geographic data. For more information, see Use PostGIS.
  • MADlib: provides a machine learning function library.
  • fuzzystrmatch: implements fuzzy match of strings.
  • oss_ext: reads data from Object Storage Service (OSS).
  • HyperLogLog: collects statistics. For more information, see Use HyperLogLog.
  • PL/Java: compiles user-defined functions (UDFs) in PL/Java. For more information, see Create and use PL/Java UDFs.
  • pgcrypto: provides cryptography functions that use encryption algorithms to ensure data security. Algorithms include MD5 message-digest (MD5), Secure Hash Algorithm 1 (SHA-1), SHA-224, SHA-256, SHA-384, SHA-512, Blowfish, Advanced Encryption Standard 128 (AES-128), AES-256, Raw Encryption, Pretty Good Privacy (PGP) symmetric keys, and PGP public keys. For more information, see pgcrypto.
  • IntArray: provides integer array-related functions, operators, and indexes.
  • RoaringBitmap: uses the RoaringBitmap efficient compression algorithm for bitmap operations.
  • postgres_fdw: enables data access across databases.
  • tablefunc: includes various functions that return tables.
  • zhparser: provides full-text search of Chinese language.

Create an extension

Execute the following statements to create an extension:

CREATE EXTENSION <extension name>;
CREATE SCHEMA <schema name>;
CREATE EXTENSION IF NOT EXISTS <extension name> WITH SCHEMA <schema name>;
Notice Before you create a MADlib extension, you must create a plpythonu extension.

Delete an extension

Execute the following statements to delete an extension.

Notice If an object depends on an extension that you want to delete, you must add the CASCADE keyword to delete the object.
DROP EXTENSION <extension name>;