Bagikan melalui


Panduan Cepat: Pustaka Klien Azure Blob Storage untuk Ruby

Pelajari cara menggunakan Ruby untuk membuat, mengunduh, dan mencantumkan blob dalam kontainer di Microsoft Azure Blob Storage.

Prasyarat

Untuk mengakses Azure Storage, Anda perlu berlangganan Azure. Jika Anda belum memiliki langganan, buat akun gratis sebelum memulai.

Semua akses ke Azure Storage dilakukan melalui akun penyimpanan. Untuk mulai cepat ini, buat akun penyimpanan menggunakan portal Microsoft Azure, Azure PowerShell, atau Azure CLI. Untuk bantuan membuat akun penyimpanan, lihat Membuat akun penyimpanan.

Pastikan Anda memiliki prasyarat tambahan berikut yang terinstal:

Mengunduh aplikasi contoh

Aplikasi contoh yang digunakan dalam panduan cepat ini adalah aplikasi Ruby dasar.

Gunakan Git untuk mengunduh salinan aplikasi ke lingkungan pengembangan Anda. Perintah ini mengkloning repositori ke komputer lokal Anda:

git clone https://github.com/Azure-Samples/storage-blobs-ruby-quickstart.git

Navigasi ke folder storage-blobs-ruby-quickstart , dan buka file example.rb di editor kode Anda.

Salin kredensial Anda dari portal Microsoft Azure

Aplikasi sampel perlu mengotorisasi akses ke akun penyimpanan Anda. Berikan kredensial akun penyimpanan Anda ke aplikasi dalam bentuk string koneksi. Untuk melihat kredensial akun penyimpanan Anda:

  1. Masuk ke portal Microsoft Azure , buka akun penyimpanan Anda.

  2. Di bagian Pengaturan dari gambaran umum akun penyimpanan, pilih Kunci akses untuk menampilkan kunci akses akun dan string koneksi Anda.

  3. Perhatikan nama akun penyimpanan Anda, yang anda perlukan untuk otorisasi.

  4. Temukan Nilai kunci di bawah key1, dan pilih Salin untuk menyalin kunci akun.

    Cuplikan layar memperlihatkan cara menyalin kunci akun Anda dari portal Microsoft Azure

Konfigurasikan string koneksi penyimpanan Anda

Berikan nama akun penyimpanan dan kunci akun Anda untuk membuat instans BlobService untuk aplikasi Anda.

Kode berikut dalam file example.rb membuat instans objek BlobService baru. Ganti accountname dan accountkey dengan nama akun dan kunci Anda.

# Create a BlobService object
account_name = "accountname"
account_key = "accountkey"

blob_client = Azure::Storage::Blob::BlobService.create(
    storage_account_name: account_name,
    storage_access_key: account_key
)

Jalankan sampel

Sampel membuat kontainer di Blob Storage, membuat blob baru dalam kontainer, mencantumkan blob dalam kontainer, dan mengunduh blob ke file lokal.

Jalankan sampel. Berikut adalah contoh output dari menjalankan aplikasi:

C:\azure-samples\storage-blobs-ruby-quickstart> ruby example.rb

Creating a container: quickstartblobs18cd9ec0-f4ac-4688-a979-75c31a70503e

Creating blob: QuickStart_6f8f29a8-879a-41fb-9db2-0b8595180728.txt

List blobs in the container following continuation token
        Blob name: QuickStart_6f8f29a8-879a-41fb-9db2-0b8595180728.txt

Downloading blob to C:/Users/azureuser/Documents/QuickStart_6f8f29a8-879a-41fb-9db2-0b8595180728.txt

Paused, press the Enter key to delete resources created by the sample and exit the application

Saat Anda menekan Enter untuk melanjutkan, program sampel akan menghapus kontainer penyimpanan dan file lokal. Sebelum melanjutkan, periksa folder Dokumen untuk file yang diunduh.

Anda juga dapat menggunakan Azure Storage Explorer untuk melihat file di akun penyimpanan Anda. Penjelajah Penyimpanan Azure adalah alat lintas platform gratis yang memungkinkan Anda mengakses informasi akun penyimpanan Anda.

Setelah Anda memverifikasi file, tekan tombol Enter untuk menghapus file pengujian dan mengakhiri demo. Buka file example.rb untuk melihat kode.

Memahami kode sampel

Selanjutnya, kita menelusuri kode sampel sehingga Anda dapat memahami cara kerjanya.

Mendapatkan referensi ke objek penyimpanan

