We put a lookup service in front of the database partitions. The lookup service knows the current partitioning scheme and can tell us which shard to read or update the data. Clients first communicate with the lookup service to learn which partition they must go to, then query/update the data. Using directory-based partitioning, we can add additional database servers or change the partitioning schema without impacting the application. The disadvantage of this method is that the lookup table is a single point of failure.
If you're unfamiliar with Zettelkasten: These notes are atomic. The aim is to have one idea in a note. The connections between notes are as important as the notes themselves.
Reply via email
or comment below.