我看了一下链接,试图了解s3 select
是什么。
大多数应用程序都必须检索整个对象,然后只筛选出所需的数据进行进一步分析。S3 Select使应用程序能够将过滤和访问对象内部数据的繁重工作卸载到Amazon S3服务。
基于上面的陈述,我试图想象什么是正确的用例。
如果我有一个1亿行的excel文件,坐在S3上,我可以使用S3 Select查询部分行,而不是下载整个100亿行,这有帮助吗?
有许多用例。但明显的两种情况是集中和时间效率。
比方说你有这个";具有1亿行的单个excel文件";在S3中。现在,如果有几个人/部门/分支机构需要访问它,所有人都必须下载、存储和处理它。由于它将由他们每个人单独下载,很快你就会发现他们都有旧版本的文件(新版本可以上传到S3(,或者只是不同的版本——一个是今天的个人版本,另一个是上周的版本。选择S3后,所有这些都将从存储在S3中的对象的一个版本中查询并获取数据。
此外,如果您有1亿条记录,则获取所选数据可以节省大量时间。想象一下,一个人只需要这个文件中的10条记录,另一个人需要1000条记录。第一个人没有下载1亿条记录,而是使用S3 Select只找到10条记录,而另一个人只得到他/她的1000条记录。所有这些都不需要下载1亿条记录。
在Glacier中使用S3 select会带来更多好处,如果需要,您无法轻松下载文件。