Skip to main content

NoSQL adatbázisok áttekintése

What is NoSQL? (Lehet 2024)

What is NoSQL? (Lehet 2024)
Anonim

A NoSQL rövidítés 1998-ban készült. Sokan azt gondolják, hogy a NoSQL egy derogációs kifejezés, amelyet az SQL-hez terveztek. Valójában a kifejezés nem csak SQL kifejezést jelenti. Az ötlet az, hogy mindkét technológia egymás mellett létezhet, és mindegyiknek megvannak a maga helye. A NoSQL mozgalom már az elmúlt évek hírében volt, hiszen a Web 2.0 számos vezetője elfogadta a NoSQL technológiát. A Facebook, a Twitter, a Digg, az Amazon, a LinkedIn és a Google hasonlóan a NoSQL-t használják. Nézzük le a NoSQL-t, hogy magyarázza el a CIO-nak vagy akár a munkatársainak.

NoSQL felmerült a szükségből

Adattárolás: A világ tárolt digitális adatait exabájtban méri. Egy exabyte egy milliárd gigabájt (GB) adat. Az Internet.com szerint 2006-ban a tárolt adatok mennyisége 161 exabájt volt. Csak 4 évvel később 2010-ben, a tárolt adatok mennyisége majdnem 1000 ExaBytes, amely több mint 500% -os növekedést jelent. Más szóval, sok adat van tárolva a világban, és csak tovább fog növekedni.

Összekapcsolt adatok: Az adatok egyre inkább összekapcsolódnak. A hiperhivatkozásokkal támogatott internet létrehozása, a blogok pingbackek és minden nagyobb közösségi hálózat olyan címkéket tartalmaz, amelyek összekapcsolják a dolgokat. A nagyobb rendszereket összekapcsolják.

Komplex adatszerkezet: A NoSQL könnyen kezelheti a hierarchikus beágyazott adatstruktúrákat. Ahhoz, hogy ugyanezt tegye az SQL-ben, többféle relációs táblázatot kell használni mindenféle kulcsmal. Ezenkívül van kapcsolat a teljesítmény és az adatok összetettsége között. A teljesítmény csökkenhet a hagyományos RDBMS-ben, mivel a szociális hálózati alkalmazásokban és a szemantikus webben eltöltött adatok hatalmas mennyiségét tároljuk.

Mi a NoSQL?

Azt hiszem, a NoSQL meghatározásának egyik módja az, hogy fontolja meg, mi nem. Ez nem SQL, és nem relációs. Mint a neve is sugallja, ez nem helyettesíti az RDBMS-t, de üdvözli. A NoSQL-t az elosztott adattárolókhoz tervezték nagy mennyiségű adatigényhez. Gondolj a Facebookra az 500.000.000 felhasználóval vagy a Twittervel, amely minden nap egyetlen terabit felhalmoz.

A NoSQL adatbázisban nincs rögzített séma és nincs csatlakozás. Egy RDBMS "felgyorsul", gyorsabb és gyorsabb hardver beszerzésével és memória hozzáadásával. A NoSQL viszont kihasználhatja a "méretezés" előnyeit. A méretezés azt jelenti, hogy a rakományt sok árurendszeren keresztül terjesztik. Ez a NoSQL összetevője teszi gazdaságos megoldást a nagy adatkészletekre.

NoSQL kategóriák

A jelenlegi NoSQL világ 4 alap kategóriába illeszkedik.

  1. Kulcsérték értékek elsősorban az Amazon Dynamo Paper-ben készült, amelyet 2007-ben írtak. A fő ötlet egy hash asztal létezése, ahol egyedi kulcs és mutató van egy adott adatelemhez. Ezeket a leképezésekhez általában cache mechanizmusok kísérik, hogy a teljesítmény maximalizálható legyen.
    1. Oszlop Családi Üzletek hogy sok gépen elosztott nagy mennyiségű adatot tároljanak és dolgozzanak fel. Még vannak kulcsok, de több oszlopra mutatnak. A BigTable (a Google oszlopcsalád nélküli NoSQL modell) esetében a sorokat egy sor kulcs azonosítja, az e gomb által rendezett és tárolt adatokkal. Az oszlopokat oszlopcsaláddal rendezik.
  2. Dokumentum adatbáziss ihlette a Lotus Notes, és hasonlít a kulcsfontosságú értékes boltokban. A modell alapvetően változatos dokumentumok, amelyek más kulcsértékű gyűjtemények gyűjteményei. A félig strukturált dokumentumokat olyan formátumban tárolják, mint a JSON.
  3. Grafikon Adatbáziss csomópontokkal, a jegyzetek közötti kapcsolatok és a csomópontok tulajdonságai alapján épülnek fel. A sorok és oszlopok tábláinak és az SQL merev struktúrájának helyett egy rugalmas grafikon modellt használnak, amely sok gépen skálázható.

