Data Lake Formation (DLF) menyediakan fitur optimasi penyimpanan seperti kompaksi adaptif tingkat tabel, pembersihan snapshot kedaluwarsa, manajemen siklus hidup partisi, dan pembersihan file yatim. Fitur-fitur ini menyederhanakan penggunaan dan pemeliharaan tabel Paimon serta meningkatkan efisiensi komputasi dan penyimpanan. Topik ini menjelaskan kebijakan optimasi penyimpanan cerdas yang dijalankan DLF di latar belakang beserta mekanisme eksekusinya.
Tabel Iceberg tidak secara otomatis mereklaim storage. Untuk mencegah biaya penyimpanan meningkat, Anda harus membersihkan snapshot kedaluwarsa dan file yatim secara manual. Untuk informasi selengkapnya, lihat Iceberg Table Storage Administration.
Strategi optimasi penyimpanan
Jenis kebijakan | Deskripsi | Mekanisme eksekusi DLF |
Fitur compaction menggabungkan file-file kecil menjadi file yang lebih besar. Hal ini mengurangi jumlah file, sehingga menurunkan overhead manajemen metadata dan biaya pencarian file saat kueri. Ini meningkatkan performa dan efisiensi kueri pada tabel Paimon. | DLF secara otomatis memicu compaction ketika Anda melakukan commit penulisan data. | |
Selama snapshot masih ada, file data yang direferensikannya tidak dapat dihapus. Hal ini memastikan bahwa status historis data tetap dapat dibaca. Seiring pembuatan snapshot baru, ruang penyimpanan yang dikonsumsi oleh data historis meningkat. Anda harus menghapus snapshot lama untuk melepaskan ruang yang ditempati oleh data historis yang tidak aktif. Ini membantu Anda mengelola dan membebaskan resource penyimpanan. | DLF secara otomatis memicu pembersihan snapshot saat pekerjaan optimasi penyimpanan DLF berjalan. Waktu kedaluwarsa default untuk snapshot adalah 1 jam. Anda dapat menyesuaikan waktu kedaluwarsa tersebut menggunakan parameter tabel Paimon. Untuk informasi selengkapnya, lihat Clean up expired data. | |
Banyak skenario bisnis hanya memerlukan akses ke data terbaru. Dalam kasus ini, Anda dapat mempartisi data berdasarkan waktu dan menetapkan waktu kedaluwarsa partisi untuk menghapus partisi historis lama secara otomatis. Hal ini membebaskan ruang penyimpanan. Anda juga dapat mengonfigurasi tiering penyimpanan untuk memindahkan data partisi yang jarang diakses dari penyimpanan berkinerja tinggi seperti Standard ke penyimpanan berbiaya rendah seperti Infrequent Access, Archive, atau Cold Archive. Ini mengurangi biaya penyimpanan sekaligus memenuhi kebutuhan bisnis. | Anda dapat mengonfigurasi waktu kedaluwarsa menggunakan parameter tabel Paimon. Untuk informasi selengkapnya, lihat Set partition expiration time. Setelah Anda mengonfigurasi parameter tersebut, proses ini akan dipicu secara otomatis saat pekerjaan optimasi penyimpanan DLF berjalan. Anda juga dapat menggunakan fitur Intelligent storage tiering untuk secara otomatis memindahkan data partisi yang memenuhi kriteria tertentu ke kelas penyimpanan seperti Standard, Infrequent Access, Archive, atau Cold Archive. Anda juga dapat mengubah kelas penyimpanan secara manual pada halaman detail tabel. Pada halaman Storage overview, Anda dapat melihat distribusi tiering penyimpanan untuk katalog data, database, dan tabel. | |
Karena error job, restart, atau masalah lainnya, beberapa file temporary yang belum dikomit mungkin tersisa di direktori tabel Paimon. File yatim ini tidak direferensikan oleh snapshot mana pun dan tidak dapat dihapus oleh mekanisme kedaluwarsa snapshot. File-file ini perlu dibersihkan secara berkala. | Periode retensi default untuk file yatim adalah 7 hari. File yatim yang lebih tua dari periode ini dianggap kedaluwarsa dan secara otomatis dibersihkan. DLF memicu tugas pembersihan setiap 7 hari. |
Aktifkan atau nonaktifkan optimasi penyimpanan cerdas
Tab Storage Optimization hanya ditampilkan saat Anda membuat tabel Paimon.
Masuk ke Konsol Data Lake Formation.
Pada halaman daftar Data Catalog, klik nama katalog.
Pada tab Databases, klik nama database tujuan untuk melihat tabel data.
Pada Table List, klik sebuah tabel untuk melihat informasi kolomnya.
Klik tab Storage Optimization. Sakelar optimasi penyimpanan cerdas diaktifkan secara default. Klik sakelar
untuk menonaktifkannya.
Lihat dan konfigurasi strategi optimasi penyimpanan
Compaction
Pada tab Storage Optimization, klik Compaction. Anda dapat melihat status eksekusi penggabungan file kecil, catatan Rescale, dan riwayat eksekusi.
Edit pola kebijakan sesuai kebutuhan:
Pola resource dinamis (Direkomendasikan)
Sistem secara otomatis menskalakan resource komputasi berdasarkan beban real-time. Pola ini tidak memerlukan perencanaan kapasitas manual dan cocok untuk skenario dengan trafik yang fluktuatif.
Tiga preferensi konfigurasi didukung:
Balanced resource and latency: Menyeimbangkan antara kecepatan merge dan konsumsi resource (default).
Latency first: Mengalokasikan lebih banyak resource untuk menyelesaikan merge lebih cepat dan mengurangi latensi visibilitas data.
Resource first: Membatasi penggunaan resource untuk mengurangi biaya komputasi, yang dapat mengakibatkan waktu merge lebih lama.
Kebijakan alokasi dan skalabilitas resource dinamis
Pola sumber daya tetap
Tentukan secara manual jumlah resource komputasi untuk compaction. Pola ini cocok untuk skenario dengan trafik stabil atau persyaratan kontrol biaya yang ketat.
Persyaratan konfigurasi: Konfigurasi unit komputasi (CU) minimal harus 2 CU.
Pengaturan parameter: Anda dapat menyesuaikan interval pemicu compaction dan jumlah bucket.
Lihat status eksekusi
Anda dapat melihat status eksekusi optimasi tabel saat ini dan mengonfigurasi langganan alert kustom di Cloud Monitor. Untuk informasi lebih lanjut tentang metrik dan langkah konfigurasi, lihat Lakehouse table optimization monitoring.
Lihat catatan Rescale
Bagian ini mencatat event historis rescaling bucket untuk tabel data atau partisi tertentu. Catatan ini mencerminkan perubahan struktur penyimpanan fisik dasar tabel. Mekanisme rescale terutama digunakan untuk mengatasi masalah performa akibat perubahan volume data. Anda dapat menggunakan catatan Rescale untuk menentukan apakah suatu tabel tidak memasuki proses compaction karena sedang dalam proses rescale.
Lihat riwayat eksekusi
Anda dapat melihat riwayat eksekusi penggabungan file kecil untuk tabel saat ini. Riwayat ini menunjukkan bagaimana sistem memproses file terfragmentasi untuk mengoptimalkan performa baca dan ruang penyimpanan. Gunakan catatan ini untuk:
Konfirmasi eksekusi tugas: Pastikan tugas merge latar belakang berjalan dengan benar untuk mencegah akumulasi tak terbatas file kecil.
Evaluasi efisiensi kompresi: Bandingkan jumlah file dan ukurannya sebelum dan sesudah penggabungan untuk menentukan apakah strategi compaction saat ini sesuai.
Expired snapshot cleanup
Pada tab Storage Optimization, klik Snapshot Expire. Anda dapat mengonfigurasi aturan pembersihan snapshot dan melihat hasilnya.
Konfigurasi aturan pembersihan snapshot
Klik Edit, atur Snapshot Retention Period (default: 1 jam), lalu klik Save untuk menyelesaikan konfigurasi.
Lihat hasil pembersihan snapshot
Jumlah Snapshot Saat Ini: Menampilkan jumlah snapshot yang tersisa secara real-time.
Informasi Snapshot Terlama: Menampilkan detail snapshot tabel terlama, termasuk ID snapshot, waktu commit, jenis commit, total baris tabel, dan baris yang ditambahkan dalam commit ini.
Partition lifecycle management
Pada tab Storage Optimization, klik Partition LifeCycle. Anda dapat mengonfigurasi aturan pembersihan partisi, melihat hasil pembersihan partisi, dan mengonfigurasi tiering penyimpanan.
Konfigurasi aturan pembersihan partisi
Anda dapat mengklik sakelar
di sisi kanan Enable Partition Cleanup untuk mengaktifkan pembersihan partisi.Setelah mengaktifkan pembersihan partisi, konfigurasikan aturan berikut sesuai kebutuhan. Klik Save untuk menyelesaikan konfigurasi.
Anda dapat menyelesaikan konfigurasi dengan mengatur pasangan kunci-nilai opsi tabel yang sesuai.
Item konfigurasi
Deskripsi
Expiration Policy
(partition.expiration-strategy)
Anda dapat memilih salah satu kebijakan kedaluwarsa berikut:
Last access time (access-time): Menentukan kedaluwarsa berdasarkan waktu akses terakhir data partisi.
Partition value (values-time): Anda dapat mengonfigurasi format timestamp partisi dan pola field partisi.
Timestamp format (partition.timestamp-formatter): Anda dapat mengonfigurasi format seperti
yyyy-MM-dd,yyyyMMdd,dd/MM/yyyy, dandd.MM.yyyy.Timestamp pattern (partition.timestamp-pattern): Secara default, field partisi pertama digunakan. Anda dapat mengonfigurasi pola seperti
$dtatau$year-$month-$day.
Last update time (update-time): Menentukan kedaluwarsa berdasarkan waktu pembaruan terakhir data partisi pada granularitas terkecil.
Partition Retention Period
(partition.expiration-time)
Unit: hari. Anda dapat mengonfigurasi nilai seperti
30d. Nilai maksimum adalah 999.999 hari. Waktu mulai periode retensi ditentukan oleh kebijakan kedaluwarsa yang dipilih.(Opsional) Setelah menyimpan, Anda juga dapat mengklik Edit di samping Rule Configuration untuk melakukan perubahan.
Jika Anda ingin menyimpan partisi secara permanen, jangan konfigurasi aturan kedaluwarsa partisi. Secara default, sistem tidak secara otomatis membersihkan data partisi.
Lihat hasil pembersihan partisi
Klik View Partitions untuk melihat daftar partisi tabel saat ini. Daftar ini mencakup nama partisi, jumlah baris (fisik), jumlah file yang direferensikan, ukuran total file, pembuat, kelas penyimpanan, pembaruan terakhir, waktu pembuatan, waktu pembaruan terakhir, dan operasi.
Konfigurasi tiering penyimpanan
Item konfigurasi | Deskripsi |
Intelligent Tiering |
Catatan
|
Tiering Strategy |
|
Tiering Rule | Persyaratan durasi penyimpanan minimum berbeda-beda untuk kelas penyimpanan yang berbeda. Anda dapat mengonfigurasi aturan tiering berikut:
|
Selain menggunakan fitur Intelligent storage tiering, Anda juga dapat mengubah kelas penyimpanan secara manual pada halaman detail tabel. Anda juga dapat melihat distribusi tiering penyimpanan untuk katalog data, database, dan tabel pada halaman Storage overview.
Orphan file cleanup
Pada tab Storage Optimization, klik Orphan File Remove. Anda dapat melihat aturan pembersihan file yatim. Misalnya, periode retensi default untuk file yatim adalah 7 hari, berdasarkan waktu penulisan file. File yatim kedaluwarsa yang lebih tua dari periode ini secara otomatis dibersihkan oleh sistem.
Mengubah kelas penyimpanan secara manual
Pada daftar Databases, klik nama database untuk melihat daftar tabel.
Pada daftar Tables, klik nama tabel untuk melihat kolom tabel.
Klik tab Table Details. Anda dapat mengubah kelas penyimpanan secara manual untuk tabel partisi dan non-partisi.
Tabel partisi
Pada tab Partitions, Anda dapat mengubah kelas penyimpanan untuk partisi dengan kelas penyimpanan berbeda.
Partisi dalam kelas penyimpanan Standard, Infrequent Access, atau Archive:
Pada kolom Actions, klik Modify Storage Class. Anda dapat mengubah kelas penyimpanan ke kelas apa pun selain yang saat ini digunakan.
Partisi dalam kelas penyimpanan Cold Archive:
Anda harus terlebih dahulu memulihkan data. Setelah pemulihan selesai dan status berubah menjadi restored, Anda dapat mengubah kelas penyimpanan. Lakukan langkah-langkah berikut:
Klik Restore. Konfigurasikan Restored state duration. Anda dapat memilih partisi untuk batch restoration.
Rentang nilai: 1 hingga 365. Satuan: hari.
Nilai default: 1 hari.
Saat data memasuki status restored, klik kolom Actions, lalu klik Modify Storage Class untuk mengubah kelas penyimpanan.
Tabel non-partisi
Pada bagian Basic Information tabel, Anda dapat memodifikasi Storage Class.
Kelas penyimpanan Standard, Infrequent Access, atau Archive
Klik Edit di samping Storage Class. Anda dapat mengubah kelas penyimpanan ke kelas apa pun selain yang saat ini digunakan.
Kelas penyimpanan Cold Archive
Anda harus terlebih dahulu memulihkan data. Setelah pemulihan selesai dan status berubah menjadi restored, Anda dapat mengubah kelas penyimpanan. Lakukan langkah-langkah berikut:
Klik Restore di samping Storage Class. Konfigurasikan Restored state duration.
Rentang nilai: 1 hingga 365. Satuan: hari.
Nilai default: 1 hari.
Saat Storage Class berubah menjadi Cold Archive (Restored), klik Edit di samping Storage Class. Anda kemudian dapat mengubahnya ke kelas penyimpanan lainnya.
CatatanWaktu pemulihan: Waktu yang diperlukan untuk memulihkan objek. Kelas penyimpanan Cold Archive hanya mendukung prioritas pemulihan Standard, dan proses pemulihan memerlukan waktu 2 hingga 5 jam.
Waktu mulai status restored: Waktu saat objek Cold Archive pertama dalam partisi memasuki status restored setelah operasi pemulihan selesai.
Durasi status restored: Periode validitas data tetap dalam status restored setelah objek Cold Archive pertama dalam partisi dipulihkan. Setelah semua objek dalam partisi dipulihkan, Anda dapat membaca, menulis, atau mengubah kelas penyimpanan partisi tersebut. Ketika durasi status restored berakhir, data dalam partisi kembali ke status Cold Archive dan tidak dapat diakses secara langsung. Untuk melakukan operasi pada data tersebut, Anda harus memulihkannya lagi.
Prosedur pemulihan
Awalnya, objek berada dalam status beku.
Setelah Anda mengirim permintaan pemulihan, objek memasuki status restoring. Waktu pemulihan aktual dapat bervariasi.
Setelah server menyelesaikan tugas pemulihan, objek memasuki status restored. Untuk tiering penyimpanan tingkat tabel, partisi dapat diakses secara normal setelah semua objek di dalamnya dipulihkan.
Anda dapat memperpanjang durasi status restored dengan menyesuaikan durasi status restored partisi. Namun, durasi total tidak boleh melebihi batas maksimum untuk kelas penyimpanan tersebut.
Setelah durasi status restored berakhir, objek kembali ke status beku tanpa mengubah kelas penyimpanan aslinya. Untuk mengakses data lagi, Anda harus mengirim permintaan pemulihan baru dan menunggu pemulihan selesai.
Saat diaktifkan, sistem secara otomatis melakukan tiering penyimpanan untuk semua tabel dalam katalog berdasarkan aturan siklus hidup yang Anda konfigurasi. Tentukan kebijakan dan aturan tiering sesuai kebutuhan.