Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:
Databricks SQL
Databricks Runtime 11.3 LTS i nowsze
Zwraca stan na poziomie pliku dla Auto Loader lub read_files strumienia.
Składnia
cloud_files_state( { TABLE ( table_name ) | checkpoint } )
Argumenty
-
table_name: identyfikator tabeli strumieniowej zapisywanej przez
read_files. Nazwa nie może zawierać specyfikacji czasowej. Dostępne w środowisku Databricks Runtime 13.3 LTS i nowszym. -
checkpointSTRING: literał. Katalog punktów kontrolnych dla strumienia używającego źródła Auto Loader. Zobacz Co to jest moduł automatycznego ładowania?.
Zwraca
Zwraca tabelę z następującym schematem:
path STRING NOT NULL PRIMARY KEYŚcieżka pliku.
size BIGINT NOT NULLRozmiar pliku w bajtach.
create_time TIMESTAMP NOT NULLCzas utworzenia pliku.
discovery_time TIMESTAMP NOT NULLDotyczy:
Databricks SQL
Databricks Runtime 16.4 lub nowszaCzas odnalezienia pliku.
processed_time TIMESTAMP NOT NULLDotyczy:
Databricks SQL
Databricks Runtime 16.4 i nowsze, gdy cloudFiles.cleanSourcejest włączone. Zobacz Opcje modułu ładującego automatycznego.Czas przetwarzania pliku. Jeśli wsad napotka błąd i zostanie ponowiony, plik może być przetwarzany wiele razy. Po ponownych próbach to pole zawiera najnowszy czas przetwarzania.
commit_time TIMESTAMPDotyczy:
Databricks SQL
Databricks Runtime 16.4 i nowsze, gdy cloudFiles.cleanSourcejest włączone. Zobacz Opcje modułu ładującego automatycznego.Czas, gdy plik został zatwierdzony do punktu kontrolnego po przetworzeniu.
NULLjeśli plik nie został jeszcze przetworzony. Nie ma gwarantowanego opóźnienia podczas oznaczania pliku jako zatwierdzonego; plik może zostać przetworzony, ale oznaczony jako zatwierdzony dowolnie później. Oznaczanie pliku jako zatwierdzone oznacza, że moduł automatycznego ładowania nie wymaga ponownego przetworzenia pliku.archive_time TIMESTAMPDotyczy:
Databricks SQL
Databricks Runtime 16.4 i nowsze, gdy cloudFiles.cleanSourcejest włączone. Zobacz Opcje modułu ładującego automatycznego.Czas archiwizacji pliku.
NULLjeśli plik nie został zarchiwizowany.archive_mode STRINGDotyczy:
Databricks SQL
Databricks Runtime 16.4 i nowsze, gdy cloudFiles.cleanSourcejest włączone. Zobacz Opcje modułu ładującego automatycznego.MOVEjeślicloudFiles.cleanSourcebyło ustawione naMOVEw momencie archiwizowania pliku.DELETEjeślicloudFiles.cleanSourcebyło ustawione naDELETEw momencie archiwizowania pliku.NULLjeślicloudFiles.cleanSourceustawiono wartośćOFF(wartość domyślna).move_location STRINGDotyczy:
Databricks SQL
Databricks Runtime 16.4 i nowsze, gdy cloudFiles.cleanSourcejest włączone. Zobacz Opcje modułu ładującego automatycznego.Pełna ścieżka lokalizacji, do której plik został przeniesiony podczas operacji archiwizacji, gdy
cloudFiles.cleanSourceustawiono wartośćMOVE.NULLjeśli plik nie został zarchiwizowany lubcloudFiles.cleanSourcejest jednym zDELETElubOFF.source_id STRINGIdentyfikator źródła modułu ładowania automatycznego w zapytaniu przesyłania strumieniowego. Ta wartość dotyczy
'0'strumieni pozyskanych z jednej lokalizacji magazynu obiektów w chmurze.flow_name STRINGDotyczy:
Databricks SQL
Databricks Runtime 13.3 i nowszeReprezentuje określony przepływ przesyłania strumieniowego w Lakeflow Spark Declarative Pipelines, który zawiera jedno lub więcej źródeł plików w chmurze. Wartość NULL, jeśli nie podano table_name.
ingestion_state STRINGDotyczy:
Databricks SQL
Databricks Runtime 16.4 i nowsze, gdy cloudFiles.cleanSourcejest włączone. Zobacz Opcje modułu ładującego automatycznego.Czy plik został załadowany, określone jednym z następujących stanów:
-
NULL: Plik nie został jeszcze przetworzony lub nie można określić stanu pliku przez moduł automatycznego ładowania. -
PROCESSING: plik jest przetwarzany. -
SKIPPED_CORRUPTED: Plik nie został zaimportowany, ponieważ był uszkodzony. -
SKIPPED_MISSING: Plik nie został wczytany, ponieważ nie został znaleziony podczas przetwarzania. -
INGESTED: Plik został przetworzony przez element końcowy co najmniej raz. Można go ponownie przetworzyć za pomocą ujściów innych niż idempotentnych, takich jakforeachBatchw przypadku awarii w strumieniu. Przetwarzanie zakończyło tylko pliki z polem o wartości innej niż nullcommit_time, które znajdują się wINGESTEDstanie. -
NOT_RECOGNIZED_BY_DBR: zarezerwowane w celu zachowania zgodności wersji. Ten stan będzie wyświetlany dla stanów wprowadzonych w nowszych wersjach środowiska Databricks Runtime, które są nierozpoznane przez wcześniejsze wersje środowiska Databricks Runtime.
-
Uprawnienia
Musisz mieć następujące elementy:
- Jeśli używasz identyfikatora tabeli przesyłania strumieniowego
- Databricks Runtime 17.1 i poniżej:
OWNERuprawnienia w tabeli przesyłania strumieniowego - Databricks SQL i Databricks Runtime 17.2 i nowsze:
SELECTorazMODIFYuprawnienia w tabeli przesyłania strumieniowego
- Databricks Runtime 17.1 i poniżej:
-
READ FILESuprawnienia w lokalizacji punktu kontrolnego, jeśli podają punkt kontrolny w lokalizacji zewnętrznej.
Przykłady
-- 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
Ograniczenia
- Użytkownicy odczytujący widok, który odwołuje się
cloud_files_statedo tabeli przesyłania strumieniowego, muszą mieć zarównoSELECTuprawnienia w widoku, jak i wymagane uprawnienia w tabeli przesyłania strumieniowego.