存储空间(Bucket)是对象存储OSS中存放数据的容器,帮助您高效组织和管理OSS中的文件(Object)。本文介绍Bucket的基础信息,并提供后续的管理指引。
Bucket特点
容量和数量限制:同一阿里云账号在同一地域内创建的Bucket总数不能超过100个,单个Bucket的容量没有限制。
扁平化结构:Bucket 内部是扁平化结构,没有文件系统的目录层级,所有Object直接存储在Bucket中,可参考下图。为便于管理,OSS控制台和OSS Browser等图形化工具用“/”符号模拟目录层级,但底层仍是扁平存储,更多信息,请参见管理目录。
Bucket基础信息
在开始使用Bucket前,请先了解以下信息:
Bucket名称:在创建Bucket时,首先要为其命名。每个Bucket名称必须全局唯一且不可修改。建议使用业务相关的名称,如 myapp-logs-hangzhou,表示“myapp”产品在杭州地区的日志信息,便于识别。详情请参见命名规则。
地域:创建Bucket时需指定数据中心的物理位置,一旦选定无法更改。建议选择靠近业务的地域以提升访问速度。详情请参见如何选择OSS地域。
Endpoint(访问域名):用于访问OSS的入口,每个地域都有对应的Endpoint。使用API、SDK、ossutil或ossfs等方式访问OSS时,您需要使用Endpoint。详情请参见OSS地域和访问域名。
存储类型:OSS提供五种存储类型,分别是标准(默认)、低频、归档、冷归档和深度冷归档,适用于不同存储需求。根据数据使用场景选择合适类型可提升访问速度并降低存储成本。例如,频繁访问的数据可选择标准类型,而长期存储的冷数据适合冷归档。详情请参见存储类型。
存储冗余类型:存储冗余通过在多个位置备份数据提升数据可靠性。如果您需要更高可靠性,建议选择同城冗余(ZRS);如果您更关注成本,建议选择本地冗余(LRS),系统默认使用 ZRS。详情请参见存储冗余类型。
重要LRS支持五种存储类型(标准、低频、归档、冷归档和深度冷归档),ZRS支持三种存储类型(标准、低频和归档)。
读写权限控制(ACL):您可以通过ACL对整个Bucket及其中的所有Object统一设置读写权限,Bucket ACL包括私有(默认)、公共读和公共读写。建议选择私有以确保数据安全。更多权限控制方式请参见权限控制。
阻止公共访问:启用该选项后将忽略Bucket已有的公共访问权限,并禁止创建新的公共访问权限,确保数据私密。此功能默认启用。详情请参见阻止公共访问。
所属资源组:您可将Bucket分配至资源组,以便按部门或项目管理。系统提供默认资源组供使用。详情请参见使用资源组。
操作指引
了解Bucket基础信息后,现在您可以按需使用并管理Bucket。
Bucket操作
操作 | 说明 |
在上传Object到OSS之前,您需要创建一个用于存储文件的Bucket。 | |
设置不同的列举条件,列举某个地域下的全部或部分Bucket。 | |
需要删除不再使用的Bucket,以释放存储资源。 | |
您可以在OSS控制台查看基础数据、热点统计、区域和运营商统计、API统计、文件访问统计等资源使用情况。 | |
当您在多个地域创建了大量Bucket时,您可以通过指定Bucket名称的方式,快速获取Bucket所属的地域信息。 | |
如果您在使用Bucket过程中遇到问题,请参考存储空间常见问题进行排查。 |
Bucket配置
操作 | 说明 |
您可以通过Bucket的标签功能, 对Bucket进行分类管理,如列举带有指定标签的Bucket、对拥有指定标签的Bucket设置访问权限等。 | |
文件(Object)上传至Bucket后,OSS会自动生成文件URL,您可以直接通过文件URL(即Bucket外网访问域名)访问该文件。若您希望通过自定义域名(自有域名)访问这些文件,需要将自定义域名绑定至文件所在的Bucket。 | |
OSS传输加速利用全球分布的云机房,将全球各地用户对您Bucket的访问,经过智能路由解析至就近的接入点,使用优化后的网络及协议,为云存储互联网的上传、下载提供端到端的加速方案。 | |
如果您在共享数据时不希望承担访问数据用户的额外费用,建议开启此功能。 | |
资源组是一种基于资源的权限管理方式。您可以根据不同的业务需求对Bucket进行分组,为不同的资源组设置不同的访问权限,实现资源组范围内的权限管理。 |
权限控制
阿里云默认使用主账号执行OSS操作,但主账号具有完全访问权限,安全风险较高。建议您创建RAM用户作为账号管理员,通过RAM Policy为同一账号下不同用户分配权限。若需跨账号访问,您可以用Bucket Policy授予其他账号对整个Bucket的权限;若需对Bucket设置公开或私有权限,您也可以设置Bucket ACL控制整个Bucket 的访问范围。同时建议您开启阻止公共访问,可以有效避免数据的意外公开,进一步增强数据安全性。
功能名称 | 描述 |
开启阻止公共访问后,已有的公共访问权限会被忽略,且不允许创建新的公共访问权限,以此关闭数据的公开访问渠道,确保数据安全。创建Bucket时默认开启该功能。 | |
您可以在创建Bucket时设置读写权限ACL,也可以在创建Bucket后根据自己的业务需求修改Bucket ACL,该操作只有存储空间的拥有者可以执行。 | |
Bucket Policy是阿里云OSS推出的针对Bucket的授权策略,您可以通过Bucket Policy授权其他用户访问您指定的OSS资源。 | |
RAM(Resource Access Management)是阿里云提供的资源访问控制服务。RAM Policy是基于用户的授权策略。通过设置RAM Policy,您可以集中管理您的用户(例如员工、系统或应用程序)以及控制用户可以访问您名下哪些资源的权限,例如限制您的用户只拥有对某一个Bucket的读权限。 |
数据安全
操作 | 说明 |
开启版本控制后,每次上传同名文件都会创建一个新版本,而不会覆盖原文件。这样,您可以随时查找和恢复之前的版本,适用于频繁更新或需要保留历史记录的文件。 | |
OSS支持对Bucket设置防盗链,即通过对访问来源设置白名单的机制,避免OSS资源被其他人盗用。 | |
跨域设置CORS(Cross-Origin Resource Sharing)简称跨域访问,是HTML5提供的标准跨域解决方案,允许Web应用服务器进行跨域访问控制,确保跨域数据传输的安全性。 | |
OSS支持WORM特性,允许用户以“不可删除、不可篡改”方式保存和使用数据,符合美国证券交易委员会(SEC)和金融业监管局(FINRA)的合规要求。 | |
当您在设置了服务器端加密的Bucket中上传文件(Object)时,OSS对收到的文件进行加密,再将得到的加密文件持久化保存。当您通过GetObject请求下载文件时,OSS自动将加密文件解密后返回给用户,并在响应头中返回x-oss-server-side-encryption,用于声明该文件进行了服务器端加密。 | |
客户端应用程序与 OSS 间的通信使用 TLS 进行加密,以确保通信链路的安全性。您可以指定允许的 TLS 版本,作为客户端和 OSS 间发送和接收请求的严格安全措施。 |
数据管理
操作 | 说明 |
同区域复制(Same-Region Replication)是指将源Bucket中的文件(Object)的创建、更新和删除等操作自动、异步(近实时)地复制到相同地域下的目标Bucket。 | |
跨区域复制(Cross-Region Replication)是跨不同OSS数据中心(地域)的Bucket自动、异步(近实时)复制Object,将Object的创建、更新和删除等操作从源Bucket复制到不同区域的目标Bucket。 | |
您可以基于最后一次修改时间(Last Modified Time)以及最后一次访问时间(Last Access Time)的策略创建生命周期规则,定期将存储空间(Bucket)内的多个文件(Object)转储为指定存储类型,或者将过期的Object和碎片删除,从而节省存储费用。 | |
您可以使用对象存储OSS的清单功能获取Bucket中指定Object的数量、大小、存储类型、加密状态等信息。相对于GetBucket(ListObjects)接口,在海量Object的列举场景中,建议您优先使用清单功能。 | |
静态网站是指所有的网页都由静态内容构成,包括客户端执行的脚本(例如JavaScript)。您可以通过静态网站托管功能将您的静态网站托管到OSS的Bucket,并使用Bucket的访问域名访问这个网站,详见绑定自定义域名。 | |
配置了镜像回源规则后,当请求者访问Bucket中一个不存在的Object时,OSS会向回源规则指定的源站获取这个文件。在获取到目标文件后,OSS会将文件返回给请求者并存入Bucket。 | |
OSS支持为Bucket开启归档直读。开启归档直读后,您可以直接访问归档存储类型的文件,而无需先对其解冻。相较于解冻后读取归档存储类型的文件,归档直读的数据取回时间更短、费用更高。 |
数据处理
操作 | 说明 |
图片处理包括图片缩放、自定义裁剪、图片样式等。 | |
您可以在OSS管理控制台设置事件通知规则,自定义您关注的Object。当这些Object发生指定事件时,您可以及时收到通知。 |
日志管理
操作 | 说明 |
访问OSS的过程中会产生大量的访问日志。您可以通过日志转存功能将这些日志按照固定命名规则,以小时为单位生成日志文件写入您指定的Bucket。对于已存储的日志,您可以通过阿里云日志服务或搭建Spark集群等方式进行分析。 | |
实时日志查询支持您在OSS控制台实时查询OSS访问日志,并支持过滤和分析,方便定位问题。可按需开通。 |
数据湖管理
操作 | 说明 |
OSS-HDFS服务将对象存储OSS与Hadoop分布式文件系统(HDFS)结合在一起。通过这个服务,您可以将数据存储在云端的OSS中,并使用Hadoop工具来处理和分析这些数据。适用于大数据分析、数据挖掘和机器学习等需要处理大量数据的场景。 |