gpt4 book ai didi

mysql - neo4j 或 neo4j+mysql 部分图数据集

转载 作者:行者123 更新时间:2023-11-29 00:24:59 49 4
gpt4 key购买 nike

尽管我在这里阅读了另一个建议不要同时使用 neo4j 和 mysql 的问题(neo4j - graph database along with a relational database?),但我想知道哪种方法最适合具有一些数据的数据集,这些数据可以像图形一样建模,其余的看起来关系的。由于某些原因,我无法发布我正在使用的数据类型。

我可以将关系部分硬塞进 neo4j,但它看起来又丑又复杂,这是我想避免的事情。

另一方面,如果我同时使用两者,我将不得不进行双倍的查询来获得结果,从而降低性能(假设数据库在不同机器上的云中)。

我不能单独使用 mysql,因为其中一个查询需要大约 20-30 的深度,我认为 mysql 无法处理。

你们有遇到过这样的情况吗?如果是,您是如何解决的?

最佳答案

正如其他人所说:“让我们更好地了解您要建模的数据,以便我们最好地给您建议”。

话虽这么说,处理 2 个数据库不是问题,而且比人们想象的更常见:通常您使用全文存储进行搜索,然后取回文档 ID 列表,然后点击关系用于附加元数据的数据库。或者点击 Redis 获取 ID 列表,您还可以点击关系数据库获取更多数据。

我验证了一个 Neo4j+MySQL 系统,用于基于你的社交网络进行有针对性的搜索(“显示我的网络推荐的所有餐厅,按深度排序(例如,第一级 friend 推荐的权重高于第二级,并且等等),并没有感到尴尬。但我也没有按比例考虑。

您将不得不保持两个数据存储同步。因此,在我的情况下,当用户在网络应用程序上推荐一个位置(将其插入 MySQL)时,您需要转身并在 Neo 中执行相同的插入操作。您可能还想异步执行此操作,因此您需要设置一个带有工作线程的消息队列。

关于mysql - neo4j 或 neo4j+mysql 部分图数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19368439/

49 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com