The VMware vFabric Postgres DBMS includes memory, checksum, and performance features that are not available with an open source Postgres/PostgreSQL DBMS.

Elastic Database Memory

Elastic database memory enables vFabric Postgres to run with graceful performance degradation under heavy over-commitment of memory. vFabric Postgres participates in memory resource management with the guest operating system and the vSphere hypervisor to achieve elastic database memory.

vFabric Postgres monitors requests for memory from the vSphere hypervisor and monitors swap activity within the guest operating system. When the hypervisor or the guest operating system needs more memory, the vFabric Postgres buffer manager shrinks the database buffer pool to make memory available. When more memory becomes available, the buffer manager increases the amount of memory dedicated to the buffer pool.

Elastic database memory is enabled by default in the virtual appliance, but is disabled if you use the RPM files. RPM installation is supported only for the standalone version of vFabric Postgres.

Ease of Tuning on the Appliance

If you deploy the vFabric Postgres appliance or the vFabric Postgres for Data Director appliance, associated vFabric Postgres databases have higher default values than standard Postgres databases for many critical settings, including shared_buffers, checkpoint_segments, and wal_buffers. The higher default values improve out-of-box vFabric Postgres performance with a slight increase in disk space and memory requirements. The result is that users of an embedded vFabric Postgres database can more easily tune the database for their workload.

If you are using vFabric Postgres, and you use the RPM installation, these changes to default values are not made.

Automatic Checksums

By default, vFabric Postgres performs checksums on each write operation to tables or indexes. Performing checksums on each write ensures that when vFabric Postgres retrieves data, that data is clean.

Checkpoint Tuning

vFabric Postgres improves on the Postgres algorithm to make the tuning more dynamic.

In I/O-constrained environments, periods of heavy checkpointing activity often alternate with periods of light checkpoint activity.

By default, vFabric Postgres performs dynamic tuning of checkpoint parameters so that rapid changes in available I/O bandwidth or changes in the database workload reduce the likelihood of database throughput oscillations.