Database sharding and partitioning will improve availability, scalability and performance. Sharding will also allow us to enable a path forward for data isolation. As we continue to investigate implementations and technologies, we will test our hypotheses and add more detail about improvements in the areas below.
Availability - the database will no longer be a single point of failure as it is today. Sharding will allow us to spread data across multiple servers and better isolate database outages
Scalability - sharding will allow us to horizontally scale at the database tier
Performance - partitioning will provide performance enhancements in several identified areas such as search and audit log tables
PostgreSQL 11 deployed on GitLab.com
Delivered as required in Omnibus (13.0)
Deploy MVC partition
Define partition key (may be different than tenancy model for MVC)