Windows Azure云存储 - root中大量文件的影响

时间:2010-07-30 12:52:07

标签: azure azure-storage azure-storage-blobs

很抱歉,如果我在这里得到任何错误的术语,但希望你能得到我的意思。

我使用Windows Azure云存储来存储大量小文件(图像,每个20Kb)。

此时,这些文件都存储在根目录中。我知道它不是一个普通的文件系统,所以也许root不是正确的术语。

我试图找到有关这个计划长期影响的信息,但没有运气,所以如果有人能给我一些信息,我将不胜感激。

基本上,如果存储在这个根目录中的文件数量达到数十万/百万,我会遇到问题吗?

谢谢,

史蒂芬

2 个答案:

答案 0 :(得分:7)

我一直处于类似的情况,我们在一个blob容器中存储了~10M的小文件。通过代码访问单个文件很好,没有任何性能问题。

我们遇到的问题是在代码之外管理那么多文件。如果您正在使用存储资源管理器(VS2010附带的存储资源管理器或任何其他存储资源管理器),我遇到的存储资源管理器不支持前缀API的返回文件,您只能列出前5K,然后是接下来的5K等等。当您想要查看容器中的第125,000个文件时,您可以看到这可能是一个问题。

另一个问题是,没有简单的方法可以找出容器中有多少文件(这对于确切知道所有blob存储的成本是多少很重要)而无需编写简单地遍历所有文件的内容blob并计算它们。

这对我们来说是一个容易解决的问题,因为我们的blob具有连续的数字名称,因此我们只需将它们分成每个1k项目的文件夹。根据您获得的项目数量,您可以将1K这些文件夹分组到子文件夹中。

答案 1 :(得分:5)

http://social.msdn.microsoft.com/Forums/en-US/windowsazure/thread/d569a5bb-c4d4-4495-9e77-00bd100beaef

简答:否

中等答案:好吗?

长答案:不,但如果您查询文件列表,它将只返回5000.您需要根据该MSDN页面重新查询每5k以获得完整列表。

编辑: Root可以很好地描述它。 99.99%的人会说你想说的话。