Panduan dan pola migrasi Azure Data Lake Storage

Anda dapat memigrasikan data, beban kerja, dan aplikasi dari Azure Data Lake Storage Gen1 ke Azure Data Lake Storage Gen2. Artikel ini menjelaskan pendekatan migrasi yang direkomendasikan dan mencakup beragam pola migrasi dan waktu penggunaan setiap pola. Untuk lebih mudah dibaca, artikel ini menggunakan istilah Gen1 untuk merujuk ke Azure Data Lake Storage Gen1, dan istilah Gen2 untuk merujuk ke Azure Data Lake Storage Gen2.

Catatan

Azure Data Lake Storage Gen1 sekarang dihentikan. Lihat pengumuman penghentian di sini. Sumber daya Data Lake Storage Gen1 tidak lagi dapat diakses. Jika Anda memerlukan bantuan khusus, silakan hubungi kami.

Azure Data Lake Storage Gen2 dibangun di atas penyimpanan Azure Blob dan menyediakan satu set kemampuan yang didedikasikan untuk analitik data besar. Azure Data Lake Storage Gen2 menggabungkan fitur-fitur dari Azure Data Lake Storage Gen1, seperti semantik sistem file, direktori, dan keamanan dan skala tingkat file dengan biaya rendah, penyimpanan berjenjang, ketersediaan tinggi/kemampuan pemulihan bencana dari penyimpanan Azure Blob.

Catatan

Karena Gen1 dan Gen2 adalah layanan yang berbeda, maka tidak ada pengalaman peningkatan. Untuk menyederhanakan migrasi ke Gen2 dengan menggunakan portal Microsoft Azure, lihat Melakukan migrasi Azure Data Lake Storage dari Gen1 ke Gen2 dengan menggunakan portal Microsoft Azure.

Untuk bermigrasi ke Gen1 ke Gen2, kami merekomendasikan pendekatan berikut.

Langkah 1: Menilai kesiapan

Langkah 2: Bersiaplah untuk bermigrasi

Langkah 3: Memigrasikan data dan beban kerja aplikasi

Langkah 4: Peralihan dari Gen1 ke Gen2

Langkah 1: Menilai kesiapan

  1. Pelajari tentang penawaran Data Lake Storage Gen2; manfaat, biaya, dan arsitektur umum yang dimilikinya.

  2. Bandingkan kemampuan Gen1 dengan Gen2.

  3. Tinjau daftar masalah yang diketahui untuk menilai kesenjangan fungsionalitas apa pun.

  4. Gen2 mendukung fitur penyimpanan Blob seperti log diagnostik, tingkat akses, dan kebijakan manajemen siklus hidup penyimpanan Blob. Jika Anda tertarik menggunakan salah satu fitur ini, tinjau tingkat dukungan saat ini.

  5. Tinjau status dukungan ekosistem Azure saat ini untuk memastikan bahwa Gen2 mendukung layanan apa pun yang diandalkan solusi Anda.

Langkah 2: Bersiaplah untuk bermigrasi

  1. Identifikasi himpunan data yang akan Anda migrasikan.

    Ambil kesempatan ini untuk membersihkan himpunan data yang tidak lagi Anda gunakan. Kecuali Anda berencana untuk memigrasikan semua data Anda sekaligus, Luangkan waktu ini untuk mengidentifikasi grup data logis yang dapat Anda migrasikan secara bertahap.

    Lakukan Analisis Usia (atau serupa) pada akun Gen1 Anda untuk mengidentifikasi file atau folder mana yang bertahan lama di inventaris atau mungkin sudah usang.

  2. Tentukan dampak migrasi terhadap bisnis Anda.

    Misalnya, pertimbangkan apakah Anda mampu melakukan penghentian saat migrasi berlangsung. Pertimbangan ini dapat membantu Anda mengidentifikasi pola migrasi yang sesuai, dan memilih alat yang paling tepat.

  3. Membuat rencana migrasi.

    Kami merekomendasikan pola migrasi ini. Anda dapat memilih salah satu pola ini, menggabungkannya bersama-sama, atau merancang pola kustom Anda sendiri.

Langkah 3: Memigrasikan data, beban kerja, dan aplikasi

