我知道水平分区......你可以创建很多表。
我已经看到,在基于应用程序的分片中,您将在多个数据库服务器上拥有相同的数据库结构。但它不会包含相同的数据。
例如:
Users 1 - 10000: server A
Users 10001 - 20000: server B
用于分片的技术是 MySQL-Proxy,例如一些工具(基于 MySQL Proxy)是 SpockProxy。我们也可以手动分片。需要一个主表,例如:
-------------------
| userA | server1 |
| userB | server2 |
| userC | server1 |
-------------------
但是上述这些技术在应用程序级别处理..我想在数据库服务器级别解决它..
我们可以透明地使用多个服务器吗?这将允许 Mysql 表扩展。
在 X 服务器上创建 X 表,最终用户通过对单个 DB 服务器的简单查询获取数据?
简而言之,我想在单个表中插入 16 TB 的数据,但我在单机上没有这么大的空间,所以我想安装两台容量为 8 TB 的服务器。但是用户查询单个数据库并在后端获取结果可能会使用分片。
我还为其他一些好的解决方案打开了这个讨论,例如MYSQL Clustering
。
有没有人愿意解释,或者有一个很好的初学者教程(一步一步)教你如何跨多个服务器进行分区?