Amazon云盘算AWS(二)

打印 上一主题 下一主题

主题 808|帖子 808|积分 2424


三、简单存储服务S3

(一)S3的根本概念和利用

  简单存储服务(Simple Storage Services,S3)构架在Dynamo之上,用于提供任意范例文件的临时或永世性存储。S3的总体计划目标是可靠、易用及低成本。
  S3存储系统的根本结构,此中涉及两个根本概念:桶(Bucket)和对象(Object)。

1、桶
  桶是用于存储对象的容器,其作用雷同于文件夹,但桶不可以被嵌套,即在桶中不能创建桶。现在,Amazon限制了每个用户创建桶的数量,但没有限制每个桶中对象的数量。桶的名称要求在整个Amazon S3的服务器中是全局唯一的,以制止在S3中数据共享时出现相互辩论的环境。在对桶定名时,发起采用符合DNS要求的定名规则,以便与CloudFront等其他AWS服务配合利用。
2、对象


  • 数据:任意范例,但巨细会受到对象最大容量的限制。
  • 元数据:数据内容的附加形貌信息,通过名称-值(name-value)集合的形式来定义。
元数据名称名 称 含 义last-modified对象被末了修改的时间ETag利用MD5哈希算法得出的对象值Content-Type对象的MIME(多功能网际邮件扩充协议)范例,默认二进制/八位组Content-Length对象数据长度,以字节为单位 3、根本利用
  S3中支持对桶和对象的利用,主要包括:Get、Put、List、Delete和Head。下表列出了五种利用的主要内容。
操 作 目 标GetPutListDeleteHead获取桶中对象创建或更新桶列出桶中所有键删除桶——对象获取对象数据和元数据创建或更新对象——删除对象获取对象元数据 (二)S3的数据同等性模型

  与其构建的底子Dynamo雷同,S3中采用了最终同等性模型。在数据被充分传播到所有的存放节点之前,服务器返回给用户的仍是原数据,此时用户利用可能会出现后面几种环境:
用户利用效果1写入一个新的对象并立即读取它服务器可能返回“键不存在”2写入一个新的对象并立即列出桶中已有的对象该对象可能不会出如今列表中3用新数据更换现有的对象并立即读取它服务器可能返回原有的数据4删除现有的对象并立即读取它服务器可能返回被删除的数据5删除现有的对象并立即列出桶中的所有对象服务器可能列出被删除的对象

(三)S3的安全措施


1、身份认证(Authentication)


2、访问控制列表(Access Control List)
  访问控制列表是S3提供的可供用户自行定义的访问控制策略列表。S3的访问控制策略(ACP)提供如下所列的五种访问权限。

注意:S3的ACL不具有继承性
S3中有三大范例的授权用户:
(1)所有者(Owner)
  所有者是桶或对象的创建者,默认具是WRITE_ACP权限。所有者默认就是最高权限拥有者。
(2)个人授权用户(User)
  两种授权方式,一种是通过电子邮件地点授权的用户,另一种是通过用户ID举行授权。
(3)组授权用户(Group)
  一种是AWS用户组,它将授权分发给所有AWS账户拥有者;另一种是所有用户组,这是一种有着很大埋伏伤害的授权方式。
四、非关系型数据库服务SimpleDB和DynamoDB

(一)非关系型数据库与传统关系数据库的比力

传统的关系数据库非关系型数据库数据模型对数据有严格的约束key和value可以利用任意的数据范例数据处置惩罚满意CAP原则的C和A,在P方面很弱满意CAP原则的A和P,而在C方面比力弱接口层以SQL语言对数据举行访问的,提供了强大的查询功能,并便于在各种关系数据库间移植通过API利用数据,支持简单的查询功能,且由于差别数据库之间API的差别而造成移植性较差 总结:

(二)SimpleDB

  SimpleDB根本结构图如下,包含了域、条目、属性、值等概念。

1、域(Domain)
  域是用于存放具有一定关联关系的数据的容器,此中的数据以UTF-8编码的字符串形式存储。每个用户账户中的域名必须是唯一的,且域名长度为3~255个字符。每个域中数据的巨细具有一定的限制。但域的分别也会为数据利用带来一些限制,是否分别域需要综合多种因素考虑。
2、条目(Item)
  条目对应着一条记载,通过一系列属性来形貌,即条目是属性的集合。在每个域中,条目名必须是唯一的。与关系数据库差别,SimpleDB中不需要事先定义条目标模式,即条目由哪些属性来形貌。利用上具有极大的灵活性,用户可以随时创建、删除以及修改条目标内容。
3、属性(Attribute)
  属性是条目标特征,每个属性都用于对条目某方面特性举行概括性形貌。每个条目可以有多个属性。属性的利用相对自由,不用考虑该属性是否与域中的其他条目相关。
4、值(Value)
  值用于形貌某个条目在某个属性上的详细内容。一个条目标一个属性中可以有多个值。
比方:某类商品除颜色外其他参数完全同等,此时可以通过在颜色属性中存放多个值来利用一个条目表示该商品,而不需要像关系数据库中那样建立多条记载。

  如图显示了SimpleDB的树状组织方式,此中可以看出SimpleDB对多值属性的支持。

   SimpleDB与其他AWS组件综合利用的方式  

  • 限制:SimpleDB中每个属性值的巨细不能凌驾1KB。
  • 导致:SimpleDB存储的数据范围极其有限。
  • 办理:将相对大的数据存储在S3中,在SimpleDB中只生存指向某个特定文件位置的指针。
(三)DynamoDB

DynamoDB的特点:
  DynamoDB以表为根本单位,表中的条目同样不需要预先定义的模式。DynamoDB中取消了对表中数据巨细的限制,用户设置任意巨细,并由系统自动分配到多个服务器上。DynamoDB不再固定利用最终同等性数据模型,而是允许用户选择弱同等性大概强同等性。DynamoDB还在硬件上举行了优化,采用固态硬盘作为支持,并根据用户设定的读/写流量限制预设来确定命据分布的硬盘数量。
(四)SimpleDB和DynamoDB的比力

  SimpleDB和DynamoDB都是Amazon提供的非关系型数据库服务。
  SimpleDB:限制了每张表的巨细,更得当于小规模复杂的工作。自动对所有属性举行索引,提供了更加强大的查询功能。
  DynamoDB:支持自动将数据和负载分布到多个服务器上,并未限制存储在单个表中数据量的巨细,适用于较大规模负载的工作。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

千千梦丶琪

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表