一、什么是AmazonS3

Amazon Simple Storaae Service 是互联网存储解决方案。该服务旨在降低开发人员进行网络规模级计算的难度。
        Amazon S3 提供了一个简单 Web 服务接口,可用于随时在 Web 上的任何位置存储和检索任何数量的数据。此服务让所有开发人员都能访问同一个具备高扩展性、可靠性、安全性和快速价廉的数据存储基础设施 ,Amazon 用它来运行其全球的网站网络。此服务旨在为开发人员带来最大化的规模效益。

二、使用 Amazon S3 的优势

Amazon S3 特意内置了着重于简易性和稳健性的最小功能集。以下是使用 Amazon S3 的一些优势:
        • 创建存储桶 – 创建和命名存储数据的存储桶。存储桶是 Amazon S3 中用于数据存储的基础容器。
        • 存储数据 – 在存储桶中存储无限量的数据。可将所需数量的对象上传到 Amazon S3 存储桶。每个对象可
包含最多 5 TB 的数据。使用开发人员分配的唯一键值存储和检索每个对象。
        • 下载数据 – 下载您的数据或允许其他人进行下载。随时下载您的数据或允许其他人进行下载。
        • 权限 – 对于要在您的 Amazon S3 存储桶中上传或下载数据的其他人员,您可以授予其访问权限或拒绝其
        访问_  将上传和下载的许可授予三种类型的用户。身份验证机制可帮助确保数据安全,以防未授权访问。
        • 标准接口 – 使用基于标准的 REST 和 SOAP 接口,它们可与任何 Internet 开发工具包搭配使用。(HTTP 上的 SOAP 支持已弃用,但是仍可在 HTTPS 上使用。对于 SOAP 将不支持新 AmazonS3 功能。建议您使用 REST API 或 AWS 开发工具包。)

三、基本概念
        1、存储桶

存储桶是 Amazon S3 中用于存储对象的容器。每个对象都储存在一个存储桶中。例如,如果名为 photos/puppy.jpg 的对象存储在 johnsmith 存储桶中 ,则可使用 URL:http://iohnsmith.s3.amazonaws.com/photos/puppy.ipg 对该对象进行寻址。
        存储桶可用于多种用途: 它们在最高级别组织 Amazon S3 命名空间;它们标识负责存储和数据传输费用的账户;它们在访问控制中发挥作用;它们用作使用情况报告的聚合单元。

用户可以配苦存储桶,以便在特定 AWS 区域进行创建。也可以配置存储桶,以便在每次向它添加对象时,Amazon S3 都会生成一个唯一的版本ID 并将其分配给对象。

2、对象

对象是 Amazon S3 中存储的其本实体。对象由对象数据和元数据组成。数据部分对 Amazon S3 不诱明。元数据是一组描述对象的名称-值对。其中包括一些默认元数据(如上次修改日期)和标准HTTP 元数据(如 Content-Type)。您还可以在存储对象时指定自定义元数据。
在存储桶中,对象将由键(名称)和版本 ID 进行唯一地标识。

3、键

键是指存储桶中对象的唯一标识符。存储桶内的每个对象都只能有一个键。存储桶、键和版本 ID 的组合唯一标识各个对象。因此,您可以将 Amazon S3 看作“存储桶 + 键 + 版本”与对象本身之间的基本数据映射。将 Web 服务终端节点、存储桶名、密钥和版本(可选)组合在一起,可唯一地寻址 Amazon S3 中的每个对象。例如,在 URL http://doc.s3.amazonaws.com/2006-0301/AmazonS3.wsdl 中,“doc”是存储桶的名称,“2006-03-01/AmazonS3.wsdl”是键。

4、区域

您可以选择一个 AWS 区域供 Amazon S3 存储您创建的存储桶。您可以选择一个区域,以便优化延迟、尽可能降低成本或满足法规要求。在某一区域存储的数据元将一直留在该区域,除非您特意将其传输到另一区域。例如,存储在欧洲(爱尔兰)区域中的对象将一直留在该区域。

5、用户id

账户访问密钥提供对账户拥有的 AWS 资源的完全访问权限。以下是访问密钥示例:
        访问密钥 ID (20 个字符的字母数字字符串)。例如:AKIAIOSFODNN7EXAMPLE

访问密钥ID 可唯一标识 AWS 账户。

6、KEY SECRET

秘密访问密钥(40个字符的字符串)。

例如:wJalrXUtnFEMVK7MDENG/bPxRfiCYEXAMPLEKEY

可以使用这些访问密钥向 Amazon S3 发送经身份验证的请求。

7、Amazon S3 数据一致性模型

Amazon S3 在所有区域为 S3 存储桶中的新对象的 PUTS 提供写后读一致性,不过有一条警告。说明如下,
如果在创建对象之前对键名发出 HEAD 或 GET 请求 (查看该对象是否存在) Amazon S3 提供写后读最终一致性。
Amazon S3 在所有区域提供最终一致性用于覆盖 PUTS 和 DELETES。
单个键的更新是原子更新。例如,如果您对一个现有键执行 PUT 操作,则后续读取可能会返回旧数据或已更新的数据,但它永远不会返回损坏的数据或部分数据。
Amazon S3 通过在 AWS 数据中心内的多个服务器之间复制数据,从而实现高可用性。如果 PUT 请求成功,则数据已安全存储。但是,有关更改的信息必须在 Amazon S3 间进行复制,这可能需要一些时间,因此您可能会观察到以下行为:
        • 这是一个过程,会将一个新对象写入 Amazon S3,并立即列出其存储桶内的密钥。在充分传播此更改前,此对象可能不会显示在列表中。
        • 这是一个过程,会替换一个现有的对象,并立即尝试读取此对象。在充分传播此更改前,Amazon S3 可能会返回先前的数据。
        • 这是一个过程,会删除一个现有的对象,并立即尝试读取此对象。在充分传播此删除前,Amazon S3 可能会返回删除的数据。
        • 这是一个过程,会删除一个现有的对象,并立即列出其存储桶内的键。在充分传播此删除前,Amazon S3可能会列出删除的对象。
