2013-01-18 168 views
12

适用于多租户应用程序的Azure存储。我们正在致力于在Azure上开发多租户应用程序,每个租户需要约10,000名租户以及大约100 GB到1 TB的数据存储空间。该应用程序将分别为每个租户维护文档和二进制内容以及元数据。我们正在考虑使用Azure Block Blob存储来存储数据。因为,要求是为每个租户维护数据,我们遇到了以下方法。Azure Blob存储限​​制和过滤器

  • 为每个租户
  • ,有助于保持使用租户明智的,这对账单再次帮助以及
  • 在每个存储账户隔离 创建一个单独的容器基于类别创建一个单独的存储帐户
  • 将文档与元数据一起存储在块blob存储中。

我们有以下查询关于我们的做法:

  1. 它是存储文件或与元数据块中的BLOB 二进制内容好主意吗?或者有没有更好的方法来实现它 (可能使用SQL Azure获取元数据,blob获取内容,或者更好地使用 )?
  2. 如何用元数据的某些过滤条件查询数据?即检索所有blob,其中metadat1 = value1和metadata2 = value2
  3. 为每个租户创建单独的存储帐户是否好主意?
    a。如果不是,那么我们可以在Azure存储和应用程序中存储特定于租户的数据的模型能够有效地使用它们?
  4. 在可扩展性和高可用性的环境下,在Blob存储上读取/写入数据的请求数是否存在带宽或任何其他限制?
  5. 按照蔚蓝的定价模式,他们会为存储收费,即前1 TB $ 0.095/GB,接下来49 TB $ 0.08/GB。这笔费用是按每个存储帐户申请还是按每次订阅申请?
    a。同样的方式,交易成本适用于每个存储帐户或每次订阅?

回答

14
  1. 它是存储文件或与元数据块中的BLOB二进制内容好主意吗?或者有没有更好的方法来实现它(可能使用SQL Azure来获取元数据,blob用于内容,或者更好)?
  2. 如何用元数据的某些过滤条件查询数据?即获取所有的斑点,其中metadat1 =值和metadata2 =数值

要回答1和2,你不能在元数据Blob存储查询。所以我想你最好的选择是使用SQL Azure或Azure表存储,因为它们都具有查询功能。考虑到你将会存储大量的斑点(因此还有更多的元数据),我更倾向于表格存储,但这需要特殊的设计考虑,比如适当的分区。

为每个租户创建单独的存储帐户是个好主意吗? a。如果不是,那么我们可以在Azure存储和应用程序中存储特定于租户的数据的模型能够有效地使用它们?

为什么有每个租户单独的存储帐户,我能想到的3个原因,是一个不错的主意:

  1. 它可以简化您的帐单。
  2. 它将帮助您保持可扩展性目标。
  3. 由于您提到每个租户可能最多可以存储1 TB的数据,但由于当前的存储帐户限制为200 TB,因此每个存储帐户最多只能保留200个租户。之后,您需要找到另一个存储帐户并开始在那里存储数据。

总而言之,一个非常优雅的解决方案,保持独立的存储帐户/租户。挑战将是从20个存储帐户/订阅中增加默认限制。您需要与支持聊天。

在可扩展性和高可用性的上下文中,是否存在对Blob存储上的数据进行读/写数据请求数的带宽或任何其他限制?

是的,请阅读的Windows Azure Blob存储团队的可扩展性目标博客:http://blogs.msdn.com/b/windowsazurestorage/archive/2010/05/10/windows-azure-storage-abstractions-and-their-scalability-targets.aspx

按照湛蓝的定价模型,他们收取板明智的存储,即第1 TB $ 0.095/GB ,接下来是49 TB 0.08美元/ GB。这笔费用是按每个存储帐户申请还是按每次订阅申请? a。同样的方式,交易成本适用于每个存储帐户或每次订阅?

不确定这一点,但我猜这是每个存储帐户。您可能需要联系支持。

希望这会有所帮助。

+0

谢谢Gaurav。只是想澄清几件事情:首先,由于您更倾向于表格存储,我想这是用于元数据,内容仍然会成为blob,对吧?其次,你提到存储帐户限制为200TB,你的意思是100TB,对吧?因为我没有在任何地方发现200TB。 – Hitesh

+1

这是正确的。内容实际上是在blob存储中,但你想查询的元数据将进入表存储(或sql azure),因为blob存储不支持查询。请在此处查看存储帐户的200 TB限制:http://blogs.msdn.com/b/windowsazurestorage/archive/2012/11/04/windows-azure-s-flat-network-storage-and-2012-scalability -targets.aspx。可伸缩性目标部分提到200 TB限制,但仅适用于2012年6月7日之后创建的存储帐户。 –