Major NoSQL játékosok

A NoSQL legfontosabb szereplői elsősorban az őket elfogadó szervezetek miatt jöttek létre. A legnagyobb NoSQL technológiák közül néhány:

  • Dinamó: A Dynamo-ot az Amazon.com hozta létre, és a legjelentősebb kulcsértékű NoSQL adatbázis. Amazonnak szüksége volt egy nagyon skálázható elosztott platformra az e-kereskedelmi vállalkozások számára, így kifejlesztették a Dynamo-t. Az Amazon S3 Dynamo-t használja a tárolási mechanizmusnak.
  • Cassandra: A Cassandra nyitott volt a Facebooktól, és egy oszloporientált NoSQL adatbázis.
  • BigTable: A BigTable a Google saját, oszloporientált adatbázisa. A Google engedélyezi a BigTable használatát, de csak a Google App Engine használatát.
  • SimpleDB: A SimpleDB egy másik Amazon adatbázis. Használt az Amazon EC2 és S3, ez része az Amazon Web Services, amely díjat díjak használatától függően.
  • CouchDB: A CouchDB és a MongoDB nyílt forráskódú dokumentum-orientált NoSQL adatbázisok.
  • Neo4J: A Neo4j egy nyílt forráskódú grafikus adatbázis.

Querying NoSQL

A NoSQL adatbázis lekérdezésének kérdése az, amit a legtöbb fejlesztő érdekel. Végül is, egy óriási adatbázisban tárolt adatok nem teszik meg bárki számára semmi jót, ha nem tudjuk letölteni és megjeleníteni a végfelhasználókhoz vagy a webes szolgáltatásokhoz. A NoSQL adatbázisok nem nyújtanak magas szintű deklaratív lekérdezési nyelvet, például az SQL-t. Ehelyett az adatbázisok lekérdezése adatmodell-specifikus.

Számos NoSQL platform lehetővé teszi az újraindított kapcsolódásokat az adatokhoz. Más ajánlatkérési API-k. Néhány lekérdezőeszköz van kifejlesztve, amelyek több NoSQL adatbázis lekérdezésére törekednek. Ezek az eszközök általában egyetlen NoSQL kategórián keresztül működnek. Az egyik példa a SPARQL. A SPARQL egy deklaratív lekérdezési specifikáció, amelyet grafikon adatbázisok számára terveztek. Íme egy példa egy SPARQL lekérdezésre, amely egy adott blogger URL-jét (IBM jóvoltából) lekérdezi:

PREFIX foaf: SELECT? UrlTÓL TŐL HOL {"Fo Foar" neve: "Jon Foobar".? contributor foaf: weblog? url.}

A NoSQL jövője

A nagy mennyiségű adattárolási igényű szervezetek komolyan gondolkodnak a NoSQL-n. Nyilvánvaló, hogy a koncepció nem kap annyi húzást a kisebb szervezetekben. Az információs héten végzett felmérés szerint az üzleti informatikusok 44% -a nem hallott a NoSQL-ről. Továbbá a válaszadóknak csak 1% -a számolt be arról, hogy a NoSQL stratégiai irányába tartozik. Nyilvánvaló, hogy a NoSQL-nek helyet kap a kapcsolt világunk, de tovább kell fejlődnie ahhoz, hogy megkapja a tömeges fellebbezést, amelyet sokan azt hiszik.