Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Azure Storage menawarkan tiga jenis penyimpanan blob: Blob Blok, Blob Tambahan, dan Blob Halaman. Block blobs terdiri dari beberapa blok dan sangat ideal untuk menyimpan file teks atau biner, serta mengunggah file berukuran besar dengan efisien. Append blobs juga terdiri dari blok, tetapi mereka dioptimalkan untuk operasi penambahan, menjadikannya ideal untuk skenario pencatatan log. Blob halaman terdiri dari halaman 512-byte hingga 8 TB dalam ukuran total dan dirancang untuk operasi membaca/menulis acak yang sering. Blob halaman adalah inti dari Azure IaaS Disk. Artikel ini berfokus menjelaskan fitur dan manfaat blob halaman.
Blob halaman adalah kumpulan halaman berukuran 512-byte, yang menyediakan kemampuan untuk membaca/menulis rentang byte sembarang. Oleh karena itu, page blob sangat ideal untuk menyimpan struktur data berbasis indeks dan jarang seperti OS dan disk data untuk Mesin Virtual dan Database. Misalnya, Azure SQL DB menggunakan blob halaman sebagai penyimpanan yang awet untuk databasenya. Selain itu, blob halaman juga sering digunakan untuk file dengan pembaruan berbasis rentang.
Fitur utama dari blob halaman Azure adalah antarmuka REST-nya, ketahanan penyimpanan yang mendasarinya, dan kemampuan migrasi yang mulus ke Azure. Fitur-fitur ini dibahas secara lebih rinci di bagian berikutnya. Selain itu, blob halaman Azure saat ini didukung pada dua jenis penyimpanan: Penyimpanan Premium dan Penyimpanan Standar. Penyimpanan Premium dirancang khusus untuk beban kerja yang membutuhkan kinerja tinggi yang konsisten dan latensi rendah membuat blob halaman premium ideal untuk skenario penyimpanan berkinerja tinggi. Akun penyimpanan standar lebih hemat biaya untuk menjalankan beban kerja yang tidak sensitif terhadap latensi.
Batasan
Page blobs hanya dapat menggunakan tingkat akses Hot; mereka tidak dapat menggunakan tingkat akses Cool atau Archive. Untuk informasi lebih lanjut tentang tingkat akses, lihat tingkat akses Hot, Cool, dan Archive untuk data blob.
Contoh kasus penggunaan
Mari kita bahas beberapa kasus penggunaan untuk page blobs dimulai dengan Azure IaaS Disks. Blob halaman Azure adalah tulang punggung platform diska virtual untuk Azure IaaS. Baik AzureOS dan diska data diimplementasikan sebagai diska virtual di mana data bertahan lama di platform Azure Storage dan kemudian dikirim ke komputer virtual untuk kinerja maksimum. Azure Disks bertahan dalam format Hyper-V VHD dan disimpan sebagai page blob di Azure Storage. Selain menggunakan diska virtual untuk Azure IaaS VM, blob halaman juga memungkinkan skenario PaaS dan DBaaS seperti layanan Azure SQL DB, yang saat ini menggunakan blob halaman untuk menyimpan data SQL, memungkinkan operasi baca-tulis acak cepat untuk database. Contoh lain adalah jika Anda memiliki layanan PaaS untuk akses media bersama untuk aplikasi pengeditan video kolaboratif, blob halaman memungkinkan akses cepat ke lokasi acak di media. Ini juga memungkinkan pengeditan dan penggabungan media yang sama dengan cepat dan efisien oleh beberapa pengguna.
Layanan Microsoft pihak pertama seperti Azure Site Recovery, Azure Backup, serta banyak pengembang pihak ketiga telah menerapkan inovasi terdepan di industri menggunakan antarmuka REST blob halaman. Berikut ini adalah beberapa skenario unik yang diterapkan di Azure:
- Manajemen rekam jepret bertambah bertahap yang diarahkan aplikasi: Aplikasi dapat memanfaatkan rekam jepret blob halaman dan REST API untuk menyimpan titik pemeriksaan aplikasi tanpa menimbulkan duplikasi data yang mahal. Azure Storage mendukung rekam jepret lokal untuk blob halaman, yang tidak memerlukan penyalinan seluruh blob. API rekam jepret publik ini juga memungkinkan mengakses dan menyalin delta di antara rekam jepret.
- Migrasi langsung aplikasi dan data dari lokal ke awan: Salin data lokal dan gunakan REST API untuk menulis langsung ke blob halaman Azure saat VM lokal terus berjalan. Setelah target tercapai, Anda dapat dengan cepat beralih ke Azure VM menggunakan data itu. Dengan cara ini, Anda dapat memigrasikan VM dan diska virtual Anda dari lokal ke cloud dengan penghentian minimal karena migrasi data terjadi di latar belakang saat Anda terus menggunakan VM dan penghentian yang diperlukan untuk beralih karena adanya kegagalan akan singkat (dalam hitungan menit).
- Akses bersama berbasis SAS, yang memungkinkan skenario seperti beberapa pembaca dan penulis tunggal dengan dukungan untuk kontrol konkurensi.
Disk yang tidak dikelola akan dihentikan. Untuk informasi lebih lanjut, lihat Memigrasikan disk yang tidak dikelola Azure Anda sebelum 30 September 2025.
Harga
Kedua jenis penyimpanan yang disediakan untuk page blobs memiliki model harga masing-masing. Blob halaman premium mengikuti model harga diska terkelola, sementara blob halaman standar ditagih berdasarkan ukuran yang digunakan dan sesuai dengan masing-masing transaksi. Untuk informasi selengkapnya, lihat halaman harga Blob Halaman Azure.
Fitur Page Blob
REST API
Lihat dokumen berikut untuk mulai pengembangan dengan menggunakan blob halaman. Sebagai contoh, lihat cara mengakses page blobs menggunakan Library Klien Penyimpanan untuk .NET.
Diagram berikut menjelaskan hubungan keseluruhan antara akun, kontainer, dan blob halaman.
Membuat blob halaman kosong dengan ukuran yang ditentukan
Pertama, dapatkan referensi ke kontainer. Untuk membuat blob halaman, panggil metode GetPageBlobClient, lalu panggil metode PageBlobClient.Create. Berikan ukuran maksimal untuk blob yang akan dibuat. Ukuran itu harus kelipatan 512 byte.
long OneGigabyteAsBytes = 1024 * 1024 * 1024;
BlobServiceClient blobServiceClient = new BlobServiceClient(connectionString);
var blobContainerClient =
blobServiceClient.GetBlobContainerClient(Constants.containerName);
var pageBlobClient = blobContainerClient.GetPageBlobClient("0s4.vhd");
pageBlobClient.Create(16 * OneGigabyteAsBytes);
Mengubah ukuran blob halaman
Untuk mengubah ukuran blob halaman setelah pembuatan, gunakan metode Mengubah Ukuran. Ukuran yang diminta harus kelipatan 512 byte.
pageBlobClient.Resize(32 * OneGigabyteAsBytes);
Menulis halaman ke blob halaman
Untuk menulis halaman, gunakan metode PageBlobClient.UploadPages.
pageBlobClient.UploadPages(dataStream, startingOffset);
Ini memungkinkan Anda untuk menulis set halaman berurutan hingga 4 MB. Offset yang ditulis harus dimulai pada batas 512-byte (startingOffset % 512 == 0), dan berakhir pada batas 512 - 1.
Sesaat setelah permintaan tulis untuk sekumpulan halaman berurutan berhasil dalam layanan blob dan direplikasi untuk keawetan dan ketahanan, penulisan telah diterima, dan sukses dilaporkan kembali kepada klien.
Diagram di bawah ini menunjukkan 2 operasi tulis terpisah:
- Operasi Tulis dimulai dari offset 0 dengan panjang 1024 byte
- Operasi tulis dimulai pada offset 4096 dengan panjang 1024 byte.
Membaca halaman dari blob halaman
Untuk membaca halaman, gunakan metode PageBlobClient.Download untuk membaca rentang byte dari blob halaman.
var pageBlob = pageBlobClient.Download(new HttpRange(bufferOffset, rangeSize));
Ini memungkinkan Anda untuk mengunduh blob penuh atau rentang byte mulai dari offset mana pun dalam blob. Saat membaca, offset tidak harus dimulai pada kelipatan 512. Saat membaca byte dari halaman NUL, layanan mengembalikan nol byte.
Gambar berikut menunjukkan operasi "Read" dengan offset 256 dan ukuran rentang 4352. Data yang dikembalikan disorot dengan warna oranye. Nol dikembalikan untuk halaman kosong.
Jika Anda memiliki blob yang sedikit terisi, Anda mungkin ingin hanya mengunduh wilayah halaman yang valid untuk menghindari pembayaran pengeluaran data nol byte dan mengurangi latensi unduhan.
Untuk menentukan halaman mana yang didukung oleh data, gunakan PageBlobClient.GetPageRanges. Anda kemudian dapat menghitung rentang yang dikembalikan dan mengunduh data di setiap rentang.
IEnumerable<HttpRange> pageRanges = pageBlobClient.GetPageRanges().Value.PageRanges;
foreach (var range in pageRanges)
{
var pageBlob = pageBlobClient.Download(range);
}
Menyewa blob halaman
Operasi penyewaan Blob menetapkan dan mengelola kunci pada blob untuk operasi tulis dan hapus. Operasi ini berguna dalam skenario saat blob halaman sedang diakses dari beberapa klien untuk memastikan hanya satu klien yang dapat menulis ke blob pada satu waktu. Misalnya, Azure Disks memanfaatkan mekanisme penyewaan ini untuk memastikan disk tersebut hanya dikelola oleh satu mesin virtual. Durasi penguncian bisa 15 hingga 60 detik, atau tak terbatas. Lihat dokumentasi di sini untuk detail selengkapnya.
Selain REST API yang kaya, blob halaman juga menyediakan akses bersama, ketahanan, dan keamanan yang ditingkatkan. Kami akan membahas manfaat tersebut secara lebih rinci dalam paragraf berikutnya.
Akses serentak
API REST blob halaman dan mekanisme penyewaannya memungkinkan blob halaman dapat diakses oleh aplikasi dari beberapa klien. Misalnya, Anda perlu membangun layanan cloud terdistribusi yang berbagi objek penyimpanan dengan beberapa pengguna. Ini bisa menjadi aplikasi web yang melayani banyak koleksi gambar untuk beberapa pengguna. Salah satu opsi untuk mengimplementasikan ini adalah dengan menggunakan VM dengan diska yang terpasang. Kelemahan dari ini termasuk, (i) kendala bahwa diska hanya dapat dilampirkan ke satu VM sehingga membatasi skalabilitas, fleksibilitas, dan meningkatkan risiko. Jika ada masalah dengan VM atau layanan yang berjalan pada VM, maka karena sewa, gambar tidak dapat diakses sampai sewa berakhir atau putus; dan (ii) Biaya tambahan untuk memiliki IaaS VM.
Pilihan alternatif adalah menggunakan blob halaman langsung melalui Azure Storage REST API. Opsi ini menghilangkan kebutuhan akan IAAS VM yang mahal, menawarkan fleksibilitas penuh akses langsung dari beberapa klien, menyederhanakan model penyebaran klasik dengan menghilangkan kebutuhan untuk melampirkan/melepaskan diska, dan menghilangkan risiko masalah pada VM. Dan, ini memberikan tingkat kinerja yang sama untuk operasi membaca/menulis acak sebagaimana diska
Ketahanan dan ketersediaan tinggi
Penyimpanan standar dan premium adalah penyimpanan tahan lama di mana data blob halaman selalu direplikasi untuk memastikan durabilitas dan ketersediaan tinggi. Azure secara konsisten memberikan durabilitas tingkat perusahaan untuk disk IaaS dan blob halaman, dengan Tingkat Kegagalan Tahunan nol persen terkemuka di industri.
Untuk informasi selengkapnya tentang redundansi Azure Storage untuk akun penyimpanan standar dan premium, lihat Redundansi Azure Storage, dan kedua bagian ini khususnya:
Migrasi mulus ke Azure
Untuk pelanggan dan pengembang yang tertarik untuk menerapkan solusi cadangan mereka sendiri yang disesuaikan, Azure juga menawarkan rekam jepret bertambah bertahap yang hanya memegang delta. Fitur ini menghindari biaya salinan penuh di awal, yang sangat menurunkan biaya cadangan. Seiring dengan kemampuan untuk membaca dan menyalin data diferensial secara efisien, ini adalah kemampuan hebat lain yang memungkinkan lebih banyak inovasi dari pengembang, yang mengarah ke pengalaman pencadangan dan pemulihan bencana (DR) terbaik di kelasnya di Azure. Anda dapat menyiapkan solusi cadangan atau DR Anda sendiri untuk VM Anda di Azure menggunakan Cuplikan Blob bersama dengan API Get Page Ranges dan API Incremental Copy Blob, yang dapat digunakan untuk menyalin data tambahan bertahap untuk DR dengan mudah.
Selain itu, banyak perusahaan memiliki beban kerja penting yang sudah berjalan di pusat data lokal. Untuk memigrasikan beban kerja ke awan, salah satu kekhawatiran utama adalah jumlah penghentian yang diperlukan untuk menyalin data, dan risiko masalah yang tidak terduga setelah peralihan. Dalam banyak kasus, waktu henti bisa menjadi penghambat utama untuk migrasi ke cloud. Dengan menggunakan REST API page blobs, Azure mengatasi masalah ini dengan memungkinkan migrasi cloud tanpa banyak gangguan pada beban kerja kritis.
Misalnya tentang cara mengambil rekam jepret dan cara memulihkan blob halaman dari rekam jepret, silakan lihat artikelmempersiapkan proses pencadangan menggunakan artikel rekam jepret inkremental.