News for hackers. Stuff that matters.
Re:Learn how to design large-scale systems by lalwanivikas on Friday July 13, 2018 @01:38PM (#17524979)
you need to provide more details to get any useful advice. but just based on what you have described, any db would do the job. add a caching layer and you have your low latencies.

again, what is the traffic and bandwidth load like? peak and average values? what kind of data are you planning to store? small values but huge volumes or the opposite? a lot will change based on your system requirements.

Re:Learn how to design large-scale systems by yread on Friday July 13, 2018 @04:48PM (#17526575)
To clarify: let's say I have servers in two locations A and B that are 200ms from each other. When I issue a write to the db in A I don't want to wait (multiples) of the 200ms before it returns. I don't really care whether the write appears to a reader at B in 5s or 50 minutes but of course the writes have to be at least causally consistent.

I won't have millions (realistically not even thousands) of users and the database will be comparatively small.

I've looked at NDB cluster but it feels quite complicated to setup and maintain

Re:Learn how to design large-scale systems by mindcrime on Friday July 13, 2018 @08:35PM (#17528009)
Consider Couchbase. It uses a combination of asynchronous writes and automatic replication to do a pretty good job of giving low latency writes even at high volume, while also ensuring data integrity. And since reads are served from the cache if possible, you usually get really good read performance as well.
Re:Learn how to design large-scale systems by e12e on Friday July 13, 2018 @06:07PM (#17527257)
Can you write to a single rdms C, and maybe cache reads at A and B?
Re:Learn how to design large-scale systems by Nican on Friday July 13, 2018 @08:33PM (#17528002)
Look at MySQL asynchronous replication.