Co je databáze NoSQL?

NoSQL znamená nejen SQL, ale také způsob, jak ukládat a načítat data uložená v tabulkovém formátu jako v relačních databázích. Jedná se o doplňkový doplněk k databázím SQL a relačním databázím. Jedná se o flexibilní systémy správy databází, které poskytují způsob ukládání a zpracování strukturovaných i polostrukturovaných dat, která nástroje RDBMS nemohou zpracovat.

Definice NoSQL databáze

Databáze NoSQL se používá při práci s velkými množinami distribuovaných dat. Používají se ve webových aplikacích v reálném čase a jejich využití s ​​postupem času roste. Databáze NoSQL má jednoduchý design, jemnou kontrolu nad dostupností a jednoduché horizontální škálování na klastry strojů. Operace NoSQL jsou díky použití různých datových struktur rychlejší než relační databáze. Typ problému je rozhodujícím faktorem pro vhodnost databáze NoSQL. Datové struktury používané v databázích NoSQL jsou flexibilnější než tabulky používané v relačních databázích. Dostupnost, tolerance oddílů a rychlost jsou v mnoha obchodech NoSQL dány více přednost než konzistence. Většina obchodů NoSQL nesleduje vlastnosti transakcí ACID (Atomicity, Consistency, Isolation, Durability), ale některé databáze jako Aerospike, Google Spanner, MarkLogic, OrientDB a Symas LMDB učinily tyto vlastnosti středem jejich návrhů.

Rozdíl mezi databází SQL a databází NoSQL

S.NODatabáze SQLDatabáze NoSQL
1Stejný typ s menším počtem variacíK dispozici jsou různé typy, jako jsou databáze dokumentů, úložiště klíčů, databáze grafů a obchody se širokými sloupci.
2Byly vyvinuty v 70. letech 20. století za účelem zpracování aplikací pro ukládání dat.Byly vyvinuty v 21. století, aby překonaly omezení databází SQL, jako jsou více strukturovaná data, agilní vývojové sprinty a škálovatelnost
3Data jsou ukládána v tabulkovém formátu.Ukládání dat se liší podle typu databáze.
4Datové typy a struktura jsou předem stanoveny. Chcete-li přidat novou datovou položku, je třeba změnit celou databázi.Dynamické úložiště. Různá data mohou být uložena společně, což není případ databází SQL.
5Vertikální škálovatelnost.Horizontální škálovatelnost.
6Jako vývojový model se používají otevřené technologie a uzavřené zdrojové databáze.Používají se pouze otevřené technologie.
7Podporuje transakce ACID s více záznamy.Většinou je nepodporuje.
8Manipulace s daty se provádí pomocí specifického jazyka pro manipulaci s daty.Manipulace s daty se provádí pomocí objektově orientovaných API
9Silná konzistenceNěkteré produkty poskytují silné, zatímco jiné poskytují možnou konzistenci.
10Rychlost dat je mírnáRychlost dat je velmi vysoká.
11Vhodné pro strukturovaná dataVhodné pro strukturovaná, polostrukturovaná i nestrukturovaná data.
12Příklady jsou MySQL, Oracle Database, PostgresPříklady jsou MongoDB, HBase, Cassandra, Neo4j

Vlastnosti NoSQL

Níže jsou uvedeny některé důležité funkce NoSQL, které jsou následující:

Dynamická schémata

Databáze NoSQL umožňují vkládat data bez předdefinovaného schématu. Změny aplikací v reálném čase lze snadno provádět, aniž byste se museli obávat přerušení služeb. Díky tomu je administrátor databází rychlejší, spolehlivější a méně časově náročný.

Automatické stříhání

Horizontální škálování se provádí v databázi NoSQL, tj. Místo zvyšování kapacity jednoho serveru se přidávají servery. Databáze NoSQL poskytují funkci auto-shardingu, tj. Automaticky šíří data na různé množství serverů. Aplikace nemusí znát složení fondu serverů. Spousta dat a dotazů je mezi servery automaticky vyvážena. Pokud některý server selže, je rychle a transparentně vyměněn, aniž by došlo k narušení aplikace.

Replikace

