假设我们有两张桌子
1)客户(CustID,名称)
2)购买(Cust_ID、Purchase_ID)
在(1)和(2)之间存在一对多(1:n)关系。
现在使用logstash,我想将这些数据从sql插入到elasticsearch中。问题是,如果我连接两个表,那么它将为单个客户插入多行/json记录。我希望插入如下数据。
{
Cust_ID : 101,
Purchase_ID : [ 1001, 2003, 20006]
}但它来的时候
{
Cust_ID : 101,
Purchase_ID : 1001
},
{
Cust_ID : 101,
Purchase_ID : 2003
}我发现链接https://www.elastic.co/guide/en/elasticsearch/reference/current/array.html很有用。但这并不能解决我的问题。
发布于 2019-02-21 01:24:12
SQL查询返回的每一行都将成为Elasticsearch中的文档。因此,更改查询以返回所需的行。您可能需要将purchaseIds连接到一个字段中,然后使用logstash的变分->拆分将它们转换为一个数组。
https://stackoverflow.com/questions/54788534
复制相似问题