我正在浏览一些视频。我发现Windows Azure会根据分区密钥将斑点分组为分区,并会自动将这些分区加载到其服务器上。斑点的分区键是斑点名称。使用BLOB名称,Azure将自动执行分区。

现在,我的问题是我可以根据容器名称制作Azure进行分区。我希望我的分区键是容器名称。

例如,我有一个存储帐户。因为我有2个命名的容器 容器1容器2. 。在Container1中,我有1000个文件名称 1.txt,2.txt,3.txt,........................................................................... txt,502.txt,..... 999.txt,1000.txt 在Container2中,我还有另外1000个文件 1001.txt,1002.txt,1003.txt,.......,1501.txt,1502.txt,..... 1999.txt,2000.txt

现在,Windows Azure会根据BLOB名称生成2000个分区,并通过多个服务器为我提供服务???

如果基于容器名称使用Azure分区会更好吗?一台服务器上的container1和另一个服务器上的Conatiner2。

有帮助吗?

解决方案

这取决于您的意思。如果您要为单个服务器和硬盘驱动器付费,我可能会同意您的看法 - 但是使用Azure存储,您只需支付使用的空间大小即可。如果他们选择将其散布在多台机器上以获得最佳的perf(目标斑点访问perf是“最高60 mbytes/sec”),那么您的账单就没关系。

只是好奇,为什么您认为拥有更多的分区是不好的?对我来说,似乎有文件访问是一件好事。

如果我有2000个文件,我想提供最可扩展的访问权限,我认为将2000个文件散布在2000台机器/硬盘驱动器上将是最佳性能和可扩展的解决方案...不是2个服务器/硬盘驱动器(什么是硬盘驱动器(什么)如果这翻了一番,就会发生4000?)。

我发现这篇Blob文章非常有用(尤其是分区和可伸缩性和性能方面的区域,将部分朝向底部):Windows Azure存储抽象及其可扩展性目标

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top