简单储存服务(S3)。
亚马逊简单的储存服务(S3)实际上是一个以太网上的大磁盘。严格来说,你需要知道关于它一切的90%。它没有目录和没有文件名-只是一个大空间,你可以储存和提取大小从1byte到5 G B的非结构化数据。
我们称之为“块”,S3称之为“对象” ,我们称之为“目录 ”,S3 则比方为“桶” 。因此,当你在S3上储存200KB的JPEG格式的图片时,你是把200KB的对象放进水桶。一特定的AWS帐户可以拥有多达100个水桶。水桶能容纳无限数量的块 ,它可以分配给无论是在美国或欧洲的使用者。据推测,这为用户提供了一个本土化的服务,因为桶可在任何地方通过互联网,从亚马逊获得。在美国和在欧洲提供服务的费用差异是微小的;在欧洲提供1000次的网络存取服务,只比在美国贵大约2000美分。
更深入,你可以把一对象看做是三位一体:关键字,数值,和元数据。关键字是该对象的名称,数值是它的内容,以及元数据是一组描述对象信息的关键字/数值对。 (虽然访问权限也同对象联系在一起,但被视为单独的存储对象) 。对象的名称可以是3至255个字符,亚马逊对命名唯一约束的地方就是,是他们希望不要同网址混淆。因此,一个对象被命名为“ 192.168.12.12 ”是不合要求的。
而S3的结构实际上是一个平面文件系统, S3的API允许一位能干的程序员在桶内建立明显的子目录。不够理想的是对象名称中必须包含该目录的名称;不过,人为的可以简单修饰对象名称。因此,如果你想要一个动物的目录和蔬菜的目录,你可能有对象关键字,如“动物-猫” , “动物-狗” , “蔬菜-甜菜, ”和“蔬菜-胡萝卜” 。使存储目标的地址前缀参量,你可以限制被检索对象的关键字为动物或蔬菜。 在亚马逊的简单的数据库应该保存更加复杂的数据结构。