Apa itu Danau Delta?

Delta Lake adalah lapisan penyimpanan yang dioptimalkan yang menyediakan fondasi untuk tabel di lakehouse di Databricks. Delta Lake adalah perangkat lunak sumber terbuka yang memperluas file data Parquet dengan log transaksi berbasis file untuk transaksi ACID dan penanganan metadata yang dapat diskalakan. Delta Lake sepenuhnya kompatibel dengan API Apache Spark, dan dikembangkan untuk integrasi yang ketat dengan Streaming Terstruktur, memungkinkan Anda untuk dengan mudah menggunakan satu salinan data untuk operasi batch dan streaming dan menyediakan pemrosesan bertahap dalam skala besar.

Delta Lake adalah format penyimpanan default untuk semua operasi di Azure Databricks. Kecuali ditentukan lain, semua tabel di Azure Databricks adalah tabel Delta. Databricks awalnya mengembangkan protokol Delta Lake dan terus secara aktif berkontribusi pada proyek sumber terbuka. Banyak pengoptimalan dan produk dalam platform Databricks dibangun berdasarkan jaminan yang disediakan oleh Apache Spark dan Delta Lake. Untuk informasi tentang pengoptimalan di Azure Databricks, lihat Rekomendasi pengoptimalan di Azure Databricks.

Untuk informasi referensi tentang perintah Delta Lake SQL, lihat pernyataan Delta Lake.

Log transaksi Delta Lake memiliki protokol terbuka yang terdefinisi dengan baik yang dapat digunakan oleh sistem apa pun untuk membaca log. Lihat Protokol Log Transaksi Delta.

Mulai dengan Delta Lake

Semua tabel di Azure Databricks adalah tabel Delta secara default. Baik Anda menggunakan Apache Spark DataFrames atau SQL, Anda mendapatkan semua manfaat Delta Lake hanya dengan menyimpan data Anda ke lakehouse dengan pengaturan default.

Untuk contoh operasi Delta Lake dasar seperti membuat tabel, membaca, menulis, dan memperbarui data, lihat Tutorial: Delta Lake.

Databricks memiliki banyak rekomendasi untuk praktik terbaik untuk Delta Lake.

Mengonversi dan menyerap data ke Delta Lake

Azure Databricks menyediakan sejumlah produk untuk mempercepat dan menyederhanakan pemuatan data ke lakehouse Anda.

Untuk daftar lengkap opsi penyerapan, lihat Menyerap data ke dalam databricks lakehouse.

Memperbarui dan memodifikasi tabel Delta Lake

Transaksi atom dengan Delta Lake menyediakan banyak opsi untuk memperbarui data dan metadata. Databricks menyarankan Anda menghindari berinteraksi langsung dengan file log data dan transaksi di direktori file Delta Lake untuk menghindari kerusakan tabel Anda.

Beban kerja bertahap dan streaming di Delta Lake

Delta Lake dioptimalkan untuk Streaming Terstruktur di Azure Databricks. Tabel Langsung Delta memperluas kemampuan asli dengan penyebaran infrastruktur yang disederhanakan, penskalaan yang ditingkatkan, dan dependensi data terkelola.

Mengkueri versi tabel sebelumnya

Setiap tulis ke tabel Delta membuat versi tabel baru. Anda dapat menggunakan log transaksi untuk meninjau modifikasi pada tabel Anda dan mengkueri versi tabel sebelumnya. Lihat Bekerja dengan riwayat tabel Delta Lake.

Peningkatan skema Delta Lake

Delta Lake memvalidasi skema saat menulis, memastikan bahwa semua data yang ditulis ke tabel sesuai dengan persyaratan yang telah Anda tetapkan.

Mengelola file dan mengindeks data dengan Delta Lake

Azure Databricks menetapkan banyak parameter default untuk Delta Lake yang memengaruhi ukuran file data dan jumlah versi tabel yang dipertahankan dalam riwayat. Delta Lake menggunakan kombinasi penguraian metadata dan tata letak data fisik untuk mengurangi jumlah file yang dipindai untuk memenuhi kueri apa pun.

Mengonfigurasi dan meninjau pengaturan Delta Lake

Azure Databricks menyimpan semua data dan metadata untuk tabel Delta Lake di penyimpanan objek cloud. Banyak konfigurasi dapat diatur pada tingkat tabel atau dalam sesi Spark. Anda dapat meninjau detail tabel Delta untuk menemukan opsi apa yang dikonfigurasi.

Alur data menggunakan Delta Lake dan Delta Live Tables

Azure Databricks mendorong pengguna untuk memanfaatkan arsitektur medali untuk memproses data melalui serangkaian tabel saat data dibersihkan dan diperkaya. Tabel Langsung Delta menyederhanakan beban kerja ETL melalui eksekusi yang dioptimalkan dan penyebaran dan penskalaan infrastruktur otomatis.

Kompatibilitas fitur Delta Lake

Tidak semua fitur Delta Lake ada di semua versi Databricks Runtime. Untuk informasi tentang penerapan versi Delta Lake, lihat Bagaimana Azure Databricks mengelola kompatibilitas fitur Delta Lake?.

Dokumentasi Delta Lake API

Untuk sebagian besar operasi baca dan tulis di tabel Delta, Anda dapat menggunakan SQL Spark atau API DataFrame Apache Spark.

Untuk pernyataan SQL khusus Delta Lake, lihat pernyataan Delta Lake.

Azure Databricks memastikan kompatibilitas biner dengan API Delta Lake di Databricks Runtime. Untuk melihat versi Delta Lake API yang dikemas di setiap versi Databricks Runtime, lihat bagian Lingkungan sistem pada artikel yang relevan di catatan rilis Databricks Runtime. Untuk dokumentasi tentang API Delta Lake untuk Python, Scala, dan Java, lihat dokumentasi OSS Delta Lake.