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.