Migrasikan data, beban kerja, dan aplikasi dengan menggunakan pola yang Anda sukai. Kami menyarankan agar Anda memvalidasi skenario secara bertahap.

  1. Buat akun penyimpanan dan aktifkan fitur namespace hierarkis.

  2. Migrasikan data Anda.

  3. Konfigurasikan layanan dalam beban kerja Anda untuk menunjuk ke titik akhir Gen2 Anda.

    Untuk kluster HDInsight, Anda dapat menambahkan pengaturan konfigurasi akun penyimpanan ke file %HADOOP_HOME%/conf/core-site.xml. Jika Anda berencana untuk memigrasikan tabel Hive eksternal dari Gen1 ke Gen2, pastikan untuk menambahkan pengaturan akun penyimpanan ke file %HIVE_CONF_DIR%/hive-site.xml juga.

    Anda dapat mengubah pengaturan setiap file dengan menggunakan Apache Ambari. Untuk menemukan pengaturan akun penyimpanan, lihat Dukungan Hadoop Azure: ABFS - Azure Data Lake Storage Gen2. Contoh ini menggunakan pengaturan fs.azure.account.key untuk mengaktifkan otorisasi Kunci Bersama:

    <property>
      <name>fs.azure.account.key.abfswales1.dfs.core.windows.net</name>
      <value>your-key-goes-here</value>
    </property>
    

    Untuk tautan ke artikel yang membantu Anda mengonfigurasi HDInsight, Azure Databricks, dan layanan Azure lainnya untuk menggunakan Gen2, lihat Layanan Azure yang mendukung Azure Data Lake Storage Gen2.

  4. Perbarui aplikasi untuk menggunakan API Gen2. Lihat panduan ini:

Lingkungan Artikel
Azure Storage Explorer Gunakan Azure Storage Explorer untuk mengelola direktori, file, dan ACL di Azure Data Lake Storage Gen2
.NET Gunakan .NET untuk mengelola direktori dan file di Azure Data Lake Storage Gen2
Java Gunakan Java untuk mengelola direktori dan file di Azure Data Lake Storage Gen2
Python Gunakan Python untuk mengelola direktori dan file di Azure Data Lake Storage Gen2
JavaScript (Node.js) Gunakan JavaScript SDK di Node.js untuk mengelola direktori dan file di Azure Data Lake Storage Gen2
REST API REST API Azure Data Lake Store
  1. Perbarui skrip untuk menggunakan Data Lake Storage Gen2 PowerShell cmdlets, dan perintah Azure CLI.

  2. Cari referensi URI yang berisi untai adl:// dalam file kode, atau di buku catatan Databricks, file HQL Apache Hive atau file lain yang digunakan sebagai bagian dari beban kerja Anda. Ganti referensi ini dengan URI berformat Gen2 dari akun penyimpanan baru Anda. Misalnya: URI Gen1: adl://mydatalakestore.azuredatalakestore.net/mydirectory/myfile mungkin menjadi abfss://myfilesystem@mydatalakestore.dfs.core.windows.net/mydirectory/myfile.

  3. Konfigurasikan keamanan di akun Anda untuk menyertakan peran Azure, keamanan tingkat file dan folder, dan Firewall Azure Storage dan jaringan virtual.

Langkah 4: Peralihan dari Gen1 ke Gen2

Setelah yakin bahwa aplikasi dan beban kerja Anda stabil di Gen2, Anda dapat mulai menggunakan Gen2 untuk memenuhi skenario bisnis Anda. Matikan semua alur yang tersisa yang berjalan di Gen1 dan nonaktifkan akun Gen1 Anda.

Kemampuan Gen1 vs Gen2

Tabel ini membandingkan kemampuan Gen1 dengan Gen2.

Luas Gen1 Gen2
Organisasi data Namespace hierarkis
Dukungan file dan folder
Namespace hierarkis
Dukungan kontainer, file dan folder
Redundansi geografis LRS LRS, ZRS, GRS, RA-GRS
Autentikasi Identitas terkelola Microsoft Entra
Perwakilan layanan
Identitas terkelola Microsoft Entra
Perwakilan layanan
Kunci Akses Bersama
Authorization Manajemen - Azure RBAC
Data – ACL
Manajemen - Azure RBAC
Data - ACL, Azure RBAC
Enkripsi - Data tidak aktif Sisi server – dengan kunci yang dikelola Microsoft atau dikelola pelanggan Sisi server – dengan kunci yang dikelola Microsoft atau dikelola pelanggan
Dukungan VNET Integrasi VNet Titik Akhir Layanan, Titik Akhir Privat
Pengalaman pengembang REST, .NET, Java, Python, PowerShell, Azure CLI Umumnya tersedia - REST, .NET, Java, Python
Pratinjau publik - JavaScript, PowerShell, Azure CLI
Log sumber daya Log klasik
Integrasi Azure Monitor
Log klasik - Umumnya tersedia
Integrasi Azure Monitor - Pratinjau
Ekosistem HDInsight (3,6), Azure Databricks (3,1 ke atas), Azure Synapse Analytics, ADF HDInsight (3.6, 4.0), Azure Databricks (5.1 ke atas), Azure Synapse Analytics, ADF

Pola Gen1 hingga Gen2

