JavaRush /Kurslar /All lectures for UZ purposes /Ma'lumotlar bazalari bilan tanishuv

Ma'lumotlar bazalari bilan tanishuv

All lectures for UZ purposes
Daraja, Dars
Mavjud

Ma'lumotlar bazalarining paydo bo'lish tarixi: MB va SUBD

Ancha avval, Amerika davlatlaridan birida, katta bir IТ-kompaniyada bir kuni juda katta hajmdagi ma'lumotlarni saqlash vazifasi paydo bo'ldi. Nimasi qiyin ekan, deysizmi? Axir katta kompaniyalarda pul bor, ya'ni ko'proq qattiq disk sotib olish mumkin — va ish bitdi.

Ajoyib yechim, lekin, aytishlaricha, shayton tafsilotlarda. Katta hajmdagi ma'lumotlarni nafaqat saqlash kerak edi, balki ularni o'zgartirish va ulardan turli xil tanlovlar qilish ham kerak edi. Bundan tashqari, turli joylardan turli ma'lumotlarni tanlash va buni tez va chiroyli qilish kerak edi.

Odatiy hol, buyurtmachilar mavjud bo'lmagan narsani xohlashdi, va bu safar qattiq disklarni sotib olish bilan masala hal bo'lmadi.

Shu sababli, bu IТ-kompaniyaning dasturchilari o'zlari uchun kattaroq byudjet so'rashdi, tadqiqot ishlarini o'tkazishdi, va byudjet tugagandan so'ng, ma'lumotlarni Ma'lumotlar Bazasi shaklida saqlashni taklif qilgan prezentatsiyani taqdim etishdi. Barcha ma'lumotlar bazada jadvallarda saqlanadi, va har bir jadval alohida faylda saqlanadi. Barcha buyuklik soddalikda va ish bitadi.

Lekin buyurtmachilar bunday prezentatsiyaga rozi bo'lishmadi va tanqidlar boshlandi:

  • Pul qani, Lebovski?
  • Ma'lumotlar Bazasi nimasi bilan eski yaxshi fayllar to'plamida ma'lumot saqlashdan yaxshiroq?
  • Bizga haqiqatan yaxshi yechim kerak, mana bular emas!
  • Va bularning barchasiga butun byudjet ketdi?

