Nebyly nalezeny žádné výsledky

Vašemu vyhledávání neodpovídají žádné výsledky.

Abyste našli to, co hledáte, doporučujeme vyzkoušet následující postup:

  • Zkontrolujte pravopis vašich klíčových slov ve vyhledávání.
  • Použijte synonyma pro klíčové slovo, které jste zadali, například zkuste „aplikace“ místo „software“.
  • Vyzkoušejte jedno z populárních vyhledávání uvedených níže.
  • Zahajte nové hledání.
Časté otázky

Co je NoSQL?

Termín „NoSQL“ označuje nerelační typy databází. Tyto databáze ukládají data ve formátu, který se odlišuje od relačních tabulek. Na data v databázích NoSQL se však lze dotazovat pomocí rozhraní API idiomatických jazyků, deklarativních jazyků SQL (Structured Query Language) a jazyků QBE (Query-By-Example). To je také důvodem, proč jsou někdy označovány jako „nejen SQL“ databáze.

K čemu se používá databáze NoSQL?

Hlavními výhodami databází NoSQL jsou vysoká škálovatelnost a dostupnost, takže jsou v rozsáhlém měřítku používány pro webové aplikace pracující v reálném čase a pro big data.

Databáze NoSQL jsou rovněž preferovanou volbou vývojářů, protože se vzhledem ke schopnosti rychlého přizpůsobení měnícím se požadavkům přirozeně hodí pro pružné vývojové paradigma. Umožňují ukládat data způsoby, které jsou intuitivnější a srozumitelnější nebo více odpovídají způsobu, jakým jsou data používána aplikacemi, tedy s menším počtem transformací vyžadovaných při ukládání nebo načítání pomocí rozhraní API ve stylu NoSQL. Databáze NoSQL kromě toho mohou plně využívat cloud k naprostému odstranění prostojů.

Srovnání SQL a NoSQL

Databáze SQL jsou relační, zatímco databáze NoSQL jsou nerelační. Systém správy relačních databází (RDBMS) je základem pro jazyk SQL (Structured Query Language), který uživatelům umožňuje přistupovat k datům ve vysoce strukturovaných tabulkách a pracovat s těmito daty. Jedná se o základní model pro databázové systémy, jako jsou MS SQL Server, IBM DB2, Oracle a MySQL. U databází NoSQL se však syntaxe přístupu k datům může lišit od databáze k databázi.

Srovnání relační databáze a databáze NoSQL

Ke správnému pochopení podstaty databází NoSQL je důležité znát rozdíl mezi RDBMS a nerelačními typy databází.

V systému RDBMS jsou data uložena v databázových objektech, které se nazývají tabulky. Tabulka je kolekce souvisejících datových položek a skládá se ze sloupců a řádků. Tyto databáze vyžadují, aby bylo schéma definováno předem, takže všechny sloupce a jejich přidružené datové typy musí být dopředu známé, jinak aplikace nebudou moci zapisovat data do databáze. Ukládají také informace potřebné k propojení více tabulek prostřednictvím použití klíčů, a tím vytvářejí vztahy mezi více tabulkami. V nejjednodušším případě je klíč používán k načtení určitého řádku, aby jej bylo možné prozkoumat nebo upravit.

Naopak v databázích NoSQL lze data ukládat bez předběžného definování schématu. Tím vám poskytnou možnost rychle přesouvat a iterovat, a definovat tak datový model za běhu. Tento přístup může být vhodný pro specifické požadavky firem, ať už se jedná o úložiště založené na grafech, orientované na sloupce, orientované na dokumenty, nebo úložiště typu klíč-hodnota.

Až do nedávné doby byly nejpoužívanějšími modely relační databáze. Jsou stále mimořádně všudypřítomné a využívané mnoha firmami, ale rozmanitost, rychlost a objemy dat, ke kterým je v současné době potřebné přistupovat, někdy vyžadují, aby byla relační databáze doplněna velmi odlišnou databází. Z tohoto důvodu byly v některých oblastech zavedeny databáze NoSQL, které jsou také označovány jako „nerelační databáze“. Vzhledem ke schopnosti rychlého horizontálního škálování se nerelační databáze dokáží vypořádat s intenzivním provozem a jsou vysoce adaptabilní.

Kdy zvolit databázi NoSQL?

