4 ms·
Yeah I’d be glad to talk about it. Was part of a team that was asked to design a whistleblowing software platform for large corporate and government customers.
by mduggles 4y ago
Yeah I’d be glad to talk about it. Was part of a team that was asked to design a whistleblowing software platform for large corporate and government customers. The rest of the stack was RDS Postgres but this whistleblowing app had super different requirements. We would need to run in basically every region and also not exclusively in AWS.
After trying some different options it became clear that Cockroach was the best option by far. The strongly consistent nature of Cockroach made it a good choice for a SoR like whistleblowing unlike say Mongo. The ease of deployment and the stability of the Raft consensus protocol for managing ranges of data was better than expected.
For me having done a global rollout of it, I’d recommend it with very few caveats. You do need to train developers on what queries it can and cannot support, since it does have Postgres client support but obviously cannot handle the full range of queries. You also need to have lots of alerting around the Raft log, since that is your bread and butter in terms of “is this working or not”. However in aggressive testing, removing nodes with no warning under load, simulating pretty severe networking problems, etc, it has held up remarkably well.
- potamic 4y agoWhat's your global setup like, if you may? Running software for government means you generally want your data isolated from everything else. Wondering where cockroach fits in.
- jollybean 4y agoSo why would cockroach be a fit here? That doesn't sound like an app that's going to have to process a lot of data at all. Is it the fact you can get clusters synched really well across regions? And is that really a problem for low transaction apps today?