Turinys:
Apibrėžimas - ką reiškia „NoSQL“?
„NoSQL“ yra duomenų bazių valdymo sistemų (DBVS) klasė, kuri nesilaiko visų reliacinių DBVS taisyklių ir negali naudoti tradicinio SQL duomenų užklausai. Šis terminas yra šiek tiek klaidinantis, kai aiškinamas kaip „nėra SQL“, o dauguma jo verčia kaip „ne tik SQL“, nes šios rūšies duomenų bazės paprastai nėra RDBMS ir SQL pakaitalas, bet papildymas.
„NoSQL“ pagrįstos sistemos paprastai naudojamos labai didelėse duomenų bazėse, kurios yra ypač linkusios į veikimo problemas, kurias sukelia SQL apribojimai ir duomenų bazių santykinis modelis. Daugelis galvoja apie „NoSQL“ kaip šiuolaikinę pasirinktą duomenų bazę, atitinkančią žiniatinklio reikalavimus. Svarbios NoSQL realizacijos yra „Facebook“ „Cassandra“ duomenų bazė, „Google“ „BigTable“ ir „Amazon“ „SimpleDB“ ir „Dynamo“.
„Techopedia“ paaiškina „NoSQL“
„NoSQL“ duomenų bazė nebūtinai laikosi griežtų taisyklių, reglamentuojančių operacijas reliacinėse duomenų bazėse. Šios pažeistos taisyklės žinomos santrumpa ACID (atomumas, nuoseklumas, vientisumas, patvarumas). Pavyzdžiui, NoSQL duomenų bazėse nenaudojamos fiksuotos schemų struktūros ir SQL jungtys.
Tradicinėje RDBMS pagrindinės operacijos skaitomos ir rašomos. Skaitymai gali būti padidinami atkartojant duomenis keliose mašinose, tokiu būdu suderinant skaitymo užklausas. Tačiau tai turi įtakos rašymui, nes reikia išlaikyti duomenų nuoseklumą. Tik rašantieji gali būti keičiami dalijant duomenis. Tai daro įtaką skaitymams, nes paskirstomos jungtys paprastai būna lėtos ir sunkiai įgyvendinamos. Be to, norėdamos išlaikyti ACID savybes, duomenų bazės turi užrakinti duomenis. Tai reiškia, kad kai vienas vartotojas atidaro duomenų elementą, joks kitas vartotojas neturėtų turėti galimybės to paties elemento keisti. Šis apribojimas turi rimtų padarinių našumui.
Šie apribojimai praeityje nebuvo pagrindinė problema. Tačiau atsiradus socialiniams tinklams ir dideliems duomenims, daugybė atsiradusių masinių duomenų bazių buvo priverstos aptarnauti dešimtis ar net šimtus milijonų klientų visame pasaulyje su kiekvienu tūkstančiu kiekvieną minutę skaitančių ir rašančių. Tradiciniai RDBVS paprasčiausiai neatitinka šio poreikio, nes jie gali tik „padidinti mastelį“ arba padidinti išteklių centriniame serveryje. Kita vertus, „NoSQL“ diegimas gali „išplėsti mastelį“ arba paskirstyti duomenų bazės apkrovą daugiau serverių.
„NoSQL“ duomenų bazės yra orientuotos į tam tikras problemų klases - nuo lankstesnio saugomų duomenų (dokumentų saugyklų) iki tikslinių naudojimo atvejų, pvz., Ryšių (grafikų duomenų bazės) ir duomenų kaupimo (stulpelių duomenų bazės) ar tiesiog duomenų bazės idėjos supaprastinimo iki kažkas, kas saugo vertę (raktas / vertė saugo).
„NoSQL“ duomenų bazėse yra greito mastelio, geresnio našumo ir paprastesnės struktūros, palyginti su RDBMS, pranašumai. Tačiau jie taip pat kenčia dėl to, kad yra palyginti nauja ir neįrodyta technologija, todėl jie negali pateikti turtingos RDBVT ataskaitų teikimo ir analizės funkcijos.
