Към съдържанието

Форматиране на Spark SQL

Форматирайте Apache Spark SQL и Databricks заявки според правилата на Spark за идентификатори с обратни кавички, низове с екраниране с обратна наклонена черта, сурови низове r'' и замествания ${var}. CLUSTER BY, DISTRIBUTE BY и SORT BY се запазват като клаузи, LATERAL VIEW и LEFT SEMI или ANTI JOIN започват на нови редове, а SELECT * EXCEPT остава на същия ред. Незатворените низове и скоби се отбелязват с ред и колона за инженерите по данни.

Нулиране

Често задавани въпроси

Какъв синтаксис на Spark SQL се разпознава?

Разпознават се идентификатори с обратни кавички, низове в единични и двойни кавички с екраниране с обратна наклонена черта, сурови низове r'' и двоични литерали X''. Заместванията ${var}, индексите map['key'] и array[0], както и преобразуванията с :: се запазват непокътнати.

Кои специфични за Spark клаузи се поддържат?

CLUSTER BY, DISTRIBUTE BY и SORT BY получават собствени редове като ORDER BY. LATERAL VIEW, LATERAL VIEW OUTER, LEFT SEMI JOIN и LEFT ANTI JOIN започват на нови редове като съединенията.

Какво става със SELECT * EXCEPT?

EXCEPT непосредствено след звездичка остава на същия ред. Така SELECT * EXCEPT (col) не се бърка с оператора за множества EXCEPT.

Запазват ли се заместителите ${var}?

Да. Замествания като ${env} или ${hivevar:date} се запазват точно както са написани, включително двоеточието в тях.

Поддържа ли MERGE INTO?

Да. Клоновете WHEN MATCHED и WHEN NOT MATCHED на операторите MERGE INTO в Delta Lake започват на нови редове.

Мога ли да поставя SQL от низ в PySpark?

Да, поставете самия текст SQL без ограждащите го кавички в Python. Резултатът може да бъде поставен обратно в spark.sql() или в клетка на бележник.

Променя ли се регистърът на ключовите думи?

Не. Ключовите думи и имената запазват регистъра, който сте задали. Променят се само интервалите и новите редове.

Какви грешки се откриват?

Незатворени низове, идентификатори с обратни кавички, индекси и блокови коментари, както и небалансирани скоби, всеки с ред и колона. Нищо не се изпълнява в клъстер.

Какъв е максималният размер на входните данни?

До 1 MB на заявка и 128 KB на оператор. Експорти от бележници с много оператори се форматират по един оператор наведнъж.

Мога ли да избера отстъпа и съхранява ли се моят SQL?

Използвайте 2 или 4 интервала или табулации. SQL се форматира само в паметта и никога не се записва.

За OneClick Pro

OneClick Pro е безплатна колекция от над 150 уеб инструмента за ежедневна работа: преобразуване на изображения и единици, форматиране и валидиране на код, проверка на домейни и SEO, както и работа с текст, дати и числа. Всеки инструмент работи без регистрация или абонамент, а въведеното от вас се използва само за изчисляване на резултата и никога не се съхранява. Използвайте го като бърз набор от инструменти за еднократни задачи или добавете в отметките инструментите, на които разчитате всеки ден.