Sharding είναι η μέθοδος του MongoDB για οριζόντια κλιμάκωση — διανομή δεδομένων σε πολλαπλούς διακομιστές (shards) ώστε η βάση δεδομένων να μπορεί να χειριστεί σύνολα δεδομένων και throughput που υπερβαίνουν τις δυνατότητες ενός μόνο διακομιστή. Διαμοιράζει τα δεδομένα με βάση ένα shard key, και το MongoDB δρομολογεί τα ερωτήματα στα σωστά shards.
Γιατί να κάνουμε sharding: κλιμάκωση πέρα από έναν διακομιστή
A single server has limits (storage, RAM, write throughput). When data/load exceeds
what one server (even a powerful one) can handle, SHARDING distributes it:
→ data is split across multiple SHARDS (each a replica set)
→ each shard holds a SUBSET of the data → combined capacity scales horizontally
→ handles huge datasets and high write throughput