S ohledem na firmy a organizace, které vyžadují rychlé inovace, je nejdůležitější zachovat si pružnost a pokračovat v provozu v plném rozsahu. Databáze NoSQL nabízejí flexibilní schémata a také podporují různé datové modely, které jsou vhodné pro vytváření aplikací vyžadujících velké objemy dat a nízkou latenci nebo krátké doby odezvy. Mezi takové aplikace patří například online webové hry a aplikace elektronického obchodování.

Kdy nezvolit databázi NoSQL?

Databáze NoSQL zpravidla pracují s denormalizovanými daty podporujícími ty typy aplikací, které používají méně tabulek (nebo kontejnerů) a jejichž datové vztahy nejsou modelovány pomocí odkazů, ale spíše jako vložené záznamy (nebo dokumenty). Mnohé klasické interní podnikové aplikace v oblastech financí, účetnictví a plánování podnikových zdrojů používají normalizovaná data, aby nedocházelo k anomáliím nebo duplikacím dat. Tyto typy aplikací zpravidla nejsou vhodné pro použití databáze NoSQL.

Další odlišností databází NoSQL je složitost dotazů. Databáze NoSQL fungují mimořádně dobře s dotazy směřujícími na jednu tabulku. Se zvyšující se složitostí dotazů se však lepší volbou stávají relační databáze. Databáze NoSQL zpravidla nenabízí komplexní spojení, dílčí dotazy a vnoření dotazů v klauzuli WHERE.

Někdy však nemusí existovat možnost volby mezi relačními a nerelačními databázemi. V mnoha případech se společnosti rozhodly pro databáze, které nabízejí konvergovaný model, v němž mohou využívat kombinaci relačních a nerelačních datových modelů. Tento hybridní přístup nabízí zvýšenou flexibilitu při zpracování různých typů dat a současně zajišťuje konzistenci čtení a zápisu bez snížení výkonu.

Co nabízí databáze NoSQL jiného v porovnání s ostatními databázemi?

Jednou z hlavních odlišností databází NoSQL je, že na rozdíl od jiných typů databází většinou používají nestrukturované úložiště. Databáze NoSQL, které byly vyvinuty během posledních dvou desetiletí, byly navrženy pro rychlé a jednoduché dotazy, rozsáhlá data a časté změny aplikací. Navíc výrazně zjednodušují práci vývojářům při programování.

Dalším důležitým rozlišovacím znakem je skutečnost, že databáze NoSQL využívají k horizontálnímu škálování proces označovaný jako horizontální dělení, který umožňuje přidat další počítače ke zpracování dat na více serverech. Vertikální škálování, s kterým se lze setkat v jiných databázích SQL, vyžaduje zvýšení výkonu a rozšíření paměti stávajícího počítače. Tento přístup může být ale neudržitelný, protože je potřebné stále větší úložiště.

Povaha horizontálního škálování podporovaného databázemi NoSQL umožňuje těmto databázím zpracovávat mimořádně velké objemy dat, i když se neustále zvětšují, navíc efektivnějším způsobem. Vertikální škálování si lze představit jako přidání nového parta na stávající dům, zatímco horizontální škálování jako postavení dalšího domu hned vedle původního.

Výhody databáze NoSQL

