使用 S3 生命周期精确管理对象生命周期
在亚马逊工作这些年,我发现 S3 的生命周期配置是管理对象生命周期的重要但复杂的工具。在这篇文章中,我将利用实战经验,深入剖析生命周期,从核心概念到实际应用。
亚马逊云科技开发者社区为开发者们提供全球的开发技术资源。这里有技术文档、开发案例、技术专栏、培训视频、活动与竞赛等。帮助中国开发者对接世界最前沿技术,观点,和项目,并将中国优秀开发者或技术推荐给全球云社区。如果你还没有关注/收藏,看到这里请一定不要匆匆划过,点这里让它成为你的技术宝库! |
导言
在云存储中管理数据生命周期至关重要却很复杂。随着大量数据快速累积,不受控制的增长会导致成本指数上升。S3 生命周期让我们可以建立自动化策略,在存储类型之间转变对象或删除对象。
本文将详细剖析生命周期,从基础逻辑到实际配置。您将学习如何精确控制对象生命周期的同时优化存储成本。本文将提供示例并辅以流程图和图解进行步骤详解。我的目标是提供可直接实施的见解,应用于您的云架构中。
背景知识
首先简述几个关键概念:
S3 生命周期策略对满足特定条件的对象应用规则。每个规则定义在对象生命周期的某些点上满足标准时要执行的操作。
常见条件包括:
- 对象键名称前缀或标签
- 对象创建日期
- 总生命周期天数
典型操作包括:
- 转变存储类型
- 终止未完成的多部分上传
- 永久删除对象
实际上,生命周期基于定义的规则,自动在 S3 存储类型之间转变对象,或完全删除对象。
问题所在
生命周期为什么有用且复杂?
不受控制的数据累积会迅速增加云存储成本。临时手动干预操作既费力又容易出错。生命周期提供自动化,但制定有效精确的规则需要深入理解。
错误配置可能导致意外转变或删除。复杂访问模式,比如每天数百万次上传/访问,进一步增加了策略设计的难度。
因此,掌握生命周期的逻辑和复杂度是必须的。
S3 生命周期的工作原理
让我们逐步看一下生命周期配置:
1. 定义生命周期规则
根据名称、标签或创建日期为对象制定规则过滤器。
2. 指定操作
选择在匹配对象上执行的操作,比如转变存储类型或删除。
3. 评估对象
S3 定期根据规则评估对象。匹配的对象进入指定操作的队列。
4. 执行操作
对于等待操作的对象,在达到下一个计划间隔时,S3 会执行指定的操作。
总之,生命周期基于细致的规则自动转变或删除对象。但是设计高效可预测的策略需要考虑周全.
关键优势与应用
生命周期的强大之处在哪里?
成本优化:极少访问的数据转变到低频或冷存储,可节省高达 90% 的存储成本。直接删除不需要的数据。
存储分层:根据访问模式自动在存储类型之间迁移数据。例如,30天后访问日志转变到低频存储。
清理工作:在指定天数后终止未完成的多部分上传,以节省成本。
合规性:根据数据保留政策,在达到规定保存期限后,永久删除敏感数据。
简而言之,生命周期实现从创建到删除的细致自动化数据控制,有效管理存储增长。
实际应用示例
下面我们看一些演示实际使用的生命周期示例:
优化存储成本
30天后日志转变到低频存储,365天后删除:
<LifecycleConfiguration><Rule><Filter><Prefix>logs/</Prefix></Filter><Transitions><Transition><Days>30</Days><StorageClass>STANDARD_IA</StorageClass></Transition></Transitions><Expiration><Days>365</Days></Expiration></Rule>
</LifecycleConfiguration>
自动数据分层
90天后 tax/
开头的对象转变到冷存储以归档:
<Rule><Filter><Prefix>tax/</Prefix></Filter><Transitions><Transition><Days>90</Days><StorageClass>GLACIER</StorageClass></Transition></Transitions>
</Rule>
删除未完成的多部分上传
7天内未完成的上传过期以节省成本:
<Rule><Filter><And><Prefix>uploads/</Prefix><ObjectState>Multipart</ObjectState></And></Filter><Expiration><Days>7</Days></Expiration>
</Rule>
主要精髓
让我们总结学习要点:
- 生命周期通过细致规则自动转变和删除对象
- 匹配访问模式实现成本优化,避免不受控制的增长
- 精确的策略设计需要深入理解,以防意外后果
- 实际示例演示了常见应用,比如分层、清理和保留
希望这些见解有助于您掌握生命周期的复杂度,并有效实施,也欢迎您可以分享您的问题和应用经验。我们社区的集体智慧将加深我们所有人的理解。
参考资料
- S3 生命周期配置元素
- 使用 S3 生命周期自动化存储分层
- 管理存储生命周期
文章来源:https://dev.amazoncloud.cn/column/article/64e5cb3384d23218430681eb?sc_medium=regulartraffic&sc_campaign=crossplatform&sc_channel=CSDN
相关文章:
![](https://img-blog.csdnimg.cn/img_convert/afa6829765f84b6436572d32b837e78d.png)
使用 S3 生命周期精确管理对象生命周期
在亚马逊工作这些年,我发现 S3 的生命周期配置是管理对象生命周期的重要但复杂的工具。在这篇文章中,我将利用实战经验,深入剖析生命周期,从核心概念到实际应用。 亚马逊云科技开发者社区为开发者们提供全球的开发技术资源。这里有技术文档、开发案例、技术专栏、培训视频、活…...
![](https://img-blog.csdnimg.cn/240579a55b1748e698ea665c5e8ce1c6.png)
RocketMQ零拷贝原理
1 PageCache ●由内存中的物理page组成,其内容对应磁盘上的block。 ●page cache的大小是动态变化的。 ●backing store:cache缓存的存储设备。 ●一个page通常包含多个block,而block不一定是连续的。 1.1读Cache ●当内核发起一个读请求时&#x…...
![](https://www.ngui.cc/images/no-images.jpg)
HTML <tbody> 标签
实例 带有 thead、tbody 以及 tfoot 元素的 HTML 表格: <table border="1"><thead><tr><th>Month</th><th>Savings</th></tr></thead><tfoot><tr><td>Sum</td><td>$180<…...
![](https://img-blog.csdnimg.cn/42ea5131f1c0433a93e103ced6c3c1c2.png)
4.22 TCP 四次挥手,可以变成三次吗?
目录 为什么 TCP 挥手需要四次呢? 粗暴关闭 vs 优雅关闭 close函数 shotdown函数 什么情况会出现三次挥手? 什么是 TCP 延迟确认机制? TCP 序列号和确认号是如何变化的? 在一些情况下, TCP 四次挥手是可以变成 T…...
![](https://www.ngui.cc/images/no-images.jpg)
鲁棒性简述
鲁棒性(Robustness)是指系统或算法对于异常情况或不良条件的抵抗能力和适应能力。一个鲁棒性强的系统能够在面对异常、噪声、错误或意外情况时,仍能够保持高效的运行或输出可接受的结果。 鲁棒性是在设计和开发系统时要考虑的一个重要特性&am…...
![](https://www.ngui.cc/images/no-images.jpg)
复习leetcode
460. LFU 缓存 31. 下一个排列 322. 零钱兑换 662. 二叉树最大宽度 43. 字符串相乘...
![](https://www.ngui.cc/images/no-images.jpg)
从聚类(Clustering)到异常检测(Anomaly Detection):常用无监督学习方法的优缺点
一、引言 无监督学习是机器学习的一种重要方法,与有监督学习不同,它使用未标记的数据进行训练和模式发现。无监督学习在数据分析中扮演着重要的角色,能够从数据中发现隐藏的模式、结构和关联关系,为问题解决和决策提供有益的信息。…...
![](https://www.ngui.cc/images/no-images.jpg)
git仓库提交流程
拉取最新代码 cd dev-ops git拉取最新master代码: git checkout master git pull git checkout wangdachu_dev git merge master :wq 1、切换到文件的本地目录 cd ~/Desktop/aldaba-ops 2、修改用户名和邮箱 git config --global user.email "xxxxxxxxxx.…...
![](https://img-blog.csdnimg.cn/db927e49636540488bf39c1e9e008c0f.png)
层叠上下文、层叠顺序
原文合集地址如下,有需要的朋友可以关注 本文地址 什么是层叠上下文 层叠上下文(Stacking Context)是指在 HTML 和 CSS 中,用于控制和管理元素层叠顺序以及呈现的一种机制。在一个网页中,许多元素(例如文…...
![](https://www.ngui.cc/images/no-images.jpg)
postgres开发目录
目录 推荐 0.00001 Bruce的博客 0.00002 官方社区博客 0.00003 德哥的培训资料 0.00004 官方开发指南 0.00005 官方网站 0.00006 官方中国网站 0.00007 官方Wiki 0.00008 postgresql代码树 0.00009 gitee-学习资料1 0.00010 gitee-源码 安装与编译 1.00001git源码clone后进…...
![](https://img-blog.csdnimg.cn/img_convert/2867505c01686fb19b61e80390dfaa9d.png)
计算机视觉入门 6) 数据集增强(Data Augmentation)
系列文章目录 计算机视觉入门 1)卷积分类器计算机视觉入门 2)卷积和ReLU计算机视觉入门 3)最大池化计算机视觉入门 4)滑动窗口计算机视觉入门 5)自定义卷积网络计算机视觉入门 6) 数据集增强(D…...
![](https://img-blog.csdnimg.cn/64f5703877a6432ba32d66fb1307c167.png)
Python分享之redis(2)
Hash 操作 redis中的Hash 在内存中类似于一个name对应一个dic来存储 hset(name, key, value) #name对应的hash中设置一个键值对(不存在,则创建,否则,修改) r.hset("dic_name","a1","aa&quo…...
![](https://www.ngui.cc/images/no-images.jpg)
springboot aop方式实现敏感数据自动加解密
一、前言 在实际项目开发中,可能会涉及到一些敏感信息,那么我们就需要对这些敏感信息进行加密处理, 也就是脱敏,比如像手机号、身份证号等信息。如果我们只是在接口返回后再去做替换处理,则代码会显得非常冗余…...
![](https://img-blog.csdnimg.cn/6cc8e9b2601044958688ddf6324d5411.png)
RabbitMQ---work消息模型
1、work消息模型 工作队列或者竞争消费者模式 在第一篇教程中,我们编写了一个程序,从一个命名队列中发送并接受消息。在这里,我们将创建一个工作队列,在多个工作者之间分配耗时任务。 工作队列,又称任务队列。主要思…...
![](https://img-blog.csdnimg.cn/c147cf6e83d942e1b25f57ac960e5db9.png)
GitRedisNginx合集
目录 文件传下载 Git常用命令 Git工作区中文件的状态 远程仓库操作 分支操作 标签操作 idea中使用git 设置git.exe路径 操作步骤 linux配置jdk 安装tomcat 查看是否启动成功 查看tomcat进程 防火墙操作 开放指定端口并立即生效 安装mysql 修改mysql密码 安装lrzsz软…...
![](https://img-blog.csdnimg.cn/f9e6fe13fda9445e861a95aa7cc37727.png)
系统架构设计师之缓存技术:Redis与Memcache能力比较
系统架构设计师之缓存技术:Redis与Memcache能力比较...
![](https://img-blog.csdnimg.cn/e4a623cdda0e4e45a409d6f1fa7044d6.png)
02.sqlite3学习——嵌入式数据库的基本要求和SQLite3的安装
目录 嵌入式数据库的基本要求和SQLite3的安装 嵌入式数据库的基本要求 常见嵌入式数据库 sqlite3简介 SQLite3编程接口模型 ubuntu 22.04下的SQLite安装 嵌入式数据库的基本要求和SQLite3的安装 嵌入式数据库的基本要求 常见嵌入式数据库 sqlite3简介 SQLite3编程接口模…...
![](https://img-blog.csdnimg.cn/9f2a9fb7fe104716999befd19e10a7eb.jpeg)
AIGC ChatGPT 按年份进行动态选择的动态图表
动态可视化分析的好处与优势: 1. 提高信息理解性:可视化分析使得大量复杂的数据变得易于理解,通过图表、颜色、形状、尺寸等方式,能够直观地表现不同的数据关系和模式。 2. 加快决策速度:数据可视化可以帮助用户更快…...
![](https://img-blog.csdnimg.cn/3902fc0e6887439d9a7c19f0555a035c.webp)
分布式—雪花算法生成ID
一、简介 1、雪花算法的组成: 由64个Bit(比特)位组成的long类型的数字 0 | 0000000000 0000000000 0000000000 000000000 | 00000 | 00000 | 000000000000 1个bit:符号位,始终为0。 41个bit:时间戳,精确到毫秒级别&a…...
![](https://img-blog.csdnimg.cn/img_convert/e79f6e613e905077a3eb4eeb68a6e596.jpeg)
Python语言实现React框架
迷途小书童的 Note 读完需要 6分钟 速读仅需 2 分钟 1 reactpy 介绍 reactpy 是一个用 Python 语言实现的 ReactJS 框架。它可以让我们使用 Python 的方式来编写 React 的组件,构建用户界面。 reactpy 的目标是想要将 React 的优秀特性带入 Python 领域,…...
![](https://img-blog.csdnimg.cn/e1695c70261c4c809cde4bd3c078f878.png)
Netty入门学习和技术实践
Netty入门学习和技术实践 Netty1.Netty简介2.IO模型3.Netty框架介绍4. Netty实战项目学习5. Netty实际应用场景6.扩展 Netty 1.Netty简介 Netty是由JBOSS提供的一个java开源框架,现为 Github上的独立项目。Netty提供异步的、事件驱动的网络应用程序框架和工具&…...
![](https://img-blog.csdnimg.cn/img_convert/66964dafe4e5329126e7aa074a7976ad.jpeg)
MySQL详细安装与配置
免安装版的Mysql MySQL关是一种关系数据库管理系统,所使用的 SQL 语言是用于访问数据库的最常用的 标准化语言,其特点为体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,在 Web 应用方面 MySQL 是最好的 RDBMS(Relation…...
![](https://img-blog.csdnimg.cn/c02484afee5145f7a7a475914aa0d901.png)
裸露土堆识别算法
裸露土堆识别算法首先利用图像处理技术,提取出图像中的土堆区域。裸露土堆识别算法首通过计算土堆中被绿色防尘网覆盖的比例,判断土堆是否裸露。若超过40%的土堆没有被绿色防尘网覆盖,则视为裸露土堆。当我们谈起计算机视觉时,首先…...
![](https://www.ngui.cc/images/no-images.jpg)
说说你对Redux的理解?其工作原理?
文章目录 redux?工作原理如何使用后言 redux? React是用于构建用户界面的,帮助我们解决渲染DOM的过程 而在整个应用中会存在很多个组件,每个组件的state是由自身进行管理,包括组件定义自身的state、组件之间的通信通…...
![](https://www.ngui.cc/images/no-images.jpg)
《基于 Vue 组件库 的 Webpack5 配置》7.路径别名 resolve.alias 和 性能 performance
路径别名 resolve.alias const path require(path);module.exports {resolve: {alias: {"": path.resolve(__dirname, "./src/"),"assets": path.resolve(__dirname, "./src/assets/"),"mixins": path.resolve(__dirname,…...
![](https://img-blog.csdnimg.cn/2336ca295add42cc89c62e928fd0d493.png)
基于PaddleOCR2.7.0发布WebRest服务测试案例
基于PaddleOCR2.7.0发布WebRest服务测试案例 #WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. #警告:这是一个开发服务器。不要在生产部署中使用它。请改用生产WSGI服务器。 输出结果…...
![](https://www.ngui.cc/images/no-images.jpg)
Solidity 合约安全,常见漏洞 (下篇)
Solidity 合约安全,常见漏洞 (下篇) Solidity 合约安全,常见漏洞 (上篇) 不安全的随机数 目前不可能用区块链上的单一交易安全地产生随机数。区块链需要是完全确定的,否则分布式节点将无法达…...
![](https://www.ngui.cc/images/no-images.jpg)
nodejs根据pdf模板填入中文数据并生成新的pdf文件
导入pdf-lib库和fontkit npm install pdf-lib fs npm install pdf-lib/fontkit 具体代码 const { PDFDocument, StandardFonts } require(pdf-lib); const fs require(fs); const fontkit require(pdf-lib/fontkit) let pdfDoc let font async function fillPdfForm(temp…...
![](https://img-blog.csdnimg.cn/3637f2aac29243a2bbe205f847960eee.png#pic_center)
UE4与pycharm联合仿真的调试问题及一些仿真经验
文章目录 ue4与pycharm联合仿真的调试问题前言ue4端的debug过程pycharm端 一些仿真经验小结 ue4与pycharm联合仿真的调试问题 前言 因为在实验中我需要用到py代码输出控制信息给到ue4中,并且希望看到py端和ue端分别在运行过程中的输出以及debug调试。所以…...
![](https://img-blog.csdnimg.cn/e93dd6cce4a64f8797430f56db2af2db.png)
【数据分析】波士顿矩阵
波士顿矩阵是一种用于分析市场定位和企业发展战略的管理工具。由美国波士顿咨询集团(Boston Consulting Group)于1970年提出,并以该集团命名。 波士顿矩阵主要基于产品生命周期和市场份额两个维度,将企业的产品或业务分为四个象限…...
![](/images/no-images.jpg)
环保网站建设多少钱/轻松seo优化排名 快排
SC命令,与“服务控制器”和已安装设备进行通讯。SC.exe 检索和设置有关服务的控制信息。可以使用 SC.exe 来测试和调试服务程序。可以设置存储在注册表中的服务属性,以控制如何在启动时启动服务应用程序,以及如何将其作为后台程序运行。SC.ex…...
![](/images/no-images.jpg)
做年报的网站怎么登不上去了/如何创建个人网站免费
保存不存在的文件时的问题文件权限,最初创建为新文件.现在,一切顺利,保存的文件似乎具有模式644.为了使文件保存为模式777,我必须在此处更改什么?万分感谢任何提示,线索或答案.我认为与此相关的代码包括:/* write to file */self::writeFileContent($pat…...
![](/images/no-images.jpg)
网站建设及规划方案/百度浏览器网页
亲密---我感觉,可以用和人和事处的时间长短,并用心 难?不去做? 前作业: 1.什么是微服务 将整个项目,按照功能拆分,拆分后能够更容易地部署,扩展,没有技术壁垒 2.微服务用什么优势,go或者py去做,怎么实现 …...
![](/images/no-images.jpg)
wordpress增加访问速度/网站排名
搬寝室 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 20642 Accepted Submission(s): 7013 Problem Description 搬寝室是非常累的,xhd深有体会.时间追述2006年7月9号,那天xhd迫于无奈要从27号楼搬到3号楼,…...
![](/images/no-images.jpg)
网站改版新闻/国家职业技能培训平台
QString 类是 Qt 中用于表示字符串的类,实现在 QtCore 共享库中。QString 类在实现上有以下特征。 1)字符串采用 Unicode 内部编码,可以表示世界上大多数语言的文字。 2)字符串的存储有引用计数,当一个 QString 对象被…...
![](https://img-blog.csdnimg.cn/20210424175440517.png)
班级网站中个人简介怎么做/电脑培训
PROXMOX6.3.6 更改机器名称 参考链接 https://www.baidu.com/link?urlljbh9wHn6YRho6nxxBdbydXNZ3vDERHVZF98SqkDNxJagu4NCtTfvnz5NilOiqqs-peS57O0v5z1t7r2-Zy2dhGQ7D5oIilOM6guFO9uTIa&wd&eqida61791420001d917000000066083e127 参考这个链接准备不停机修改主机名…...