Sharding là phương pháp của MongoDB cho mở rộng theo chiều ngang — phân tán dữ liệu qua nhiều server (shard) để cơ sở dữ liệu có thể xử lý các tập dữ liệu và throughput vượt quá những gì một server đơn lẻ có thể. Nó phân vùng dữ liệu theo một shard key, với MongoDB định tuyến truy vấn tới đúng các shard.
Tại sao shard: mở rộng vượt một server
Một server đơn lẻ có giới hạn (lưu trữ, RAM, throughput ghi). Khi dữ liệu/tải vượt quá
những gì một server (dù mạnh) có thể xử lý, SHARDING phân tán nó:
→ dữ liệu được chia qua nhiều SHARD (mỗi shard là một replica set)
→ mỗi shard giữ một TẬP CON của dữ liệu → năng lực kết hợp mở rộng theo chiều ngang
→ xử lý tập dữ liệu khổng lồ và throughput ghi cao
