The scope of ShardingSphere keep expanding. Sharding is not the unique and core feature for ShardingSphere anymore.
So we plan to create pluggable infrastructure for database proxy and JDBC driver which to let users run it without any additional function, just transparent transmission. ShardingSphere can add more features into `EMPTY` infrastructure, such as sharding, master-slave, encrypt, distributed-transaction, orchestration and so on. The API may look like: ShardingDataSource, MasterSlaveDataSource, EncryDataSource, DistributedTransactionDataSource and OrchestrationDataSource, the yaml and other configuration methods should change to this way too. Every features are independent and can be work together which using composited and append-able way. We can provide SSDataSourceFacade to manage how to use them together. This is one of the reason to why we do not release for 4.0.0 stable version soon, we want more discuss to make decision to change API before 4.0.0 stable version release. Any suggestions? ------------------ Liang Zhang (John) Apache ShardingSphere & Dubbo
