MongoDB - Sharding


Sharding

Sharding er prosessen med å lagre data poster over flere maskiner, og det er MongoDB tilnærming til å møte kravene til datavekst. Som størrelsen på dataene øker, kan en enkelt maskin ikke være tilstrekkelig til å lagre data og heller gi en akseptabel lese- og skrive gjennomstrømming. Sharding løser problemet med horisontal skalering. Med sharding, du legge til flere maskiner for å støtte datavekst og kravene til lese- og skriveoperasjoner.

Hvorfor Sharding?

  • I replikering alle skriver gå å mestre node


    Latency sensitive spørsmål fortsatt gå å mestre

    har

    Enkelt replica sett begrensning på 12 noder

    Minne kan " t være store nok når aktiv datasettet er stor

    Lokal disk er ikke stor nok

    Vertikal skalering er for dyrt


    Sharding i MongoDB

    Nedenfor gis Diagrammet viser sharding i MongoDB hjelp sharded klynge

    I ovennevnte gitt diagrammet er det tre hovedkomponenter som er beskrevet nedenfor.

    Shards:
    Shards brukes til å lagre data. De gir høy tilgjengelighet og data konsistens. I produksjonsmiljø hver Shard er en egen kopi sett

    config servere:.
    Servere Config lagre klyngens metadata. Denne informasjonen inneholder en kartlegging av klyngens datasett til skår. Spørringen ruter bruker denne metadata for å målrette virksomheten til bestemte skår. I produksjonsmiljø sharded klynger har nøyaktig tre config servere

    Query Rutere:.
    Kriterier rutere er i utgangspunktet Mongos tilfeller grensesnitt med klientprogrammer og direkte operasjoner til det aktuelle fragmentet . Spørringen router prosesser og rettet mot operasjoner til skår og deretter returnerer resultater til kundene. En sharded klynge kan inneholde mer enn én spørring ruteren for å dele klienten forespørsel belastning. En klient sender forespørsler til ett søk router. Vanligvis en sharded klyngen har mange spørre rutere.