Hive formatavimo įrankis
Formatuokite Apache Hive HiveQL pagal Hive taisykles, taikomas atgalinėmis kabutėmis apgaubtiems identifikatoriams, viengubomis ir dvigubomis kabutėmis apgaubtoms eilutėms su atgalinio pasvirojo brūkšnio sekomis ir ${hivevar:name} kintamiesiems. CLUSTER BY, DISTRIBUTE BY ir SORT BY paliekamos kaip sąlygos, LATERAL VIEW ir LEFT SEMI JOIN pradedamos naujose eilutėse, o stulpeliai ir sąlygos įtraukiami. Duomenų inžinieriams, dirbantiems su Hadoop, apie neuždarytas eilutes ir skliaustus pranešama nurodant eilutę ir stulpelį.
Dažnai užduodami klausimai
Kokia HiveQL sintaksė suprantama?
Atpažįstami atgalinėmis kabutėmis apgaubti identifikatoriai ir viengubomis bei dvigubomis kabutėmis apgaubtos eilutės su atgalinio pasvirojo brūkšnio sekomis. Žemėlapių indeksai, pvz., Map['key'], masyvų indeksai, pvz., array[0], ir kintamųjų pakeitimai, pvz., ${hivevar:date} ir ${hiveconf:x}, lieka nepakitę.
Kurios Hive sąlygos perkeliamos į atskiras eilutes?
CLUSTER BY, DISTRIBUTE BY ir SORT BY tvarkomos kaip ORDER BY. LATERAL VIEW, LATERAL VIEW OUTER ir LEFT SEMI JOIN pradedamos naujose eilutėse, kaip ir sujungimai.
Ar kintamųjų pakeitimai išsaugomi?
Taip. ${hivevar:...} ir ${hiveconf:...} vietaženkliai išsaugomi tiksliai taip, kaip įrašyti. Dvitaškis jų viduje niekada neatskiriamas tarpais.
Ar galima formatuoti INSERT OVERWRITE sakinius?
Taip. INSERT OVERWRITE TABLE ... PARTITION (...) paliekama kartu, o ją papildantis SELECT formatuojamas po ja.
Ar palaikomas MERGE?
Taip. ACID MERGE sakinių WHEN MATCHED ir WHEN NOT MATCHED šakos pradedamos naujose eilutėse.
Ar komentarai išsaugomi?
Taip. -- eilučių komentarai ir /* blokiniai komentarai */ lieka savo vietose. Kelių eilučių blokinių komentarų įtraukos pritaikomos naujam išdėstymui.
Ar keičiama raktinių žodžių raidžių registras?
Ne. Raktiniai žodžiai ir pavadinimai išsaugo jūsų pasirinktą raidžių dydį. Keičiasi tik tarpai ir eilučių lūžiai.
Kokios klaidos aptinkamos?
Neuždarytos eilutės, atgalinėmis kabutėmis apgaubti identifikatoriai, indeksai ir blokiniai komentarai, taip pat nesubalansuoti skliaustai; nurodoma eilutė ir stulpelis. Klasteryje niekas nevykdoma.
Kokio dydžio gali būti įvestis?
Iki 1 MB vienai užklausai ir 128 KB vienam sakiniui. Skriptai su daug sakinių formatuojami po vieną sakinį.
Ar galiu pasirinkti įtrauką ir ar mano SQL išsaugomas?
Naudokite 2 arba 4 tarpus arba tabuliavimo simbolius. SQL formatuojama tik atmintyje ir niekada neišsaugoma.