OSS的概念
阿里云对象存储OSS(Object Storage Service)是阿里云提供的海量,安全,低成本,高可靠的云存储服务。其数据设计持久性不低于99.9999999999%(12个9),服务设计可用性或业务连续性不低于99.995%。
OSS具有与平台无关的RESTful API接口,可以在任何应用,任何时间,任何地点存储和访问任意类型的数据
可以使用阿里云体提供的API,SDK接口或者OSS迁移工具轻松地将海量数据移入或者移出阿里云OSS。数据存储到阿里云OSS以后,可以选择标准存储(Standard)作为移动应用,大型网站,图片分享或者热点音视频的主要存储方式,也可以选择成本更低,存储期限更长的低频访问存储(Infrequent Access)和归档存储(Archive)作为不经常访问数据的存储方式。
对象
对象是OSS存储数据的基本单元,也被称为OSS的文件。对象由元信息(Object Meta),用户数据(Data)和文件名(Key)组成。对象由存储空间内部唯一的Key来标识。对象元信息是一组键值对,表示了对象的一些属性,比如最后修改时间,大小等信息,同时也可以在元信息中存储一些自定义的信息。
编辑对象:对象的生命周期是从上传成功到被删除位置。在整个生命周期内,只有通过追加上传的Object可以继续通过追加上传写入数据,其它上传方式上传的Object内容无法编辑,可以通过重复上传同名的对象来覆盖之前的对象。
对象的命令规则如下:
元数据 :主要是记录数据属性信息:谁,什么时候创建的,数据大小,最后修改时间,通过元数据来定位数据。元数据是有层次性的。书的目录。块存储也有元数据,叫Index
用户数据:通过元数据来定位数据。书的正文
存储空间Bucket
存储空间是用户用于存储对象Object的容器,所有的对象都必须隶属于某个存储空间。存储空间具有各种配置特性,包括地域、访问权限、存储类型等。用户可以根据实际需求,创建不同类型的存储空间来存储不同的数据。
同一个存储空间的内部是扁平的,没有文件系统的目录等概念,所有的对象都直接隶属于其对应的存储空间
每个用户可以拥有多个存储空间
存储空间的名称在OSS范围内必须是全局唯一的,一旦创建后无法修改其名称,存储空间名称命令规范如下:
存储空间内部的对象数目没有显示
存储空间的读写权限
私有private:只有该存储空间的拥有者可以对该存储空间内的文件进行读写操作,其他人无法访问该存储空间内的文件。建议
公共读public-read:只有该存储空间的拥有者可以对该存储空间内的文件进行写操作,任何人(包括匿名访问者)可以对该存储空间中的文件进行读操作。注意:互联网上任何用户都可以对该Bucket内文件进行访问,这有可能造成数据的外泄以及费用激增,请谨慎操作。不建议
公共读写publick-read-write:任何人(包括匿名访问者)都可以对该存储空间内的文件进行读写操作。注意:互联网上任何用户都可以对该Bucket内文件进行访问,并且向该Bucket写入数据。这有可能造成数据的外泄以及费用激增,若被人恶意写入违法信息还可能会侵害合法权益。出特殊场景外,不建议配置。
OSS的存储类型Storage Class
对象存储OSS提供标准,低频访问,归档3种存储类型,全面覆盖从热到冷的各种数据存储场景。
标准存储类型Standard:
低频访问存储类型Infrequent Acess:
归档存储类型Archive:
地域Region
地域代表OSS的数据中心所在的物理位置,地域不能修改。可以用来根据费用,请求来源等选择合适的地域创建Bucket。
访问域名Endpoint
Endpoint表示OSS对外服务的访问域名
访问密钥AccessKey
AccessKey简称AK,指的是访问身份验证中用到的AccessKey Id和AccessKey Secret。
强一致性
数据冗余机制
方便快捷的使用方式
强大,灵活的安全机制
数据冗余机制--防止数据丢失
丰富强大的增值服务
OSS管理流程,使用阿里云管理控制台来完成OSS基本操作的流程如下:
开通OSS服务
创建存储空间
上传文件:
创建了存储空间以后才可以创建文件
阿里云OSS将数据文件以对象Object的形式上传到存储空间Bucket中。可以进行以下操作:
OSS的访问&下载文件
Buket Policy 授权其他用户访问OSS资源
Bocket Policy支持在控制台直接进行图形化配置操作,并且Bucket拥有者直接可以进行访问授权,通常用来将私有文件共享给指定的用户或者群体。
可被授权的用户
当前账号的子账号:可以从下拉菜单中选择当前账号的子账号,授予Bucket访问权限。账号必须是主账号,或拥有此Bucket管理权限及RAM控制台ListUsers权限的子账号
其他账号:当需要给其他账号授予Bucket访问权限,或账号无ListUsers权限时,请直接输入被授权账号的UID.
匿名账号(*):如需要给所有用户授权,可以选择匿名账号(*)
控制台下载Object
获取文件的URL
当文件是公共读时,如果访问者没有阿里云账号,那么其它访问者进行下载需要获取文件URL,单击目标文件的文件名或其右侧的详情,在打开的详情页面中点击复制RUL。
删除文件
可以通过OSS控制台删除单个文件或批量删除文件。通过控制台批量删除文件个数上限为1000。如果想更灵活的选择删除文件,或实现更大批量的删除,请参见开发指南中的删除文件。
删除存储空间
防盗链
对象存储OSS是按使用量收费的服务,为了减少存储于OSS的数据被其他人盗链而产生额外费用,OSS支持设置基于HTTP和HTTPS headers中表头字段Referer的防盗链方法。可以通过控制台为存储空间设置Referer字段的白名单和是否允许Referer字段为空的请求访问。设置防盗链,包括以下参数:
生命周期规则
为方便批量管理存储空间Bucket内的资源,OSS提供了生命周期规则。可以通过生命周期规则来批量转换Bucket内对象Object的存储类型,也可以批量删除指定的Object和碎片Part。
OSS之间的数据迁移
keyi 可以使用阿里云在线迁移服务在阿里云对象存储OSS之间进行跨账号,跨地域,以及同地域内的数据迁移。
OSS之间数据迁移包含以下场景:
迁移步骤
使用在线迁移服务,只需在控制台填写数据源地址和目标OSS地址信息,并创建迁移任务即可。启动迁移后,可以通过控制台管理迁移任务,查看迁移进度,流量等信息;也可以生成迁移报告,查看迁移文件列表,错误文件列表。
数据库备份到OSS
通过数据库备份DBS将本地IDC,公网,第三方云数据库,阿里云RDS和阿里云ECS自建数据库实时备份到OSS上。
归档存储:1分钟的等到时间
存储空间:同一账号同一地域不能超过30个,名称,地域,存储类型不能修改
上传/下载文件:控制台上传,简单上传,表单上传,追加上传的文件大小不能超过5GB,大于5GB的文件必须使用断点续传方式
删除文件:控制台批量删除上限1000个
域名:中国大陆域名绑定需要在工信部备案
OSS的计费方式
OSS的计费方式分为按量付费和包年包月两种
OSS的费用构成
OSS服务费用由存储费用,流量费用,请求费用和数据处理构成。