×

Containerized GlusterFS Guidance for Databases

When you use Containerized GlusterFS for applications, follow the guidance and best practices provided in this topic so that you can make informed choices between gluster-block and GlusterFS modes based on your type of workload.

Tested Applications

In OKD 3.10, extensive testing was done with these (no)SQL databases:

  • Postgresql SQL v9.6

  • MongoDB noSQL v3.2

The storage for these databases originated from a Containerized GlusterFS storage cluster.

For Postgresql SQL benchmarking pgbench was used for database benchmarking. For MongoDB noSQL benchmarking YCSB Yahoo! Cloud Serving Benchmark was used for benchmarking and workloada,workloadb,workloadf were tested

Support Matrix

Table 1. Table Title - GlusterFS

Database

Storage backend: GlusterFS

Turn off Performance Translators

Turn on Performance Translators

Postgresql SQL

Yes

  • performance.stat-prefetch

  • performance.read-ahead

  • performance.write-behind

  • performance.readdir-ahead

  • performance.io-cache

  • performance.quick-read

  • performance.open-behind

  • performance.strict-o-direct

MongoDB noSQL

Yes

  • performance.stat-prefetch

  • performance.read-ahead

  • performance.write-behind

  • performance.readdir-ahead

  • performance.io-cache

  • performance.quick-read

  • performance.open-behind

  • performance.strict-o-direct

Table 2. Table Title - gluster-block

Database

Storage backend: gluster-block

Postgresql

Yes

MongoDB

Yes

The performance translators for GlusterFS, as mentioned above, are already part of the database profile delivered with the latest Containerized GlusterFS images.

Test Results

For Postgresql SQL databases, GlusterFS and gluster-block showed approximately the same performance results. For MongoDB noSQL databases, gluster-block performed better. Therefore, use gluster-block based storage for MongoDB noSQL databases.