开发者社区 问答 正文

如何预留读/写吞吐量


预留读/写吞吐量是表的一项属性。系统会在后台根据表的预留读/写吞吐量配置预留资源,保证您对该表的吞吐量需求。
创建表(CreateTable)时需要指定表的预留读/写吞吐量。在表创建成功后,还可以使用 UpdateTable 操作更新表的预留读/写吞吐量配置。
单表的预留读/写吞吐量均可以设置为 0 或者是大于 0 的值,默认不超过 5000(读和写分别不超过 5000)。如果用户有单表预留读/写吞吐量需要超出 5000 的需求,可以通过人工服务提高预留读/写吞吐量。当预留读吞吐量或者预留写吞吐量不为 0 时,无论是否有读/写请求,均会产生费用。
预留读/写吞吐量的计量单位为写服务能力单元和读服务能力单元,应用程序通过 API 进行表格存储读/写操作时均会消耗对应的写服务能力单元和读服务能力单元。
表格存储对实例中所有表的预留读/写吞吐量之和按小时计费。用户配置的预留读/写吞吐量可能会动态变化,表格存储以固定的时间间隔统计表的预留读/写吞吐量、计算每个小时的预留读/写吞吐量的平均值,将平均值乘以单价进行计费。预留读/写吞吐量单价可能发生变化,请参见[backcolor=transparent] 阿里云官网信息

展开
收起
云栖大讲堂 2017-10-26 10:19:51 2191 分享 版权
阿里云 AI 助理回答

在阿里云表格存储服务中,预留读/写吞吐量是关键的性能配置属性,直接影响到数据表的读写能力与成本。以下是关于预留读/写吞吐量的核心信息和操作指南:

配置概述

  • 作用:系统根据您设置的预留读/写吞吐量预留给数据表相应的资源,确保能够满足业务的吞吐量需求。
  • 单位:计量单位为读服务能力单元(读CU)和写服务能力单元(写CU)。
  • 初始设定:创建表时(CreateTable操作),必须指定预留读/写吞吐量。
  • 调整机制:创建后,可使用UpdateTable操作随时调整预留读/写吞吐量。
  • 默认限制:单表的预留读/写吞吐量默认上限各为5000 CU,如有更高需求,需通过人工服务申请提升。

计费说明

  • 费用产生:当预留读或写吞吐量非零时,即使无实际请求也会产生费用。
  • 计费方式:按小时统计所有表的预留读/写吞吐量总和,基于每小时平均值乘以单价计费,单价可能随时间调整,请参考阿里云官网最新信息。

数据结构与操作

  • 数据结构:通过ReservedThroughputDetails结构查看和管理预留吞吐量详情,包括当前配置的CU数量、最后调整时间等。
  • API示例:使用Go SDK更新预留吞吐量的代码示例如下:

    func UpdateReservedThroughput(client *tablestore.TableStoreClient, tableName string) {
      updateReq := new(tablestore.UpdateTableRequest)
      updateReq.TableName = tableName
      updateReq.ReservedThroughput = &tablestore.ReservedThroughput{
          Readcap:  1, // 新的预留读CU
          Writecap: 1, // 新的预留写CU
      }
    
      _, err := client.UpdateTable(updateReq)
      if err != nil {
          fmt.Println("failed to update throughput:", err)
      } else {
          fmt.Println("throughput updated successfully")
      }
    }
    

注意事项

  • 成本控制:合理配置预留吞吐量对于控制成本至关重要,避免过度配置导致不必要的开支。
  • 动态调整:根据业务负载预测适时调整预留吞吐量,以应对业务高峰或低谷,实现成本效益最大化。

综上所述,预留读/写吞吐量是优化表格存储性能与成本的关键参数,用户应根据实际需求灵活配置并监控其使用情况,确保既满足业务需求又经济高效。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答
问答分类:
问答地址: