Co je NoSQL? Následující pochopení NoSQL a jeho výhod
V této diskusi budeme sdíletmálo znalostí o porozumění a koncepcích databází NoSQL. Nejprve prozkoumáme jméno nejprve co je NoSQL, doslova je 'non SQL' nebo 'non reational SQL'. Ale někdy se také označuje jako „nejen SQL“, což znamená lépe než SQL. Protože se tvrdí, že NoSQL má schopnost překročit konvenční databázové RDBMS databáze (tabulkový).
Pro ty z vás, kteří studovali nebo pracovali v oboru programování databáze samozřejmě jste obeznámeni s pojmem databázeNa bázi RDBMS, jako je MS Access, MS SQL Server, MySQL, MariaDB, PostgreSQL a SQLite. Koncept RDBMS je tabulková databáze, z nichž každá sestává z propojených tabulek (tabulkový vztah), zejména ve sloupcích Primární klíč (PK) a Cizí klíč (FK).
NoSQL se liší od SQL, nevyžaduje schématu a nemá tabulkové vztahy, takže je flexibilnější. Databáze NoSQL stále roste ve svém počtu využití, zejména při implementaci velká data a aplikace web v reálném čase. Jeho popularita pokračovala na vzestupu na začátku tohoto tisíciletí, vyvolaného potřebami společností a aplikací založených na webu 2.0 zpracováno.
Co je NoSQL?
SQL je zkratka Strukturovaný dotazovací jazyk, což je koncept strukturované databázeze schémat, tabulek, sloupců a řádků. Volání dotazu nebo syntaxe dat v databázích SQL využívající relace tabulek médií. Současně lze svolat několik datových skupin z různých tabulek.
Pokud chce uživatel zobrazit dataje žádoucí, pak to lze provést pomocí specifického návrhu jazyka dotazu. Tabulky v databázi SQL jsou sadou pevných a pevných tabulek. Nepatrná změna struktury v jedné tabulce proto může mít za následek selhání předprogramovaných dotazů v částech Pohled nebo Spouštěč. Omezení, kterým čelí SQL databáze, spočívají ve složitosti udržovat (údržba systému) a vývoj rozsahu dat. Porozumění pojmu SQL předem vám může pomoci pochopit, co je NoSQL.
Porozumění NoSQL (Non SQL) je koncept i databázový modelflexibilní. Obecně a konkrétně NoSQL nedodržuje pravidla relačních databází (RDBMS). NoSQL také nepoužívá jazyk dotazu SQL. NoSQL je jiný databázový model ve srovnání s SQL.
Termín NoSQL byl poprvé publikovánCarlo Strozzi v roce 1998, aby pojmenoval databázi, kterou v té době vyvíjel, „open-source relační databázi Strozzi NoSQL“. Strozzi uvedl, že v té době byla činnost NoSQL „velmi odlišná“ od relační databáze jako celku, proto ji nazval „NoREL“, což se týká termínu „žádný vztah“.
Na začátku roku 2009 Johan Oskarsson, jeden z vývojářů společnosti Last.fm, znovu zavedl termín NoSQL, když uspořádal akci, aby diskutoval o „open source distribuované, nerelační databáze"(Distribuováno jako otevřený zdroj, nerelační databáze).
Databáze NoSQL byla vyvinuta jako nadějeřešit klasické problémy v databázích SQL. Databáze NoSQL se liší od databází SQL, kde se používá pouze jeden typ metody ukládání dat. Struktura databáze NoSQL je dynamičtější a flexibilnější se čtyřmi (4) typy modelů ukládání dat, dále s příklady a krátkými definicemi.
- Úložiště klíč-hodnota (KV): ArangoDB, Apache Ignite, databáze Oracle NoSQL, Couchbase, Dynamo, Redis, Ripple.
Úložiště KV používá asociativní pole, známé také jako mapa nebo slovník jako základ pro svůj datový model. V tomto modelu jsou data prezentována jako párovaná kolekce KV. - Na základě dokumentu: Apache CouchDB, ArangoDB, BaseX, Clusterpoint, Couchbase, Cosmos DB, IBM Domino, MarkLogic, MongoDB, OrientDB, Qizx, RethinkDB.
Koncept ukládání dat na základě dokumentu jenápad z pojmu „dokument“. Tam, kde se obecně předpokládá každá implementace databáze založená na dokumentech, jsou dokumenty zapouzdřeny (zapouzdřeny) a zakódovány do standardního formátu kódování. - Sloupec: Accumulo, Cassandra, Scylla, HBase.
Lze také nazvat široko-sloupcovým modelemVelmi rychlý přístup k datům pomocí klíče řádku, názvu sloupce a časové značky buňky. Flexibilita schématu tohoto typu databáze umožňuje, aby záznamy ve sloupcích (sloupcích) nemusely být konzistentní. Uživatelé mohou přidat sloupce do jednoho konkrétního řádku, aniž by je museli přidat do každého záznamu. - Na základě grafu: AllegroGraph, ArangoDB, InfiniteGraph, Apache Giraph, MarkLogic, Neo4J, OrientDB, Virtuoso.
Teoreticky se struktura založená na grafech skládá zvrcholy a hrany (data a spojení), které lze nazvat datovými vztahy. Grafy se chovají podobně, jak si lidé myslí, data jsou uspořádána ve specifických vztazích mezi datovými jednotkami, které mají své vlastní charakteristiky. Tento typ databáze je užitečný pro vizualizaci, analýzu a pomoc při hledání spojení mezi různými daty.
Pro více detailů, to může být klasifikováno do deseti (10) typů modelů ukládání dat, a to následovně spolu s příklady (na základě pozorování Stephena Yena).
- Mezipaměť klíč-hodnota: Apache Ignite, koherence, škála eXtreme, Hazelcast, Infinispan, Memcached, Velocity.
- Obchod klíč-hodnota: ArangoDB, Aerospike.
- Úložiště klíč-hodnota (případně konzistentní): Oracle NoSQL Database, Dynamo, Riak, Voldemort.
- Úložiště klíč-hodnota (objednáno): FoundationDB, InfinityDB, LMDB, MemcacheDB.
- Server datových struktur: Redis.
- Tuple Store: Apache River, GigaSpaces.
- Objektová databáze: Objectivity / DB, Perst, ZopeDB.
- Obchod s dokumenty: ArangoDB, BaseX, Clusterpoint, Couchbase, CouchDB, DocumentDB, IBM Domino, MarkLogic, MongoDB, Qizx, RethinkDB, Elasticsearch.
- Široký sloupový obchod: Amazon DynamoDB, Bigtable, Cassandra, Scylla, HBase, Hypertable.
- Nativní multimodální databáze: ArangoDB, Cosmos DB, OrientDB, MarkLogic.
Jaká jsou použití NoSQL? Jaký je rozdíl s SQL?
Funkce databáze NoSQL je stejná jako funkce databázeSQL classic, ale s jeho vlastními výhodami a nevýhodami. Stejně jako RDBMS SQL obecně, NoSQL je užitečná pro zpracování dat a jejich ukládání pro opětovné použití nebo přístup jak ze strany serveru, tak ze strany klienta. Data jsou ukládána konzistentně, takže server i klient vidí stejná data.
NoSQL dodržuje pravidla BASE, tzn. V podstatě k dispozici, měkký stav, a Případná konzistence. Data v něm se mohou změnit, i když neexistujívstup, je to jako RDBMS s automaticky nainstalovaným Triggerem. Proto je NoSQL vhodnější a vhodnější pro aplikace, které vyžadují změny rychle (rychle), protože je dynamičtější a flexibilnější.
Výhody NoSQL databáze ve srovnání s SQL databází
V některých případech se považuje NoSQL za lepší práci než relační SQL, včetně následujících.
- Když potřebujete ukládat velké množství dat s nekonzistentním schématem.
Schéma dat v NoSQL není opraveno jako u SQL, změny ve struktuře a schématech, které se mohou kdykoli změnit, lze snadno zvládnout, aniž by bylo nutné měnit konzistenci dat v samotné databázi. - Pokud potřebujete výpočetní techniku a ukládání dat cloudové.
Většina databází NoSQL je vytvořena a navržena pro práci datové centrum různé a běží jako systémdistribuováno. V tomto případě bude pro vás jako uživatele NoSQL přínos, protože můžete využít přístup k různým cloudovým výpočetním infrastrukturám. - Když se stanete vývojář webu nebo vývojář aplikací a to potřebujete aktualizace rychle (rychle).
S NoSQL nemusíte připravovat datajako byste používali RDBMS (SQL), můžete migrovat strukturovaná data z jedné verze aplikace do další aktualizované verze, kdykoli je aktualizován návrh aplikace. Dynamická povaha NoSQL se může vyvíjet spolu s měnícími se aplikacemi.
Nedostatek NoSQL databáze ve srovnání s SQL databází
V konceptu databáze RDBMS existují pravidla KYSELINA, konkrétně čtyři (4) pravidla pro datové transakce. ACID je zkratka Atomová, konzistentní, izolovaná, a Odolné.
- Atomová což znamená, že každý záznam nebo řádek jsou jedinečná data, nelze je nahradit jinými daty.
- Konzistentní, každý řádek dat jsou konzistentní data, což znamená, že data zůstanou konzistentní i po provedení určité operace. Server a klient uvidí stejná data.
- Izolované to znamená, že každá změna v jednom záznamu je jedna nezávislá transakce, která nemá nic společného s jinými transakcemi záznamu.
- Odolné, což znamená, že po dokončení transakce se důsledky změn záznamu ukládají spolehlivě a trvale.
To je důvod, proč se RDBMS označuje jakopevná databáze. NoSQL nesplňuje pravidla ACID, může to být konzistentní, ale nemůže to být atomová, izolovaná a trvanlivá. NoSQL není vhodný pro aplikace, které vyžadují pevná data, jako jsou záznamy o biologických údajích zaměstnanců, sčítání lidu, lékařské záznamy, záznamy o otiscích prstů a mnoho dalších příkladů. Doufejme, že tento článek o porozumění NoSQL je užitečný a snadno pochopitelný!