详情页标题前

腾讯云对象存储请求速率与性能优化

详情页1

注意
当前 COS 已经通过底层索引打散机制实现高 QPS,如果有需要更高性能的 QPS 需求,可以
联系我们。在日常组织文件过程中,我们仍然推荐您遵循本文档的要求,避免过于集中的索引存储方式。

简介

本文探讨请求速率性能优化在腾讯云对象存储(Cloud Object Storage,COS)上的最佳实践。腾讯云对象存储提供的典型工作负载能力为每秒30000个 PUT 请求,或者每秒30000个 GET 请求。如果您的工作负载超过了上述能力,建议您遵循本指南实现请求速率的性能扩展和优化。说明 请求负载指的是每秒发起的请求数量,非并发连接数。即您在保持数千连接数的同时,仍可以在1s时间内发送数百个新连接请求。腾讯云 COS 支持性能扩展,以支持更高的请求速率。如果您的请求是高 GET 请求负载,建议您搭配腾讯云 CDN 产品进行使用,详情请参见 域名管理。如果预计存储桶的综合请求速率会超过每秒30000个 PUT/LIST/DELETE 请求,建议您 联系我们,以便于为工作负载做好准备,避免遇到请求的限制。说明 如果您的混合请求负载只是偶尔达到每秒30000个,并在突发时不超过每秒30000个,您可无需遵循本指南。

实践步骤

混合请求负载

当需要上传大量对象的时候,您选择的对象键可能会引发性能问题,以下将简述腾讯云 COS 对 Object 键值的存储方法。腾讯云在 COS 的每一个服务地域都维护了存储桶(Bucket)和对象(Object)的键值作为索引,对象键以 UTF-8 二进制顺序保存在索引的多个分区中。对于大量的键值,例如,使用时间戳或者字母顺序可能会耗尽键值所在分区的读写性能,以存储桶路径examplebucket-1250000000.cos.ap-beijing.myqcloud.com为例,以下列出了可能会耗尽索引性能的一些案例:

20170701/log120000.tar.gz20170701/log120500.tar.gz20170701/log121000.tar.gz20170701/log121500.tar.gz...image001/indexpage1.jpgimage002/indexpage2.jpgimage003/indexpage3.jpg...

如果您的业务典型负载超过每秒30000个请求,则应避免使用上述案例中的顺序键值。当您的业务必须使用顺序编号或日期时间等字符作为对象键时,您可以使用一些方法向对象键名称添加随机前缀,即可实现在多个索引分区实现键值管理,提升集中负载的性能。以下提供了一些在键值中增加随机性的方法。注意以下提供的所有方法,均是有可能提升单个存储桶访问性能的方法,如果您的业务典型负载超过每秒30000个请求,在执行以下方法的同时,您仍需 联系我们 以便于为您的业务负载提前做好准备。

添加十六进制哈希前缀

最直接的增加对象键随机性的方式,就是在对象键名称的最前面添加哈希字符串作为前缀,例如可以在上传对象时,对路径键值进行 SHA1 或 MD5 哈希计算,并选取几位字符作为前缀添加到键值名称,通常2 – 4位的字符哈希前缀可以满足需要。


faf1-20170701/log120000.tar.gze073-20170701/log120500.tar.gz333c-20170701/log121000.tar.gz2c32-20170701/log121500.tar.gz

注意由于腾讯云 COS 的键值索引是以 UTF-8 二进制顺序作为索引的,因此在执行列出对象(GET Bucket)操作时,您可能需要发起65536次列出对象操作,才能得到原来完整的20170701前缀结构。

添加枚举值前缀

如果您仍想要保留对象键的检索易用性,您可以针对您的文件类型枚举出一些前缀,实现对象分组,相同枚举值的前缀将共享所在索引分区的性能。

logs/20170701/log120000.tar.gzlogs/20170701/log120500.tar.gzlogs/20170701/log121000.tar.gz...images/image001/indexpage1.jpgimages/image002/indexpage2.jpgimages/image003/indexpage3.jpg...

如果您在相同枚举前缀下,仍然有较高的访问负载,持续超过每秒30000个请求,您可以参照上述添加十六进制哈希前缀的方式,在枚举值后继续添加哈希前缀执行多个索引分区,以实现更高性能的读写。


logs/faf1-20170701/log120000.tar.gzlogs/e073-20170701/log120500.tar.gzlogs/333c-20170701/log121000.tar.gz...images/0165-image001/indexpage1.jpgimages/a349-image002/indexpage2.jpgimages/ac00-image003/indexpage3.jpg...

