写点什么

Amazon 在 AWS DynamoDB 中添加了对过期时间(TTL)特性的支持

  • 2017-03-20
  • 本文字数:1106 字

    阅读完需:约 4 分钟

Amazon 近期在一个博客帖子中宣布其 NoSQL 数据库 DynamoDB 服务做了改进,添加了 DynamoDB 中存储数据的过期时间(TTL,Time To Live)特性。这一特性允许根据时间阈值删除那些价值与日俱减的数据,可降低企业数据存储的开销。

可扩展的无服务器数据库服务在广告、游戏、物联网以及对低延迟数据访问有需求的应用中具有广泛的用例。Lyft 就是 Amazon推销的一个用例,它通过迁移到 DynamoDB 实现了 GPS 数据的持久化,进而在驾驶位置跟踪系统(Ride Location Tracking System)中使用。

对于在应用中存在短期数据波涌的企业,一个挑战是如何处理数据滞留问题。例如,虽然 GPS 追踪数据在驾车当时是非常有用的,但是这些数据的价值与日俱减。对企业而言,长期存储这些数据会增加开销负担。

现在企业可以通过使用新的 TTL 特性设置一个时间阈值,数据一旦达到过期时限就会被自动删除。AWS 的首席布道师 Jeff Barr解释了 TTL 特性的工作机制:

该特性可以逐表启用。启用时只需为表项指定一个包含了过期时间的属性。一旦设置了属性并启用了 TTL 管理(这两个操作都可以通过一个 API 实现),DynamoDB 将会查找并删除过期的条目。这个过程是在后台自动执行的,并不会影响到表的读取和写入操作。

开发人员和管理员可以通过 AMS 管理平台(Management Console)设置 TTL 属性,属性值使用了 DynamoDB Number 格式,解释为 Unix 新纪元时间(Epoch Time)系统中的秒值。TTL 阈值可以从 AWS 的命令行接口(CLI,Command Line Interface)调用 update-time-to-live 命令更改,也可以在代码中调用 UpdateTimeToLive 函数更改。

图片来源: https://aws.amazon.com/blogs/aws/new-manage-dynamodb-items-using-time-to-live-ttl/

由于 TTL 而过期的表项可以被移动到冷存储(Cold Storage),或是使用 AWS Lamda 和 DynamoDB 触发器更新到其它的 DynamoDB 中。还可以使用 DynamoDB 流处理,或是直接删除掉。

在使用 DynamoDB TTL 时,其它应了解的考虑包括:

  • TTL 属性可以在新的表或已有的表上应用,但是不能用作 JSON 文档的元素,因为该属性必须是 DynaomoDB Number 类型。
  • 管理员能通过 AWS Identity and Access Management(IAM)管理对 TTL 属性的访问。
  • 使用 TTL 属性并不会降低数据服务的性能,因为扫描和删除是在后台执行的。
  • 使用 TTL 不需要支付额外的费用。客户只需为表项被删除前所占用的存储付费。
  • TTL 特性于 2017 年 2 月 27 日可用。

查看英文原文: Amazon Adds Time to Live (TTL) Support to AWS DynamoDB


感谢冬雨对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-03-20 19:002310
用户头像

发布了 227 篇内容, 共 81.3 次阅读, 收获喜欢 28 次。

关注

评论

发布
暂无评论
发现更多内容

Websocket集群解决方案

Jeremy Lai

websocket 集群 发布订阅模式

远程办公软件RayLink公有云版正式上线,专业连接限时免费至12月底!

RayLink远程工具

远程控制软件 远程办公软件 远控软件 远程桌面连接 RayLink

问:React的setState为什么是异步的?

beifeng1996

React

时延测评|免费又好用的低延时远程控制软件竟是它!

RayLink远程工具

远程控制软件 远程办公软件 远控软件 远程桌面连接 RayLink

假如面试官问你Babel的原理该怎么回答

loveX001

JavaScript

深度分析React源码中的合成事件

goClient1992

React

手写一个react,看透react运行机制

goClient1992

React

20道前端高频面试题(附答案)

loveX001

JavaScript

react高频面试题总结(附答案)

beifeng1996

React

深入React源码揭开渲染更新流程的面纱

goClient1992

React

算法题学习---合并k个已排序的链表

桑榆

算法题 11月月更

老生常谈React的diff算法原理-面试版

beifeng1996

React

前端开发面试题自测

loveX001

JavaScript

一天梳理完react面试高频知识点

beifeng1996

React

能不能手写Vue响应式?前端面试进阶

bb_xiaxia1998

Vue

vue面试如何准备,这几道面试题助力你拿到理想offer

bb_xiaxia1998

Vue

银行APP用户体验外滩峰会即将开启!四大亮点抢先看

易观分析

金融 银行 易观

【愚公系列】2022年11月 微信小程序-app.json配置属性之window

愚公搬代码

11月月更

2022 VDC应用与服务专场:帮助开发者实现增长共赢

极客天地

Windows下载安装Vue开发者工具(VueDevtools)

不觉心动

Vue 11月日更 11月月更

漫游Hadoop(一):NameNode公平队列

冰心的小屋

hadoop hdfs

没有什么比过时或不准确的文章更快的削弱你对产品的信心。

鸿蒙之旅

OpenHarmony

OceanBase获奖!蚂蚁集团第三次入选世界互联网领先科技成果

OceanBase 数据库

详解typora配置华为云图床

乌龟哥哥

11月月更

每日一题之请描述Vue组件渲染流程

bb_xiaxia1998

Vue

前端工程师的vue面试题笔记

bb_xiaxia1998

WiFi、蓝牙、NFC 哪家强?短距离无线通信技术对比分析

元器件秋姐

无线通信 元器件选型 元器件电商平台 元器件采购

2022 VDC安全隐私专场:提升用户产品安全体验,携手伙伴共建安全新生态

极客天地

远程控制软件如何像素级还原设计稿色彩?

RayLink远程工具

远程控制软件 远程办公软件 远控软件 远程桌面连接 RayLink

常用硬件接口知识

芯动大师

RS232、RS485 11月月更 硬件接口 VGA

2022-11-09:给定怪兽的血量为hp 第i回合如果用刀砍,怪兽在这回合会直接掉血,没有后续效果 第i回合如果用毒,怪兽在这回合不会掉血, 但是之后每回合都会掉血,并且所有中毒的后续效果会叠加 给

福大大架构师每日一题

算法 rust 福大大

Amazon在AWS DynamoDB中添加了对过期时间(TTL)特性的支持_数据库_Kent Weare_InfoQ精选文章