Formator Hive
Formatați Apache Hive HiveQL cu reguli Hive pentru identificatori între backtick-uri, șiruri între ghilimele simple și duble cu escape-uri prin bară oblică inversă și variabile ${hivevar:name}. CLUSTER BY, DISTRIBUTE BY și SORT BY sunt păstrate ca clauze, LATERAL VIEW și LEFT SEMI JOIN încep pe linii noi, iar coloanele și condițiile sunt indentate. Șirurile și parantezele neînchise sunt raportate cu linia și coloana, pentru inginerii de date care lucrează cu Hadoop.
Întrebări frecvente
Ce sintaxă HiveQL este înțeleasă?
Identificatorii între backtick-uri și șirurile între ghilimele simple și duble cu escape-uri prin bară oblică inversă sunt recunoscute. Indicii Map['key'] și array[0] și substituțiile de variabile precum ${hivevar:date} și ${hiveconf:x} sunt păstrate intacte.
Care clauze Hive sunt plasate pe linii proprii?
CLUSTER BY, DISTRIBUTE BY și SORT BY sunt tratate ca ORDER BY. LATERAL VIEW, LATERAL VIEW OUTER și LEFT SEMI JOIN încep pe linii noi, la fel ca îmbinările.
Substituțiile de variabile sunt păstrate?
Da. Substituenții ${hivevar:...} și ${hiveconf:...} sunt păstrați exact așa cum au fost scriși. Două puncte din interiorul lor nu sunt niciodată separate prin spații.
Poate formata instrucțiuni INSERT OVERWRITE?
Da. INSERT OVERWRITE TABLE ... PARTITION (...) rămâne împreună, iar instrucțiunea SELECT care furnizează datele este formatată dedesubt.
Acceptă MERGE?
Da. Ramurile WHEN MATCHED și WHEN NOT MATCHED ale instrucțiunilor ACID MERGE încep pe linii noi.
Sunt păstrate comentariile?
Da. Comentariile pe o linie -- și comentariile bloc /* block comments */ rămân la locul lor. Comentariile bloc pe mai multe linii sunt reindentate conform noului aspect.
Schimbă literele mari și mici ale cuvintelor cheie?
Nu. Cuvintele cheie și numele păstrează forma cu majuscule și minuscule pe care ați scris-o. Se modifică doar spațiile albe și întreruperile de linie.
Ce erori sunt detectate?
Șiruri neînchise, identificatori între backtick-uri, indici și comentarii bloc, precum și paranteze dezechilibrate, fiecare cu linia și coloana. Nimic nu este rulat pe clusterul dumneavoastră.
Cât de mare poate fi intrarea?
Până la 1 MB per solicitare și 128 KB per instrucțiune. Scripturile cu multe instrucțiuni sunt formatate pe rând, câte una.
Pot alege indentarea și este stocat SQL meu?
Folosiți 2 sau 4 spații ori taburi. SQL este formatată doar în memorie și nu este salvată niciodată.