Prezentatsiya xonasida o'lik sukut cho'kdi. Ammo kutilmaganda, barcha uchun vaziyatni yosh dasturchi qutqardi, u MB bilan birga maxsus dastur — SUBD (Ma'lumotlar Bazasini Boshqarish Tizimi) kelayotganini ta'kidladi, va u quyidagilarni qila oladi:

  • Ma'lumotlar Bazalarini yaratish, o'zgartirish va o'chirish
  • Ma'lumotlar bazalariga yangi yozuvlarni kiritish, eski yozuvlarni o'chirish va o'zgartirish
  • Va shuningdek, har qanday ma'lumotlarni super tez tanlashni amalga oshirish

Va dasturchilar hatto super tez ma'lumotlarni filtrlash uchun maxsus til - SQLni loyihalashtirishni tugatmoqdalar. Va bu sehrli SQL-tili yordamida har qanday menejer osongina ma'lumotlarni filtrlash va olish imkoniyatiga ega bo'ladi.

Dasturchilar shunchaki bu tilni loyihalashtirishni tugatib ulgurishmadi, shuning uchun prezentatsiyada SQL va SUBD haqida hech qanday so'z yo'q.

Hamma xursand bo'lganligi sababli, buyurtmachilar eshitgan tushuntirishdan ta'sirlanishdi, yangi til qanday bo'lishi kerakligi haqida o'zaro qarama-qarshi fikrlar bildirishdi va hatto uni rivojlantirish uchun byudjet ajratishdi.

Menejerlar va Texnik direktor bir-birini muvaffaqiyatli loyiha topshirilganligi bilan tabriklashni boshlashdi va yangi loyihani kuzatib borishni boshlashdi, yosh dasturchi esa butun voqeada eng muhim inson ekanligini tushunmadilar...

Ommabop SUBD va MySQL

Bugungi kunga kelib (2022 yil yozi) yuzlab ommabop SUBD mavjud, shuning uchun ularning ba'zilari haqida bilishingiz foydali bo'ladi. Qaerdan boshlash kerak...

Bir tomondan, korporativ SUBD bozori bir necha o'n yillardan beri mavjud. Shuning uchun unda har doim yirik liderlar va umidli yangi ishtirokchilar bo'lgan. Boshqa tomondan, biznesning talablarining doimiy o'sishi sababli, kompaniyalarning IТ-infrastrukturalarini qurish yondashuvlari doimiy ravishda o'zgarib turadi.

Hozir hech kimni bir necha ming serverdan iborat klasterdagi ma'lumotlar bazasi, gorizontal va vertikal shardlash, taqsimlangan tranzaktsiyalar, shuningdek, bir necha o'nlab tizim administratori bor bo'lim, serverlarning qattiq disklarini oldindan tuzilgan jadvalga muvofiq almashtirayotgani bilan hayratlantirib bo'lmaydi.

Umuman, agar siz katta kompaniya uchun ishlasangiz, u o'z ma'lumotlar bazalari uchun katta miqdorda pul to'laydi, va quyidagilardan foydalanadi:

Oracle Database

Oracle kompaniyasi o'zining birinchi ma'lumotlar bazasini 1979 yilda (43 yil avval) chop etgan. U darhol Oracle 2.0 deb nom oldi, shuning uchun mijozlarni mahsulot yangi emas, vaqt sinab ko'rilgan deb ishontirish kerak edi.

Hozirgi versiyasi — Oracle 21c, bu yerda c harfi cloud so'zidan, bu deyishlaricha Oracle kompaniyasi zamon bilan hamnafas va uning echimlari barcha bulutli texnologiyalar bilan mukammal mos keladi.

Microsoft SQL Server

Microsoft kompaniyasi Windows emas, balki o'rta va katta biznes uchun server echimlarini sotib katta miqdorda pul topadi. Microsoft Office, Microsoft SharePoint, Microsoft Server va h.k. Va, albatta, bu barcha mahsulotlar uchun yaxshi ma'lumotlar bazasi kerak. Shuning uchun, ko'p kompaniyalar Microsoft-ning mahsulotlari va echimlaridan foydalanib, uning ma'lumotlar bazasidan foydalanishga majbur.

Microsoft-ning SUBD oddiy SQL Server deb nomlanadi, shuning uchun suhbatda “SQL Server bilan ishlaganmisiz?” degan savolni eshitsangiz, bilib qo'yingki, bu abstrakt SUBD emas, balki Microsoft SQL Server nazarda tutiladi.

PostgreSQL

Bu yaxshi, bepul SUBD, u nafaqat kichik va o'rta kompaniyalar, balki jiddiy korporatsiyalar tomonidan keng foydalaniladi. Bu Amazon AWS tomonidan DB-as-service sifatida taklif etiladigan ma'lumotlar bazalaridan biri.

MySQL

MySQL — bu juda ommabop, ochiq kodli va bepul SUBD. U yaxshi xujjatlangan, tez ishlaydi, katta imkoniyatlar to'plamini qo'llab-quvvatlaydi. Bugungi kunda, bu SUBD-ning 8-versiyasi mavjud.

2008 yilda uni Sun kompaniyasi sotib oldi, 2009 yilda esa Sun kompaniyasini Oracle kompaniyasi sotib oldi. Va bu uning foydasiga bo'ldi — mahsulot doimiy ravishda rivojlanib, yaxshilanib kelmoqda.

Biz MySQL Community Server 8.0 misolida ma'lumotlar bazalari bilan ishlashni o'rganamiz.

Ma'lumotlar bazasidagi jadvallar: ustunlar va satrlar

Turli SUBD ma'lumotlarni turli formatda saqlashlari mumkin, shuning uchun biz eng oddiy va klassik variantni olamiz – MySQL SUBD.

Va darhol savol: masalan, qanday qilib buxgalteriya hujjatlarini saqlash mumkin? Eng oddiy variant – har bir hujjatni Excel-fayl ko'rinishida saqlashdir. Shunda bir-biriga bog'liq barcha hujjatlarni bitta papkada saqlash mumkin. MySQL ham shug'avval shunga o'xshash ishlaydi.

Yana bir o'xshashlik: Java tilida loyihada sizda klasslar va paketlar mavjud, lekin shu bilan birga, klasslar va paketlar diskda fayllar va papkalar ko'rinishida taqdim etiladi. MySQLda ham shunga o'xshash bir narsa mavjud.

MySQL ma'lumotlarni jadvallar ko'rinishida saqlaydi, ular ma'lumotlar bazalariga birlashtiriladi, lekin shu bilan birga, jadvallar va ma'lumotlar bazasi diskda fayllar va papka kabi taqdim etiladi. Ma'lumotlar bazasi — bu papka, va undagi fayllar — jadvallar.

Har bir jadval ustunlar va satrlardan iborat. Misol:

Muhim! Har bir ustunning nomi va ma'lumotlar turi bor, shuning uchun har bir ustunning barcha hujayralari bir xil turdagi qiymatlar saqlashlari shart.

MySQLdagi jadval va Javada klassni o'xshatish mumkin. Jadval — bu klass, jadvalda, xuddi klassda bo'lgani kabi, yagona nom bor. Jadval ustunlari — bu klassning maydonlari, ustunlarda, xuddi maydonlar kabi, yagona nom va turi bor. Jadval satrlari — bu Javadagi klassning ob'ektlari.

Klass ob'ektlarsiz mavjud bo'lishi mumkin, jadval esa satrlarsiz. Javadagi yangi ob'ekt yaratilishi mumkin, MySQLda esa jadvalga yangi satr qo'shilishi mumkin. Ob'ektning maydon qiymatlari o'zgartirilishi mumkin, MySQLda esa satr qiymatlari o'zgartirilishi mumkin.

To'g'rirog'i, jadval — bu klass emas, balki ma'lum bir klass ob'ektlarining kolleksiyasi. Agar MySQLda Employee jadvali xodimlar ma'lumotlari bilan mavjud bo'lsa, Javada biz ArrayList kolleksiyasidan foydalanar edik.

Va, albatta, darhol savol paydo bo'ladi: bu kolleksiyadan qanday qilib ma'lum bir ma'lumotlarni olish mumkin?

Izohlar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION