Thông thường, dữ liệu phân chia theo các phân đoạn theo cách cho phép tránh được các THAM GIA trên nhiều máy chủ. Vì thao tác này khó và tốn kém. Nếu ví dụ của bạn là giả thuyết, tôi khuyên bạn nên chia tất cả dữ liệu theo trường user_id hoặc user_group_id.
Ví dụ:phân đoạn A sẽ chứa tất cả các bảng có thông tin từ người dùng mà user_id% 3 =0, phân đoạn B - mà user_id% 3 =1, phân đoạn C - mà user_id% 3 =2. Vì vậy, hầu hết các JOINS cần thiết sẽ nằm trong một phân đoạn. Đối với một số truy vấn phức tạp giữa nhiều máy chủ, bạn có thể có bộ lưu trữ NO-SQL phổ biến như memcached hoặc Redis sẽ có các bản sao của dữ liệu cần thiết từ tất cả các phân đoạn (tất nhiên nó không phải là bản sao đầy đủ của tất cả các bảng). Các kho lưu trữ như vậy có thể dễ dàng sao chép trên nhiều máy chủ mà bạn cần. Đây là cách hoạt động của các dự án tải trọng cao.