Big data tahlili


Riak kalit-qiymat ma’lumotlar bazasi


Download 1.27 Mb.
bet49/71
Sana25.02.2023
Hajmi1.27 Mb.
#1229835
1   ...   45   46   47   48   49   50   51   52   ...   71
Bog'liq
A.X.Ruzmetov Qollanma

Riak kalit-qiymat ma’lumotlar bazasi
Kalit-qiymat juftlarining keng qo‘llaniladigan ochiq manbali ma’lumotlar bazalaridan biri Riak (http://wiki.basho.com) deb nomlanadi. U Basho Technologies (www.basho.com) tomonidan ishlab chiqilgan va saqlanib kelinmoqda hamda Apache Software v2.0 litsenziyasi ostida mavjud.
Riak - bu juda muhim va asosiy ma’lumotlar bazasini miqyosli ravishda amalga oshirish. U tez o‘zgaruvchan ma’lumotlar bilan yuqori hajmli muhitni qo‘llab-quvvatlaydi, chunki u yengil. Riak, ayniqsa, moliyaviy xizmatlarning real vaqt rejimidagi savdosini tahlil qilishda samaralidir. Bu kalitlar va qiymatlar to‘plamlarini tashkil etish mexanizmi sifatida “savatlar”dan foydalanadi. Riak dasturlari - bu peer-to-peer tarmog‘ida tashkil etilgan fizik yoki virtual tugunlarning klasterlari. Asosiy tugun mavjud emas, shuning uchun klaster bardoshli va juda miqyosli. Barcha ma’lumotlar va amallar klaster bo‘yicha taqsimlanadi. Riak klasterlari qiziqarli ishlash profiliga ega. Kattaroq klasterlar (ko‘proq tugunlarga ega) kamroq tugunlarga qaraganda yaxshiroq va tezroq ishlaydi. Klasterdagi aloqa maxsus Gossip protokoli yordamida amalga oshiriladi. Gossip klaster holati haqidagi ma’lumotlarni saqlaydi va savat ma’lumotlarini baham ko‘radi.
Riak juda ko‘p xususiyatlarga ega va quyidagilardan tashkil topgan ekotizimning bir qismidir:

  • Parallel ishlov berish. MapReduce-dan foydalanib, Riak real vaqtda tahlil qilish va hisoblash uchun klaster bo‘yicha so‘rovlarni qismlarga ajratish va qayta ishlash qobiliyatini qo‘llab-quvvatlaydi.

  • Havolalar va havolalarga o‘tish: Riak havolalar yordamida grafikalar ma’lumotlar bazasini taqlid qilish uchun ishlab chiqilishi mumkin. Havolani kalit-qiymat juftliklari orasidagi bir tomonlama aloqa deb hisoblash mumkin. Havolalarni bosish (ularni bosish) kalit-qiymat juftliklari o‘rtasidagi munosabatlar xaritasini beradi.

  • Qidiruv: Riak Search xatolarga chidamli taqsimlangan to‘liq matnli qidirish qobiliyatiga ega. Qiymatlarni kalitlarga tez o‘tkazish uchun segmentlarni indekslash mumkin.

  • Ikkilamchi indekslar: Ishlab chiquvchilar bir yoki bir nechta asosiy maydon qiymatlari bilan qiymatlarni belgilashlari mumkin. Keyin dastur indeksni so‘rab, mos keladigan kalitlarning ro‘yxatini qaytarishi mumkin. Bu katta ma’lumotni amalga oshirishda juda foydali bo‘lishi mumkin, chunki operatsiya atomik va real vaqt rejimini qo‘llab-quvvatlaydi.

Riak ni qo‘llash quyidagilarda juda mos keladi:

  • Ijtimoiy tarmoqlar, jamoalar yoki o‘yinlar uchun foydalanuvchi ma’lumotlari

  • Katta hajmdagi multimedia ma’lumotlarini yig‘ish va saqlash

  • MBBT va NoSQL ma’lumotlar bazalarini ulash uchun keshlash darajasi

  • Moslashuvchanlik va ishonchlilikni talab qiluvchi mobil ilovalar.

Hujjatlar ma’lumotlar bazalari


Hujjatlar ma’lumotlar bazalasini ikki turini topish mumkin. Ulardan biri ko‘pincha hujjat uslubidagi to‘liq tarkib (Word fayllari, to‘liq veb-sahifalar va boshqalar) uchun ombor sifatida tavsiflanadi. Ikkinchisi - bu statik ob’ekt sifatida doimiy saqlash yoki hujjat qismlarini dinamik ravishda yig‘ish uchun hujjat tarkibiy qismlarini saqlash uchun ma’lumotlar bazasi. Hujjatlar tarkibi va ularning qismlari JavaScript Object Notation (JSON) va/yoki Binary JSON (BSON) tomonidan ta’minlanadi. Hujjatlar ma’lumotlar bazalari juda ko‘p hisobotlarni tuzish kerak bo‘lganda va ularni tez-tez o‘zgarib turadigan elementlardan dinamik ravishda yig‘ish kerak bo‘lganda foydalidir. Yaxshi misol – sog‘liqni saqlash sohasidagi hujjatlarning bajarilishi, unda tarkibning mazmuni ishtirokchining profiliga (yoshi, yashash joyi, daromad darajasi), sog‘liqni saqlash rejasiga va hukumat dasturida ishtirok etish huquqiga qarab o‘zgaradi. Ikkala uslub ham katta ma’lumotlarni amalga oshirish uchun muhimdir, shuning uchun har birining tafsilotlarini tushunishingiz kerak.
JSON, asosan, JavaScript dasturlash tilining quyi qismtarmog‘iga asoslangan ma’lumotlar almashinuvi formatidir. Garchi u dasturlash tilining bir qismi bo‘lsa-da, u matnli xususiyatga ega va o‘qish va yozishda juda oson. Bundan tashqari, uning afzalliklari shundaki, kompyuterlar bilan ishlash oson. JSON-da ikkita asosiy tuzilma mavjud va ularni zamonaviy dasturlash tillari hammasini bo‘lmasa ham ko‘pchiligini qo‘llab-quvvatlaydi. Dastlabki asosiy tuzilma - bu ob’ektlar, yozuvlar, tugmachalar ro‘yxati va boshqalar sifatida ifodalanadigan ism/qiymat juftlari to‘plami. Ikkinchi asosiy struktura - dasturiy ravishda massivlar, ro‘yxatlar yoki ketma-ketliklar sifatida ifodalangan qiymatlarning tartiblangan ro‘yxati. BSON - bu ishlash va ko‘lamini yaxshilash uchun mo‘ljallangan JSON tuzilmalarining ikkilik ketma-ketligi.
Hujjatlar bazalari katta ma’lumotlarni qabul qilishning oltin standartiga aylanmoqda, shuning uchun biz ikkita eng mashhur dasturlarni ko‘rib chiqamiz.
MongoDB
MongoDB (www.mongodb.com) - hu (mongo) us ma’lumotlar bazasi tizimining loyiha nomi. U 10gen tomonidan ochiq manba sifatida saqlanadi va GNU AGPL v3.0 litsenziyasi ostida erkin foydalanish mumkin. To‘liq qo‘llab-quvvatlanadigan tijorat litsenziyalari 10gen veb-saytida (www.10gen.com) mavjud.
Ommaboplikda MongoDB tobora ommalashib bormoqda va sizning katta ma’lumotlaringizni amalga oshirishni qo‘llab-quvvatlaydigan ma’lumotlar ombori uchun yaxshi tanlov bo‘lishi mumkin. MongoDB “to‘plamlar” ni o‘z ichiga olgan ma’lumotlar bazalaridan iborat. To‘plam “hujjatlar” dan va har bir hujjat maydonlardan iborat. Relyatsion ma’lumotlar bazalarida bo‘lgani kabi, to‘plamni indekslashingiz mumkin. Bu ma’lumot olishning ishlashini yaxshilaydi. Ammo, boshqa ma’lumotlar bazalaridan farqli o‘laroq, MongoDB ma’lumotlar uchun ko‘rsatgich bo‘lib xizmat qiladigan “kursor” deb nomlangan narsani qaytaradi. Bu juda foydali xususiyat, chunki u ma’lumotlarni chiqarib tashlamasdan hisoblash yoki tasniflash imkoniyatini beradi. MongoDB tabiiy ravishda BSONni qo‘llab-quvvatlaydi, bu JSON hujjatlarining ikkilik dasturidir.
MongoDB shuningdek quyidagi elementlardan tashkil topgan ekotizimdir:

  • LAN va WAN-larda ko‘lamini kengaytirish uchun yuqori mavjudlik va replikatsiya xizmatlari.

  • Katta ob’ektlarni bir nechta hujjatlarda bo‘lishish orqali saqlashga imkon beradigan tarmoqqa asoslangan fayl tizimi (GridFS).

  • MapReduce har xil to‘plamlar hujjatlarni tahlil qilish va to‘plashni qo‘llab-quvvatlash uchun.

  • Bitta ma’lumotlar bazasini bir yoki bir nechta ma’lumotlar markazidagi serverlar klasteri orqali tarqatadigan sharding xizmati. Xizmat shard kaliti tomonidan boshqariladi. Shard tugmachasi hujjatlarni bir nechta nusxalarda aqlli ravishda tarqatish uchun ishlatiladi.

  • Vaqtinchalik so‘rovlarni, tarqatilgan so‘rovlarni va to‘liq matnli qidirishni qo‘llab-quvvatlovchi so‘rov xizmati.

MongoDB-ning samarali dasturlariga quyidagilar kiradi:

  • Tarkibni boshqarish;

  • Ijtimoiy tarmoq;

  • Arxivlash;

  • Real vaqtda tahlil qilish.

CouchDB
Boshqa juda ommabop bo‘lmagan, ma’lumotlar bazasi - CouchDB (http://couchdb.apache.org). MongoDB singari, CouchDB ham ochiq manba hisoblanadi. U Apache Software Foundation (www.apache.org) tomonidan ta’minlanadi va Apache License v2.0 ostida mavjud. MongoDB-dan farqli o‘laroq, CouchDB Internetni har tomonlama taqlid qilishga mo‘ljallangan edi. Masalan, CouchDB tarmoq uzilishlariga chidamli va tarmoq ulanishi beqaror bo‘lgan joylarda yaxshi ishlashni davom ettiradi. Bundan tashqari, u uyda smartfon yoki ma’lumotlar markazida joylashgan. Bularning barchasi bir nechta kelishuvlarga ega. Vebning kamsitilishi sababli, CouchDB yuqori kechikishga ega va bu mahalliy saqlash uchun afzalliklarga olib keladi. CouchDB taqsimlanmagan holda ishlashi mumkin bo‘lsa-da, bu kichik dasturlar uchun juda mos emas. Katta ma’lumotni amalga oshirishni boshlaganingizda ushbu kelishmovchiliklarni e’tiborsiz qoldirib bo‘lmasligini aniqlashingiz kerak.
CouchDB ma’lumotlar bazalari maydonlar va qo‘shimchalardan tashkil topgan hujjatlardan, shuningdek tizim tomonidan avtomatik ravishda saqlanadigan metadata ko‘rinishidagi hujjatning “tavsifi” dan iborat. Asosiy texnologiya RMBBT dunyosidan tanish bo‘lgan barcha ACID imkoniyatlarini o‘z ichiga oladi. CouchDB-ning relyatsiondan ustunligi shundaki, ma’lumotlar satrlar va jadvallar bo‘ylab tarqalmasdan, paketlangan va ularni boshqarish yoki saqlashga tayyorligidadir.
CouchDB, shuningdek, quyidagi imkoniyatlarga ega ekotizim hisoblanadi:

  • Bekor qilish: Ma’lumotlar bazasi ma’lumotlarning ma’lumot darajasiga erishishda zarur bo‘lmagan maydonni olib tashlash uchun qisqartiriladi. Bu barqarorlikni ta’minlash uchun unumdorlik va samaradorlikni oshirishga xizmat qilmoqda.

  • Ko‘rib chiqish modeli: ma’lumotlar ma’lumotlar bazasida hujjat shaklida saqlanadigan aniqlash tizimidan foydalangan holda ma’lumotlar bo‘yicha filtrlash, tashkil etish va hisobot berish mexanizmi. Ma’lumotlar bazalari va ko‘rinishlar o‘rtasida birdan ko‘pga bog‘liqlikni aniqlaysiz, shuning uchun kesilgan va kesilgan bo‘lakli ma’lumotlarni aks ettirishning turli xil usullarini yaratishingiz mumkin.

  • Replikatsiya va taqsimlangan xizmatlar: hujjatlarni saqlash joyi ikki yo‘nalishli replikatsiyani ta’minlash uchun mo‘ljallangan. Qismiy replikalarni mezonlar asosida tarqatilishini yoki ulanish imkoniyatlari cheklangan uskunalarga migratsiyani qo‘llab-quvvatlash uchun qo‘llab-quvvatlash mumkin. Mahalliy replikatsiyasi bir rangli tarmoqga asoslangan, biroq Master/Slave, Master/Master funktsiyalarini amalga oshirish mumkin.

CouchDB-ning samarali dasturlariga quyidagilar kiradi:

  • Tarkibni boshqarish;

  • Smartfondan ma’lumotlar markaziga masshtablash;

  • Tarmoq ulanishlari cheklangan yoki sekin bo‘lgan ilovalar.

Ustunli ma’lumotlar bazalari


Relyatsion ma’lumotlar bazalari qatorga yo‘naltirilgan, chunki jadvalning har bir satridagi ma’lumotlar birgalikda saqlanadi. Ustun yoki ustunli ma’lumotlar bazasida ma’lumotlar qatorlar bo‘yicha saqlanadi. Bu juda ahamiyatsiz tuyulishi mumkin bo‘lsa-da, ustunli ma’lumotlar bazalarining eng muhim xarakteristikasi. Ustunlarni qo‘shish juda oson va ko‘proq moslashuvchanlik, ishlash va o‘lchamlarni oshirish uchun qatorlar qatoriga qo‘shilishi mumkin. Ma’lumotlar miqdori va xilma-xilligiga ega bo‘lganingizda, ustunli ma’lumotlar bazasidan foydalanishingiz mumkin. Bu juda moslashuvchan; faqat ustunlar qo‘shishni davom ettirasiz.

Download 1.27 Mb.

Do'stlaringiz bilan baham:
1   ...   45   46   47   48   49   50   51   52   ...   71




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling