Standarisasi data

Data tiba di akun data lake dalam berbagai format. Format ini mencakup format yang dapat dibaca manusia, seperti JSON, . File CSV, atau XML, dan format biner terkompresi, seperti .tar atau .gz. Data yang tiba juga datang dalam banyak ukuran, dari beberapa file yang diedit hingga ekspor seluruh tabel SQL. Data juga dapat datang sebagai sejumlah besar file kecil yang merupakan beberapa kbs apiece, seperti peristiwa real-time dari solusi IoT.

Meskipun Azure Data Lake Storage Gen2 mendukung penyimpanan untuk semua jenis data tanpa batasan, Anda harus mempertimbangkan format data Anda dengan hati-hati untuk memastikan efisiensi alur pemrosesan dan mengoptimalkan biaya.

Banyak organisasi sekarang menstandarkan format penyerapan mereka dan memisahkan komputasi dari penyimpanan. Karena itu, format Delta Lake telah menjadi standar yang disukai untuk penyerapan data hingga lapisan pengayaan. Dari lapisan pengayaan, tim aplikasi data Anda dapat melayani data ke dalam format yang mencerminkan kasus penggunaannya.

Catatan

Gunakan Delta Lake untuk mendukung kasus penggunaan batch dan streaming untuk penyerapan data awal hingga lapisan pengayaan.

Artikel ini memberikan gambaran umum tentang Delta Lake, performanya, dan bagaimana hal itu membantu Anda mencapai dukungan kepatuhan, dan cara menstandarkan data Anda saat mengalir dari sumber ke lapisan pengayaan.

Delta Lake

Delta Lake adalah lapisan penyimpanan sumber terbuka yang membawa transaksi ACID (atomitas, konsistensi, isolasi, dan durabilitas) ke beban kerja big data dan Apache Spark. Azure Synapse Analytics dan Azure Databricks kompatibel dengan Linux Foundation Delta Lake.

Fitur utama Delta Lake

Fitur Deskripsi
Transaksi ACID Data lake biasanya diisi melalui beberapa proses dan alur, beberapa di antaranya menulis data secara bersamaan dengan bacaan. Teknisi data digunakan untuk melalui proses manual yang rawan kesalahan untuk memastikan integritas data sebelum delta lake dan transaksi mulai digunakan. Delta Lake membawa transaksi ACID yang akrab ke data lake. Ini memberikan tingkat isolasi terkuat, serializability. Untuk informasi selengkapnya, lihat Menyelam ke Delta Lake: Membongkar Log Transaksi.
Penanganan Metadata yang Dapat Diskalakan Dalam big data, metadata bahkan bisa menjadi "big data". Delta Lake memperlakukan metadata sama dengan data lainnya. Ini menggunakan daya pemrosesan terdistribusi Spark untuk menangani semua metadata. Karena itu, Delta Lake dapat dengan mudah menangani tabel skala petabyte dengan miliaran partisi dan file.
Perjalanan Waktu (penerapan versi data) Kemampuan untuk "membatalkan" perubahan atau kembali ke versi sebelumnya adalah fitur utama transaksi. Delta Lake menyediakan snapshot data yang memungkinkan Anda kembali ke versi lama data untuk audit, pemulihan, atau memproduksi ulang eksperimen. Pelajari selengkapnya dalam Memperkenalkan Delta Lake Time Travel untuk Data Lakes Skala Besar.
Membuka Format Apache Parquet, format garis besar untuk Delta Lake, memungkinkan Anda menerapkan skema kompresi dan pengodean yang efisien.
Kumpulan Batch dan Sumber Streaming dan Sink Tabel di Delta Lake secara bersamaan adalah tabel batch dan sumber streaming dan sink. Streaming penyerapan data, pengurukan historis batch, dan kueri interaktif semuanya berfungsi di luar kotak.
Menegakan Skema Penegakan skema membantu Anda memastikan Anda memiliki jenis data dan kolom yang diperlukan yang benar, yang mencegah inkonsistensi data dari data yang buruk. Untuk informasi selengkapnya, lihat Menyelam ke Delta Lake: Penegakan Skema & Evolusi
Evolusi Skema Delta Lake memungkinkan Anda membuat perubahan yang diterapkan secara otomatis pada skema tabel, tanpa perlu menulis DDL migrasi. Untuk informasi selengkapnya, lihat Menyelam ke Delta Lake: Penegakan Skema & Evolusi
Riwayat Audit Log transaksi Delta Lake mencatat detail tentang setiap perubahan yang dilakukan pada data Anda. Catatan ini menyediakan jejak audit lengkap dari semua perubahan.
Pembaruan dan Penghapusan Delta Lake mendukung API Scala, Java, Python, dan SQL untuk berbagai fungsionalitas. Menggabungkan, memperbarui, dan menghapus dukungan operasi membantu Anda memenuhi persyaratan kepatuhan. Untuk informasi selengkapnya, lihat Mengumumkan Rilis Delta Lake 0.6.1, Mengumumkan Rilis Delta Lake 0.7, dan Upsert dan Penghapusan Sederhana, Andal di Tabel Delta Lake menggunakan API Python (yang mencakup cuplikan kode untuk perintah gabung, perbarui, dan hapus DML).
100% Kompatibel dengan Apache Spark API Pengembang Anda dapat menggunakan Delta Lake dengan perubahan minimal pada alur data yang ada, karena sepenuhnya kompatibel dengan implementasi Spark yang ada.

Untuk informasi selengkapnya, lihat Proyek Delta Lake.

Untuk dokumentasi lengkap, kunjungi Halaman Dokumentasi Delta Lake

Performa

Menggunakan banyak file kecil sering menghasilkan performa suboptimal dan biaya yang lebih tinggi dari peningkatan operasi baca/daftar. Azure Data Lake Storage Gen2 dioptimalkan untuk file yang lebih besar yang memungkinkan pekerjaan analitik Anda berjalan lebih cepat dan dengan biaya yang lebih rendah.

Delta Lake mencakup banyak fitur yang dapat membantu Anda Mengoptimalkan performa dengan manajemen file.

Contohnya meliputi:

  • Log transaksi meminimalkan operasi LIST yang mahal.
  • Pengurutan Z (pengklusteran multidimensi) memungkinkan pushdown predikat yang dioptimalkan untuk filter kueri Anda.
  • Penembolokan asli dan pengoptimalan kueri mengurangi jumlah pemindaian penyimpanan yang Anda butuhkan. Untuk informasi selengkapnya, lihat Mengoptimalkan performa dengan penembolokan.
  • OPTIMIZE menyaring file kecil menjadi file yang lebih besar.

Jadikan pengoptimalan ini sebagai bagian dari proses pemuatan data Anda untuk menjaga kesegaran dan performa data.

Pemartisian data lake

Pemartisian data melibatkan pengorganisasian data di penyimpanan data Anda sehingga Anda dapat mengelola data skala besar dan mengontrol akses data. Partisi dapat meningkatkan skalabilitas, mengurangi ketidakcocokan, dan mengoptimalkan performa.

Saat mempartisi data lake Anda, pastikan penyiapan Anda:

  • Tidak membahayakan keamanan
  • Memiliki isolasi yang jelas dan selaras dengan model otorisasi data Anda
  • Cocok dengan proses penyerapan data Anda dengan baik
  • Memiliki jalur yang terdefinisi dengan baik untuk akses data yang optimal
  • Mendukung tugas manajemen dan pemeliharaan

Praktik umum

Praktik umum untuk desain partisi data adalah:

  • Fokus pada implikasi keamanan Anda lebih awal, dan rancang partisi data Anda bersama dengan otorisasi.
  • Anda mungkin ingin mengizinkan redundansi data sebagai ganti keamanan.- Tentukan konvensi penamaan dan patuhi itu.
  • Anda dapat menumpuk beberapa folder, tetapi selalu menjaganya tetap konsisten.
  • Sertakan elemen waktu dalam struktur folder dan nama file Anda.
  • Jangan mulai struktur folder Anda dengan partisi tanggal. Lebih baik untuk menyimpan tanggal di tingkat folder yang lebih rendah.
  • Jangan gabungkan format file campuran atau produk data yang berbeda dalam struktur folder tunggal.

Tip

Struktur folder Anda harus memiliki strategi partisi yang dapat mengoptimalkan pola akses dan ukuran file yang sesuai. Di zona yang dikumpulkan, rencanakan struktur berdasarkan pada pengambilan yang optimal, berhati-hatilah saat memilih kunci partisi dengan kardinalitas yang tinggi, yang mengarah ke pemartisian yang berlebihan, yang akan mengarah pada ukuran file yang tidak optimal.

Untuk informasi selengkapnya tentang zona data lake, lihat Zona dan kontainer data lake

Dukungan kepatuhan

Delta Lake menambahkan lapisan transaksional untuk menyediakan manajemen data terstruktur di atas data lake Anda. Penambahan ini dapat secara dramatis menyederhanakan dan mempercepat kemampuan Anda untuk menemukan dan menghapus informasi pribadi (juga dikenal sebagai "data pribadi") atas permintaan konsumen. Lapisan transaksi ini mendukung operasi seperti DELETE, UPDATE, dan MERGE. Untuk informasi selengkapnya, lihat Praktik terbaik: Kepatuhan GDPR menggunakan Delta Lake.

Ringkasan

Terapkan standarisasi data yang tercantum dalam artikel ini ke platform Anda. Mulailah dengan format Delta Lake, lalu mulai tambahkan proses untuk pengoptimalan dan kepatuhan. Anda dapat memutuskan untuk membuat layanan yang menjalankan beberapa rute pengoptimalan Anda sesuai jadwal, atau membuat layanan kepatuhan yang menghapus informasi pribadi.

Langkah berikutnya