反转键值名称字符串

当您的业务不得不使用连续递增的 ID 或日期,或需要一次性上传大量的连续前缀对象时,如下述典型用法:

20170701/log0701A.tar.gz20170701/log0701B.tar.gz20170702/log0702A.tar.gz20170702/log0702B.tar.gz...id16777216/album/hongkong/img20170701121314.jpgid16777216/music/artist/tony/anythinggoes.mp3id16777217/video/record20170701121314.movid16777218/live/show/date/20170701121314.mp4...

如上的键值命名方式极易耗尽2017与 ID 为前缀的键值所在的索引分区,此时将键值前缀的一部分反转后,则实现了一定的随机性。

10707102/log0701A.tar.gz10707102/log0701B.tar.gz20707102/log0702A.tar.gz20707102/log0702B.tar.gz...61277761di/album/hongkong/img20170701121314.jpg61277761di/music/artist/tony/anythinggoes.mp371277761di/video/record20170701121314.mov81277761di/live/show/date/20170701121314.mp4...

高 GET 请求负载

如果主要的业务负载是 GET 请求(即下载请求)为主,除了建议遵守上述准则外,还建议您搭配腾讯云 CDN 服务使用。腾讯云 CDN 利用遍布全国和全球的边缘加速节点,向用户分发内容时可降低延时并提高速度,对于热点文件可以支持预拉热的方式进行缓存,从而减少回源到 COS 的 GET 请求数,详情请参见 域名管理 文档。
对象存储官网1折活动,限时活动,即将结束,速速收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠

转转请注明出处:https://www.yunxiaoer.com/144314.html

(0)
上一篇 2023年12月9日
下一篇 2023年12月9日
详情页2

相关推荐

  • 腾讯云对象存储内容识别费用

    对象存储(Cloud Object Storage,COS)基于数据万象(Cloud Infinite,CI)提供内容识别功能,集成腾讯云 AI 的多种强大功能,对腾讯云 COS 的数据提供二维码识别、图片标签、图片质量评估、人脸识别等增值服务,广泛应用于电商网站、社交软件、相册应用、视频网站等多种场景,方便用户对图片进行内容管理。内容识别费用分为二维码识别…

    腾讯云 2023年12月9日
  • 腾讯云对象存储查询多文件打包压缩结果

    功能描述 本接口用于主动查询指定的多文件打包压缩任务结果。 授权说明 授权策略中 action 设置为 ci:DescribeFileProcessJob 。查看所有 action。 服务开通 使用该功能需提前开通数据万象,并绑定存储桶。详情请参见 绑定存储桶。 使用限制 使用该接口时,请先确认相关限制条件。详情请参见 使用限制。 请求 请求示例 GET …

    腾讯云 2023年12月9日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 腾讯云云直播旧版移动直播连麦(RTMP_ACC)

    如果您的直播业务中有使用到互动连麦功能和低延时播放(RTMP_ACC)功能 ,涉及终端包括微信小程序端、iOS 端以及 Android 端,那么需要按照移动直播连麦服务计费。 注意事项 旧版移动直播连麦已下线,新用户推荐选购 新版直播连麦(RTC),原移动直播连麦(RTMP_ACC)老用户可续费购买旧版移动直播连麦。推荐老用户尽快迁移至新版直播连麦(RTC)…

    腾讯云 2023年12月9日
  • 腾讯云对象存储查询文档审核任务结果

    功能描述 本接口用于查询指定的文档审核任务结果。说明 文档审核任务结果保存时效为1个月,您可通过本接口查询近1个月的审核结果。 授权说明 授权策略中 action 设置为 ci:DescribeAuditingDocumentJob 。查看所有 action。 服务开通 使用该功能需提前开通数据万象,并绑定存储桶。详情请参见 绑定存储桶。 使用限制 使用该接…

    腾讯云 2023年12月9日
  • 腾讯云对象存储复制与移动对象

    简介 本文档提供关于对象的复制、移动操作相关的 API 概览以及 SDK 示例代码。简单操作 API 操作名 操作描述 PUT Object – Copy 设置对象复制(修改对象属性) 复制文件到目标路径 分块操作 API 操作名 操作描述 Initiate Multipart Upload 初始化分块上传/复制 初始化分块上传/复制操作 Upl…

    腾讯云 2023年12月9日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。