阿里云OSS

一、OSS基本概念

阿里云对象存储服务(Object Storage Service,OSS)——阿里云提供的云存储服务。

  1. 可以通过调用API,上传和下载数据,还可以通过WEB控制台对数据进行简单管理。
  2. OSS适合存放任意类型文件,适合各种网络、开发企业及开发者使用。

二、OSS应用场景

1、图片和音视频等应用的海量存储
阿里云OSS_第1张图片

2、网页或者移动应用的静态和动态资源分离
阿里云OSS_第2张图片

3、云端数据处理
阿里云OSS_第3张图片

三、OSS付费

阿里云OSS采用两种计费方式:
包年包月(预付费)——先购买资源包,后使用资源。已使用的OSS资源超过购买资源包规格的部分按量付费。

  • 三种资源包类型:

    1. 存储包:为存储量提供的指定规格资源包。
    2. 外网流出流量包:为外网流出流量提供的指定规格资源包
    3. CDN回源流量包:为阿里云CDN回源流量提供的指定规格资源包

资源包注意事项:

  • 资源包可选择支付后立即生效或指定日期生效
  • 资源包在生效期内,先扣除已购买的资源包内的额度,超出部分每小时按量付费。
  • 没有使用的资源包,可通过工单退款
  • 不同地域的资源包不通用
  • 存储包和外网流出包不支持叠加购买,支持升级和续费操作;CDN回源流量包支持叠加购买
  • 周期内可以升配,无法降配。周期结束可以在续费时选择升/降配。
  • 续费时,可指定生效时间、购买时长、资源包规格
  • 欠费24小时内充值,不会停止服务;欠费超24小时,服务自动停止,占用存储空间继续扣费;欠费超15天,存储空间回收,数据清理且不可恢复。

按量付费(后付费)——先使用后付费的计费模式。在阿里云账户先充值,系统每小时统计前一小时的实际用量并进行结算,从账户余额扣除消费金额。

  • OSS 计量项 ——存储量、流量、请求次数、数据处理。
  • 存储量计费——每小时存储容量(GB)*对应存储类型的小时单价
  • 流量——仅公网流量产生费用,不同类型流量费用有差异。包括外网流入/流出流量、内网流出/流出流量、CDN回源流量、跨区域复制流量
  • 计费——每小时累计外网流出流量*每GB单价
  • 请求次数计费——每万次请求的单价*每小时实际请求次数/10000
  • OSS OPEN API调用——按请求次数计费,每小时请求次数不足1万次不计费
  • 图片处理计费——图片小于10TB免费,10TB以上:图片文件大小*每GB图片处理单价
  • 视频截帧计费 ——截帧数*截帧单价

四、OSS的使用

阿里云OSS将数据文件以对象(object)的形式上传到存储空间(bucket)中。
这里写图片描述

存储空间(bucket)——用来存储对象(Object)的容器,所有对象必须隶属于某个存储空间。

  • 存储空间命名——必须符合命名规范;在阿里云OSS现有存储空间名称中必须具有唯一性;创建后不支持修改名称。
  • 所属地域——订购后不支持更换地域(Region);需选择与ECS相同的地域,才能通过ECS内网访问OSS;bucket下属所有object都存储在对应数据中心
  • 读写权限:1.公共读写——任何人都可以对该存储空间文件进行读写操作,产生的费用由存储空间创建者承担;2.公共读——仅创建者可以对文件进行写操作,任何人均能对存储空间内文件进行读操作;3.私有——仅创建者可以对存储空间文件进行读写操作,其他人无法访问。
  • 删除存储空间——存储文件全部清空才能删除存储空间。
  • 存储空间属性——设置和修改属性,可控制地域访问权限生命周期等,属性作用于空间内所有对象。可以通过创建多个存储空间完成区分配置。

对象(object)——OSS存储数据的基本单元,也称OSS的文件。

  • 对象由元信息(Object Meta)、用户数据(Data)、文件名(key)组成。
  • 对象由存储空间内部唯一的Key来标识
  • 元信息是一个键值对,表示对象的一些属性:最后修改时间、大小等,还存储一些自定义的信息。
  • 任意文件类型都可上传到存储空间;OSS**控制台可上传500MB以内的文件,分片上传最大支持48.8TB的对象,其他**方式最大支持上传5GB。
  • 对象生命周期——上传成功到被删除为止
  • 对象信息不可变更,上传同名对象会覆盖原对象,无法修改文件部分内容
  • 追加上传——可不断在object尾部追加写入数据

对象强一致性——操作要么成功要么失败,不会存在有中间状态的Object。OSS 保证用户一旦上传完成之后读到的 Object 是完整的,OSS 不会返回给用户一个部分上传成功的 Object。

文件特性——OSS是一个分布式对象存储服务,用户根据object名称(key)唯一获取object内容。
OSS支持海量用户并发访问,海量数据处理能力,优先存储海量非结构化数据。
重命名目录非常消耗资源,OSS尽量避免类似操作。

文件上传

  1. 简单上传——用户使用OSS API中的Put Object方法上传单个Object。适合一次HTTP请求交互可完成的上传,小于5G。
  2. 表单上传——用户使用OSS API中的Post Object请求来完成Object的上传。适合嵌入HTML网页上传Object。
  3. 追加上传——Object后面直接追加内容,适用于视频监控、视频直播,数据实时不断产生。
  4. 授权第三方上传——(1)URL签名,在请求的URL中带有OSS AccessKeyId和Signature,用户直接使用URL进行上传。(2)临时访问凭证,通过阿里云SecurityTokenService实现授权。
  5. RTMP推流上传——RTMP协议推送H264编码的视频流+AAC编码的音频流到OSS。推送到OSS的音视频数据可以点播播放;在对延迟不敏感的应用场景,也可以做直播用途。
  6. 分片上传——将文件分成多个数据块分别上传,上传完成后调用OSS接口将这些Part组合成一个object。
    适用于以下场景:
    • 恶劣网络环境,对上传失败的情况,可实现断点续传。
    • 断点续传,中途暂停,可从完成的Part位置续传。
    • 加速上传,并行上传多个part以加快上传。
    • 流式上传,在文件大小不确定情况下上传,用于常用于视频监控

上传回调——上传文件完成时可以回调(Callback)给应用服务器。
阿里云OSS_第4张图片

文件下载

  1. 简单下载——下载已经上传的文件(Object),使用HTTP的GET请求来完成。Object 匿名签名读权限,需要拥有对应AccessKey对GET请求签名来访问;Object 匿名签名读权限,所有用户直接使用GET请求进行访问。
  2. 断点续传下载——从Object指定的位置开始下载的功能,在下载很大的Object时,可以分多次下载。
  3. 授权第三方下载——1)在URL中加入签名信息,把该URL转给第三方实现授权访问。2)OSS通过STS (Security Token Service) 提供了临时凭证给第三方用户,第三方用户以在请求头部中带签名的方式去访问Object。这种授权方式适合移动场景的下载。

你可能感兴趣的:(阿里云)