Improving query performance in ElasticSearch at scale
blogs.halodoc.ioSaved by Andrés
Improving query performance in ElasticSearch at scale
Saved by Andrés
Andrés added
Database Partitioning is when you split the data inside the database into smaller "databases". One partition holds a part of your data. All partitions together form the entire database.
Partitioning is often used with replication, which means each partition's data is copied onto multiple nodes. This way, even though each record is in only one partition, it can be stored on different nodes for fault tolerance. A node may hold more than one partition.
When using a leader-follower replication model, the mix of partitioning and replication might look like this:
Eventually their database became a ticking time bomb ready to explode at any moment. The first instinct might be to beef up their Postgres instance, like me trying to get big at the gym. But there are physical limits to how much you can scale a single machine before costs increase exponentially. Moreover, query performance and maintenance processes
... See moreNicolay Gerold added
Peter Hagen and added
Nicolay Gerold added
Tradeoffs can increase the complexity of your architecture and require load testing to ensure that a measurable benefit is obtained.