LABORATORIYA ISHI №7
Mavzu:Tasvirlarni ma'lumotlar bazasida saqlash. Rasm ma'lumotlari formatlari. Ma'lumotlar bazasida tasvirlarni qidirish.
Ishdan maqsad:Tasvirlar va fotosuratlarni ma'lumotlar bazasi jadvallariga joylashtiring.
Mavzu bo’yicha topshiriq:
1. Grafikali ma'lumotlar bilan jadval tuzing.
2. Ma'lumotlar bazasini va uning ob'ektlarini saqlang.
Hisobot shakli
1. Adabiyotlar va turli manbalardan foydalangan holda laboratoriya ishi to'g'risida hisobot tuzing.
2. Hisobotga skrinshotlarni joylashtiring.
Nazariy qism:
BLOB - bu katta ikkilikli ob'ektlarni belgilash uchun ma'lumotlar bazasida ishlatiladigan qisqartma. BLOB kolonkalari bir necha yil oldin Oracle tomonidan ikkilik ma'lumotlarni saqlash uchun LONG RAW texnologiyasini almashtirish uchun joriy etilgan.
BLOB ma'lumotlar turining arxitekturasi uchta asosiy qismga bo'linadi: BLOB ustuni, LOB segmenti va LOB indeksi. BLOB ustunida LOB qidiruvi (36 bayt) va ikkilik ma'lumotlari, agar satr uzunligi 3965 baytdan kam bo'lsa va ustun uchun satr saqlanmagan bo'lsa.
Agar ikkilik ma'lumotlarning o'lchami 3964 baytdan oshsa, BLOB ustunidagi satrlarda bo'sh joy ajratilmaydi va LOB lokatori LOB segmentida saqlanadigan ikkilik ma'lumotlarga tegishlidir.
Shu munosabat bilan, har doim qatorlarda saqlanadigan BLOB ustunidagi qiymatning hajmi kamida 36 baytni tashkil etadi (LOB qidiruvchisiga ajratilgan joy) va 4000 baytgacha bo'lishi mumkin (LOB lokatoriga ajratilgan bo'shliqning yig'indisi va mumkin bo'lgan maksimal bo'sh joy miqdori). satrda saqlanadigan ikkilik ma'lumotlarga ajratilgan).
Quyidagi uchta raqam BLOB ustunida ikkitomonlama ma'lumotlarni saqlashning uchta mumkin bo'lgan namunalarini ko'rsatadi. Birinchi holda, satrda 3000 bayt ikkilik ma'lumotlar mavjud, chunki 3000 bayt 3,965 baytdan kam yoki satrda saqlash hajmining chegaraviy chegarasi mavjud. Agar BLOB ustunidagi satrlar ichidagi saqlash o'chirilmagan bo'lsa, LOB segmenti va LOB indeksi ishlatilmaydi. Odatda, bu ILO-operatsiyalar sonining kamayishi tufayli BLOB ma'lumotlarini etkazib berish tezligining oshishini ta'minlaydi, chunki Oracle LOB segmentiga yoki LOB indeksiga kirishga hojat yo'q.
39-rasm.BLOB format o'lchami
BLOB hajmi 3965 baytdan kam bo'lgan ma'lumotlar satrlar ichida saqlanadi.
40-rasmda ikkilik ma'lumotlarning hajmi 3964 baytdan oshib ketadigan ikkinchi misol keltirilgan (bu holda ma'lumotlar hajmi 81920 bayt) va ma'lumotlar chiziqlar ichiga sig'maydi. Shu munosabat bilan, LOB lokatori LOB segmentida saqlanadigan ikkilik ma'lumotlarga ishora qiladi. Ikkilik ma'lumotlar LOB segmentida 12 dan ortiq bloklarni egallamaganligi sababli, LOB lokatori uning manzillarini saqlaydi. Bunday holda, LOB indeksi ishlatilmaydi.
40-rasm.BLOB format o'lchami
BLOB ma'lumotlari 3964 baytdan katta bo'lgan satrlar tashqarida saqlanadi. Segment jadvalidagi LOB lokatori ma'lumotlar saqlanadigan LOB segmentini bildiradi.
41-rasmda LOB indeksi ularni joylashtirish uchun zarur bo'lgan shunday katta o'lchamdagi (106496 bayt) ikkilik ma'lumotni ko'rsatadi. Bunday holda, ikkilik ma'lumotlarning hajmi strings ichidagi saqlash uchun belgilangan chegaradan oshadi va ularni saqlash uchun LOB segmentida 12 ta blok kerak bo'ladi. Ushbu o'lchamdagi ma'lumotlar uchun LOB lokatori LOB segmentidagi bloklarning joylashishini aniqlash uchun LOB indeksiga murojaat qiladi. Ushbu holat vektor ma'lumotlari uchun juda kam uchraydi va raster ma'lumotlari uchun buni oldini olish mumkin.
41-rasm.BLOB format o'lchami
BLOB ma'lumotlari qatorlardan tashqarida saqlanadi va LOB indeksini kiritish kerak.
Amaliy qism
Tasvirlarni BLOB yordamida yaratilgan ma'lumotlar bazasi ustiga joylashtiring.
CREATE TABLE STUDENT6
( ID NUMBER,
FAMILIYA VARCHAR2(30),
IMYA VARCHAR2(30),
OTCHESTVA VARCHAR2(30),
DATA_ROJDENIYA DATE,
MESTO_ROJDENIYA VARCHAR2(100),
NAZVANIE_UNIV VARCHAR2(100),
GRUPPA VARCHAR2(20),
STIPENDVARCHAR2(50),
KARTINKA BLOB
);
Topshiriq: BLOB ma'lumotlar turidan foydalanib, rasmlarni Oracle DBMS jadvaliga joylashtiring. Hisobot tuzing.
Nazorat savollari.
BLOB ma'lumotlar turi qanday xususiyatlarga ega?
BLOB turidan foydalanish tartibini aytib bering.
Do'stlaringiz bilan baham: |