Sharding

Siddharth Phatarphod
1 min readOct 21, 2021

--

Sharding in MongoDB
  1. English dictionary meaning of shard is fragment.
  2. In database terminology it refers to data distribution across multiple machines — a form of horizontal scaling or scale out.
  3. Sharding can be applied to databases as well as software architectures.
  4. Pros for database sharding:
    Increased Read/Write Throughput.
    Increased Storage Capacity.
    High Availability.
  5. Cons for database sharding:
    Query Overhead.
    Complexity of Administration.
    Increased Infrastructure Costs.
  6. Some database sharding architectures and types:
    Ranged/Dynamic Sharding.
    Algorithmic/Hashed Sharding.
    Entity-Relationship-Based Sharding.
    Geography-Based Sharding.
  7. Sharding can be considered if your core application database contains large amounts of data, requires high read and high write volume, and/or you have specific availability requirements.
  8. Some alternatives to database sharding:
    Functional Partitioning.
    Replication.
    Caching and Queueing.
    Supplemental Technologies.

References and further reading:

--

--

Siddharth Phatarphod
Siddharth Phatarphod

Written by Siddharth Phatarphod

Full Stack | Angular| .Net| .Net Core| SQL | Azure PaaS | Azure DevOps | Git | Scrum

No responses yet