Co je NoSQL?

databáze NoSQL je systém správy dat bez relací, který nevyžaduje pevné schéma. Vyhýbá se spojům a je snadno škálovatelná. Hlavním účelem použití databáze NoSQL je pro distribuované datové úložiště s humongous data storage potřeb. NoSQL se používá pro velká data a webové aplikace v reálném čase. Například společnosti jako Twitter, Facebook a Google shromažďují terabajty uživatelských dat každý den.,

databáze NoSQL znamená “ nejen SQL „nebo“ Not SQL.“Ačkoli lepší termín by byl „NoREL“, NoSQL chytil. Carl Strozz představil koncept NoSQL v roce 1998.

tradiční RDBMS používá syntaxi SQL k ukládání a načítání dat pro další informace. Místo toho databázový systém NoSQL zahrnuje širokou škálu databázových technologií, které mohou ukládat strukturovaná, polostrukturovaná, nestrukturovaná a polymorfní data., Pojďme se pochopit, o NoSQL s diagram v této NoSQL databáze tutorial:

V této NoSQL tutorial pro začátečníky, budete NoSQL základy, jako:

  • Proč NoSQL?
  • Stručná historie databází NoSQL
  • vlastnosti NoSQL
  • typy databází NoSQL
  • nástroje dotazovacího mechanismu pro NoSQL
  • jaká je věta CAP?
  • eventuální konzistence
  • výhody NoSQL

proč NoSQL?,

koncept databází NoSQL se stal populárním u internetových gigantů, jako je Google,Facebook, Amazon atd. kteří se zabývají obrovskými objemy dat. Doba odezvy systému se zpomalí, když používáte RDBMS pro obrovské objemy dat.

abychom tento problém vyřešili, mohli bychom naše systémy“ zvětšit “ upgradem stávajícího hardwaru. Tento proces je drahý.

alternativou pro tento problém je distribuovat zatížení databáze na více hostitelů, kdykoli se zatížení zvyšuje. Tato metoda je známá jako “ škálování.,“

