A friend was asked at the interview: the difference between Mycat and MySQL. We can think of the upper layer as an abstraction of the underlying, such as an abstraction of various kinds of computer hardware by the operating system. So when do we need abstraction? If there is only one kind of hardware, do we need to develop an operating system? Another example of a project needs a person to complete the time does not need to leader, but when it takes dozens of people to complete, there should be a manager, play the role of communication and coordination, and this manager for his upper level is the project group abstraction. Similarly, when our application only needs a database server, we do not need to mycat, and if you need to sub-library or even table, when the application to face a lot of databases, this time need to do an abstraction of the database layer to manage these databases, And the top of the application only need to face a database layer of abstraction or database middleware is good, this is the core role of Mycat. So it can be understood that the database is an abstraction of the underlying storage file, and Mycat is the abstraction of the database.
Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.
The difference between Mycat and MySQL--mycat the core role