The documentation you are viewing is for Dapr v1.12 which is an older version of Dapr. For up-to-date documentation, see the latest version.
Azure Table Storage
配置
要设置 Azure Tablestorage 状态存储,请创建一个类型为state.azure.tablestorage的组件。 请参阅本指南,了解如何创建和应用状态存储配置。
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
  name: <NAME>
  namespace: <NAMESPACE>
spec:
  type: state.azure.tablestorage
  version: v1
  metadata:
  - name: accountName
    value: <REPLACE-WITH-ACCOUNT-NAME>
  - name: accountKey
    value: <REPLACE-WITH-ACCOUNT-KEY>
  - name: tableName
    value: <REPLACE-WITH-TABLE-NAME>
Warning
以上示例将密钥明文存储, 更推荐的方式是使用 Secret 组件, 这里。元数据字段规范
| 字段 | 必填 | 详情 | 示例 | 
|---|---|---|---|
| accountName | Y | 存储帐户名称 | "mystorageaccount". | 
| accountKey | Y | 主要或次要存储密钥 | "key" | 
| tableName | Y | 要用于 Dapr 状态的表的名称。 如果表不存在,将会自动创建. | "table" | 
安装Azure Table Storage
请遵循 Azure 文档中关于如何创建 Azure Storage Account的说明。
如果你想创建一张表供Dapr使用,你可以事先这样做。 但是,当 Table Storage状态提供者会在其不存在时为你自动创建。
要将 Azure Table Storage配置为状态存储,你需要如下属性:
- AccountName:存储账户名称 举例:mystorageaccount 举例:mystorageaccount
- AccountKey:主要或次要存储密钥。
- TableName:用于Dapr状态的表名称。 如果表不存在,将会自动创建.
分区
Azure Table Storage状态存储使用在 Dapr API 请求中提供的 key 属性来确定 行键。 服务名称用于分区键。 这提供了最好的性能,因为每个服务类型将状态存储在它自己的表分区中。
这个状态存储在表存储中创建一个名为Value的列,并将原始状态放在里面。
例如,以下操作来自于名为myservice的服务
curl -X POST http://localhost:3500/v1.0/state \
  -H "Content-Type: application/json"
  -d '[
        {
          "key": "nihilus",
          "value": "darth"
        }
      ]'
将在表中创建以下记录:
| PartitionKey | RowKey | 值 | 
|---|---|---|
| myservice | nihilus | darth | 
并发(Concurrency)
Azure Table Storage 状态并发是根据 官方文档 使用 ETag 实现的。
相关链接
- Dapr组件的基本格式
- 阅读 本指南 以获取配置状态存储组件的说明
- 状态管理构建块
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.