NoSQL datu bāzu pārskats

Satura rādītājs:

NoSQL datu bāzu pārskats
NoSQL datu bāzu pārskats
Anonim

Akronīms NoSQL tika izveidots 1998. gadā. Daudzi cilvēki domā, ka NoSQL ir nievājošs termins, kas radīts, lai iedurtos SQL. Patiesībā šis termins nozīmē ne tikai SQL. Ideja ir tāda, ka abas tehnoloģijas var pastāvēt līdzās, un katrai no tām ir sava vieta. NoSQL kustība pēdējos gados ir bijusi ziņās, jo daudzi Web 2.0 līderi ir pieņēmuši NoSQL tehnoloģiju. Uzņēmumi, piemēram, Facebook, Twitter, Digg, Amazon, LinkedIn un Google, vienā vai otrā veidā izmanto NoSQL. Sadalīsim NoSQL, lai jūs varētu to izskaidrot savam CIO vai pat saviem kolēģiem.

Image
Image

NoSQL radās no nepieciešamības

Datu krātuve: Pasaulē saglabātie digitālie dati tiek mērīti eksabaitos. Eksabaits ir vienāds ar vienu miljardu gigabaitu (GB) datu. Saskaņā ar Internet.com datiem, 2006. gadā pievienoto saglabāto datu apjoms bija 161 eksabaits. Tikai 4 gadus vēlāk, 2010. gadā, saglabāto datu apjoms būs gandrīz 1000 ExaBytes, kas ir pieaugums par vairāk nekā 500%. Citiem vārdiem sakot, pasaulē tiek glabāts daudz datu, un tas tikai turpinās pieaugt.

Savstarpēji savienoti dati: Dati turpina kļūt savienotāki. Tīmekļa izveidi veicina hipersaites, emuāros ir atgriezeniskās saites, un katrā lielākajā sociālo tīklu sistēmā ir atzīmes, kas saista lietas. Galvenās sistēmas ir veidotas tā, lai tās būtu savstarpēji savienotas.

Sarežģīta datu struktūra: NoSQL var viegli apstrādāt hierarhiskas ligzdotas datu struktūras. Lai paveiktu to pašu SQL, jums būs nepieciešamas vairākas relāciju tabulas ar visu veidu atslēgām. Turklāt pastāv saistība starp veiktspēju un datu sarežģītību. Tradicionālajā RDBVS veiktspēja var pasliktināties, jo mēs uzglabājam milzīgos datu apjomus, kas nepieciešami sociālo tīklu lietojumprogrammās un semantiskajā tīmeklī.

Kas ir NoSQL?

Es domāju, ka viens no veidiem, kā definēt NoSQL, ir apsvērt, kas tas nav. Tas nav SQL un nav relāciju. Kā norāda nosaukums, tas nav RDBMS aizstājējs, bet gan komplimentē to. NoSQL ir paredzēts izplatītiem datu krātuvēm ļoti liela mēroga datu vajadzībām. Padomājiet par Facebook ar 500 000 000 lietotāju vai Twitter, kas katru dienu uzkrāj terabitus datu.

NoSQL datu bāzē nav fiksētas shēmas un savienojumu. RDBMS "palielinās", iegūstot arvien ātrāku aparatūru un pievienojot atmiņu. NoSQL, no otras puses, var izmantot "scaling out". Mērogošana attiecas uz slodzes sadalīšanu pa daudzām preču sistēmām. Šis ir NoSQL komponents, kas padara to par lētu risinājumu lielām datu kopām.

NoSQL kategorijas

