Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Azure Blob Depolama'da veri kaynaklarıyla çalışacak uygulamalar oluştururken kodunuz öncelikli olarak üç kaynak türüyle etkileşim kurar: depolama hesapları, kapsayıcılar ve bloblar. Bu makalede bu kaynak türleri açıklanır ve birbirleriyle ilişkileri gösterilir. Ayrıca uygulama kodunun bu çeşitli kaynaklarla etkileşime geçmek için Azure Blob Depolama istemci kitaplıklarını nasıl kullandığını da gösterir.
Blob Depolama kaynak türleri
Azure Blob Depolama istemci kitaplıkları, depolama hizmetindeki üç tür kaynakla etkileşim kurmanızı sağlar:
Aşağıdaki diyagramda bu kaynaklar arasındaki ilişki gösterilmektedir:
Depolama hesapları
Depolama hesabı, verileriniz için Azure'da benzersiz bir ad alanı sağlar. Azure Depolama'da depoladığınız her nesnenin benzersiz hesap adınızı içeren bir adresi vardır. Hesap adı ve Blob Depolama uç noktasının birleşimi, depolama hesabınızdaki nesnelerin temel adresini oluşturur.
Örneğin, depolama hesabınızın adı sampleaccount ise Blob Depolama için varsayılan uç nokta şudur:
https://sampleaccount.blob.core.windows.net
Depolama hesabı türleri hakkında daha fazla bilgi edinmek için bkz. Azure depolama hesabına genel bakış.
Konteyner
Kapsayıcı, dosya sistemindeki bir dizine benzer şekilde bir dizi blobu düzenler. Depolama hesabı sınırsız sayıda kapsayıcı içerebilir ve kapsayıcı sınırsız sayıda blob depolayabilir.
Kapsayıcının URI'si şuna benzer:
https://sampleaccount.blob.core.windows.net/sample-container
Kapsayıcıları adlandırma hakkında daha fazla bilgi için bkz. Kapsayıcıları, Blobları ve Meta Verileri Adlandırma ve Başvurma.
Bloblar
Azure Depolama üç blob türünü destekler:
- Blok blobları metin ve ikili verileri depolar. Blok blobları, tek tek yönetilebilen veri bloklarından oluşur. Blok blobları yaklaşık 190,7 TiB'a kadar depolayabilir.
- Ekleme blobları blok blobları gibi bloklardan oluşur, ancak ekleme işlemleri için iyileştirilmiştir. Eklenebilir bloblar, sanal makinelerdeki verileri günlüğe kaydetme gibi senaryolar için idealdir.
- Sayfa blobları , boyutu 8 TiB'a kadar olan rastgele erişim dosyalarını depolar. Sayfa blobları hakkında daha fazla bilgi için bkz. Azure sayfa bloblarına genel bakış
Farklı blob türleri hakkında daha fazla bilgi için bkz. Blok Bloblarını Anlama, Ekleme Blobları ve Sayfa Blobları.
Blob için URI şuna benzer:
https://sampleaccount.blob.core.windows.net/sample-container/sample-blob
Blobları adlandırma hakkında daha fazla bilgi için bkz. Kapsayıcıları, Blobları ve Meta Verileri Adlandırma ve Başvurma.
Azure SDK'sını kullanarak veri kaynaklarıyla çalışma
Azure SDK'ları, Azure REST API'sinin üzerine inşa edilen kitaplıklar içerir ve tanıdık programlama dili paradigmalarıyla REST API işlemleriyle etkileşim kurmanızı sağlar. SDK'lar, uygulamanızla Azure kaynakları arasındaki etkileşimleri basitleştirmek için tasarlanmıştır.
Nadir senaryolarda, SDK'nın en son beta sürümüne veya genel kullanıma sunulan sürümüne yükseltilen uygulamalar InvalidHeaderValue hata iletisi alabilir. Bu sorun, Depolama kitaplıklarından herhangi biri kullanılırken oluşabilir. Hata iletisi aşağıdaki örneğe benzer:
HTTP/1.1 400 The value for one of the HTTP headers is not in the correct format.
Content-Length: 328
Content-Type: application/xml
Server: Microsoft-HTTPAPI/2.0
x-ms-request-id: <REMOVED>
Date: Fri, 19 May 2023 17:10:33 GMT
<?xml version="1.0" encoding="utf-8"?>
<Error>
<Code>InvalidHeaderValue</Code>
<Message>
The value for one of the HTTP headers is not in the correct format.
RequestId:<REMOVED>
Time:2023-05-19T17:10:34.2972651Z
</Message>
<HeaderName>x-ms-version</HeaderName><HeaderValue>yyyy-mm-dd</HeaderValue>
</Error>
SDK'nın en son beta sürümüne veya genel kullanıma açık sürümüne yükselttiyseniz ve bu hatayla karşılaşıyorsanız, sorunun çözülip çözülmediğini görmek için SDK'nın önceki genel kullanıma açık sürümüne düşürmeniz önerilir.
SDK'ya özgü ayrıntıları aşağıdaki konumlarda görüntüleyebilirsiniz:
Sorun devam ederse veya öneri uygun değilse, diğer seçenekleri keşfetmek için bir destek bileti açın
Azure Blob Depolama istemci kitaplıklarında her kaynak türü bir veya daha fazla ilişkili sınıfla temsil edilir. Bu sınıflar, Bir Azure Depolama kaynağıyla çalışmak için işlemler sağlar.
Aşağıdaki tabloda, temel sınıfların yanı sıra kısa bir açıklama listelenir:
| Sınıf | Açıklama |
|---|---|
| BlobServiceClient | Depolama hesabını temsil eder ve hesap özelliklerini alıp yapılandırmaya ve depolama hesabındaki blob kapsayıcılarıyla çalışmaya yönelik işlemler sağlar. |
| BlobContainerClient | Belirli bir blob kapsayıcısını temsil eder ve kapsayıcı ve içindeki bloblarla çalışmak için işlemler sağlar. |
| BlobClient | Belirli bir blobu temsil eder ve karşıya yükleme, indirme, silme ve anlık görüntü oluşturma işlemleri de dahil olmak üzere blobla çalışmak için genel işlemler sağlar. |
| AppendBlobClient | Eklenti bloğunu temsil eder ve günlük verilerini ekleme gibi eklenti bloklarına özgü işlemler sunar. |
| BlockBlobClient | Blok blobunu temsil eder ve blok bloblarına özgü işlemler sağlar; örneğin veri bloklarını hazırlama ve ardından işleme. |
Aşağıdaki paketler Blob Depolama veri kaynaklarıyla çalışmak için kullanılan sınıfları içerir:
- Azure.Storage.Blobs: Hizmet, kapsayıcılar ve bloblar üzerinde çalışmak için kullanabileceğiniz birincil sınıfları (istemci nesneleri) içerir.
- Azure.Storage.Blobs.Specialized: Blok blobları gibi bir blob türüne özgü işlemleri gerçekleştirmek için kullanabileceğiniz sınıfları içerir.
- Azure.Storage.Blobs.Models: Diğer tüm yardımcı program sınıfları, yapıları ve numaralandırma türleri.
Sonraki adımlar
SDK kullanarak Azure kaynaklarıyla çalışma, istemci örneği oluşturmayla başlar. İstemci nesnesi oluşturma ve yönetme hakkında daha fazla bilgi edinmek için bkz. Veri kaynaklarıyla etkileşim kuran istemci nesneleri oluşturma ve yönetme.