0

我已将product类型数据加载到 Elasticsearch 中,其中包含catalogue_numbername. 我还将customer数据加载到 Elasticsearch 中,其中包含namepurchases(其中购买是产品编号数组)。

例如:

CATALOGUE_NUMBER, NAME
518, "Toilet Paper"
388, "Candy Bar"
263, "Carrots"

而且,对于客户:

NAME, PURCHASES
"Jack", [518, 388]
"John", [263]
"Bill", [263, 518]

考虑到这种关系是多对一的(即客户购买了许多商品),我是否可以使用 Kibana 查看将购买链接到特定客户的图表,或者这超出了范围吗?

我的最终目标是有一个图表显示每个客户购买的产品的顶点和边productcustomer我很困惑 Elasticsearch 是否有能力,或者我是否应该转移到纯图形数据库,如 Neo4J 和 Elasticsearch 仅用于搜索。

4

1 回答 1

0

如果这些连接共享一个共同的字段名称,则 Graph 功能可以绘制这些连接 - 节点的唯一标识是字段名称和术语。术语可以在不同的索引中,但只要它们共享一个共同的字段名称,它们就被视为同一个节点。我不确定您要解决哪个业务问题(建议?欺诈?),但根据您要实现的目标,您可能希望以不同的方式建模。如果您对推荐和购买 X 也购买 Y 风格的推荐感兴趣,那么这些人不太可能成为有趣的节点,您只需检查“购买”字段即可显着得出哪些产品同时发生。对于更详细的“取证”类型的应用程序,您可能只想拥有 person->product 链接而没有 product->

于 2017-08-14T09:24:21.197 回答