Pašreizējā NoSQL pasaule iekļaujas 4 pamatkategorijās.

  1. Key-values Stores pamatā galvenokārt ir Amazon Dynamo Paper, kas tika uzrakstīts 2007. gadā. Galvenā ideja ir hash tabulas esamība, kurā ir unikāla atslēga un rādītājs uz konkrētu datu vienumu. Šiem kartējumiem parasti tiek pievienoti kešatmiņas mehānismi, lai palielinātu veiktspēju.
  2. Sleju ģimenes veikali tika izveidoti, lai uzglabātu un apstrādātu ļoti lielus datu apjomus, kas izplatīti daudzās iekārtās. Joprojām ir atslēgas, taču tās norāda uz vairākām kolonnām. BigTable (Google kolonnu saimes NoSQL modelis) gadījumā rindas tiek identificētas ar rindas taustiņu, kurā dati ir sakārtoti un saglabāti pēc šīs atslēgas. Kolonnas ir sakārtotas pēc kolonnu saimes.

  3. Dokumentu datu bāzes tika iedvesmotas no Lotus Notes, un tās ir līdzīgas atslēgu vērtību veikaliem. Modelis pamatā ir versiju dokumenti, kas ir citu atslēgu vērtību kolekciju kolekcijas. Daļēji strukturētie dokumenti tiek glabāti tādos formātos kā JSON.
  4. Grafu datu bāzes ir veidotas ar mezgliem, attiecībām starp piezīmēm un mezglu īpašībām. Rindu un kolonnu tabulu un stingrās SQL struktūras vietā tiek izmantots elastīgs grafika modelis, ko var mērogot daudzās iekārtās.

Lielākie NoSQL atskaņotāji

NoSQL galvenie spēlētāji ir parādījušies galvenokārt to organizāciju dēļ, kuras tos ir pieņēmušas. Dažas no lielākajām NoSQL tehnoloģijām ir:

  • Dynamo: Dynamo izveidoja Amazon.com, un tā ir visievērojamākā atslēgas vērtību NoSQL datubāze. Amazon bija nepieciešama ļoti mērogojama izplatīta platforma saviem e-komercijas uzņēmumiem, tāpēc viņi izstrādāja Dynamo. Amazon S3 izmanto Dynamo kā uzglabāšanas mehānismu.
  • Cassandra: Cassandra atvērtā pirmkoda avots ir Facebook, un tā ir uz kolonnām orientēta NoSQL datubāze.
  • BigTable: BigTable ir Google patentēta uz kolonnām orientēta datubāze. Google atļauj izmantot BigTable, bet tikai Google App Engine.
  • SimpleDB: SimpleDB ir vēl viena Amazon datu bāze. Izmanto Amazon EC2 un S3, tas ir daļa no Amazon Web Services, kas iekasē maksu atkarībā no lietojuma.
  • CouchDB: CouchDB kopā ar MongoDB ir uz atvērtā koda dokumentiem orientētas NoSQL datu bāzes.
  • Neo4J: Neo4j ir atvērtā pirmkoda grafiku datubāze.

NoSQL vaicājums

Jautājums par to, kā veikt vaicājumus NoSQL datu bāzē, interesē lielāko daļu izstrādātāju. Galu galā dati, kas tiek glabāti milzīgā datubāzē, nevienam nenāk par labu, ja nevarat tos izgūt un parādīt galalietotājiem. vai tīmekļa pakalpojumiem. NoSQL datu bāzes nenodrošina augsta līmeņa deklaratīvo vaicājumu valodu, piemēram, SQL. Tā vietā šo datu bāzu vaicāšana ir> PREFIX foaf:

SELECT ?url

FROM

WHERE {

?līdzstrādnieks foaf:name "Jon Foobar".

?contributor foaf:weblog ?url.

}

NoSQL nākotne

Organizācijas, kurām ir lielas datu uzglabāšanas vajadzības, nopietni meklē NoSQL. Acīmredzot mazākās organizācijās šī koncepcija nesaņem tik lielu pievilcību. Informācijas nedēļas veiktajā aptaujā 44% biznesa IT profesionāļu nav dzirdējuši par NoSQL. Turklāt tikai 1% respondentu ziņoja, ka NoSQL ir daļa no viņu stratēģiskā virziena. Skaidrs, ka NoSQL ir sava vieta mūsu saistītajā pasaulē, taču tai būs jāturpina attīstīties, lai iegūtu tādu masveida pievilcību, kādu daudzi domā.

Ieteicams: