确定所需的存储帐户数

已完成

组织通常有多个存储帐户,以便实现不同的要求。 在巧克力制造商的示例中,有一个存储帐户用于处理专用业务数据,还有一个存储帐户用于处理面向使用者的文件。 在本单元中,可了解由每种存储帐户控制的策略因素,这些因素能帮助你确定自己所需的帐户数量。

什么是 Azure 存储?

Azure 提供了多种方式来存储数据,包括多个数据库选项,例如 Azure SQL 数据库、Azure Cosmos DB 和 Azure 表存储。 Azure 提供了多种方式来存储和发送消息,例如 Azure 队列和事件中心。 你甚至可以使用像 Azure 文件和 Azure Blob 这样的服务存储松散文件。

Azure 将其中四个数据服务合并在“Azure 存储”名下。 这四项服务为:

  • Azure Blob
  • Azure 文件
  • Azure 队列
  • Azure 表

下图显示了 Azure 存储的元素。

标识了 Azure 存储所包含的 Azure 数据服务的示意图。

这四个数据服务都是基于云的基元存储服务,并且常常在同一个应用程序中一起使用。

什么是存储帐户?

存储帐户是一个容器,汇集了一组 Azure 存储服务。 存储帐户中只能包含 Azure 存储中的数据服务,即 Azure Blob、Azure 文件、Azure 队列和 Azure 表。 下图显示了包含多个数据服务的存储帐户。

包含一系列混合数据服务的 Azure 存储帐户的示意图。

将多个数据服务合并在一个存储帐户中可以按组管理数据服务。 在创建帐户时所指定的设置或在创建后所更改的任何设置,都将应用于该存储帐户中的所有服务。 如果删除存储帐户,则会删除存储在该帐户中的所有数据。

存储帐户是一种 Azure 资源,包含在资源组中。 下图显示了一个包含多个资源组的 Azure 订阅,其中每个组都包含一个或多个存储帐户。

包含多个资源组的 Azure 订阅的示意图,其中每个资源组具有一个或多个存储帐户。

Azure SQL 和 Azure Cosmos DB 等其他 Azure 数据服务都作为独立的 Azure 资源进行托管,不得包含在存储帐户中。 下图显示了一种典型的布局:Blob、文件存储、队列和表都包含在存储帐户中,而其他服务却不在。

展示部分数据服务无法纳入存储帐户的 Azure 订阅插图。

存储帐户设置

存储帐户定义了一个策略,该策略会应用于该帐户中的所有存储服务。 例如,可以指定所有包含的服务都存储在美国西部的数据中心、只能通过 HTTPS 访问并且费用计入销售部门的订阅。

存储帐户定义了以下设置:

  • 订阅:存储帐户服务的计费 Azure 订阅。

  • 位置:存储帐户中的服务的数据中心。

  • 性能:确定存储帐户中可以包含的数据服务,以及用于存储数据的硬件磁盘类型。

    • 标准:允许包含任何数据服务(blob、文件、队列和表)并使用磁盘驱动器。
    • 高级版提供了更多用于存储数据的服务。 例如,将非结构化对象数据存储为块 blob 或追加 blob,以及用于存储和创建高级文件共享的专用文件存储。 这些存储帐户使用固态硬盘 (SSD) 进行存储。
  • 复制:确定用于制作数据副本的策略,以防御硬件故障或自然灾难。 在与存储帐户关联的数据中心内,Azure 至少会自动维护三份数据副本。 最小复制称为本地冗余存储 (LRS),可针对硬件故障提供防护,但是如果出现让整个数据中心瘫痪的事件,则无法保护数据不受影响。 可以升级到其他选项之一(如异地冗余存储 (GRS)),以从全球的不同数据中心获取副本。

  • 访问层:控制能够以多快的速度访问存储帐户中的 Blob。 热访问层针对存储频繁访问或修改的数据进行了优化,其访问速度比冷访问层更快,但存储成本也有所增加。 冷访问层针对存储不常访问或修改的数据进行了优化,存储成本较低。 热访问层仅适用于 blob,并且是新 blob 的默认值。

  • 需要安全传输:这是一项安全功能,决定了受支持的访问协议。 如果启用此设置,必须使用 HTTPS 协议;否则,允许使用 HTTP 协议。

  • 虚拟网络:一项安全功能,仅允许来自指定的虚拟网络的入站访问请求。

需要多少个存储帐户?

存储帐户代表位置、复制策略和订阅所有者等一系列设置的集合。 你要应用于数据的每组设置都需要一个存储帐户。 下图显示了两个存储帐户,它们在一个设置上有所不同;这一个不同之处就足以需要两个单独的存储帐户。

显示两个不同设置的存储帐户的示意图。

所需的存储帐户数量通常取决于数据多样性、成本敏感度以及对管理开销的容忍度。

数据多样性

组织经常会生成在多个维度上有所不同的数据。 例如,数据的使用位置、数据敏感度、支付数据账单的组等各不相同。这些矢量中存在的任何多样性都会产生多个存储帐户的需求。 我们来看两个示例:

  1. 是否有特定于某个国家/地区的数据? 如果有,出于性能或合规性原因,你可能希望将数据存储在该地区/国家的数据中心。 每个地理区域都需要一个存储帐户。

  2. 是否有一些数据是专有的,而还有一些数据是公用的? 如果是这样,可以为专有数据启用虚拟网络,并避免将其用于公共数据。 分离专有数据和公共数据需要单独的存储帐户。

一般情况下,多样性的提升意味着存储帐户数量的提升。

成本敏感度

存储帐户本身是不存在财务成本的,但是为该帐户选择的设置会影响帐户中包含的服务成本。 异地冗余存储的成本高于本地冗余存储。 高级性能和热访问层都会增加 Blob 的成本。

可以使用多个存储帐户来减少成本。 例如,可以将数据划分为关键数据和非关键数据。 可以将关键数据放入使用异地冗余存储的存储帐户,而将非关键数据放入另一个使用本地冗余存储的存储帐户。

对管理开销的容忍度

每个存储帐户都需要管理员投入时间和精力进行创建和维护。 对于要将数据添加到云存储的任何人而言,这也会增大复杂性。 具有管理员角色的每个人都需要了解每个存储帐户的用途,以便将新数据添加到正确的帐户。

存储帐户是一种强大的工具,有助于以最低的成本获取所需的性能和安全性。 典型的策略是从分析数据开始。 创建共享位置、计费和复制策略等特征的分区。 然后,为每个分区创建一个存储帐户。