Mic*_*ick 5 python key-value boto amazon-dynamodb
我正试图从redis迁移到dynamoDB,并且一切都工作得很好!我唯一还没想到的是密钥到期.目前,我的数据设置有一个主键,没有范围键,因此:
{
"key" => string,
"value" => ["string", "string"],
"timestamp" => seconds since epoch
}
Run Code Online (Sandbox Code Playgroud)
我想的是在数据库上扫描时间戳小于特定值的位置,然后显式删除它们.然而,这看起来非常低效,并且会无缘无故地耗尽一些荒谬的读/写单元!最重要的是,只有在我运行扫描时才会发生这种情况,因此可以想象它们可以构建.
那么,有没有人找到这个问题的好方法呢?
我也像我们以前使用Redis一样使用DynamoDB.
我的建议是将密钥写入不同的时间切片表.
例如,假设一种记录应该持续几分钟,最多不到一小时,那么你可以
这更容易维护并且更具成本效益.
你可以做懒惰的过期并根据要求删除它.
例如:
这就是几年前我查看源代码时memcached所做的事情.
您仍然需要扫描以删除所有旧条目.
您还可以考虑使用Elasticache,它用于缓存而不是永久数据存储.
| 归档时间: |
|
| 查看次数: |
5991 次 |
| 最近记录: |