【发布时间】:2023-03-09 14:57:01
【问题描述】:
我正在使用 Neo4J 以图形格式保存 XSD。图中的每个节点都有一个属性,它是字符串的列表(数组)。 我的查询将基于这个数组列表。
例如:为了简单起见,假设图中的每个节点都将具有字母列表作为属性之一。现在我的查询需要在数组列表中产生所有包含“C”的节点。
我的问题是,我是否应该将属性数组列表中的所有字母移动到作为子节点附加到每个节点的单个节点。如果我这样做,我的查询将更改为产生其子节点包含“C”作为其值的所有节点。
以上两种方法哪一种更有效。将属性作为 arraylist 或具有包含 arraylist 的各个值的单独子节点。
在实际场景中,该数组列表可以包含数千个条目。因此,如果我继续使用第二种方法并为每个 arraylist 值创建单独的节点,树的大小将会膨胀。
但我需要知道这两种方法中的 READ 有效方法。
【问题讨论】:
-
你能解释一下“字母”是什么意思吗?它是一串字符吗?还是只是一个字符(来自英文字母表)?插图或更多细节会有所帮助。
-
是的,我已经看过上面的链接了。但我仍然想探索我的选择。
-
我在上面的例子中使用了字母来保持简单。但在实际用例中,它将是字符串数组。
-
只是为了总结我的问题,对于搜索/读取查询,拥有不同的节点而不是将属性作为 arraylist 是否很好。哪种方法可以有效地获取我的结果。
标签: graph neo4j graph-databases nosql