Azure Blob存储的文件计数限制

时间:2017-05-16 17:27:14

标签: azure azure-storage-blobs

目前,我有一大组文本文件,其中包含来自各种传感器的(历史)原始数据。每天都会收到并处理新文件。我想将其从内部部署解决方案迁移到云端。

Azure的Blob存储是否适合这一小型(ish)私有文件?或者是否有我应该追求的另一个Azure解决方案?

相关数据(无双关语)&要求 -

  • 该数据集包含数百万个大多数小文件的文件,总数接近400gb。平均文件大小约为50kb,但有些文件可能超过40mb。

  • 为了后人,我需要维护现有的数据集。

  • 每天上传新文件,然后处理一次。处理将由后台工作人员从队列中读取文件来处理。
  • 初始处理后,某些文件将被下载/审核/重新处理。

2 个答案:

答案 0 :(得分:2)

让我详细说明大卫的评论。

正如David所提到的,您可以存储在Azure Blob存储中的对象(文件)数量没有限制。限制是存储帐户的大小,目前为500TB。只要你保持这个限制,你就会很好。此外,您可以在Azure订阅中拥有100个存储帐户,因此基本上您可以存储的数据量几乎是无限的。

我确实想提一件事。似乎在blob存储中上载的文件一旦被处理,然后存档。为此,我建议你看一下Azure Cool Blob Storage。它本质上仅用于此目的,只有当您需要那些几乎可以立即访问的对象时,才能存储不常访问的对象。使用Cool Blob存储的优势在于,与Hot Blob存储帐户相比,写入和存储更便宜,但读取费用昂贵(考虑到其预期用例,这是有道理的。)

因此,可能的解决方案是将文件保存在Hot Blob存储帐户中。处理完文件后,它们将移至Cool Blob Storage。此Cool Blob存储帐户可以位于相同或不同的Azure订阅中。

答案 1 :(得分:0)

  

我猜它可以用作文件系统,是适合这项工作的最佳工具。

是的,Azure Blobs存储可以用作云文件系统。

  

该数据集包含数百万个大多数小文件的文件,总数接近400gb。平均文件大小约为50kb,但有些文件可能超过40mb。

正如David和Gaurav Mantri所说,Azure Blob存储可以满足这一要求。

  

为了后人,我需要维护现有的数据集。

Azure Blob存储中的数据是持久的。您可以参考SERVICE LEVEL AGREEMENTS of Storage

  

每天上传新文件,然后处理一次。处理将由后台工作人员从队列中读取文件来处理。

您可以使用Azure功能执行文件处理工作。由于它每天会做一次,你可以添加一个TimerTrigger函数。

//This function will be executed once a day
public static void TimerJob([TimerTrigger("0 0 0 * * *")] TimerInfo timerInfo)
{
    //write the processing job here
}
  

初始处理后,某些文件将被下载/审核/重新处理。

可以随时下载或更新Blob。

此外,如果您的数据处理工作非常复杂,您还可以将数据存储在Azure Data Lake Store中,并使用Hadoop分析框架(如MapReduce或Hive)执行数据处理工作。可以配置和配置Microsoft Azure HDInsight群集,以直接访问存储在Data Lake Store中的数据。

以下是Azure Data Lake Store与Azure Blob存储之间的差异。

Comparing Azure Data Lake Store and Azure Blob Storage