Spark SQL formatētājs
Formatējiet Apache Spark SQL un Databricks vaicājumus atbilstoši Spark noteikumiem par identifikatoriem ar apgrieztajām pēdiņām, virknēm ar atpakaļvērstās slīpsvītras atsoļiem, neapstrādātām r'' virknēm un ${var} aizvietojumiem. CLUSTER BY, DISTRIBUTE BY un SORT BY tiek saglabātas kā klauzulas, LATERAL VIEW un LEFT SEMI vai ANTI JOIN sākas jaunās rindās, bet SELECT * EXCEPT paliek vienā rindā. Datu inženieriem tiek ziņots par nepabeigtām virknēm un iekavām, norādot rindu un kolonnu.
Bieži uzdotie jautājumi
Kādu Spark SQL sintaksi rīks atpazīst?
Tiek atpazīti identifikatori ar apgrieztajām pēdiņām, vienpēdiņās un dubultpēdiņās ietvertas virknes ar atpakaļvērstās slīpsvītras atsoļiem, neapstrādātas r'' virknes un X'' bināri literāļi. ${var} aizvietojumi, map['key'] un array[0] apakšindeksi, kā arī :: tipa pārveidošana tiek saglabāti neskarti.
Kuras Spark specifiskās klauzulas tiek atbalstītas?
CLUSTER BY, DISTRIBUTE BY un SORT BY tiek izvietotas katra savā rindā, tāpat kā ORDER BY. LATERAL VIEW, LATERAL VIEW OUTER, LEFT SEMI JOIN un LEFT ANTI JOIN sākas jaunās rindās, tāpat kā savienojumi.
Kā tiek apstrādāts SELECT * EXCEPT?
EXCEPT uzreiz pēc zvaigznītes paliek tajā pašā rindā. Tādējādi SELECT * EXCEPT (col) netiek sajaukts ar EXCEPT kopu operatoru.
Vai ${var} vietturi tiek saglabāti?
Jā. Aizvietojumi, piemēram, ${env} vai ${hivevar:date}, tiek saglabāti tieši tā, kā uzrakstīti, tostarp kols tajos.
Vai MERGE INTO tiek atbalstīts?
Jā. Delta Lake MERGE INTO priekšrakstu WHEN MATCHED un WHEN NOT MATCHED atzari sākas jaunās rindās.
Vai varu ielīmēt SQL no PySpark virknes?
Jā, ielīmējiet pašu SQL tekstu bez apkārtējām Python pēdiņām. Rezultātu var ielīmēt atpakaļ funkcijā spark.sql() vai piezīmju grāmatiņas šūnā.
Vai tiek mainīts atslēgvārdu burtu reģistrs?
Nē. Atslēgvārdi un nosaukumi saglabā jūsu norādīto reģistru. Mainās tikai atstarpes un rindu pārtraukumi.
Kādas kļūdas tiek noteiktas?
Tiek atklātas neaizvērtas virknes, identifikatori ar atpakaļpēdiņām, apakšindeksi un bloka komentāri, kā arī nesabalansētas iekavas; katrai kļūdai tiek norādīta rinda un kolonna. Klasterī nekas netiek izpildīts.
Cik liels var būt ievades apjoms?
Līdz 1 MB vienā pieprasījumā un 128 KB vienā priekšrakstā. Piezīmju grāmatiņas eksportā ietvertie daudzie priekšraksti tiek formatēti pa vienam.
Vai varu izvēlēties atkāpes, un vai mans SQL tiek saglabāts?
Izmantojiet 2 vai 4 atstarpes vai tabulācijas. SQL tiek formatēts tikai atmiņā un nekad netiek saglabāts.