Я установил атрибут TTL в моей таблице DynamoDB.когда я помещаю записи в записи, получаю текущую дату (используя js sdk в узле) и добавляю к ней значение (например, 5000).Насколько я понимаю, когда эта дата будет достигнута, aws очистит запись, но только в течение 48 часов.в течение этого времени запись может быть возвращена в результате запроса.Я хочу отфильтровать просроченные элементы, чтобы, если они истекли, но не были удалены, они не были возвращены как часть запроса.вот что я использую, чтобы попытаться сделать это:
var epoch = Math.floor(Date.now() / 1000);
console.log("ttl epoch is ", epoch);
var queryTTLParams = {
TableName : table,
KeyConditionExpression: "id = :idval",
ExpressionAttributeNames:{
"#theTTL": "TTL"
},
FilterExpression: "#theTTL < :ttl",
ExpressionAttributeValues: {
":idval": {S: "1234"},
":ttl": {S: epoch.toString()}
}
};
Я не получаю никаких результатов.Я полагаю, что проблема связана с атрибутом TTL, являющимся строкой, и я пытаюсь сделать <на нем.Но я не смог определиться с типом данных для поля TTL - AWS сделал это для меня.Как я могу исправить это? </p>