Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения:
Databricks SQL
Databricks Runtime 11.3 LTS и выше
Возвращает состояние автозагрузчика или read_files потока на уровне файла.
Синтаксис
cloud_files_state( { TABLE ( table_name ) | checkpoint } )
Аргументы
-
table_name: идентификатор потоковой таблицы, записываемой в
read_files. Имя не должно содержать временную спецификацию. Доступно в Databricks Runtime 13.3 LTS и более поздних версиях. -
checkpoint: литералSTRING. Каталог контрольной точки для потока с источником Auto Loader. См. статью об автозагрузчике.
Возвраты
Возвращает таблицу со следующей схемой:
path STRING NOT NULL PRIMARY KEYПуть к файлу.
size BIGINT NOT NULLРазмер файла в байтах.
create_time TIMESTAMP NOT NULLВремя создания файла.
discovery_time TIMESTAMP NOT NULLПрименяется к:
Databricks SQL
Databricks Runtime 16.4 и более поздние версииВремя обнаружения файла.
processed_time TIMESTAMP NOT NULLПрименяется к:
Databricks SQL
Databricks Runtime 16.4 и более поздние версииЗаполнено для: Файлы, обработанные потоками автозагрузчика, работающими в Databricks Runtime 16.4 и более поздних версий с
cloudFiles.cleanSourceвключенным параметром, или Databricks Runtime 18.2 и более поздних версий. См. общие статьи.Время обработки файла. Если пакет встречает сбой и выполняется повторно, файл может обрабатываться несколько раз. При выполнении повторных попыток это поле содержит последнее время обработки.
commit_time TIMESTAMPПрименяется к:
Databricks SQL
Databricks Runtime 16.4 и более поздние версииЗаполнено для: Файлы, обработанные потоками автозагрузчика, работающими в Databricks Runtime 16.4 и более поздних версий с
cloudFiles.cleanSourceвключенным параметром, или Databricks Runtime 18.2 и более поздних версий. См. общие статьи.Время фиксации файла в контрольной точке после обработки.
NULLесли файл еще не обработан. Не существует гарантированной задержки для маркировки файла как зафиксированного; Файл может обрабатываться, но помечен как зафиксированный произвольно позже. Пометка файла как зафиксированного означает, что автозагрузчик не требует повторной обработки файла.archive_time TIMESTAMPПрименяется к:
Databricks SQL
Databricks Runtime 16.4 и выше, когда cloudFiles.cleanSourceвключен. См. общие статьи.Время архивирования файла.
NULLесли файл не был архивирован.archive_mode STRINGПрименяется к:
Databricks SQL
Databricks Runtime 16.4 и выше, когда cloudFiles.cleanSourceвключен. См. общие статьи.Если
MOVEбыл установлен наcloudFiles.cleanSource, когда файл был архивирован,MOVE.Если
DELETEбыл установлен наcloudFiles.cleanSource, когда файл был архивирован,DELETE.NULLЗначениеcloudFiles.cleanSourceif было заданоOFF(по умолчанию).move_location STRINGПрименяется к:
Databricks SQL
Databricks Runtime 16.4 и выше, когда cloudFiles.cleanSourceвключен. См. общие статьи.Полный путь, куда файл был перемещен во время архивной операции, когда
cloudFiles.cleanSourceбыло установлено наMOVE.NULLесли файл не был архивирован илиcloudFiles.cleanSourceявляется одним изDELETEилиOFF.source_id STRINGИдентификатор источника автозагрузчика в потоковом запросе. Это значение
'0'для потоков, которые получают данные из одного расположения облачного хранилища объектов.flow_name STRINGОбласть применения:
Databricks SQL
Databricks Runtime 13.3 и вышеПредставляет определенный поток потоковой передачи в конвейерах Lakeflow, содержащих один или несколько источников облачных файлов. NULL если имя_таблицы не было задано.
ingestion_state STRINGПрименяется к:
Databricks SQL
Databricks Runtime 16.4 и более поздние версииЗаполнено для: Файлы, обработанные потоками автозагрузчика, работающими в Databricks Runtime 16.4 и более поздних версий с
cloudFiles.cleanSourceвключенным параметром, или Databricks Runtime 18.2 и более поздних версий. См. общие статьи.Указывает, был ли файл принят, что обозначается переходом в одно из следующих состояний:
-
NULL: файл еще не обработан или состояние файла невозможно определить автоматическим загрузчиком. -
PROCESSING: обрабатывается файл. -
SKIPPED_CORRUPTED: файл не был загружен, потому что он был поврежден. -
SKIPPED_MISSING: файл не был приемлен, так как он не найден во время обработки. -
INGESTED: файл обрабатывается приемником по крайней мере один раз. Он может обрабатываться повторно неидемпотентными приемниками, какforeachBatchв случае сбоев в потоке. Обработку завершили только файлы без значения NULL в полеcommit_time, которые находятся в состоянииINGESTED. -
NOT_RECOGNIZED_BY_DBR: зарезервировано для совместимости версий. Это состояние будет отображаться для состояний, представленных в более поздних версиях Databricks Runtime, которые не распознаются более ранними версиями Databricks Runtime.
-
Разрешения
Вам нужно:
- При использовании идентификатора таблицы потоковой передачи
- Databricks Runtime 17.1 и ниже:
OWNERпривилегии в таблице потоковой передачи - Databricks SQL и Databricks Runtime 17.2 и более поздних версий:
SELECTиMODIFYпривилегии для потоковой таблицы
- Databricks Runtime 17.1 и ниже:
-
READ FILESпривилегии на месте контрольной точки, если предоставляется контрольная точка во внешнем местоположении.
Примеры
-- Simple example from checkpoint
> SELECT path FROM CLOUD_FILES_STATE('/some/checkpoint');
/some/input/path
/other/input/path
-- Simple example from source subdir
> SELECT path FROM CLOUD_FILES_STATE('/some/checkpoint/sources/0');
/some/input/path
/other/input/path
-- Simple example from streaming table
> SELECT path FROM CLOUD_FILES_STATE(TABLE(my_streaming_table));
/some/input/path
/other/input/path
Ограничения
- Пользователи считывают представление, которое ссылается
cloud_files_stateна таблицу потоковой передачи, должно иметьSELECTправа на представление и необходимые привилегии в таблице потоковой передачи.
Связанные статьи
- Загрузка данных в конвейерах
-
табличное значение функции