3 ms·
What is a "read-only follower"? Is this a common term when handling databases? Is it different than a slave?
by nukeop 9y ago
What is a "read-only follower"? Is this a common term when handling databases? Is it different than a slave?
- johanj 9y agoMany people are using leader/follower instead of master/slave.
- nukeop 9y agoFirst time I hear of this, who uses this and why?
- jffry 9y ago"master/slave" evokes the unhappy history of slavery, which people care about to widely varying degrees. "leader/follower" or "primary/replica" are much more neutral terms that won't prompt negative emotions in many people. People who choose one of the latter two options do so either because they feel it is more accurate, or because they wish to avoid the negative connotations of "master/slave", or a mix of both.
- nukeop 9y agoIt's better to stick to tried and true terminology that everybody understands than to needlessly introduce new and redundant designations for concepts that have been in use for decades, just to avoid upsetting rather irrational American sensibilities.
- bpicolo 9y agoLeader/follower and primary/replica are common terminology now. It's unfair to paint the sensibilities as irrational - this is exactly an example of the kind of nonchalance that helps lead to underrepresentation of minorities in tech. You might not care, but there are a lot of people that do. Taking steps like this improves the comfort level others while affecting yours none. Why is that not worth it?
- rsynnott 9y agoPrimary/replica is also _much clearer about what's actually going on_ than master/slave.
- nukeop 9y agoSo now we have three pairs of terms that apparently mean exactly the same thing. I'm sure that whatever "minorities in tech" are more interested in not being needlessly confused, than not seeing the word "slave". Who would even think of this in terms of human slavery, and why would it be connected to american minorities only?
- kgilpin 9y agoIt may or may not be the same. I will answer in the context of PostgreSQL which is the system I know the best. PostgreSQL allows you to create "copies" of the database using replication. A database which is replicating is always read-only. The database from which it is replicating can be read-write (a master) or read-only. In other words, replicas can replicate from replicas in a tree structure. Any PostgreSQL server which is replicating is referred to in the documentation as a "standby" or "slave". The terms are used interchangeably. The replication can be synchronous, in which case the "master" and "slave" have exactly the same set of committed transactions at all times. Or, it can be asynchronous, in which case the slave might possibly lag behind the master. Only a master can have a synchronous replica. It used to be that you could only have one synchronous standby, but with recent PostgreSQL you can have as many as you like. A standby is called "warm" if it is not serving client requests. It's "hot" if it is. Of course, standbys can only serve read traffic. To answer your question, "read-only follower" is probably a "hot standby". At least, a Heroku follower is generally there to serve read traffic. https://www.postgresql.org/docs/9.6/static/high-availability.html https://www.postgresql.org/docs/9.6/static/high-availability... https://devcenter.heroku.com/articles/heroku-postgres-follower-databases https://devcenter.heroku.com/articles/heroku-postgres-follow...