Databáze NoSQL umožňuje automatickou replikaci databáze. Dojde k udržení dostupnosti v případě výpadků. Některé sofistikované databáze NoSQL poskytují automatickou obnovu a jsou plně samoléčitelné. Aby bylo možné lokalizovat data a odolávat regionálním selháním, může distribuovat databázi do více geografických oblastí. NoSQL nevyžaduje k implementaci replikace samostatnou aplikaci.

Integrované ukládání do mezipaměti

Databáze NoSQL mají integrovanou funkci ukládání do mezipaměti, tj. Uchovávají často používaná data v systémové paměti a odstraňují potřebu samostatné vrstvy ukládání do mezipaměti.

Jednoduché API

NoSQL nabízí rozhraní, která se snadno používají pro ukládání a dotazování dat. Rozhraní API umožňují metody výběru a manipulaci s daty na nízké úrovni. Nepoužívá žádný standardní dotazovací jazyk.

Proč bychom měli používat databázi NoSQL?

  • Analytika: Databáze NoSQL je vhodná pro provádění analytických dotazů. Dotazovací jazyk používaný pro atomové dotazy lze také použít pro analytické dotazy.
  • Měřítko: Preferována je databáze NoSQL, protože jsou navrženy v měřítku. Jsou navrženy tak, aby snadno rostly, když rostou. Data jsou rozdělena a vyvážena mezi více uzlů v klastru a ve výchozím nastavení jsou agregované dotazy rozděleny.
  • Redundance: Databáze NoSQL je navržena při zachování redundance. Databáze NoSQL je navržena tak, aby zvládla selhání hardwaru namísto jejich zpracování. Problém selhání hardwaru je řešen v době vývoje.
  • Flexibilita: Ve způsobu ukládání dat je obrovská flexibilita, což zvyšuje výkon v databázi NoSQL.
  • Rychlý vývoj: Databáze NoSQL poskytuje snadný způsob, jak změnit způsob ukládání dat nebo změnit spuštěné dotazy. Dávkové zpracování a jednoduché refaktorování jsou prováděny k dosažení masivních změn.

Typy databáze NoSQL

Existují čtyři primární typy databáze NoSQL, tj. Úložiště klíč-hodnota, databáze dokumentů, obchody se širokými sloupci a grafy.

  1. Úložiště klíč - hodnota : Tyto databáze pracují na jednoduchém datovém modelu, který má dvojici jedinečného klíče a hodnotu s ním spojenou. Tyto databáze fungují efektivně a vykazují vysokou škálovatelnost pro ukládání do mezipaměti ve webových aplikacích a správu relací. Pracují s RAM, diskovými jednotkami nebo jednotkami SSD.
  2. Databáze dokumentů: Tyto databáze ukládají polostrukturovaná data a jejich popisy ve formátu dokumentu. Nevztahují se na hlavní schéma pro vytváření a aktualizaci programů. Jejich použití se zvýšilo s použitím JavaScriptu a JSON (JavaScript Object Notation). Používají se pro zpracování dat mobilních aplikací a správu obsahu.
  3. Velkoformátové úložiště: Tyto databáze organizují data do sloupců místo do řádků. Mohou dotazovat velké datové sady rychleji než jiné konvenční databáze. Používají se pro katalogy, detekci podvodů a motory doporučení.
  4. Úložiště grafů: Tyto databáze organizují data jako uzly a hrany, které ukazují spojení mezi uzly. Používají se tam, kde jsou potřeba mapové vztahy, jako je například vztah se zákazníky nebo rezervace rezervačních systémů.

Výhody

  • Vysoká škálovatelnost
  • Vysoká dostupnost
  • Velká kapacita dat
  • Snadná replikace
  • Rychlý výkon
  • Vysoká flexibilita

Nevýhody

  • Úzké zaměření
  • Otevřený zdroj
  • Výzva pro správu
  • GUI není k dispozici
  • Velká velikost dokumentu

Závěr

Tento článek popisuje základní informace o databázi NoSQL, která se používá k ukládání a načítání velkých datových sad nebo ke zpracování velkých dat. Byly vyvinuty, aby překonaly omezení relačních databází.

Doporučené články

Toto byl průvodce Co je databáze NoSQL. Zde jsme diskutovali základní koncept, funkce, typy, výhody a nevýhody. Další informace naleznete také v dalších navrhovaných článcích -

  1. Co je to HDFS?
  2. Je velká data databáze?
  3. Co je VBScript?
  4. Co je to informatika?