[
{
"device_nm": "x1",
"type": "external",
"mtrc1": 100,
"mtrc2": 25,
"starttime": "2018-05-04 01:00:00",
"model": "t20"
},
{
"device_nm": "x1",
"type": "external",
"mtrc1": 5,
"mtrc2": 11,
"starttime": "2018-05-04 02:00:00",
"model": "t20"
},
{
"device_nm": "x1",
"type": "internal",
"mtrc1": 35,
"mtrc2": 15,
"starttime": "2018-05-04 01:00:00",
"model": "t40"
},
{
"device_nm": "x1",
"type": "internal",
"mtrc1": 53,
"mtrc2": 22,
"starttime": "2018-05-04 02:00:00",
"model": "t40"
}
]
Предполагая, что каждое сообщение Kafka содержит набор объектов JSON, он хотел использовать KStream / KTable для выполнения группирования по device_nm, type, truncate (starttime) и агрегата mtrc1, mtrc2. Вывод должен быть таким, как показано ниже:
[
{
"device_nm": "x1",
"type": "external",
"mtrc1": 105,
"mtrc2": 36,
"date": "2018-05-04",
"model": "t20"
},
{
"device_nm": "x1",
"type": "internal",
"mtrc1": 88,
"mtrc2": 37,
"date": "2018-05-04",
"model": "t40"
}
]
Как мы можем использовать совокупный API, сохраняя при этом все атрибуты?