Formátovač Hive
Formátujte Apache Hive HiveQL podľa pravidiel Hive pre identifikátory v spätných apostrofoch, reťazce v jednoduchých a dvojitých úvodzovkách so spätnými lomkami ako únikovými znakmi a premenné ${hivevar:name}. CLUSTER BY, DISTRIBUTE BY a SORT BY zostávajú klauzulami, LATERAL VIEW a LEFT SEMI JOIN sa začínajú na nových riadkoch a stĺpce a podmienky sa odsadzujú. Neuzavreté reťazce a zátvorky sa dátovým inžinierom pracujúcim s Hadoop oznámia spolu s číslom riadka a stĺpca.
Často kladené otázky
Ktorá syntax HiveQL sa rozpoznáva?
Rozpoznávajú sa identifikátory v spätných apostrofoch a reťazce v jednoduchých a dvojitých úvodzovkách so spätnými lomkami ako únikovými znakmi. Indexy Map['key'] a array[0] aj substitúcie premenných, ako ${hivevar:date} a ${hiveconf:x}, zostanú nezmenené.
Ktoré klauzuly Hive dostanú vlastný riadok?
CLUSTER BY, DISTRIBUTE BY a SORT BY sa spracúvajú podobne ako ORDER BY. LATERAL VIEW, LATERAL VIEW OUTER a LEFT SEMI JOIN sa začínajú na nových riadkoch, podobne ako spojenia.
Zachovajú sa substitúcie premenných?
Áno. Zástupné symboly ${hivevar:...} a ${hiveconf:...} zostanú presne v pôvodnom tvare. Dvojbodka vo vnútri sa nikdy neoddelí medzerou.
Dokáže formátovať príkazy INSERT OVERWRITE?
Áno. INSERT OVERWRITE TABLE ... PARTITION (...) zostane pokope a príkaz SELECT, ktorý dodáva údaje, sa naformátuje pod ním.
Podporuje MERGE?
Áno. Vetvy WHEN MATCHED a WHEN NOT MATCHED príkazov ACID MERGE sa začínajú na nových riadkoch.
Zachovajú sa komentáre?
Áno. Jednoriadkové komentáre -- a blokové komentáre /* */ zostanú na svojom mieste. Viacriadkové blokové komentáre sa znova odsadia podľa nového rozloženia.
Mení veľkosť písmen v kľúčových slovách?
Nie. Kľúčové slová a názvy si zachovajú veľkosť písmen, ktorú ste použili. Menia sa iba medzery a zalomenia riadkov.
Ktoré chyby sa zisťujú?
Neuzavreté reťazce, identifikátory v spätných apostrofoch, indexy a blokové komentáre, ako aj nevyvážené zátvorky; pri každom sa uvádza riadok a stĺpec. Na vašom klastri sa nič nespúšťa.
Aký veľký môže byť vstup?
Najviac 1 MB na požiadavku a 128 KB na príkaz. Skripty s mnohými príkazmi sa formátujú po jednom príkaze.
Môžem si vybrať odsadenie a ukladá sa môj SQL?
Použite 2 alebo 4 medzery alebo tabulátory. SQL sa formátuje iba v pamäti a nikdy sa neukladá.