elasticsearch sql连接查询

p4rjhz4m  于 2021-06-13  发布在  ElasticSearch
关注(0)|答案(0)|浏览(213)

我正在使用ElasticSearch,我需要创建一个高级查询。我正在开发的应用程序的一部分允许企业向目标受众(“关注者”、“客户”、“关注者或客户”、“公众”)创建报价。这些类别必须确定报价的对象。问题是我已经规范化了数据,也就是说,分离了。一个索引包含客户端的文档,另一个索引包含用户(关注者)之间的关系,最后一个索引包含新的报价。
由于在elasticsearch中不允许使用join sql查询,因此我无法继续构造数据,以便执行上述查询。目标是:
如果目标受众是“public”:出现在距离业务10公里的用户、关注业务概要的用户或已经是业务客户的用户面前。
如果目标受众是“追随者”:只出现在关注业务概要而不是客户的用户面前。
如果目标受众是“客户”:只出现在业务客户的用户面前。
如果目标受众是“follower or clients”:只出现在关注业务概要的用户和已经成为客户的用户面前。
文档模型:

Relationship
{
  followerId: String
  followedId: String
}

Customer
{
  businessId: String
  userId: String
  etc...
}
Offer
{
  id: String
  businessId: String
  target: "Followers" | "Customers" | "Followers or Customers" | "Public"
  location: Coordinates
  etc...
}

编辑:值得一提的是,我正在使用amazon技术和dynamodb作为数据库,也许类似问题的一些解决方案可以用这种结构的工具来解决,例如lambda。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题