如何在Azure中选择Blob块大小

wfypjpf4  于 2023-11-21  发布在  其他
关注(0)|答案(2)|浏览(190)

我想在Azure存储中使用追加blob。当我上传blob时,我应该选择块大小。选择块大小时应该考虑什么?如果我上传的文件大小大于块大小,我看不出有什么区别。如何选择正确的块大小?

wqsoz72f

wqsoz72f1#

根据你的描述,我做了一些研究,你可以参考它来更好地理解append blob块:
我刚刚检查了CloudAppendBlob.AppendTextCloudAppendBlob.AppendFromFile。如果文件大小或文本内容大小小于4 MB,那么它将被上传到一个新的单独的块。这里我使用CloudAppendBlob.AppendText附加文本内容(字节大小小于4 MB)三次,您可以参考网络跟踪如下:
x1c 0d1x的数据
对于大于4 MB的内容,客户端SDK会将内容分成4 MB的小块,然后上传到每个区块中。这里我上传了一个大小约为48.8MB的文件,您可以参考以下网络跟踪:



正如Gaurav Mantri所提到的,对于低速网络,您可以选择小块大小。此外,对于小块大小的写入,您将获得更好的写入请求性能,但是当您阅读数据时,您的数据跨越多个单独的块,它会减慢您的读取请求。这取决于您的应用程序期望的写入/读取比率,对于最佳读取,我建议您需要将批处理写入尽可能接近4 MB,这将使您的写入请求较慢,但读取速度要快得多。

zynd9foi

zynd9foi2#

在决定块大小时需要考虑的几件事:

  • Append Blob的情况下,块的最大大小可以是4 MB,所以你不能超过这个数字。
  • 同样,最多可以上传50000 blocks,所以你需要将blob大小除以50000来决定一个块的大小。例如,如果你上传一个100 MB的文件,并决定选择100字节的块,你会得到1048576(100 x1024 x1024/100)块,这超过了50000的允许限制,所以这是不允许的。
  • 最重要的是,我相信这取决于你的Internet speed.如果你有一个非常好的互联网连接,你可以去到4 MB的块大小.对于不那么好的互联网连接,你可以减少限制.例如,我总是尝试使用256- 512 KB的块大小作为互联网连接我有不好.

相关问题