Horizontal sub-Library: When the amount of data is huge, put the data into different tables, such as Table 1, table 2, table 3, ... ;
Vertical Sub-Library: When a table is too many fields, you can split one or more tables, according to the primary key unique indicator;
New Understanding:
Vertical Sub-Library: When there are not many fields in a table, when some words are long and the table takes up a lot of space, it takes a large amount of IO to retrieve the table (the essence of database retrieval is IO access to the files on the hard disk).
At this point, you can consider splitting the long-length field into a single table, with the primary key of the original table uniquely labeled.
Instead:
When the number of database records, but more fields, you can integrate some fields, such as user information (phone, phone number ...) ), saved to the database as a JSON string, at a glance, at the cost of the JSON in the service layer, but more parsing.
How to choose and see the project needs.
A new understanding of database level sub-Library and vertical sub-Library