Bezprecedentní rychlost, rozsah digitálních interakcí a spotřeba dat, které bylo možné sledovat v posledních dvou desetiletích, si vyžádaly, aby firmy přijaly modernější a plynulejší přístup k ukládání dat a přístupu k datům. Vzhledem k tomu, že uživatelé na celém světě požadují nepřetržitý proud obsahu a funkcí, není divu, že se databáze musely rychle přizpůsobit. S ohledem na tuto skutečnost uvádíme několik nejdůležitějších důvodů, proč si vývojáři vybírají databáze NoSQL / nerelační databáze:

  • Flexibilita: V případě databází SQL jsou data uložena v mnohem pevnější, předem definované struktuře. Databáze NoSQL ale umožňují ukládat data volnějším způsobem bez těchto pevně stanovených schémat. Toto uspořádání podporuje inovace a rychlý vývoj aplikací. Vývojáři se tak nemusí zabývat schématy a mohou se soustředit na vytváření systémů, které budou lépe sloužit zákazníkům. Databáze NoSQL mohou snadno zpracovávat veškeré formáty dat, jako jsou strukturovaná, polostrukturovaná a nestrukturovaná data, v jednom úložišti.
  • Škálovatelnost: Místo vertikálního škálování přidáváním dalších serverů lze databáze NoSQL škálovat horizontálně použitím komoditního hardwaru. Disponují tak schopností podporovat zvýšený provoz k uspokojení poptávky bez jakýchkoli prostojů. Díky vertikálnímu škálování se databáze NoSQL mohou zvětšovat a mohou zvyšovat svůj výkon, a proto se staly preferovanou možností pro vyvíjející se datové sady.
  • Vysoký výkon: Architektura vertikálního škálování databáze NoSQL může být obzvláště výhodná při zvýšení objemů dat nebo přenosů. Jak je znázorněno na níže uvedeném obrázku, tato architektura zajišťuje krátké a předvídatelné doby odezvy v jednotkách milisekund. Databáze NoSQL mohou rovněž rychle a spolehlivě přijímat a poskytovat data, a to je důvod, proč jsou používány v aplikacích, které každý den shromažďují terabajty dat a současně vyžadují vysoce interaktivní uživatelské prostředí. Na níže uvedeném obrázku jsou znázorněny rychlost příchozích dat na úrovni 300 čtení za sekundu (modrá linka) s 95. percetilem latence v rozsahu 3 až 4 ms a rychlost příchozích dat na úrovni 150 zápisů za sekundu (zelená linka) s 95. percetilem latence v rozsahu 4 až 5 ms.

    databáze nosql

  • Dostupnost: Databáze NoSQL automaticky replikují data na více serverech, ve více datových centrech nebo cloudových prostředcích. Tím je pro změnu minimalizována latence pro uživatele bez ohledu na to, kde se nacházejí. Tato vlastnost také přispívá ke snížení zátěže správy databází, a tím uvolňuje čas, během kterého se lze zaměřit na jiné priority.
  • Vysoká funkčnost: Databáze NoSQL jsou určeny pro distribuovaná úložiště, která mají mimořádně velké nároky na ukládání dat. Z tohoto důvodu jsou databáze NoSQL ideální volbou pro big data, webové aplikace pracující v reálném čase, ucelené informace o zákaznících, online nakupování, online hry, internet věcí, sociální sítě a online reklamní aplikace.

Typy databází NoSQL

Existují čtyři hlavní typy databází NoSQL:

  • Databáze typu klíč-hodnota: Jde o nejflexibilnější typ databáze NoSQL, protože aplikace má plnou kontrolu nad tím, co je ukládáno do polí hodnot, bez jakýchkoli omezení.
  • Databáze dokumentů: Tyto databáze, které jsou rovněž označovány jako úložiště dokumentů nebo databáze orientované na dokumenty, jsou používány k ukládání, načítání a správě polostrukturovaných dat. Není nutné stanovit, která pole bude dokument obsahovat.
  • Grafová databáze: V této databázi jsou data uspořádána jako uzly a vztahy, které znázorňují propojení mezi uzly. Podporuje tak bohatší a úplnější reprezentaci dat. Grafové databáze jsou používány v sociálních sítích, rezervačních systémech a k odhalování podvodů.
  • Databáze se širokými sloupci: Tyto databáze ukládají data a provádějí jejich správu ve formě tabulek, řádků a sloupců. Jsou v rozsáhlém měřítku nasazovány v aplikacích, které vyžadují formátování sloupců k zachycení dat bez schémat.

Vyzkoušení řešení Oracle NoSQL Database

Služba Oracle NoSQL Database Cloud Service usnadňuje vývojářům vytváření aplikací pomocí modelů databází dokumentů, sloupcových databází a databází typu klíč-hodnota, které poskytují předvídatelné doby odezvy v jednotkách milisekund s replikací dat pro zajištění vysoké dostupnosti. Tato služba nabízí transakce ACID, bezserverové škálování, komplexní zabezpečení a nízké ceny s platbou podle použití.

Služba Oracle NoSQL Database Cloud Service je nyní součástí programu Oracle Cloud Free Tier, jenž zahrnuje bezplatné, časově omezené propagační zkušební verze, které vám umožní prozkoumat rozsáhlou řadu cloudových služeb, stejně jako sadu trvale bezplatných služeb, jejichž platnost nikdy nevyprší.

Vytvářejte, testujte a nasazujte aplikace v prostředí Oracle Cloud zdarma.