O’ZBEKISTON RESPUBLIKASI AXBOROT
TEXNOLOGIYALARI VA
KOMMUNIKATSIYALARNI
RIVOJLANTIRISH VAZIRLIGI
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI
UNIVERSITETI
Fan Kiberxavfsizlik asoslari
MUSTAQIL ISH
Mavzu: NoSQL ga kirish va uning imkoniyatlari
Guruh: 217 - 19
Bajardi: Anvardinov Jasurbek
Tekshirdi: Sarvar Mahmudxo’janov
TOSHKENT-2020
Reja
I.Kirish.Umumiy ma’lumotlar
II.Asosiy qism. 1. NoSQL-ga kirish
2. NoSQL-ning afzalliklari va kamchiliklari
3. SQL va NoSQL o'rtasidagi farqlar
4.SQL ning va NoSQL dan ko’proq
o’rganilishining sababi
III.Xulosa.
Kirish
NoSql(Not Only SQL yoki No Sql) tushunchasi 2009-yildan boshlab
mashhurbo'la boshladi. Aynan o'sha davrda web texnologiyalar va ijtimoiy xizmatlar
ma'lumotlarni saqlash va ular ustida amallar bajarish usullari rivoji uchun yangi turtki
berdi.Bunday loyiha yaratuvchilari odatiy ma'lumotlarni saqlash tizimlari mos
kelmaydigan yoki juda ham qimmatlik qiladigan masalalarini hal qilishlariga to'g'ri
keldi. Bundan tashqari, bunday ma'lumotlar omborini boshqa yangi turdagi
ma'lumotlar omboriga almashtirishga startapchilar va "Big Data"lar bilan ishlovchilar
sababchi bo'lishdi.huni tushunish kerakki, NoSql bu odatiy ma'lumotlar omboridan
butunlay voz kechish emas. Odatda biron bir ish quroli ma'lum bir muommoni hal
qilish uchun eng qulay bo'lganligi uchun tanlanadi. NoSql haqida gapirishgandi
odatda quyidagi ustunliklarini sanab o'tishadi.Masshtablanuvchanlik. Odatiy
ma'lumotlar omborida mavjud bo'lgan gorizontal masshtablash juda katta mehnatni,
juda katta moliyaviy resurslarni talab qiladi va albatta faqat ma'lum turdagi
masalalarni hal qilish uchun mos keladi holos. Ko'plab NoSql ma'lumotlar omborlari
esa aynan gorizontal masshtablashni hisobga olgan holda loyihalashtirilgan. Va bu
masshtablashni hech qanday qiyinchiliklar amalga oshirish mumkin bo'ladi.Ishlash
tezligi. Ma'lumotlar ombori klasterda emas balki bitta tugundaligi ham asosiy
parametrlardan biri hisoblanadi. Ko'plab masalarni hal qilish uchun odatiy
ma'lumotlar omborlarini tranzaktsionlik, o'zgarishlarni ajratish, bitta tugundan
tashqaridagi ishonchliligi va aynan bog'langa ma'lumotlar omborlari kerak
bo'lmasligi. Shu sababli shu xususiyatlaridan butunlay yoki qisman voz kechishlik
NoSqlga bitta tugunda katta tezlikga erishishga yordam beradi.Keyingi darslarda
NoSql ma'lumotlar omborlari ichida eng yoshi va eng tez rivojlanayotgani MongoDb
haqida ma'lumotlar beriladi.
1.NoSQL - aloqador bo'lmagan DMS bo'lib, u qat'iy sxemani talab qilmaydi,
qo'shilishdan qochadi va o'lchovni osonlashtiradi. NoSQL ma'lumotlar bazasi
ma'lumotlar saqlash uchun juda katta ehtiyojga ega bo'lgan taqsimlangan ma'lumotlar
omborlari uchun ishlatiladi. NoSQL Big ma'lumotlar va real vaqtda veb-ilovalar uchun
ishlatiladi. Masalan, Twitter, Facebook, Google kabi kompaniyalar har kuni terabayt
ma'lumotlarini to'playdi.
Dastlab SQL bo'lmagan yoki aloqador bo'lmagan NoSQL bu ma'lumotni saqlash
va olish mexanizmini ta'minlaydigan ma'lumotlar bazasi. Ushbu ma'lumotlar relyatsion
ma'lumotlar bazalarida foydalaniladigan jadval munosabatlaridan tashqari boshqa
vositalarda modellashtirilgan. Bunday ma'lumotlar bazalari 1960 yillarning oxirida
paydo bo'lgan, ammo XXS asrning boshlarida mashhurlik oshguncha NoSQL
ko'rsatuvchisini olmagan. Karl Strozz 1998 yilda NoSQL kontseptsiyasini taklif qildi.
SQL kabi so'rov tillarini qo'llab-quvvatlashlari mumkinligini ta'kidlash uchun,
NoSQL tizimlari ba'zan nafaqat SQL deb ataladi.
NoSQL ma'lumotlar bazasi dizaynning soddaligini, mashinalar klasterlariga
gorizontal miqyosni soddalashtirishni va mavjudlik ustidan nozik nazoratni o'z ichiga
oladi. NoSQL ma'lumotlar bazalarida foydalaniladigan ma'lumotlar tuzilmalari,
relatsion ma'lumotlar bazalarida sukut bo'yicha ishlatilganlardan farq qiladi, bu esa
ba'zi operatsiyalarni NoSQL-da tezlashtiradi. Berilgan NoSQL ma'lumotlar bazasining
yaroqliligi uni hal qilishi kerak bo'lgan muammoga bog'liq. NoSQL ma'lumotlar
bazalari tomonidan foydalaniladigan ma'lumotlar tuzilmalari, ba'zan relyatsion
ma'lumotlar jadvallariga qaraganda ancha moslashuvchan bo'lib ko'rinadi.
Ko'pgina NoSQL do'konlar mavjudlik, tezlik va qismlarga chidamlilik tarafdori
bo'lgan kelishmovchilikni buzadilar. NoSQL do'konlarining kengroq qabul
qilinishidagi to'siqlar orasida past darajadagi so'rovlar tillaridan foydalanish, standart
interfeyslarning yo'qligi va mavjud relyatsion ma'lumotlar bazasiga oldingi katta
investitsiyalar kiradi. Aksariyat NoSQL do'konlarida haqiqiy ACID (Atomiklik,
Uyg'unlik, Izolyatsiya, Mustahkamlik) tranzaktsiyalari mavjud emas, ammo
MarkLogic, Aerospike, FairCom c-daraxtACE, Google Spanner (texnik jihatdan
NewSQL bazasi bo'lsa h+am), Symas LMDB va OrientDB kabi bir nechta ma'lumotlar
bazasi ularni yaratdi.
2. NoSQL-ning afzalliklari:
MongoDB va Cassandra kabi NoSQL ma'lumotlar bazalari bilan ishlashning
ko'plab afzalliklari mavjud. Asosiy afzalliklari yuqori miqyoslilik va yuqori
imkoniyatlardir.
1. Yuqori miqyosi
NoSQL ma'lumotlar bazasi gorizontal kattalashtirish uchun shardingdan
foydalanadi. Ma'lumotni qismlarga ajratish va uni bir nechta mashinalarga
joylashtirish, ma'lumotlarning tartibi saqlanib qolishi uchun. Vertikal masshtablash
mavjud mashinaga ko'proq resurslarni qo'shishni anglatadi, gorizontal
masshtablash esa ma'lumotlarga ishlov berish uchun qo'shimcha mashinalarni
qo'shishni anglatadi. Vertikal o'lchovni amalga oshirish oson emas, lekin
gorizontal masshtabni amalga oshirish oson. Gorizontal masshtabli ma'lumotlar
bazalariga misollar MongoDB, Cassandra va hokazo. NoSQL ko'lamning
kengayishi sababli juda katta miqdordagi ma'lumotlarni boshqarishi mumkin,
chunki NoSQL shkalasi o'sib borishi bilan ushbu ma'lumotlarni samarali ishlashi
mumkin.
2. Yuqori imkoniyat
NoSQL ma'lumotlar bazalarida avtomatik replikatsiya xususiyati uni yuqori
darajada taqdim etadi, chunki biron bir nosozlik yuz bergan taqdirda ma'lumotlar
avvalgi izchil holatiga qaytariladi.
NoSQLning kamchiliklari:
NoSQL quyidagi kamchiliklarga ega.
1. Tor fokus
NoSQL ma'lumotlar bazasi juda tor markazga ega, chunki u asosan saqlash uchun
mo'ljallangan, ammo u juda kam funksionallikni ta'minlaydi. Nisbiy ma'lumotlar
bazalari NoSQL-ga qaraganda Tranzaktsiyalarni boshqarish sohasida afzalroq
tanlovdir.
2. Ochiq manba
NoSQL ochiq manbali ma'lumotlar bazasi. Hozircha NoSQL uchun ishonchli
standart mavjud emas. Boshqacha aytganda, ikkita ma'lumotlar bazasi tizimi teng
bo'lmasligi mumkin.
3. Boshqaruv muammosi
Katta ma'lumotlar vositalarining maqsadi katta hajmdagi ma'lumotlarni
boshqarishni iloji boricha sodda qilishdir. Ammo bu unchalik oson emas. NoSQL-
da ma'lumotlarni boshqarish juda ko'p
relyatsion ma'lumotlar bazasiga qaraganda ancha murakkab. Xususan, NoSQL-ni
o'rnatish qiyin kechgani va har kuni boshqarishni qiyinlashtirishi bilan tanilgan.
4. GUI mavjud emas
Ma'lumotlar bazasiga kirish uchun GUI rejimi vositalari bozorda moslashuvchan
emas.
5. Zaxira
Zaxira nusxasi ba'zi NoSQL ma'lumotlar bazalari uchun MongoDB kabi juda zaif
nuqtadir. MongoDB-da ma'lumotlarning zaxira nusxasini doimiy ravishda zaxira
qilish uchun hech qanday yondashuv yo'q.
6. Hujjatning katta hajmi
MongoDB va CouchDB kabi ba'zi ma'lumotlar bazalari ma'lumotlarini JSON
formatida saqlaydi. Bu shuni anglatadiki, hujjatlar juda katta (BigData, tarmoqning
o'tkazish qobiliyati, tezligi) va tavsiflovchi kalit nomlarga ega bo'lish aslida zarar
qiladi, chunki ular hujjatlar hajmini oshiradilar.
3.
Turli xil funktsiyalarga ega bo'lgan NoSQL ma'lumotlar bazalarining ko'p turlari
mavjud bo'lishiga qaramay, quyidagi jadvalda SQL va NoSQL ma'lumotlar
bazalarining asosiy farqlari ko'rsatilgan.
SQL
NoSQL ma'lumotlar
bazalari
Optimal ish
yuklari
Raqamli ma'lumotlar bazalari
tranzaktsion va yuqori darajada
izchil onlayn operatsiyalarni
bajarish uchun mo'ljallangan
(
OLTP
) ilovalar va onlayn
analitik ishlov berish (OLAP)
uchun yaxshi.
NoSQL kalit qiymati,
hujjat, diagramma va
xotiradagi ma'lumotlar
bazalari kam
kechiktirilgan dasturlarni
o'z ichiga olgan bir qator
ma'lumotlarga kirish
uchun mo'ljallangan.
NoSQL qidiruv
ma'lumotlar bazalari,
shuningdek yarim
tuzilgan ma'lumotlarni
tahlil qilish uchun
mo'ljallangan.
Ma'lumot
modeli
Relyatsion model qatorlar va
ustunlardan tashkil topgan
jadvallardagi ma'lumotlarni
normallashtiradi. Sxema
jadvallarni, satrlarni,
ustunlarni, indekslarni,
jadvallar o'rtasidagi
munosabatlarni va boshqa
ma'lumotlar bazasini qat'iy
belgilaydi. Ma'lumotlar bazasi
jadvallar o'rtasidagi
munosabatlarda ham mos
yozuvlar yaxlitligini
ta'minlaydi.
Shu bilan birga, NoSQL
ma'lumotlar bazalari
hujjat, grafik, kalit
qiymati, xotirada va
qidirishni o'z ichiga
olgan turli xil
ma'lumotlar modellarini
taqdim etadi.
Kislota
xususiyatlari
Relyatsion ma'lumotlar
bazalari atomlik, izchillik,
izolyatsiya va chidamlilik
(ACID) xususiyatlarini beradi:
Atomiklik tranzaktsiyani to'liq
bajarilishini yoki umuman
bajarilmasligini talab qiladi.
Muvofiqlik shundan iboratki,
bitim tuzilganda ma'lumotlar
bazasi sxemasiga mos kelishi
kerak. Izolyatsiya bir vaqtning
o'zida bitimlarni bir-biridan
alohida bajarilishini talab
qiladi. Chidamlilik,
shuningdek, kutilmagan tizim
uzilishidan yoki elektr
ta'minotidagi uzilishdan
so'nggi ma'lum bo'lgan
holatgacha tiklash qobiliyatini
talab qiladi.
NoSQL ma'lumotlar
bazalari ko'pincha
gorizontal ravishda
masshtablashingiz
mumkin bo'lgan
moslashuvchan
ma'lumotlar modeli
uchun relyatsion
ma'lumotlar bazalarining
ba'zi kislota
xususiyatlarini
yumshatish orqali savdo
qiladi. Bu NoSQL
ma'lumotlar bazalarini
yuqori mahsuldorlik,
kam kechikish holatlari
uchun ajoyib tanlovga
aylantiradi, biz gorizontal
ravishda bitta nusxaning
cheklovlaridan
kattalashtirishimiz kerak.
Ishlash
Ishlash odatda saqlash tizimiga
bog'liq. So'rovlar, indekslar va
jadval tuzilishini
optimallashtirish ko'pincha eng
Ishlash, odatda, asosiy
apparat kümelenmesinin,
tarmoq gecikmeli va
yuqori ko'rsatkichlarga erishish
uchun talab qilinadi.
qidirish dasturining
vazifasi.
O'lchov
Relyatsion ma'lumotlar
bazalari odatda apparatni
hisoblash quvvatini oshirish
yoki faqat o'qish uchun
mo'ljallangan ish yuklarining
nusxalarini qo'shish orqali
masshtabni kengaytirish orqali
kattalashadi.
Biroq, NoSQL
ma'lumotlar bazalari
odatda qismlarga
bo'linadi. Kalit qiymatga
ega bo'lgan kirish
naqshlari deyarli cheksiz
miqyosda doimiy
ishlashni ta'minlaydigan
samaradorlikni oshirish
uchun taqsimlangan
arxitektura yordamida
kattalashishi mumkin.
APIlar
Ma'lumotlarni saqlash va olish
bo'yicha so'rovlar so'rovlar
orqali yuboriladi. Qaysi
tuzilgan so'rovlar tiliga (SQL)
mos keladi. Ushbu so'rovlar
relyatsion ma'lumotlar bazasini
boshqaradi.
Ob'ektga
asoslangan
APIlar
dastur
ishlab chiquvchilari
xotiradagi ma'lumotlar
tuzilmalarini osongina
saqlashlari va olishlari
mumkin. Bo'lim
tugmachalari
bilan
ilovalar
ketma-ket
dastur ob'ektlari va
atributlarini o'z ichiga
olgan asosiy qiymatlarni,
ustunlar to'plamlarini
yoki yarim tuzilgan
hujjatlarni qidirib toping.
Do'stlaringiz bilan baham: |