HDFS-DA NAMENODE BILAN MA'LUMOTLAR BLOKLARINI KUZATIB BORING
HDFS-da NameNode bilan ma'lumotlar bloklarini kuzatib boring - Kompyuterlar
TARKIB:
NameNode boshlanishi va ishlashi
Ma'lumotlar yozish
Ma'lumotni o'qish
Hadoop klasteridagi ma'lumotlarni muvozanatlash
NameNode bosh serveri dizayni
NameNode Hadoop Distribution File System (HDFS) uchun manzillar kitobi vazifasini bajaradi, chunki u nafaqat alohida fayllarni qaysi bloklarni yaratishini, balki ushbu bloklarning har biri va ularning nusxalari qayerda saqlanishini ham biladi. Foydalanuvchi faylni HDFS-da saqlaganida, fayl ma'lumotlar bloklariga bo'linadi va ushbu ma'lumotlar bloklarining uch nusxasi Hadoop klasterida qul tugunlarida saqlanadi.
Bu juda ko'p ma'lumot bloklari. Kutganingizdek, jasadlar qayerda ko'milganligini bilish, HadNop klasteridagi NameNode-ni juda muhim tarkibiy qismga aylantiradi. Agar NameNode mavjud bo'lmasa, dasturlar HDFS-da saqlangan ma'lumotlarga kira olmaydi.
Agar siz quyidagi rasmga nazar tashlasangiz, asosiy tugun serverida ishlaydigan NameNode demoni ko'rishingiz mumkin. Ma'lumotlar bloklari va ularning tegishli fayllari bilan bog'liq xaritalash bo'yicha barcha ma'lumotlar nomli faylda saqlanadi.
HDFS - bu fayllarni yozish jarayoni, demak har qanday ma'lumotlarning o'zgarishi so'nggi voqealardan keyin sodir bo'lgan voqealarni kuzatib boradigan tahrir jurnaliga kiritilgan. nazorat punkti - oxirgi marta tahrirlash jurnallari birlashtirilganda. HDFS-da tahrirlash jurnali NameNode-da saqlanadigan faylda saqlanadi.
NAMENODE BOSHLANISHI VA ISHLASHI
NameNode qanday ishlashini tushunish uchun uni qanday boshlashini ko'rib chiqish foydali bo'ladi.NameNode-ning maqsadi dasturlarga qancha ma'lumotlar bloklarini qayta ishlashi kerakligi haqida ma'lumot berish va ular saqlangan joyni aniq kuzatib borishdir, buning uchun barcha blok joylari va mavjud bo'lgan fayllarni blokirovkalash xaritalari kerak bo'ladi. RAM.
Bular NameNode bajaradigan qadamlar. NomiNode ishga tushgandan keyin kerak bo'lgan barcha ma'lumotlarni yuklash uchun quyidagilar sodir bo'ladi:
NameNode faylni xotiraga yuklaydi.
NameNode faylni yuklaydi va xotirada allaqachon mavjud bo'lgan blokirovka meta-ma'lumotlarini yangilash uchun jurnaldagi o'zgarishlarni qayta o'ynaydi.
DataNode demonlari NameNode blok hisobotlarini yuboradi.
Har bir qul tugunida blokda saqlanadigan barcha ma'lumotlar bloklari ro'yxati keltirilgan va ularning har birining salomatligi to'g'risida hisobot mavjud.
Ishga tushirish jarayoni tugagandan so'ng, NameNode HDFS-da saqlanadigan barcha ma'lumotlarning to'liq rasmini oladi va Hadoop mijozlaridan buyurtma so'rovlarini qabul qilishga tayyor.
Mijozlarning so'rovlari asosida ma'lumotlar fayllari qo'shilib, o'chirilganda, o'zgarishlar qul tugunining disk hajmiga yoziladi, jurnalga yangilanishlar kiritiladi va o'zgarishlar blokirovka joylarida va NameNode xotirasida saqlanadigan metadata aks etadi.
Klasterning butun hayoti davomida DataNode demonlari har uch soniyada NameNode yurak urishlarini (tezkor signal) yuboradi va bu ularning faolligini ko'rsatadi. (Ushbu standart qiymat sozlanishi.) Har olti soatda (yana sozlanadigan standart) DataNodes tugunlarida qaysi blok bloklari ko'rsatilganligini bildiruvchi NameNode-ni blok hisobotini yuboradi. Shu tarzda NameNode har doim klasterdagi mavjud manbalarning joriy ko'rinishini oladi.
MA'LUMOTLAR YOZISH
HDFS-da yangi fayllarni yaratish uchun quyidagi jarayon bajarilishi kerak edi:
Mijoz yangi fayl yaratish uchun NameNode-ga so'rov yuboradi.
NameNode qancha blok kerakligini va mijozga a ijaraga olish klasterda ushbu yangi fayl bloklarini yaratish uchun. Ushbu lizingning bir qismi sifatida mijoz yaratilish topshirig'ini bajarish uchun vaqt chekloviga ega. (Ushbu muddat cheklangan mijoz dasturlari tomonidan saqlash joyi egallab olinmasligini ta'minlaydi.)
Keyinchalik mijoz fayl bloklarining birinchi nusxalarini NameNode tomonidan berilgan ijaradan foydalanib, tarmoq tugunlariga yozadi.
NameNode so'rovlarni yozish bilan shug'ullanadi va fayl bloklari va ularning nusxalarini qaerga yozish kerakligini, mavjudlik va ishlashni muvozanatlashtiradi. Fayl blokining birinchi nusxasi bitta ustunga, ikkinchi va uchinchi nusxalari esa birinchi nusxaga qaraganda boshqa ustunlarga yozilgan, ammo bitta javondagi turli xil qul tugunlarida. Ushbu tartibga solish tarmoq trafigini minimallashtiradi va shu bilan birga bitta blok blok ishlamay qolishini ta'minlaydi.
Har bir blok HDFS-ga yozilganligi sababli, maxsus jarayon qolgan replikatsiyalarni NameNode tomonidan aniqlangan boshqa qul tugunlariga yozadi.
DataNode daemons fayl bloki replikalari yaratilganligini tan olgandan so'ng, mijoz dasturi faylni yopadi va NameNode-ni xabardor qiladi, keyin esa ochiq lizingni yopadi.
MA'LUMOTNI O'QISH
HDFS-dan fayllarni o'qish uchun quyidagi jarayon bajarilishi kerak edi:
Mijoz NameNode-ga fayl uchun so'rov yuboradi.
NameNode bloklarning bir-biriga va mijozga umumiy yaqinligiga asoslanib, kirishning eng samarali yo'lini tanlab, qaysi bloklarning ishtirok etishini aniqlaydi.
Mijoz bundan keyin NameNode tomonidan berilgan manzillardan foydalangan holda bloklarga kiradi.
HADOOP KLASTERIDAGI MA'LUMOTLARNI MUVOZANATLASH
Vaqt o'tishi bilan ma'lumotni notekis uzatish naqshlarining kombinatsiyasi bilan (ba'zi bir qul tugunlari ularga ko'proq ma'lumot yozilgan bo'lishi mumkin) yoki tugunlar ishlamay qolganda, sizning Hadoop klasteringizdagi raflar va qul tugunlari bo'ylab ma'lumotlar notekis tarqalishi mumkin.
Ushbu notekis taqsimot ishlashga zararli ta'sir ko'rsatishi mumkin, chunki individual qul tugunlariga bo'lgan talab muvozanatsizlashadi; ozgina ma'lumotlarga ega bo'lgan tugunlardan to'liq foydalanilmaydi; va ko'p blokli tugunlar haddan tashqari ishlatiladi. (
Do'stlaringiz bilan baham: |