Where your data lives, and why we run a cluster
Our databases are in Germany and our object storage is in Nuremberg. The article describes how the platform is split up, why it runs on several machines, and what we do with backups before we rely on them.
Before anyone asks us about the price, there is almost always a different question first: where does my data actually live? It is a fair question, so here is the answer without detours.
Our databases run in Germany. The object storage that holds backups, data exports and logs is in Nuremberg. In normal operation there is no path by which customer data leaves the EU, and there is no provider behind us for whom that would be any different.
The platform itself is made up of many small programs, each with one clearly defined job, such as identity, profile, billing, game servers or notifications. Each of them has its own database and its own credentials. Cutting it up this way makes development more work than a single large program would be, but it brings two advantages: a fault in one place does not drag the rest down with it, and a service that has been taken over does not automatically have access to all the data.
Each of those services runs on more than one machine. If a machine fails, the others take over without anyone having to step in. That is the real reason we work with a cluster. A single large server would be cheaper and, on a quiet day, faster as well, but it has exactly one day on which it goes down, and it picks that day itself.
We do not just create backups, we restore them regularly as well. A backup that has never been restored is an assumption. Testing the way back is what turns it into a promise.
You will notice none of this in everyday use, and that is how it should be. It matters on the day something breaks, and with every provider that day comes around eventually.
Comments
Loading comments…
