gpt4 book ai didi

java - 自定义持久树状数据结构的(相当)特定设计

转载 作者:行者123 更新时间:2023-11-30 00:58:12 27 4
gpt4 key购买 nike

首先,设计:我需要某种树,其中每个节点可以有任意数量的子节点。每个节点携带一个有效负载。节点的总负载是特定节点的负载+其所有祖先直到根节点的负载。

预期在树上执行的操作有:插入、更新、删除(相当频繁)、将子树合并到树中(不太频繁)。还有一个更改子树在树中位置的操作,从而重新计算该节点及其所有后代的有效负载。

具体的实现可以是任何东西,从普通的持久映射到专门设计的 MySQL 模式(也考虑了 NoSQL 解决方案)。首选语言(或绑定(bind)的存在)是 Java,但如果您能给我有关正确数据结构的建议,那就太好了。

问题是 - 对于我的情况,最合适的解决方案是什么?

最佳答案

关系数据库不太适合分层数据。他们可以做到,但是除了最基本的事情之外的任何事情的查询往往非常复杂。

对于NoSQL,我可以推荐Apache Jackrabbit - 它是一个用Java为Java编写的持久数据存储,专门为分层数据设计。它支持事务、安全性以及 XPath 样式和 SQL 样式查询。

关于java - 自定义持久树状数据结构的(相当)特定设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20382012/

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