cloud_files_state fungsi dengan nilai tabel

Berlaku untuk:centang ditandai ya Databricks SQL centang ditandai ya Databricks Runtime 11.3 LTS ke atas

Mengembalikan status level file dari Auto Loader atau read_files stream.

Sintaks

cloud_files_state( { TABLE ( table_name ) | checkpoint } )

Argumen

  • table_name: Pengidentifikasi tabel streaming yang sedang ditulis oleh read_files. Nama tidak boleh menyertakan spesifikasi temporal. Tersedia di Databricks Runtime 13.3 LTS ke atas.
  • checkpoint: Sebuah Literal STRING. Direktori titik pemeriksaan untuk aliran yang menggunakan sumber Auto Loader. Lihat Apa itu Pemuat Otomatis?.

Pengembalian

Mengembalikan tabel dengan skema berikut:

  • path STRING NOT NULL PRIMARY KEY

    Jalur file.

  • size BIGINT NOT NULL

    Ukuran file dalam byte.

  • create_time TIMESTAMP NOT NULL

    Waktu file dibuat.

  • discovery_time TIMESTAMP NOT NULL

    Berlaku untuk:dicentang iya Databricks SQL dicentang iya Databricks Runtime 16.4 ke atas

    Waktu saat file ditemukan.

  • processed_time TIMESTAMP NOT NULL

    Berlaku untuk:dicentang ya Databricks SQL dicentang ya Databricks Runtime 16.4 ke atas ketika cloudFiles.cleanSource diaktifkan. Lihat Opsi Auto Loader.

    Waktu file diproses. Jika batch mengalami kegagalan dan dicoba kembali, file mungkin diproses beberapa kali. Saat percobaan ulang terjadi, bidang ini berisi waktu pemrosesan terbaru.

  • commit_time TIMESTAMP

    Berlaku untuk:dicentang ya Databricks SQL dicentang ya Databricks Runtime 16.4 ke atas ketika cloudFiles.cleanSource diaktifkan. Lihat Opsi Auto Loader.

    Waktu file di-commit ke checkpoint setelah diproses. NULL jika file belum diproses. Tidak ada jaminan latensi untuk menandai file sebagai dikomit; file mungkin diproses tetapi ditandai sebagai dikomit secara acak nanti. Menandai file sebagai telah disetujui artinya Auto Loader tidak memerlukan file tersebut untuk diproses lagi.

  • archive_time TIMESTAMP

    Berlaku untuk:dicentang ya Databricks SQL dicentang ya Databricks Runtime 16.4 ke atas ketika cloudFiles.cleanSource diaktifkan. Lihat Opsi Auto Loader.

    Waktu file diarsipkan. NULL jika file belum diarsipkan.

  • archive_mode STRING

    Berlaku untuk:dicentang ya Databricks SQL dicentang ya Databricks Runtime 16.4 ke atas ketika cloudFiles.cleanSource diaktifkan. Lihat Opsi Auto Loader.

    MOVE jika cloudFiles.cleanSource diatur ke MOVE ketika file diarsipkan.

    DELETE jika cloudFiles.cleanSource diatur ke DELETE ketika file diarsipkan.

    NULL jika cloudFiles.cleanSource diatur ke OFF (default).

  • move_location STRING

    Berlaku untuk:dicentang ya Databricks SQL dicentang ya Databricks Runtime 16.4 ke atas ketika cloudFiles.cleanSource diaktifkan. Lihat Opsi Auto Loader.

    Jalur lengkap tempat file dipindahkan selama operasi pengarsipan ketika cloudFiles.cleanSource diatur ke MOVE.

    NULL jika file belum diarsipkan atau cloudFiles.cleanSource merupakan salah satu dari DELETE atau OFF.

  • source_id STRING

    ID sumber Auto Loader pada kueri streaming. Nilai ini adalah '0' untuk aliran yang mengambil dari satu lokasi penyimpanan objek cloud.

  • flow_name STRING

    Berlaku untuk:centang ditandai ya Databricks SQL centang ditandai ya Databricks Runtime 13.3 ke atas

    Mewakili aliran streaming tertentu di Alur Deklaratif Lakeflow Spark yang berisi satu atau beberapa sumber file cloud. NULL jika tidak ada table_name yang diberikan.

  • ingestion_state STRING

    Berlaku untuk:dicentang ya Databricks SQL dicentang ya Databricks Runtime 16.4 ke atas ketika cloudFiles.cleanSource diaktifkan. Lihat Opsi Auto Loader.

    Apakah file telah diserap, ditunjukkan oleh salah satu status berikut:

    • NULL: File belum diproses, atau status file tidak dapat ditentukan oleh Auto Loader.
    • PROCESSING: File sedang diproses.
    • SKIPPED_CORRUPTED: File tidak diserap karena rusak.
    • SKIPPED_MISSING: File tidak diserap karena tidak ditemukan selama pemrosesan.
    • INGESTED: File telah diproses oleh sink setidaknya sekali. Ini mungkin diproses ulang oleh sink non-idempotent seperti foreachBatch jika terjadi kegagalan dalam aliran. Hanya file dengan bidang non-null commit_time yang dalam status INGESTED telah selesai diproses.
    • NOT_RECOGNIZED_BY_DBR: Dicadangkan untuk kompatibilitas versi. Status ini akan ditampilkan untuk status yang diperkenalkan dalam versi Databricks Runtime selanjutnya yang tidak dikenali oleh versi Databricks Runtime sebelumnya.

Izin

Anda harus memiliki:

  • Jika menggunakan pengidentifikasi tabel streaming
    • Databricks Runtime 17.1 ke bawah: OWNER hak istimewa pada tabel streaming
    • Databricks SQL dan Databricks Runtime 17.2 ke atas: hak akses SELECT dan MODIFY pada tabel streaming
  • READ FILES hak istimewa pada lokasi titik pemeriksaan jika menyediakan titik pemeriksaan di bawah lokasi eksternal.

Contoh

-- 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

Keterbatasan

  • Pengguna yang membaca tampilan yang mereferensikan cloud_files_state tabel streaming harus memiliki SELECT hak istimewa pada tampilan dan hak istimewa yang diperlukan pada tabel streaming.