(Amazon S3 目前不支持对象锁定。如果同时对同一键发出两个 PUT 请求,则以带有最新时间戳的请求为准。如果这会导致问题,需要在应用程序中创建对象锁定机制。)
更新是基于键的。无法跨键值实现原子更新。例如,无法根据一个键值的更新对另一个键值进行更
新,除非将此功能设计到应用程序中。
下表描述了最终一致性读取和一致性读取的特征。

最终一致性读取 一致性读取
过时读取可能性 无过时读取
最低读取延迟 潜在的更高读取延迟
最高读取吞吐量 潜在的更低读取吞吐量

亚马逊AmazonS3存储概念相关推荐

  1. Springboot 整合常用对象存储工具(asw s3 亚马逊云存储,minio,阿里oss)

    1.引入依赖(gradle) // asw s3 亚马逊云存储implementation 'com.amazonaws:aws-java-sdk-s3:1.11.830'// minio clien ...

  2. 集成aws-s3亚马逊对象存储

    对象存储OSS(Object Storage Service)是一款海量.安全.低成本.高可靠的云存储服务,提供99.99%的数据持久性,99.99%的数据可用性.可用于存储任意类型,任意数量,任意大 ...

  3. 亚马逊各类存储的比较与分析

    亚马逊各类存储的比较与分析 摘要:本文通过对Amazon四大存储类型--Amazon S3.Amazon EBS.Amazon EFS.Amazon S3 Glacier分别的优劣势.适用场景和收费策 ...

  4. 亚马逊s3存储: aws cli上传工具速度和各文件大小关系探究

    1,背景介绍 公司最近最近统一了存储环境,由ftp文件存储全量转换为ceph存储.有业务组表示以前往ftp文件批量上传30万个文件1.3GB只需要16分钟左右.切换为ceph存储需要1个多小时,也就是 ...

  5. 亚马逊 AmazonS3的使用

    https://blog.csdn.net/cxl_shelly/article/details/121081548 s3browser下载:https://s3browser.com/ https: ...

  6. Dynamo:亚马逊的高可用键值存储

    目录 1. 简介 2. 背景 3. 相关工作 4. 系统结构 5. 实现 6. 经验和教训 7. 结论 Dynamo:亚马逊的高可用键值存储 摘要:大规模的可靠性是我们在 Amazon.com 面临的 ...

  7. Amazon S3 Storage(亚马逊的对象存储)

    目录 概述 设计 对象存储 访问控制 主机托管 日志 实用工具 亚马逊S3存储级别 S3 API和与之竞争的服务 发展历史 概述 亚马逊S3,全称亚马逊简易存储服务(Amazon Simple Sto ...

  8. 全球公有云巨头:亚马逊 AWS

    来源:乐晴智库精选 摘要:亚马逊AWS目前拥有超过1500种产品和2100余种第三方模块,为全球190个国家的企业提供支持. AWS作为亚马逊旗下的云计算服务平台,面向全世界范围的用户提供包括弹性计算 ...

  9. 云计算登顶之后,亚马逊人工智能走上新征程

    凡是过往,皆为序章. 作者 | 青暮 1961年,人工智能之父.1971年图灵奖获得者John McCarthy在MIT的百周年纪念上,第一次提出了公共计算服务的概念,这其实就是云计算的思想雏形.然而 ...

最新文章

  1. 怎么快速插入 100 条数据,用时最短
  2. 排序算法 JavaScript
  3. python画长方形-怎么用python 画出任意占空比的一串矩形方波呢?
  4. cmake 版本 arm_尝试使用CMake构建Qt+Pytorch简单应用
  5. TQ210裸机编程(2)——LED流水灯
  6. 【Java/JFrame/多线程】小球碰到边缘的回弹效果
  7. 苹果和虫子(信息学奥赛一本通-T1038)
  8. FCKeditor + smarty
  9. byte是什么数据类型_PLC基本数据类型的解读(避免在使用中的误解)
  10. 基于JAVA+SpringMVC+Mybatis+MYSQL的漫画社区
  11. Python使用标准库itertools中count类求解数苹果问题
  12. iOS开发中的单元测试(三)——URLManager中的测试用例解析
  13. php io操作,lua 的io操作,非常详细
  14. 音视频的采集、编码、封包成 mp4 输出
  15. 计算机组成原理试题库10,计算机组成原理试题10
  16. CS61A 2021Spring Lab: Cats
  17. GPS从入门到放弃(十五)--- DCB差分码偏差
  18. 使用springboot jpa完成复杂的分页查询
  19. decltype和拖尾返回类型
  20. linux文件系统安全模型与()属性相关,《Linux系统安全.》.ppt

热门文章

  1. IPsec 配置干货,理论+配置
  2. Linux命令行设置代理
  3. 2019款的别克君威:90后的青睐,亮点不只是内饰
  4. matlab里的矩阵和opencv里的矩阵的区别,opencv 矩阵相乘, matlab矩阵相乘,以及自己写的矩阵相乘的时间比较...
  5. “这是用什么写的?”
  6. uniapp自动更新
  7. QQ加好友代码 强行聊天的代码 HTML
  8. 录屏软件怎么选?你真的选对了吗?
  9. SQL SERVER DATEPART函数
  10. lstm 文本纠错_AI LIVE | 文本纠错技术探索和实践