Hva er NoSQL?
NoSQL Database er en ikke-relasjonelle Data Management System, som ikke krever et fast skjema. Det unngår skjøter, og er lett å skalere. Den viktigste hensikten med å bruke en NoSQL database er for distribuert butikker data med humongous datalagring behov. NoSQL brukes for Big data og real-time web apps. For eksempel selskaper som Twitter, Facebook og Google samle terabyte bruker data hver eneste dag.,
NoSQL database står for «Ikke Bare SQL» eller «Ikke SQL.»Om en bedre sikt ville bli «NoREL», NoSQL fanget på. Carl Strozz innført NoSQL-konseptet i 1998.
Tradisjonell RDBMS bruker SQL-syntaks for å lagre og hente data for ytterligere innsikt. I stedet, en NoSQL database-systemet omfatter et bredt spekter av database teknologi som kan lagre strukturert, semi-strukturert og ustrukturert og polymorfe data., La oss forstå om NoSQL med et diagram i denne NoSQL database opplæringen:
I denne NoSQL veiledning for nybegynnere, vil du lære NoSQL grunnleggende som:
- Hvorfor NoSQL?
- Kort Historie av NoSQL Databaser
- Funksjoner av NoSQL
- Typer NoSQL Databaser
- Spørring Mekanisme verktøy for NoSQL
- Hva er CAP Teorem?
- Eventuell Konsistens
- Fordeler av NoSQL
Hvorfor NoSQL?,
konseptet av NoSQL databaser ble populær med Internett-giganter som Google, Facebook, Amazon, etc. hvem håndtere store mengder data. Systemet responstid blir treg når du bruker RDBMS for massive volumer av data.
Hvis du vil løse dette problemet, og vi kunne «trappe opp» våre systemer ved å oppgradere våre eksisterende maskinvare. Denne prosessen er dyrt.
alternativ for dette problemet på er å distribuere databasen, legg på flere verter når belastningen øker. Denne metoden er kjent som «skalering ut.,»
NoSQL database er ikke-relasjonelle, så det skalerer bedre ut enn relasjonsdatabaser som de er laget med web-applikasjoner i tankene.,ST med JSON
Distribuert
- Flere NoSQL databaser kan utføres i en distribuert mote
- Tilbyr auto-skalering og fail-over evner
- Ofte SYRE-konseptet kan bli ofret for skalerbarhet og gjennomstrømning
- for det Meste ingen synkron replikering mellom distribuerte noder Asynkron Multi-Master Replikering, node-til-node -, HDFS Replikering
- Bare å gi eventuelle konsistens
- Delt Ingenting Arkitektur., Dette gjør det mindre koordinering og høyere distribusjon.
NoSQL er Delt Noe.
Typer NoSQL Databaser
NoSQL Databaser er i hovedsak kategorisert i fire typer: Nøkkel / verdi-par, Kolonne-orientert, Graf-basert og Dokument-orientert. Hver kategori har sine unike egenskaper og begrensninger. Ingen av de ovenfor angitte databasen er bedre til å løse alle problemer. Brukere bør velge database basert på produktet deres behov.,
Typer av NoSQL-Databasene:
- Nøkkel / verdi-Par Basert
- Kolonne-orientert Grafen
- Grafer basert
- Dokument-orientert
– Tasten Verdi Basert
Data som er lagret i nøkkel/verdi-par. Det er utformet på en slik måte å håndtere store mengder data og tung belastning.
Nøkkel / verdi-par lagring databaser til å lagre data som en hash-tabell der hver tast er unik, og verdien kan være en JSON, BLOB(Binary Large Objects), string, etc.,
For eksempel, en nøkkel / verdi-par kan inneholde en nøkkel som «Nettstedet» i forbindelse med en verdi som «Guru99».
Det er en av de mest grunnleggende NoSQL database eksempel. Denne typen av NoSQL database er brukt som en samling, ordbøker, assosiative matriser, etc. Tast verdi butikker hjelpe utvikleren å lagre skjema-mindre data. De fungerer best for innhold i handlevogn.
Redis, Dynamo, Riak er noen NoSQL eksempler på nøkkel-verdi store Databaser. De er alle basert på Amazon Dynamo papir.,
Kolonne-basert
Kolonne-orienterte databaser arbeid på kolonner og er basert på BigTable papir av Google. Hver kolonne er behandlet separat. Verdier i én kolonne databaser som er lagret contiguously.
Kolonne basert NoSQL database
De leverer høy ytelse på aggregering spørsmål som SUM, ANTALL, AVG, MIN etc. som de data som er lett tilgjengelig i en kolonne.,
Kolonne-basert NoSQL-databaser er mye brukt for å behandle data varehus, business intelligence, CRM -, Bibliotek-kort kataloger,
HBase, Cassandra, HBase, Hypertable er NoSQL-spørring eksempler på kolonnen basert database.
Dokument-Orientert:
Dokument-Orientert NoSQL DB lagrer og henter data som en viktig verdi, men verdien del er lagret som et dokument. Dokumentet er lagret i JSON eller XML-formater. Verdien er forstått av DB og kan spørres.
Relasjonelle Vs., Dokumentet
I dette diagrammet til venstre som du kan se har vi rader og kolonner, og i retten, har vi et dokument i databasen som har en lignende struktur JSON. Nå for relasjonell database, må du vite hva kolonnene du har og så videre. Men, for et dokument, database, har du datalageret som JSON-objekt. Du trenger ikke å definere som gjør det fleksibelt.
document type er mest brukt for CMS-systemer, blogging plattformer, real-time analytics & e-handel applikasjoner., Det bør ikke bruke for komplekse transaksjoner som krever flere operasjoner eller spørringer mot varierende samlet strukturer.
Amazon SimpleDB, CouchDB, MongoDB, Riak, Lotus Notes, MongoDB, er populære Dokumentet stammer DATABASE-systemer.
Graf-Basert
En graf type database lagrer enheter, samt relasjoner blant de enheter. Enheten er lagret som en node med forhold som kanter. En kant gir et forhold mellom noder. Hver node og kanten har en unik identifikator.,
i Forhold til en relasjonsdatabase der bordene er løst koblet, en grafdatabase er en multi-relasjonelle i naturen. Gjennomgang av forholdet er rask, så de er allerede tatt inn i DB, og det er ikke nødvendig å beregne dem.
Grafen base database for det meste brukt til sosiale nettverk, logistikk, romlige data.
Neo4J, Uendelig Grafen, OrientDB, FlockDB er noen populære diagram-baserte databaser.,
Spørring Mekanisme verktøy for NoSQL
Den mest vanlige data henting mekanisme er REST-baserte henting av en verdi basert på dens nøkkel – /ID-en med FÅ ressurser
Dokument lagre Database tilbyr flere vanskelige spørsmål som de forstår verdien i en nøkkel / verdi-par. For eksempel, CouchDB kan definere utsikt med MapReduce
Hva er CAP Teorem?
CAP-teoremet er også kalt brewer ‘ s teorem., Det sier at det er umulig for en distribuert data butikken for å tilby mer enn to av tre garanterer
- Konsistens
- Tilgjengelighet
- Partisjon Toleranse
Konsistens:
data bør være konsekvent, selv etter gjennomføring av en operasjon. Dette betyr når data er skrevet eventuelle fremtidige lese forespørselen skal inneholde data. For eksempel, når du har oppdatert ordrestatus, alle kunder skal være i stand til å se de samme dataene.
Tilgjengelighet:
databasen skal alltid være tilgjengelige og lydhøre. Det bør ikke ha noen nedetid.,
Partisjon Toleranse:
Partisjon Toleranse betyr at systemet skal fortsette å fungere selv om kommunikasjon mellom servere er ikke stabil. For eksempel, servere kan deles inn i flere grupper som kan ikke kommunisere med hverandre. Her, hvis en del av databasen er tilgjengelig, andre deler er alltid upåvirket.
Eventuell Konsistens
begrepet «eventual consistency» betyr å ha kopier av data på flere maskiner for å få høy tilgjengelighet og skalerbarhet., Dermed kan endringer som er gjort til alle data element på en maskin har for å bli spredd til andre replikaer.
Data replikering kan ikke skje umiddelbart som noen eksemplarer vil bli oppdatert umiddelbart, mens andre i grunn løpet av tid. Disse kopiene kan være gjensidig, men i grunn løpet av tid, de blir konsistente. Dermed navnet eventuell konsistens.,jeg> i Utgangspunktet tilgjengelig betyr DB er tilgjengelig hele tiden, som per CAP teorem
Fordeler av NoSQL
- Kan brukes som Primær-eller Analytiske Data Source
- Big Data Evne
- Ingen Single Point of Failure
- Lett Replikering
- det er Ikke Behov for Separat Caching Lag
- Det gir rask ytelse og horisontal skalerbarhet.,
- Kan håndtere strukturert, semi-strukturert, og ustrukturerte data med lik effekt
- Objekt-orientert programmering som er enkel å bruke og fleksibel
- NoSQL-databaser ikke trenger en dedikert høy ytelse server
- Support-Tasten Utvikler Språk og Plattformer
- Enkel å gjennomføre enn å bruke RDBMS
- Det kan virke som den primære datakilden for online-programmer.,ariety, volum, og kompleksitet
- Utmerker seg ved distribuert database og multi-datasenter operasjoner
- Eliminerer behovet for en spesifikk caching lag til å lagre data
- Tilbyr en fleksibel skjema design som lett kan bli endret uten nedetid eller driftsforstyrrelse
Ulemper av NoSQL
- Ingen standardisering regler
- Begrenset søket evner
- RDBMS databaser og verktøy er relativt modne
- Det tilbyr ikke noen tradisjonell database evner, som konsistens når flere transaksjoner blir utført samtidig.,
- Når volumet av data øker er det vanskelig å opprettholde unike verdier som nøkler blir vanskelige
- ikke fungerer så bra med relasjonelle data
- læringskurven er stiv for nye utviklere
- Open source alternativer så ikke så populært for bedrifter.
Oppsummering
- NoSQL er en ikke-relasjonelle DMS, som ikke krever et fast skjema, unngår skjøter, og er lett å skalere
- konseptet av NoSQL databaser beccame populært med Internett-giganter som Google, Facebook, Amazon, etc., hvem håndtere store mengder data
- I året 1998 – Carlo Strozzi bruke begrepet NoSQL for sin lette, open-source relasjonsdatabase
- NoSQL databaser aldri følge den relasjonelle modellen det er enten skjema-gratis, eller har avslappet skjemaene
- Fire typer av NoSQL Database er 1).Nøkkel / verdi-Par-Basert 2).Kolonne-orientert Graf 3). Grafer basert 4).,Dokument-orientert
- NOSQL kan håndtere strukturert, semi-strukturerte og ustrukturerte data med lik effekt
- CAP teorem består av tre ord Konsistens, Tilgjengelighet, og Partisjon Toleranse
- BASE står for i Utgangspunktet Tilgjengelig, Myk stat, Eventuelle konsistens
- begrepet «eventual consistency» betyr å ha kopier av data på flere maskiner for å få høy tilgjengelighet og skalerbarhet
- NOSQL tilbyr begrenset søket evner