NoSQL databáze je non-relační, tak to váhy lepší než relační databáze, jako jsou navrženy s web aplikacemi v mysli.,ST s JSON

  • Většinou se používá ne standardní bázi NoSQL dotazovací jazyk
  • Web-umožnil databází běží jako internet-čelí služeb
  • Distribuované

    • Více NoSQL databází, které mohou být provedeny v distribuovaném módu
    • Nabízí auto-škálování a fail-over schopnosti
    • Často KYSELINA koncept může být obětován pro škálovatelnost a propustnost
    • Většinou ne synchronní replikace mezi uzly distribuované Asynchronní Multi-Master Replikace peer-to-peer, HDFS Replikace
    • Pouze poskytuje eventuální konzistence
    • Sdílené Nic Architektura., To umožňuje menší koordinaci a vyšší distribuci.

    NoSQL je Sdílený Nic.

    Typy NoSQL Databází

    NoSQL Databází jsou především rozděleny do čtyř typů: pár Klíč-hodnota, Sloupec-orientovaný Graf-založené a dokumentově orientované. Každá kategorie má své jedinečné atributy a omezení. Žádná z výše uvedených databází není lepší vyřešit všechny problémy. Uživatelé by měli vybrat databázi na základě svých potřeb produktu.,

    Typy NoSQL Databází:

    • Pár Klíč-hodnota Založena
    • Sloupec-orientovaný Graf,
    • Grafy založené
    • Document orientovaný

    Pár Klíč-Hodnota, na Základě

    Údaje jsou uloženy v klíč/hodnota páry. Je navržen tak, aby zvládl spoustu dat a těžké zatížení.

    pár Klíč-hodnota úložiště databází, ukládat data, jako hash tabulky, kde každý klíč je jedinečný, a hodnota může být JSON, BLOB(Binární Velké Objekty), string, atd.,

    například pár klíčových hodnot může obsahovat klíč jako“ web „spojený s hodnotou jako „Guru99“.

    jedná se o jeden z nejzákladnějších příkladů databáze NoSQL. Tento druh databáze NoSQL se používá jako sbírka, slovníky, asociativní pole atd. Klíčové obchody s hodnotou pomáhají vývojáři ukládat data bez schématu. Fungují nejlépe pro obsah nákupního košíku.

    Redis, Dynamo, Riak jsou některé NoSQL příklady databází úložiště klíčových hodnot. Všechny jsou založeny na Amazonském Dynamo paper.,

    sloupcové

    Sloupcově orientované databáze pracují na sloupcích a jsou založeny na BigTable papíru od společnosti Google. Každý sloupec je zpracován Samostatně. Hodnoty databází jednotlivých sloupců jsou uloženy souvisle.

    Sloupec na základě NoSQL databáze

    doručit vysoký výkon na agregační dotazy jako SUM, COUNT, AVG, MIN atd. vzhledem k tomu, údaje jsou snadno dostupné ve sloupci.,

    Sloupec na bázi NoSQL databází jsou široce používány pro správu datových skladů, business intelligence, CRM, Knihovna, karty, katalogy,

    HBase, Cassandra, HBase, Hypertable jsou NoSQL dotaz příklady sloupec na základě databáze.

    Document-Oriented:

    document-Oriented NoSQL DB ukládá a načítá data jako pár klíčových hodnot, ale hodnota část je uložena jako dokument. Dokument je uložen ve formátech JSON nebo XML. Hodnota je chápána DB a může být dotazována.

    Relační Vs., Dokument

    v tomto diagramu vlevo vidíte, že máme řádky a sloupce, a vpravo máme databázi dokumentů, která má podobnou strukturu jako JSON. Nyní pro relační databázi musíte vědět, jaké sloupce máte a tak dále. Pro databázi dokumentů však máte úložiště dat jako JSON object. Nepotřebujete definovat, které z nich činí flexibilní.

    typ dokumentu se většinou používá pro systémy CMS, blogovací platformy, real-time analytics & e-commerce aplikace., Neměl by se používat pro složité transakce, které vyžadují více operací nebo dotazů proti různým agregovaným strukturám.

    Amazon SimpleDB, CouchDB, MongoDB, Riak, Lotus Notes, MongoDB, jsou populární dokument vznikl DBMS systémy.

    graf založený

    databáze typu grafu ukládá entity i vztahy mezi těmito entitami. Entita je uložena jako uzel se vztahem jako hrany. Okraj dává vztah mezi uzly. Každý uzel a okraj má jedinečný identifikátor.,

    ve Srovnání s relační databáze tabulky, kde jsou volně propojené, Grafu, databáze je multi-relační povahy. Přechodový vztah je rychlý, protože jsou již zachyceny v DB a není třeba je počítat.

    databáze Grafové základny většinou používaná pro sociální sítě, logistiku, prostorová data.

    Neo4J, Infinite Graph, Oriddb, FlockDB jsou některé populární databáze založené na grafech.,

    Dotaz Mechanismus nástroje pro NoSQL

    nejčastější načítání dat mechanismus je ZBYTEK-na základě vyhledání hodnoty na základě jeho klíč/ID s zdroj

    Dokument Databáze úložiště nabízí více obtížné dotazy, jak chápou hodnotu v páru klíč-hodnota. Například CouchDB umožňuje definovat pohledy pomocí MapReduce

    jaká je věta CAP?

    Cap věta se také nazývá brewerova věta., Uvádí, že je nemožné pro distribuované úložiště dat do nabídky více než dva ze tří záruky,

    1. Konzistence
    2. Dostupnost
    3. Partition Tolerance

    Konzistence:

    data by měla zůstat konzistentní i po provedení operace. To znamená, že jakmile jsou data zapsána, každá budoucí žádost o čtení by měla tato data obsahovat. Například po aktualizaci stavu objednávky by všichni klienti měli mít možnost vidět stejná data.

    dostupnost:

    databáze by měla být vždy dostupná a citlivá. Nemělo by mít žádné prostoje.,

    tolerance oddílů:

    tolerance oddílů znamená, že systém by měl i nadále fungovat, i když komunikace mezi servery není stabilní. Například, servery mohou být rozděleny do několika skupin, které nemusí komunikovat mezi sebou. Pokud část databáze není k dispozici, Ostatní části jsou vždy nedotčeny.

    Eventuální Konzistence

    termín „eventuální konzistence“ znamená mít kopie dat na více strojů, aby se vysoká dostupnost a škálovatelnost., Změny provedené v jakékoli datové položce na jednom počítači se tedy musí šířit do jiných replik.

    replikace dat nemusí být okamžitá, protože některé kopie budou okamžitě aktualizovány, zatímco jiné včas. Tyto kopie mohou být vzájemně, ale v pravý čas, stanou se konzistentní. Proto název eventuální konzistence.,i> v Podstatě, k dispozici znamená, že DB je k dispozici po celou dobu jako na CAP teorém

  • Měkké státu znamená, že i bez vstupu; stav systému se může měnit
  • Případné konzistence znamená, že systém bude v průběhu času konzistentní
  • Výhody NoSQL

    • Může být použit jako Primární nebo Analytické Zdroje Dat
    • Velký přenos Dat
    • Žádný Jediný Bod Selhání
    • Snadné Replikace
    • Není Třeba pro Samostatné ukládání do Mezipaměti Vrstvy
    • poskytuje rychlý výkon a horizontální škálovatelnost.,
    • Lze zpracovávat strukturované, semi-strukturované, a nestrukturovaných dat se stejným účinkem
    • Objektově orientované programování, které je snadno ovladatelný a flexibilní
    • NoSQL databází nepotřebují specializovaný vysoce výkonný server
    • Podpora Klíčových Vývojka Jazyků a Platforem
    • Jednoduché implementovat, než pomocí RDBMS
    • může sloužit jako primární zdroj dat pro on-line aplikací.,ariety, objem, a složitost
    • Vyniká v distribuované databáze a multi-data center operations
    • Eliminuje potřebu pro konkrétní caching vrstva pro ukládání dat
    • Nabízí flexibilní schéma design, který může být snadno změněn bez výpadku nebo přerušení služby

    Nevýhody NoSQL

    • standardizace pravidel
    • Omezené možnosti dotazu
    • RDBMS databází a nástroje jsou poměrně vyspělý
    • nenabízí žádné tradiční databáze schopnosti, jako konzistenci, je-li více transakcí se provádí současně.,
    • Když se objem dat se zvyšuje, je obtížné udržet jedinečné hodnoty jako klíče obtížné
    • Nefunguje stejně s relačních dat
    • křivka učení je tuhý pro nové vývojáře
    • Open source možnosti, takže není tak populární pro podniky.

    Shrnutí

    • NoSQL je non-relační DMS, které nevyžaduje pevné schéma, vyhýbá se připojí, a je snadné měřítku
    • pojem NoSQL databází beccame populární Internetové giganty jako Google, Facebook, Amazon, atd., kdo se potýkají s obrovskými objemy dat
    • V roce 1998 – Carlo Strozzi používat termín NoSQL pro jeho lehký, open-source relační databáze
    • NoSQL databází nikdy následovat relační model je buď schema-free nebo má uvolněné schémat
    • Čtyři typy NoSQL Databáze jsou 1).Key-value pair Based 2).Sloupcově orientovaný graf 3). Grafy založené 4).,Dokument orientované
    • NOSQL zvládne strukturovaná, semi-strukturovaná a nestrukturovaná data se stejným účinkem
    • ČEPICE věta se skládá ze tří slov Konzistenci, Dostupnost, a Partition Tolerance
    • ZÁKLADNA znamená v Podstatě k Dispozici, Měkké státu, Eventuální konzistence
    • termín „eventuální konzistence“ znamená mít kopie dat na více strojů, aby se vysoká dostupnost a škálovatelnost
    • NOSQL nabízejí omezené možnosti dotazu