欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

云存储 -知识概念学习 博客分类: 其它 云计算应用服务器网络应用互联网数据结构 

程序员文章站 2024-03-18 09:42:22
...
云存储 -知识概念学习


云存储的概念:
http://www.sansky.net/article/2008-09-17-depth-analysis-of-storage.html
云存储在云计算 (cloud computing)概念上延伸和发展出来的一个新的概念。云计算是是分布式处理(Distributed Computing)、并行处理(Parallel Computing)和网格计算(Grid Computing)的发展,是透过网络将庞大的计算处理程序自动分拆成无数个较小的子程序,再交由多部服务器所组成的庞大系统经计算分析之后将处理结果回传给用户。通过云计算技术,网络服务提供者可以在数秒之内,处理数以千万计甚至亿计的信息,达到和”超级计算机”同样强大的网络服务。
云存储的概念与云计算类似,它是指通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。
如果这样解释还是难以理解,那我们可以借用广域网和互联网的结构来解释云存储。

云存储不是存储,而是服务
就如同云状的广域网和互联网一样,云存储对使用者来讲,不是指某一个具体的设备,而是指一个由许许多多个存储设备和服务器所构成的集合体。使用者使用云存储,并不是使用某一个存储设备,而是使用整个云存储系统带来的一种数据访问服务。所以严格来讲,云存储不是存储,而是一种服务。
云存储的核心是应用软件与存储设备相结合,通过应用软件来实现存储设备向存储服务的转变




S3的了解与学习:

云存储平台主要采用分布式系统,有优化的分布式算法,能进行良好的容错。与google的分布式文件系统的设计理念类似。

  亚马逊S3云存储收费标准和服务

  使用S3云存储服务,毫无疑问需要付出一定的成本,下面是美国使用的价格。按下面的价钱计算,每月使用5G空间,10G流量,大约需付出2.5$的成本,合每年大概200RMB,在国内租个同样水平的虚拟主机价钱大致相当,但是amazon的稳定性、可靠性应该没有哪个国内的主机商比的上,所以成本相对还是可以接受的

    提供的服务

  S3只提供存储服务,不提供计算服务,所以不能用来做网站只能用于数据备份、图片外链、文件下载等用途。或者当一个高可靠的网盘使用。
  支持上传最大5GB的单个文件。
  支持域名绑定,鉴权访问,支持REST和SOAP接口,支持HTTP下载,还支持BT下载。
  对于国内的用户来说,Amazon服务器位于国外,有可能会遇到传输不稳定的情况。

   亚马逊S3云存储的安全保障

  S3为每个用户分配了ID和密钥,用于保证用户的操作是经过授权,合法的。
  Access Key ID为AWS分配的ID,Secret Access Key为AWS分配的密钥,应该保证该密钥不泄露出去。
  为了保证安全,所有对S3的操作都需要使用Secret Access Key签名,S3根据ID获得服务端的Secret Access Key,重新计算一次签名,如果签名结果相匹配则说明该请求是合法的。
  访问控制
  S3在文件权限的设计上提供了ACL和访问码两种方式。
  1 ACL  每个bucket和object(文件)都可以定义ACL,这两个权限是相互独立的;ACL由Grantees和Permission组成,Grantees定义了用户类别,Permission定义了用户拥有的权限;比较不爽的是这些用户都是基于AWS的注册用户进行定义,未注册用户只定义了匿名组一个类别。
  2 访问码  将用户的ID和过期时间用密钥签名之后,就可以以访问码的方式来访问对象文件,如下所示:http://quotes.s3.amazonaws.com/nelson?AWSAccessKeyId=44CF9590006BF252F707&Expires=1177363698&Signature=vjbyPxybdZaNmGa%2ByT272YEAiv4=

Amazon.com并没有限制用户可存储的项目的数量。

  用户数据存储在多个数据中心的冗余服务器上。简单存储服务采用一个简单的基于Web的界面并且使用密匙来验证用户身份。

  用户可以选择保留自己的数据或公开数据。如果他们愿意的话,用户还可以在存储之前对数据进行加密。当用户的数据存储在简单存储服务上,Amazon.com就会跟踪其使用,以便进行计费,但并不以其他方式获取数据,除非法律要求这样做。

调查基础设施服务

    基础设施服务有弹性计算云(EC2);简单储存服务(S3),持久存储系统;简单数据(SimpleDB)组成,他实现了一个远端存取数据库;和亚马逊的简单排队服务(SQS) ,一个消息队列服务和约束分布式应用程序代理,由E2,S3 ,和SimpleDB 组合构成。


(较全的亚马逊网络服务介绍文:
http://www.ciotimes.com/infrastructure/server/c/server200809170926.html)
以下该文截选:

简单储存服务(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允许一位能干的程序员在桶内建立明显的子目录。不够理想的是对象名称中必须包含该目录的名称;不过,人为的可以简单修饰对象名称。因此,如果你想要一个动物的目录和蔬菜的目录,你可能有对象关键字,如“动物-猫” , “动物-狗” , “蔬菜-甜菜, ”和“蔬菜-胡萝卜” 。使存储目标的地址前缀参量,你可以限制被检索对象的关键字为动物或蔬菜。 在亚马逊的简单的数据库应该保存更加复杂的数据结构。




一个hadoop及google,s3服务有所介绍的文章:
http://www.hadoopor.com/thread-110-1-1.html