Hal pertama yang harus dilakukan adalah membuat instans objek yang digunakan untuk mengakses dan mengelola Blob Storage. Objek-objek ini saling melengkapi. Masing-masing digunakan oleh yang berikutnya dalam daftar.

  • Buat instans objek BlobService penyimpanan Azure untuk menyiapkan kredensial koneksi.
  • Buat objek Kontainer , yang mewakili kontainer yang Anda akses. Kontainer digunakan untuk mengatur blob seperti Anda menggunakan folder di komputer untuk mengatur file Anda.

Setelah memiliki objek kontainer, Anda dapat membuat objek Blob Blok yang menunjuk ke blob tertentu tempat Anda tertarik. Gunakan objek Blokir untuk membuat, mengunduh, dan menyalin blob.

Penting

Nama kontainer harus menggunakan huruf kecil. Untuk informasi selengkapnya tentang nama kontainer dan blob, lihat Penamaan dan Referensi Kontainer, Blob, dan Metadata.

Contoh kode berikut:

  • Membuat kontainer baru
  • Mengatur izin pada kontainer sehingga blob bersifat publik. Kontainer ini disebut quickstartblobs dengan ID unik yang ditambahkan.
# Create a container
container_name = "quickstartblobs" + SecureRandom.uuid
puts "\nCreating a container: " + container_name
container = blob_client.create_container(container_name)

# Set the permission so the blobs are public
blob_client.set_container_acl(container_name, "container")

Membuat blob dalam kontainer

Blob Storage mendukung blob blok, blob penambahan, dan blob halaman. Untuk membuat blob, panggil metode create_block_blob yang meneruskan data untuk blob.

Contoh berikut membuat blob yang disebut QuickStart_ dengan ID unik dan ekstensi file .txt dalam kontainer yang dibuat sebelumnya.

# Create a new block blob containing 'Hello, World!'
blob_name = "QuickStart_" + SecureRandom.uuid + ".txt"
blob_data = "Hello, World!"
puts "\nCreating blob: " + blob_name
blob_client.create_block_blob(container.name, blob_name, blob_data)

Blob dapat sebesar 4,7 TB dan dapat berupa spreadsheet hingga file video besar. Blob halaman terutama digunakan untuk file VHD yang mendukung komputer virtual IaaS. Blob penambahan umumnya digunakan untuk pengelogan, seperti ketika Anda ingin menulis ke file lalu terus menambahkan informasi lebih lanjut.

Daftar blob dalam wadah

Dapatkan daftar file dalam kontainer menggunakan metode list_blobs . Kode berikut mengambil daftar blob, lalu menampilkan namanya.

# List the blobs in the container
puts "\nList blobs in the container following continuation token"
nextMarker = nil
loop do
    blobs = blob_client.list_blobs(container_name, { marker: nextMarker })
    blobs.each do |blob|
        puts "\tBlob name: #{blob.name}"
    end
    nextMarker = blobs.continuation_token
    break unless nextMarker && !nextMarker.empty?
end

Mengunduh sebuah blob

Unduh blob ke disk lokal Anda menggunakan metode get_blob . Kode berikut mengunduh blob yang dibuat di bagian sebelumnya.

# Download the blob

# Set the path to the local folder for downloading
if(is_windows)
    local_path = File.expand_path("~/Documents")
else 
    local_path = File.expand_path("~/")
end

# Create the full path to the downloaded file
full_path_to_file = File.join(local_path, blob_name)

puts "\nDownloading blob to " + full_path_to_file
blob, content = blob_client.get_blob(container_name, blob_name)
File.open(full_path_to_file,"wb") {|f| f.write(content)}

Membersihkan sumber daya

Jika blob tidak lagi diperlukan, gunakan delete_blob untuk menghapusnya. Hapus seluruh kontainer menggunakan metode delete_container . Menghapus kontainer juga menghapus blob apa pun yang disimpan dalam kontainer.

# Clean up resources, including the container and the downloaded file
blob_client.delete_container(container_name)
File.delete(full_path_to_file)

Sumber daya untuk mengembangkan aplikasi Ruby dengan blob

Lihat sumber daya tambahan ini untuk pengembangan Ruby:

Langkah selanjutnya

Dalam panduan cepat ini, Anda mempelajari cara mentransfer file antara Azure Blob Storage dan disk lokal dengan menggunakan Ruby. Untuk mempelajari selengkapnya tentang bekerja dengan Blob Storage, lanjutkan ke gambaran umum akun Penyimpanan.

Untuk informasi selengkapnya tentang Penjelajah Penyimpanan dan Blob, lihat Mengelola sumber daya Azure Blob Storage dengan Storage Explorer.