У меня есть датчики, отправляющие данные в таблицу DynamoDB каждые 4 секунды, и я хочу получить только последнее значение определенного датчика. Первичными ключами в таблице являются идентификатор датчика и отметка времени SysDt. Я указал индекс для использования идентификатора датчика в качестве ключа раздела и GWID (идентификатор шлюза) в качестве ключа сортировки. Я не могу получить только последние значения из таблицы.
Это мой сценарий:
AWS.config.update({
region: "us-west-2",
endpoint: 'https://dynamodb.us-west-2.amazonaws.com',
accessKeyId: "Fakeaccesskey",
secretAccessKey: "Fakesecretkey"
});
var docClient = new AWS.DynamoDB.DocumentClient();
function readItemtesttwovalues() {
var table = "TA_Log1";
var indexidgwid = "ID-GWID-index";
var ID = "BB00000013";
var GWID = "AA00000001";
var params = {
TableName: table,
IndexName: indexidgwid,
Key:{
"ID": ID,
"GWID": GWID
},
ScanIndexForward: false,
Limit: 1
};
docClient.query(params, function(err, data) {
if (err) {
document.getElementById('testtwostatus').innerHTML = "Unable to read item: " + "\n" + JSON.stringify(err, undefined, 2);
} else {
document.getElementById('testtwostatus').innerHTML = data.Item.Status;
document.getElementById('testtwotemp').innerHTML = data.Item.Temp;
document.getElementById('testtwotempmap').innerHTML = data.Item.Temp;
document.getElementById('testtwohum').innerHTML = data.Item.Hum;
document.getElementById('testtwohummap').innerHTML = data.Item.Hum;
document.getElementById('testtwobat').innerHTML = data.Item.BatV;
document.getElementById('testtwobatmap').innerHTML = data.Item.BatV;
var temp = Number(data.Item.Temp);
}
});
}
Я прочитал это, но я я не могу понять, как это сделать.
Я благодарю вас за вашу помощь.