如果通过web访问S3服务来获取数据(Object),则分页、搜索等功能是比不可少的。而S3提供的4个参数,可以让我们方便快捷的将数据取出来,这4个参数是基于key操作的。key的概念参见文章一。
1、prefix。比如http://bucket.s3.amazonaws.com/?prefix=123,则将key中以123开头的列出来。
2、delimiter。比如http://bucket.s3.amazonaws.com/?delimiter=/,此时,S3可能会返回CommonPrefixes,将key中采用“/”分隔的列出来。
<Contents>
<Key>123/zzz.txt</Key>
<LastModified>2007-12-11T07:41:51.000Z</LastModified>
<ETag>"d725dfc2167445d1db23067de33ebd28"</ETag>
<Size>203</Size>
<StorageClass>STANDARD</StorageClass>
</Contents>
<Contents>
<Key>abc/ooo/yxx.txt</Key>
<LastModified>2007-12-12T05:34:35.000Z</LastModified>
<ETag>"4fdf8a4dd42bd4d24855eebd5c9b9434"</ETag>
<Size>41</Size>
<StorageClass>STANDARD</StorageClass>
</Contents>
用了“delimiter=/”返回,告诉你 有prefix为123/和abc/可用。
<CommonPrefixes>
<Prefix>123/</Prefix>
</CommonPrefixes>
<CommonPrefixes>
<Prefix>abc/</Prefix>
</CommonPrefixes>
这时输入http://bucket.s3.amazonaws.com/?delimiter=/&prefix=123/则将prefix中有123/的全部列出来。
如果key有这样的形式:ms_vb_5_src/sss.frm,ms_vb_6_src/ddd.frm,你可以把delimiter设为“_”来取数据。通过不同的delimiter和prefix可以非常灵活的获取数据。
如果数据量很大,则可以用第三个和第四个参数
3、MaxKeys。这个告诉S3一次性返回多少数据,默认返回1000个。URL输入http://bucket.s3.amazonaws.com/?delimiter=/&prefix=123/&max-keys=10,则返回:
<Name>bucket</Name>
<Prefix>123/</Prefix>
<Marker />
<NextMarker>123/10.txt</NextMarker>
<MaxKeys>10</MaxKeys>
<Delimiter>/</Delimiter>
<IsTruncated>true</IsTruncated>
<Contents>
<Key>123/1.txt</Key>
<LastModified>2007-12-12T06:02:33.000Z</LastModified>
<ETag>"9dd4e461268c8034f5c8564e155c67a6"</ETag>
<Size>1</Size>
<StorageClass>STANDARD</StorageClass>
</Contents>
里面IsTruncated为true,表示按照delimiter和prefix和max-keys取出的数据不止10个;余下的数据怎么取?就用到了NextMarker元素中数据。
4、Marker。 URL输入http://bucket.s3.amazonaws.com/?delimiter=/&prefix=123/&max -keys=10&marker=123/10.txt,marker的值就是NextMarker元素中数据。这样S3就返回了下10条数据。
<Name>bucket</Name>
<Prefix>123/</Prefix>
<Marker>123/10.txt</Marker>
<NextMarker>123/19.txt</NextMarker>
<MaxKeys>10</MaxKeys>
<Delimiter>/</Delimiter>
<IsTruncated>true</IsTruncated>
<Contents>
<Key>123/1.txt</Key>
<LastModified>2007-12-12T06:02:33.000Z</LastModified>
<ETag>"9dd4e461268c8034f5c8564e155c67a6"</ETag>
<Size>1</Size>
<StorageClass>STANDARD</StorageClass>
</Contents>
如果IsTruncated仍为true,则表示还有数据,我们把marker改为marker=123/19.txt便可以继续取下10条数据;如果IsTruncated为false,则表示按照条件已经将数据全部取出来了。
S3文档中,提供更为详细的解释。点击查看:http://docs.amazonwebservices.com/AmazonS3/2006-03-01/
分享到:
相关推荐
亚马逊S3 API文档是Amazon Simple Storage Service (S3)的官方参考手册,它详细描述了如何使用S3的REST API进行数据的存储和检索。文档中包含了关于如何操作S3的基本概念、使用方法、身份验证以及数据类型等重要信息...
用于Amazon Simple Storage Service(S3)的ACK服务控制器该存储库包含适用于Amazon Simple Storage Service(S3)的AWS Kubernetes控制器(ACK)服务控制器的源代码。 请在主要的AWS Controllers for Kubernetes ...
Amazon Simple Storage Service (S3) 是 Amazon Web Services (AWS) 提供的一种可扩展的云存储服务,它允许用户存储和检索大量数据。在本文档中,我们将讨论如何将 S3 用作 Veritas Enterprise Vault 的主存储,这是...
**使用 Generic Simple Storage Service (S3) 作为 Enterprise Vault 主存储** Enterprise Vault 是 Veritas Technologies LLC 开发的一款企业级信息归档解决方案,它允许组织高效地管理大量的电子数据,包括电子...
Amazon Simple Storage Service(S3)是亚马逊云服务(AWS)提供的一个高度可扩展、可靠且安全的云存储解决方案。aws.s3 R包是为R语言用户设计的一个接口,它允许开发者方便地与Amazon S3进行交互,执行各种操作,...
亚马逊S3(Simple Storage Service)是亚马逊网络服务(Amazon Web Services,AWS)提供的一个高度可扩展的对象存储服务,主要用于网络上存储和检索任意大小的数据。本文将根据提供的文件内容,详细解读亚马逊S3接口...
在C++中利用Amazon Simple Storage Service (S3)进行数据存储和检索,通常需要借助于第三方库或SDK,比如gSOAP。gSOAP是一个强大的开源工具,可以用来处理Web服务,包括那些基于SOAP协议的,如Amazon S3 API。以下是...
Amazon S3,全称为Amazon Simple Storage Service,是亚马逊云服务提供的一个高度可扩展、安全且持久的云存储解决方案。这个服务允许用户存储和检索任意数量的数据,无论数据规模大小,适用于备份、归档、网站托管等...
11. 本指南的目标受众是熟悉Amazon Simple Storage Service (S3) 概念的C#开发人员,指导他们如何将现有的S3应用程序移植到Cleversafe平台。 12. 针对S3API和CSOAPI之间的功能差异,文档指出了CSOAPI支持S3API功能...
JetS3t是免费的开源Java工具箱和应用程序套件,适用于Amazon Simple Storage Service(Amazon S3),Amazon CloudFront内容交付网络和Google Storage for Developers。 有关更多信息,文档以及到讨论列表和其他资源...
S3Lib 是 Amazon Simple Storage Service 的客户端库。 地位 Java 库 S3Lib-Java 已完成并在积极的生产中使用。 使用 S3Lib-Java 来满足其游戏的后端存储需求。 C 库 C 实现 S3Lib-C 正在进行中。 完成图书馆是在...
s3文件夹上传 一个小脚本,可通过使用官方的Amazon SDK将静态信息上传到S3存储桶。AWS凭证为了使用此模块,您需要具有AWS Credentials。 您可以通过两种方式加载它们: 通过直接传递给方法作为第二个参数。 通过使用...
在Android平台上实现亚马逊S3(Amazon Simple Storage Service)文件上传是一项常见的任务,特别是在移动应用开发中需要存储用户数据或应用程序资源时。以下是一份详细的知识点解析,涵盖了标题和描述中提到的关键点...
S3FS 为 Node.JS 提供的文件系统 (FS) 实现提供了直接替代,允许 Node.JS 应用程序通过 Node.JS 使用的众所周知的使用分布式文件系统。 最低 IAM 政策 以下是 AWS Identity and Access Management的策略,它提供了...
Amazon Simple Storage Service (S3) 是一种对象存储服务,旨在为互联网规模的应用程序提供高可用性、高性能以及低成本的数据存储解决方案。本手册主要介绍了如何通过 REST API 来与 Amazon S3 进行交互。 ### 常见...
Amazon S3(Simple Storage Service)是亚马逊公司提供的一项云存储服务,旨在为互联网应用程序提供安全、可扩展且高度可用的数据存储。本开发指南是作者对官方文档的中文翻译,尽管可能存在一些翻译上的不准确之处...
标题中的“aws亚马逊的S3库实现”指的是Amazon S3(Simple Storage Service)的客户端库,这是一种由亚马逊提供的云存储服务。S3允许用户在线存储和检索数据,并提供了高可用性、耐用性和可扩展性。这个库是用C语言...