I don't have any idea about how the module 'shardingsphere-master-slave' vs 'shardingsphere-read-write-split', was named. If there was no specific reason, it is like a historical debt, but does not matter so much, as it has been there for a long time, everyone knows the function of the module. In the meantime, 'read-write-split' is more obvious from the processing/action perspective of the module. 'Master/Slave' is also fine from the processing object(datasource) perspective.
For simple processing and not considering much, the replacement of 'master/slave' to 'primary/replica' including the combinations is much straightforward. It is kind of 'leave it as is' processing. For moving one step further, renaming the module to 'read-write-split' is a way to go. The questions are: shall we replace 'MasterSlave' as 'ReadWriteSplit' at all places? Do we need to consider if the replacement is meaningful at any place, such as the below names: MasterSlaveDataSourceRuleConfiguration MasterSlaveLoadBalanceAlgorithm On Sat, Sep 12, 2020 at 11:29 PM [email protected] < [email protected]> wrote: > I like > > MasterDataSource -> PrimaryDataSource > SlaveDataSource -> ReplicaDataSource > > > But I am not sure about > > MasterSlave -> PrimaryReplica > > Because ShardingSphere's feature is route the update SQL > to PrimaryDataSource and route the query SQL to ReplicaDataSource. > The name ReadWriteSplit may describe the feature more clear. > > Any suggestions? > > ------------------ > > Sincerely, > Liang Zhang (John) > Apache ShardingSphere > > > Juan Pan <[email protected]> 于2020年9月13日周日 上午10:07写道: > > > Hi Craig, > > > > > > Thanks for your suggestion. :-) > > For me, both `primary` and `source` are ok. > > > > > > > usually using terms like "primary", "secondary", "source", and > "replica" > > Considering the expression above is mentioned in [1]. > > > > > > > There are good reasons for MySQL to use "source" instead of "primary" > > because in their model there may be many "source" databases. > > Actually, ShardingSphere could also have many "source" databases > > (Depending on the user's configuration). > > > > > > > MasterSlave -> ReadWriteSplit > > IMO, this renaming does not sound wonderful. I prefer > > > > > > > MasterSlave -> PrimaryReplica or MasterSlave -> SourceReplica > > > > > > Moreover, I'd like to listen to others' opinions. > > > > > > [1] https://mysqlhighavailability.com/mysql-terminology-updates/ > > > > > > Best, > > Trista > > > > > > Juan Pan (Trista) > > > > Senior DBA & PMC of Apache ShardingSphere > > E-mail: [email protected] > > > > > > > > > > On 09/12/2020 22:26,Craig Russell<[email protected]> wrote: > > Hi, > > > > This will be a significant change so I think it would be good to resolve > > all of the naming before any PR is proposed. The first place to start > might > > be the documentation to see all of the name changes in one place. > > > > There are good reasons for MySQL to use "source" instead of "primary" > > because in their model there may be many "source" databases. Personally I > > don't think "source" is particularly obvious to users, but they did not > ask > > me. ;-) > > > > For ShardingSphere, "primary" and "replica" seem to be better choices. It > > will be easy for us to tell users that ShardingSphere's "replica" > > corresponds to MySQL's "source". > > > > So the concepts to be changed might be: > > > > MasterSlave -> PrimaryReplica > > MasterDataSource -> PrimaryDataSource > > SlaveDataSource -> ReplicaDataSource > > > > And again, it might be easier to review the name changes in the context > of > > documentation changes. > > > > HTH, > > Craig > > > > On Sep 6, 2020, at 2:42 AM, [email protected] wrote: > > > > Hi All, > > > > I want to discuss to rename MasterSlave module to ReadWriteSplit module. > > > > MySQL[1] has already change the master and slave to source and replica. > > > > Some concepts I plan to change: > > > > MasterSlave -> ReadWriteSplit > > MasterDataSource -> SourceDataSource > > SlaveDataSource -> ReplicaDataSource > > > > Please advice me. > > > > [1] https://mysqlhighavailability.com/mysql-terminology-updates/ > > > > ------------------ > > > > Sincerely, > > Liang Zhang (John) > > Apache ShardingSphere > > > > Craig L Russell > > [email protected] > > >
