У овом упутству ћете научити-
- Шта је кошница?
- Архитектура кошница
- Различити начини кошнице
- Шта је Хиве Сервер2 (ХС2)?
Шта је кошница?
Хиве је ЕТЛ и алат за складиштење података развијен поврх Хадооп дистрибуираног система датотека (ХДФС). Кошница олакшава посао за извођење таквих операција
- Инкапсулација података
- Ад-хоц упити
- Анализа огромних скупова података
Важне карактеристике кошнице
- У кошници се прво креирају табеле и базе података, а затим се подаци учитавају у те табеле.
- Кошница као складиште података дизајнирано за управљање и испитивање само структурираних података који се чувају у табелама.
- Док се бави структурисаним подацима, Мап Редуце нема функције за оптимизацију и употребљивост попут УДФ-ова, али Хиве фрамеворк има. Оптимизација упита односи се на ефикасан начин извршавања упита у смислу перформанси.
- Хиве-ов СКЛ инспирисан језик одваја корисника од сложености Мап Редуце програмирања. Поново користи познате концепте из света релационих база података, као што су табеле, редови, колоне и шеме, итд. Ради лакшег учења.
- Хадоопово програмирање ради на равним датотекама. Дакле, Хиве може користити структуре директоријума за „партиционирање“ података како би побољшао перформансе одређених упита.
- Нова и важна компонента Хиве-а, тј. Метасторе-а која се користи за чување информација о шеми. Ова Метасторе се обично налази у релационој бази података. Можемо комуницирати са Хиве-ом користећи методе попут
- Веб ГУИ
- Сучеље Јава Датабасе Цоннецтивити (ЈДБЦ)
- Већина интеракција обично се одвија преко интерфејса командне линије (ЦЛИ). Хиве пружа ЦЛИ за писање упита о кошници помоћу Хиве Куери Лангуаге (ХКЛ)
- Генерално, ХКЛ синтакса је слична СКЛ синтакси коју познаје већина аналитичара података. Упит за узорак испод приказује све записе присутне у поменутом имену табеле.
- Пример упита : Изаберите * из <ТаблеНаме>
- Хиве подржава четири формата датотека, а то су ТЕКСТФИЛЕ, СЕКУЕНЦЕФИЛЕ, ОРЦ и РЦФИЛЕ (Рецорд Цолумнар Филе).
- За складиштење метаподатака за једног корисника, Хиве користи дерби базу података, а за више корисника Метаподатке или заједнички случај метаподатака Хиве користи МИСКЛ.
За подешавање МиСКЛ-а као базе података и за складиштење података о мета-подацима проверите Водич „Инсталација и конфигурација ХИВЕ-а и МИСКЛ-а“
Неке од кључних тачака о кошници:
- Главна разлика између ХКЛ и СКЛ је у томе што се упит Хиве извршава на Хадооповој инфраструктури, а не на традиционалној бази података.
- Извршење упита за кошницу биће попут низа аутоматски генерисаних послова који смањују мапе.
- Хиве подржава концепте партиција и сегмената за лако проналажење података када клијент изврши упит.
- Хиве подржава прилагођене УДФ (кориснички дефинисане функције) за чишћење података, филтрирање итд. Према захтевима програмера, могу се дефинисати УДФ-ови Хиве.
Хиве вс релационе базе података: -
Коришћењем Хиве-а можемо извршити неке необичне функције које нису постигнуте у релационим базама података. За огромну количину података у петабајтима важно је постављање упита и добијање резултата у секунди. А Хиве то ради прилично ефикасно, брзо обрађује упите и даје резултате у секунди.
Погледајмо сада шта чини кошницу тако брзом.
Неке кључне разлике између кошница и релационих база података су следеће;
Релационе базе података су „ Схема на РЕАД и Сцхема он Врите “. Прво створите табелу, а затим у њу убаците податке. На релацијским таблицама базе података могу се изводити функције попут Уметања, Ажурирања и Измјене.
Кошница је „ шема само за читање “. Дакле, функције попут ажурирања, модификација итд. Не раде са овим. Јер упит Хиве у типичном кластеру ради на више чворова података. Дакле, није могуће ажурирати и модификовати податке на више чворова (верзије кошнице испод 0,13)
Такође, кошница подржава образац „ ПРОЧИТАЈ ВИШЕ НАПИШИ једном “. Што значи да након уметања табеле можемо да је ажурирамо у најновијим верзијама Хиве-а.
НАПОМЕНА : Међутим, нова верзија Хиве-а долази са ажурираним функцијама. Верзије Хиве (Хиве 0.14) нуде опције Ажурирање и Брисање као нове функције
Архитектура кошница
Горњи снимак екрана детаљно објашњава архитектуру Апацхе Хиве
Кошница се састоји углавном од 3 основна дела
- Клијенти кошница
- Услуге кошница
- Складиштење и рачунање кошница
Клијенти кошница:
Хиве пружа различите покретачке програме за комуникацију са различитим врстама апликација. За Тхрифт апликације, обезбедиће Тхрифт клијента за комуникацију.
За апликације повезане са Јавом пружа ЈДБЦ управљачке програме. Осим било које врсте апликација које нуде ОДБЦ управљачке програме. Ови клијенти и управљачки програми заузврат поново комуницирају са Хиве сервером у Хиве сервисима.
Услуге кошница:
Интеракције клијента са Хиве-ом могу се извршити путем Хиве Сервицес-а. Ако клијент жели да изврши било коју операцију повезану са упитом у Хиве-у, мора да комуницира путем Хиве Сервицес.
ЦЛИ је интерфејс командне линије и делује као услуга кошнице за ДДЛ (Дата Дефинитион Лангуаге) операције. Сви покретачки програми комуницирају са Хиве сервером и главним покретачким програмом у Хиве сервисима, као што је приказано на горњем дијаграму архитектуре.
Управљачки програм присутан у услугама Хиве представља главни покретач и он комуницира са свим врстама ЈДБЦ, ОДБЦ и другим специфичним клијентским апликацијама. Возач ће обрађивати те захтеве из различитих апликација у мета сторе и фиелд системе за даљу обраду.
Складиштење и рачунање кошница:
Услуге кошница као што су Мета продавница, Систем датотека и Клијент посла заузврат комуницирају са складиштем кошница и извршавају следеће радње
- Подаци о метаподацима табела креираних у Хиве-у се чувају у Хиве-у "Мета база података за складиштење".
- Резултати упита и подаци учитани у табелама биће ускладиштени у Хадооп кластеру на ХДФС-у.
Ток излучивања послова:
Из горњег снимка екрана можемо разумети ток извршавања посла у Хиве-у са Хадооп-ом
Ток података у кошници понаша се на следећи начин;
- Извршење упита из корисничког интерфејса (кориснички интерфејс)
- Возач комуницира са Цомпилером ради добијања плана. (Овде се план односи на извршавање упита) и прикупљање информација о њему повезаним метаподацима
- Компајлер креира план за посао који треба извршити. Компајлер комуницира са Мета продавницом ради добијања захтева за метаподатке
- Мета продавница шаље податке о метаподацима натраг компајлеру
- Састављач који комуницира са управљачким програмом са предложеним планом за извршавање упита
- Возач Шаље планове извршења извршном механизму
- Екецутион Енгине (ЕЕ) делује као мост између Хиве-а и Хадооп-а за обраду упита. За ДФС операције.
- ЕЕ би прво требало да контактира чвор имена, а затим чворове података да би добио вредности сачуване у табелама.
- ЕЕ ће дохватити жељене записе са чворова података. Стварни подаци табела налазе се само у чвору података. Иако из Ноде Ноде-а дохваћа само податке о метаподацима за упит.
- Прикупља стварне податке из чворова података повезаних са поменутим упитом
- Извршни механизам (ЕЕ) комуницира двосмерно са Мета продавницом присутном у Хиве-у да би извршио ДДЛ (Дата Дефинитион Лангуаге) операције. Овде се обављају ДДЛ операције попут ЦРЕАТЕ, ДРОП и АЛТЕРИНГ табела и база података. Мета продавница ће чувати информације само о имену базе података, именима табела и именима колона. Преузеће податке у вези са поменутим упитом.
- Извршни механизам (ЕЕ) заузврат комуницира са Хадооп демонима као што су чвор имена, чворови података и трагач послова како би извршио упит на врху система датотека Хадооп.
- Преузимање резултата из возача
- Слање резултата извршном механизму. Једном када се резултати преузму из чворова података у ЕЕ, он ће послати резултате назад возачу и корисничком интерфејсу (предњи крај)
Хиве континуирано у контакту са системом датотека Хадооп и његовим демонима путем извршног механизма. Тачкаста стрелица на дијаграму тока посла приказује комуникацију извршног механизма са Хадооп демонима.
Различити начини кошнице
Кошница може радити у два начина, у зависности од величине чворова података у Хадооп-у.
Ови режими су,
- Локални начин рада
- Режим смањења мапе
Када користити локални режим:
- Ако је Хадооп инсталиран у псеудо режиму са једним чвором података, користимо Хиве у овом режиму
- Ако је величина података мања у смислу ограничења на једну локалну машину, можемо користити овај режим
- Обрада ће бити врло брза на мањим скуповима података присутним у локалној машини
Када користити режим смањења мапе:
- Ако Хадооп има више чворова података и подаци се дистрибуирају између различитих чворова, користимо Хиве у овом режиму
- Изводиће се на великој количини података и упиту који ће се извршавати паралелно
- Преко овог скупа података може се постићи обрада великих скупова података са бољим перформансама
У Хиве-у можемо да подесимо ово својство да помиње који режим Хиве-а може радити? Подразумевано ради у режиму Мап Редуце, а за локални режим можете имати следеће подешавање.
Постављена кошница за рад у локалном режиму
СЕТ мапред.јоб.трацкер = локално;
Од верзије Хиве 0.7 подржава начин аутоматског покретања смањења послова у локалном режиму.
Шта је Хиве Сервер2 (ХС2)?
ХивеСервер2 (ХС2) је серверски интерфејс који обавља следеће функције:
- Омогућава удаљеним клијентима извршавање упита против Хиве-а
- Дохватите резултате поменутих упита
Од најновије верзије има неке напредне функције засноване на Тхрифт РПЦ попут;
- Конкурентност више клијената
- Аутентикација
Резиме:
Хиве је ЕТЛ и алат за складиштење података на врху Хадооп екосистема и користи се за обраду структурираних и полуструктурираних података.
- Хиве је база података присутна у Хадооп екосистему која обавља ДДЛ и ДМЛ операције и пружа флексибилан језик упита, као што је ХКЛ, за боље постављање упита и обраду података.
- Пружа толико функција у поређењу са РДМС-ом који има одређена ограничења.
За логику специфичну за корисника да задовољи захтеве клијента.
- Пружа могућност писања и примене прилагођених скрипти и кориснички дефинисаних функција.
- Поред тога, нуди партиције и сегменте за специфичне логике за складиштење.