Я подключил nodered к платформе Watson iot с использованием малины pi, теперь Watson расширяет базу данных Cloudant NOSQL, данные упорядочены случайным образом. Когда я отправляю getrequest из внешнего app данные случайны, как я получаю данные в порядке согласно timestamp?Как организовать данные в облачной базе данных NOSQL в соответствии с отметкой времени
0
A
ответ
1
Предполагая, что ваши документы содержат поле со значением временной метки, вы можете создать представление и запросить его (https://console.ng.bluemix.net/docs/services/Cloudant/api/creating_views.html#views-mapreduce-).
CouchDB/Cloudant возвращает результаты поиска, отсортированные по ключу, определенному в определении представления. Простой пример, предполагая, что все документы включают в себя поле с именем date_sent
, представляющий значение временной метки:
{
...
"date_sent": "2017-02-09T21:37:20.731Z",
...
}
Создать вид (заменить заполнители
$...
зачеркнуть)PUT https://$USERNAME:[email protected]$USERNAME.cloudant.com/$DATABASE/_design/$DD_NAME HTTP/1.1 { "views" : { "docs_sorted_by_date" : { "map" : "function(doc) { emit(doc.date_sent,1); }" } } }
Опросить вид
GET https://$USERNAME:[email protected]$USERNAME.cloudant.com/$DATABASE/_design/$DD_NAME/_view/docs_sorted_by_date HTTP/1.1
Спасибо, я в состоянии это сделать. –