HighGo Software (Canada) recently released its first version of HighGo Postgres database server engine. The GA version of HighGo Postgres i.e. HG-PGSQL 1.1 was released in Dec 2019 on the official website, the product can be downloadable via YUM from the HighGo Software (Canada) products page, please see the link below.
HG-PGSQL 1.1 is built on top of PostgreSQL server 12.1. PostgreSQL is most advanced and powerful open source object relational database with over 30 years of active development. HG-PGSQL 1.1 is the first release of HighGo Postgres Sever, it aims to provides additional functionality and value to its users, this is on top of already robust, reliable and performant open source PostgreSQL 12.1 base. The area of focus for the first release is backup performance, ease of use, partitioning enhancement and scalability. The goal is continue to develop on a very strong base and provide tremendous value to our end-users in variety of areas.
PostgreSQL 12 comes with a number of excellent and exciting features, it continues to improve the existing partitioning functionality by adding fast partition pruning along with additional partitioning improvements. It also contains a number of general performance improvements, optimisations for b-tree and other indexes, automatic inlining of common table expression (CTE). There are number of new authentication features including (Encryption of TCP/IP connections when using GSSAPI authentication), support for SQL/JSON path language and number of other exciting features.
The product license which is also available on the highgo ca website (https://yum.highgo.ca) is very flexible to allow end-users to use the product for commercial or non-commercial use without getting any authorisation from Highgo Software.
HG-PGSQL 1.1 is the first version of HighGo Postgres release based on Community PostgreSQL 12.1 version. The minor updates will be released every quarter in-line with the community minor release for PostgreSQL 12 branch. The community plans to release the first quarterly update by mid of Feb 2020, HG-PGSQL update will follow shortly after the community update.
Below are links to release documents available on the product page :
HG-PGSQL Installation and start-up guide
HG-PGSQL 1.1 Release Notes
HG-PGSQL Comprehensive user guide
Parallel backup performance benchmark
Key Features in HG-PGSQL 1.1
HighGo Postgres Server 1.1 is built on top of PostgreSQL 12.1 and provides the following key features :
Enhanced Partitioning Syntax
Enhancing the table partitioning syntax to allow specifying the parent table and partitions in the same SQL statement. This is a ease of use feature that will take away the hassle of creating partitions separately from the parent table. This will allow the end-user to specify the partitions and sub-partitions using the native PostgreSQL syntax in the same statement as the parent table.
This feature is particularly useful when the end-user is creating large table that comprised of partitions and sub-partitions. This syntax will also simplify when migrating database schema other RDBMS to PostgreSQL since the combined syntax is support by most RDBMS
Please refer to the comprehensive user guide (link given above) for details on the feature and examples.
Provide the capability of creating an sharded table by specifying parent table and foreign partitions in the same statement. This feature adds the ability to push-down partitions to the foreign server, it is part of the horizontal scalability / sharding effort. The user can specify the partitions along with the foreign server (shards) and using the push-down clause the partitions will be automatically created on the foreign servers. This is really exciting feature that automates the creation of partitions on the shards. This capability is added to postgres_fdw in this release, it can be extended to other databases.
This feature is very useful as it will automatically create the partitions and sub-partitions tables on the foreign servers. When the user drops the parent table, the user has the option to automatically removed the foreign partitions.
The complete syntax for shard management is part of the comprehensive user guide.
Parallel Base Backup
Greatly improve the performance of full base backup by adding parallelism to the backup operation. This feature is adding parallelism to base backup by spawning a configurable number of parallel workers for performing the backup. The parallel backup feature enables the user to use more system resources by spawning multiple workers for taking backup. The parallel backup feature benchmarking was done using AWS instances, benchmarking results and details were released are part of the white paper available on the products page. The link for the white-paper is also in the introduction section of the blog.
The parallel backup feature is still undergoing some discussion and changes in the community. The target is to get this feature committed for PG-13 and have the latest version of parallel backup as part of a minor release of HG-PGSQL.
Ahsan Hadi is a VP of Development with HighGo Software Inc. Prior to coming to HighGo Software, Ahsan had worked at EnterpriseDB as a Senior Director of Product Development, Ahsan worked with EnterpriseDB for 15 years. The flagship product of EnterpriseDB is Postgres Plus Advanced server which is based on Open source PostgreSQL. Ahsan has vast experience with Postgres and has lead the development team at EnterpriseDB for building the core compatibility of adding Oracle compatible layer to EDB’s Postgres Plus Advanced Server. Ahsan has also spent number of years working with development team for adding Horizontal scalability and sharding to Postgres. Initially, he worked with postgres-xc which is multi-master sharded cluster and later worked on managing the development of adding horizontal scalability/sharding to Postgres. Ahsan has also worked a great deal with Postgres foreign data wrapper technology and worked on developing and maintaining FDW’s for several sql and nosql databases like MongoDB, Hadoop and MySQL.
Prior to EnterpriseDB, Ahsan worked for Fusion Technologies as a Senior Project Manager. Fusion Tech was a US based consultancy company, Ahsan lead the team that developed java based job factory responsible for placing items on shelfs at big stores like Walmart. Prior to Fusion technologies, Ahsan worked at British Telecom as a Analyst/Programmer and developed web based database application for network fault monitoring.
Ahsan joined HighGo Software Inc (Canada) in April 2019 and is leading the development teams based in multiple Geo’s, the primary responsibility is community based Postgres development and also developing HighGo Postgres server.