Domov databázy Čo je nosql? - definícia z technológie

Čo je nosql? - definícia z technológie

Obsah:

Anonim

Definícia - Čo znamená NoSQL?

NoSQL je trieda systémov správy databáz (DBMS), ktoré nedodržiavajú všetky pravidlá relačného DBMS a nemôžu na vyhľadávanie údajov použiť tradičné SQL. Tento výraz je trochu zavádzajúci, keď sa interpretuje ako „žiadny SQL“ a väčšinou ho prekladá ako „nielen SQL“, pretože tento typ databázy nie je vo všeobecnosti náhradou, ale skôr doplnkovým doplnkom k RDBMS a SQL.

Systémy založené na NoSQL sa zvyčajne používajú vo veľmi veľkých databázach, ktoré sú obzvlášť náchylné na problémy s výkonom spôsobené obmedzeniami SQL a relačným modelom databáz. Mnohí myslia na NoSQL ako na modernú databázu výberu, ktorá sa prispôsobuje webovým požiadavkám. Niektoré pozoruhodné implementácie NoSQL sú Facebook Cassandra databáza, Google BigTable a Amazon SimpleDB a Dynamo.

Techopedia vysvetľuje NoSQL

Databáza NoSQL nemusí nevyhnutne dodržiavať prísne pravidlá upravujúce transakcie v relačných databázach. Tieto porušené pravidlá sú známe pod skratkou ACID (Atomicity, Consistency, Integrity, Durability). Napríklad databázy NoSQL nepoužívajú pevné štruktúry schém a pripojenia SQL.

V tradičnom RDBMS sú základné operácie čítania a zápisu. Čítanie sa môže škálovať replikáciou údajov do viacerých počítačov, čím sa môžu čítať požiadavky na vyrovnávanie záťaže. Toto však ovplyvňuje zápisy, pretože sa musí zachovať konzistentnosť údajov. Iba zápisy môžu byť upravené rozdelením údajov. Toto ovplyvňuje čítanie, pretože distribuované spojenia sú zvyčajne pomalé a ťažko implementovateľné. Okrem toho, aby sa zachovali vlastnosti ACID, musia databázy zamknúť údaje. To znamená, že keď jeden používateľ otvorí dátovú položku, žiadny iný užívateľ by nemal mať možnosť vykonať zmeny tej istej položky. Toto obmedzenie má vážne dôsledky na výkon.

Tieto obmedzenia neboli v minulosti hlavným problémom. S príchodom sociálnych sietí a veľkých dát však bolo množstvo rozsiahlych databáz, ktoré sa objavili, nútené obslúžiť desiatky alebo dokonca stovky miliónov klientov na celom svete s niekoľkými tisíckami čítaní a zápisov každú minútu. Tradičné RDBMS jednoducho nespĺňajú túto potrebu, pretože môžu iba „zväčšiť“ alebo zvýšiť prostriedky na centrálnom serveri. Implementácia NoSQL na druhej strane môže „škálovať“ alebo distribuovať zaťaženie databázy na viac serverov.

NoSQL databázy sa zameriavajú na konkrétne triedy problémov - od pružnejších informácií o uložených údajoch (ukladanie dokumentov), ​​až po zacielenie na prípady použitia, ako sú vzťahy (databázy grafov) a agregovanie údajov (databázy stĺpcov) alebo iba zjednodušenie myšlienky databázy až po niečo, čo ukladá hodnotu (kľúč / hodnota ukladá).

NoSQL databázy ponúkajú výhody rýchlej škálovateľnosti, oveľa lepšieho výkonu a jednoduchšej štruktúry v porovnaní s RDBMS. Trpí však aj tým, že ide o relatívne novú a neoverenú technológiu a nemôžu poskytovať bohaté funkcie RDBMS na vytváranie správ a analytické funkcie.

Táto definícia bola napísaná v kontexte databázy
Čo je nosql? - definícia z technológie