Đối với một ứng dụng SAAS lớn (được hỗ trợ bởi PostgreSql 9.4), với hơn 300.000 tài khoản (và đang phát triển), những ưu và nhược điểm của việc sử dụng lược đồ cho mỗi tài khoản để phân vùng dữ liệu so với việc đưa tất cả dữ liệu vào một lược đồ và sử dụng khóa ngoại phân vùng nó trong các truy vấn?
Tôi biết trong quá khứ pg_dump rất chậm khi làm việc với nhiều lược đồ nhưng không chắc đó có phải là trường hợp ngày hôm nay không. Tôi cũng nhận thấy bất kỳ thay đổi nào trong cấu trúc cơ sở dữ liệu sẽ phải được thực hiện trên tất cả các lược đồ. Và tôi biết rằng về mặt tích cực, việc di chuyển một lược đồ từ máy chủ vật lý này sang máy chủ vật lý khác rất dễ dàng, cũng như khôi phục một lược đồ từ bản sao lưu, chưa kể nó có ý nghĩa đối với dữ liệu phân vùng theo cách đó.
Vậy những ưu và nhược điểm tôi đang thiếu là gì?