我有两个JSON文档如下:
[
{
"ProductID": 12,
"ProductName": "Product 1",
"CountryID": 55,
"CountryName": "Country 1",
"Companies": [{
"CompanyID": 1,
"CompanyName": "Company 1"
}, {
"CompanyID": 2,
"CompanyName": "Company 2"
}
]
},
{
"ProductID": 13,
"ProductName": "Product 2",
"CountryID": 55,
"CountryName": "Country 1",
"Companies": [{
"CompanyID": 1,
"CompanyName": "Company 1"
}, {
"CompanyID": 2,
"CompanyName": "Company 2"
}
]
}
]
这应该是KTable,而不是KStream,因为有些记录会被删除。
键是(ProductID, CountryID)
。
我想转移这些数据,并以这种方式将(CompanyID)
作为键与数组中的每个(ProductID, CountryID)
组合一起使用:
[
{
"CompanyID": 1,
"CompanyName": "Company 1",
"ProductsCountries": [{
"ProductID": 12,
"CountryID": 55
}, {
"ProductID": 13,
"CountryID": 55
}
]
},
{
"CompanyID": 2,
"CompanyName": "Company 2",
"ProductsCountries": [{
"ProductID": 12,
"CountryID": 55
}, {
"ProductID": 13,
"CountryID": 55
}
]
}
]
只要我的KTable中的(ProductID, CountryID)
组合消失,我就想将其从(CompanyID)
所拥有的数组中删除。
使用KStream似乎是半可能的,因为我可以将它平面映射并在我的文档中添加新的(ProductID, CountryID)
组合,但是我无法捕获删除。
有没有办法用KTable做到这一点?