Microsoft documentation on Azure Blobs清楚地解释了你有一个最大块大小(以及每个块/ append / page blob中的最大块数),但它没有提到任何下限。
假设您有大量的小二进制blob(从10到512字节),是否存储占blob数据占用的确切磁盘空间,或者是否存在最小块大小?或者一个已知的固定“每块”开销?
例如,是否可以创建一个10字节的块blob?在计费时它实际占多少空间:10个字节或另一个最小数量(比如4k)?
是否存在这样的最小块大小,它如何应用于Append Blobs?还有Page blobs?
答案 0 :(得分:5)
正如Fabrizio在答案中所提到的, blob的最小大小可以是零字节,但即使是零字节blob也会占用您需要支付的空间。来自存储团队的博客文章:https://blogs.msdn.microsoft.com/windowsazurestorage/2010/07/08/understanding-windows-azure-storage-billing-bandwidth-transactions-and-capacity/,这是计算blob存储空间的方式:
124字节+ Len(BlobName)* 2字节+ For-Each元数据[3字节+ Len(MetadataName)+ Len(Value)] + 8个字节+提交的数量和 未提交的块*块ID大小(字节)+ SizeInBytes(数据输入 存储的唯一提交数据块)+ SizeInBytes(数据输入 未提交的数据块)
更不用说你会为你节省的每个blob产生交易费用。
答案 1 :(得分:1)
下限是......零:) 仅用于测试,我创建了一个0字节和一个1字节的BlockBlob而没有任何问题。 更新:但是零字节blockblob有成本。