Pilih pola migrasi, lalu ubah pola tersebut sesuai kebutuhan.

Pola migrasi Detail
Angkat dan Geser Pola yang paling sederhana. Ideal jika alur data Anda mampu melakukan penghentian.
Salinan Blob Bertambah bertahap Mirip dengan angkat dan geser, tetapi dengan penghentian yang lebih sedikit. Ideal untuk data dalam jumlah besar yang membutuhkan waktu lebih lama untuk disalin.
Alur ganda Ideal untuk alur yang tidak mampu melakukan penghentian apa pun.
Sinkronisasi dua arah Mirip dengan alur ganda, tetapi dengan pendekatan yang lebih bertahap yang cocok untuk alur yang lebih rumit.

Mari kita lihat lebih dekat pada setiap pola.

Pola angkat dan geser

Ini pola yang paling sederhana.

  1. Hentikan semua penulisan ke Gen1.

  2. Memindahkan data dari Gen1 ke Gen2. Kami merekomendasikan Azure Data Factory atau dengan menggunakan portal Microsoft Azure. ACL disalin dengan data.

  3. Arahkan operasi dan beban kerja serapan ke Gen2.

  4. Penonaktifan Gen1.

Lihat contoh kode kami untuk pola angkat dan geser dalam sampel migrasi Angkat dan Geser kami.

Diagram of the lift and shift pattern.

Pertimbangan untuk menggunakan pola angkat dan geser

  • Cutover dari Gen1 ke Gen2 untuk semua beban kerja secara bersamaan.

  • Mengharapkan waktu henti selama migrasi dan periode cutover.

  • Ideal untuk alur yang mampu menurunkan waktu henti dan semua aplikasi dapat ditingkatkan sekaligus.

Tip

Pertimbangkan untuk menggunakan portal Microsoft Azure untuk mempersingkat waktu henti dan mengurangi jumlah langkah yang diperlukan oleh Anda untuk menyelesaikan migrasi.

Pola penyalinan bertambah bertahap

  1. Mulai memindahkan data dari Gen1 ke Gen2. Kami merekomendasikan Azure Data Factory. ACL disalin dengan data.

  2. Secara bertahap menyalin data baru dari Gen1.

  3. Setelah semua data disalin, hentikan semua penulisan ke Gen1, dan arahkan beban kerja ke Gen2.

  4. Penonaktifan Gen1.

Lihat kode sampel kami untuk pola salinan bertambah bertahap dalam sampel migrasi salinan bertambah bertahap kami.

Diagram of the incremental copy pattern.

Pertimbangan untuk menggunakan pola salinan bertambah bertahap

  • Cutover dari Gen1 ke Gen2 untuk semua beban kerja secara bersamaan.

  • Mengharapkan waktu henti selama periode cutover saja.

  • Ideal untuk alur di mana semua aplikasi ditingkatkan pada satu waktu, tetapi salinan data membutuhkan lebih banyak waktu.

Pola alur ganda

  1. Memindahkan data dari Gen1 ke Gen2. Kami merekomendasikan Azure Data Factory. ACL disalin dengan data.

  2. Serap data baru ke Gen1 dan Gen2.

  3. Arahkan beban kerja ke Gen2.

  4. Hentikan semua penulisan ke Gen1 lalu nonaktif Gen1.

Lihat kode sampel kami untuk pola alur ganda dalam sampel migrasi Alur Ganda kami.

Diagram of the dual pipeline pattern.

Pertimbangan untuk menggunakan pola alur ganda

  • Alur Gen1 dan Gen2 berjalan berdampingan.

  • Mendukung waktu henti nol.

  • Ideal dalam situasi di mana beban kerja dan aplikasi Anda tidak mampu membayar waktu henti apa pun, dan Anda dapat menyerap ke kedua akun penyimpanan.

Pola sinkronisasi dua arah

  1. Siapkan replikasi dua arah antara Gen1 dan Gen2. Kami merekomendasikan WanDisco. Ini menawarkan fitur perbaikan untuk data yang ada.

  2. Ketika semua gerakan selesai, hentikan semua penulisan ke Gen1 dan matikan replikasi dua arah.

  3. Penonaktifan Gen1.

Lihat contoh kode kami untuk pola sinkronisasi dua arah dalam sampel migrasi Sinkronisasi Dua Arah kami.

Diagram of the bidirectional pattern.

Pertimbangan untuk menggunakan pola sinkronisasi dua arah

  • Ideal untuk skenario kompleks yang melibatkan sejumlah besar alur dan dependensi di mana pendekatan bertahap mungkin lebih masuk akal.

  • Upaya migrasi tinggi, tetapi memberikan dukungan berdampingan untuk Gen1 dan Gen2.

Langkah berikutnya

Lihat juga