Увод у функције уграђених кошница
Функције су изграђене за обављање различитих аналитичких захтева и операција попут математичких, логичких, аритметичких и релацијских, на огромним скуповима података и табелама. Функције се користе када морамо поново користити сличне операције више пута. У овом напредном свету БигДате, руковање и обрада огромних скупова података, писање МапРедуце програма постаје тешко. Дакле, Хиве Куери Лангуаге (ХКЛ) уведен је на врху Апацхе Хадоопа у октобру 2010. године, помоћу којег лако можемо покренути упите, сличне СКЛ-овима. ХКЛ-ови се даље интерно претварају у Мапредуце програме како би се добили резултати. У овој теми ћемо говорити о уграђеним функцијама кошница.
Функције кошница су широко категорисане у две:
- Уграђене функције
- Кориснички дефиниране функције
Уграђене функције кошнице
Уграђене функције су унапред дефинисане и лако су доступне за употребу у кошници. Следеће су категорисане:
1. Гудачке функције
Користи се за низове манипулација и трансформацију.
Назив функције | Врста повратка | Опис | Пример |
субстр (стринг, инт, инт) | Низ | Враћа низ из наведеног почетног положаја на задану дужину | субстр ('Упит за кошницу', 5, 5) резултира у 'упит' |
ртрим (стринг Кс) | Низ | Враћа низ без десних водећих размака | ртрим ('Хелло') резултира у 'Хелло' |
лтрим (низ Кс) | Низ | Враћа низ без водећих размака | лтрим ('Хелло') резултира у 'Хелло' |
преокренути (низ Кс) | Низ | Враћа обрнути низ Кс | реверсе ('хелло') резултати у 'оллех' |
рпад (стринг Кс, инт, низ) | Низ | Враћа десни подстављени низ са 'пад' у дужину од | рпад ('Здраво', 3, 'бок') резултира у 'Здраво здраво здраво' |
лпад (стринг Кс, инт, стринг) | Низ | Враћа леви подстављени низ са 'пад' дужином од | лпад ('Хелло', 3, 'Хи') резултати у 'Хи Хи Хи Хелло' |
сплит (стринг Кс, пресвлачење низа) | Арраи | Враћа низ струна након поделе низа око наведеног узорка | сплит ("А, Б, Ц, Д", ", ") резултира у ('А', Б ', ' Ц ', ' Д ') |
дужина (низ Кс) | Интегер | Враћа дужину низа Кс | дужина ('Бигдата') резултира са 7 |
цонцат (стринг Кс, стринг И) | Низ | Враћа сједињени низ и Кс и И | цонцат ('Хелло', 'Ворлд') резултати у 'ХеллоВорлд' |
2. Математичке функције
Користи се за примену математичких операција попут заокруживања, плафона, пода итд. Уместо за креирање УДФ-а.
Назив функције | Врста повратка | Опис | Пример |
округли (двоструки Кс) | Двокреветна | Враћа заокружену вредност Кс | рунда (29.5) даје резултате за 30 |
округли (двоструки Кс, Инт д) | Двокреветна | Враћа заокружену вредност од Кс до д децималних места | рунда (29.3456, 2) резултира у 29.34 |
плафон (дупли Кс) | Двокреветна | Враћа минималну БИГИНТ вредност која је једнака или већа од Кс | цеил (20.5555) даје резултате 21 |
спрат (двоструки Кс) | Двокреветна | Враћа максималну БИГИНТ вредност која је једнака или већа од Кс | цеил (20.5555) даје резултате у 20 |
ранд () | Двокреветна | Враћа случајне бројеве између 0 и 9 | ранд () резултира ранд (0-9) |
абс (дупли Кс) | Двокреветна | Враћа апсолутну вредност броја Кс | абс (-25) даје резултате за 25 |
Пов (двоструки Кс, двоструки И) | Двокреветна | Враћа вредност Кс подигнуту на снагу И | пов (2, 3) даје резултате 8 |
екп (дупли Кс) | Двокреветна | Враћа вредност експонента Кс | екп (2) резултира у 7.389 |
3. Условне функције
Користи се за провјеру израза за Труе или Фалсе и враћа одговарајуће резултате.
Назив функције | Врста повратка | Опис | Пример |
иснулл (Кс) | Боолеан | Враћа ТРУЕ ако је Кс НУЛЛ елсе фалсе | иснулл ('НУЛЛ') враћа се у ТРУЕ |
иснотнулл (Кс) | Боолеан | Враћа ТРУЕ ако Кс није НУЛЛ елсе фалсе | иснотнулл ('НУЛЛ') се враћа у ФАЛСЕ |
нвл (арг Кс, арг И) | Низ | Враћа арг И, ако је арг Кс Кс НУЛЛ, а врати арг Кс | нвл ('НУЛЛ', 'Валуе ис Нулл') резултира у 'Валуе ис Нулл' |
иф (Боолеан тестЦондитион, Т валуеТруе, Т валуеФалсеОрНулл) | Т | Враћа се Труе када је стање теста тачно, а Фалсе или Нулл у супротном | иф (2 = 2, 'Тачно', 'Нетачно') |
коалесце (Кс, И) | (Било који) | Враћа прве не-нулл вредности са листе (у то сумњам - да ли ће вратити прву вредност или све нон нулл вредности?) | цоалесце (нулл, нулл, нулл, 1, 5, нулл, нулл, 6) резултира у 1 |
4. Функције датума
Користи се за обављање манипулација датума и претворбе типа.
Назив функције | Врста повратка | Опис | Пример |
Тренутни датум | Датум | Враћа тренутни датум извршења упита | цуррент_дате () враћа данашњи датум |
уник_тиместамп () | БигИнт | Враћа тренутну временску ознаку уник извршења упита у секунди | уник_тиместамп () враћа тренутну временску ознаку уник |
година (датум низа) | Инт | Враћа део датума | година ('1994-11-24') враћа 1994 |
четвртина (датум низа) | Инт | Враћа се четвртина године датума | квартал ('1994-11-24') враћа 4 |
месец (датум низа) | Инт | Враћа месечни део датума | месец ('1994-11-24') враћа 11 |
сат (датум низа) | Инт | Враћа сатни део временске ознаке | сат ('1994-11-24 12:45:23') враћа се 12 |
минута (датум низа) | Инт | Враћа минутни део временске ознаке | година ('1994-11-24 12:45:23') враћа 45 |
до данас() | Низ | Враћа датум датума низа временске ознаке | то_дате () враћа део датума |
дате_суб (датум низа, инт дана) | Низ | Враћа одузимање броја дана од датума | дате_суб ('1994-11-24', 20) враћа '1994-11-04' |
месеци_међу (датум1, датум2) | Двокреветна | Враћа број месеци између датума1 и датума2 (месеци или нема дана?) | монтхс_бет бетвеен ('1994-11-24', '1994-11-04') враћа 20 |
5. Функција сакупљања
Користи се за трансформисање и преузимање делова врста колекција као што су мапа, низ итд.
Назив функције | Врста повратка | Опис | Пример |
величина (мапа) | Инт | Враћа укупан број елемената на мапи | сизе (('а': 2, 'б': 6)) враћа 2 |
величина (низ) | Инт | Враћа укупан број елемената у низу | величина ((1, 3, 4, 7)) враћа 4 |
арраи_цонтаинс (низ, вредност) | Боолеан | Враћа труе ако низ садржи вриједност | арраи_цонтаинс ((1, 3, 9, 8, 5, 4, 7), 5) враћа ТРУЕ |
мап_кеис (мапа) | Арраи | Враћа неуређени низ кључева мапе | мап_кеис (('а': 2, 'б': 6, 'ц': 1)) се враћа ('б', 'ц', 'а') |
мап_валуесс (мапа) | Арраи | Враћа неуређени низ вредности мапе | мап_кеис (('а': 2, 'б': 6, 'ц': 1)) враћа се (1, 6, 2) |
сорт_арраи (низ) | Арраи | Враћа сортирани низ датог низа | сорт_арраи ((1, 3, 9, 8, 5, 4, 7)) враћа (1, 3, 4, 5, 7, 8, 9) |
Закључак
До сада смо разговарали о различитим уграђеним функцијама у кошници. У поређењу са МапРедуце, Хиве је практичнији и штеди вријеме. Свако ко има основно СКЛ знање може лако писати ХКЛ-ове, а не компликоване МапРедуце програме за обраду података.
Препоручени чланци
Ово је водич за функције уграђених кошница. Овдје смо разговарали о уграђеним функцијама које су унапријед дефиниране и лако доступне за употребу у кошници. Такође можете погледати следећи чланак да бисте сазнали више -
- Функције жица кошнице
- Функција кошнице
- Команде за кошнице
- Архитектура кошница
- Наредба кошнице
- Инсталација кошница
- Уграђене функције Питхон-а