关于ArangoDB中两个独立图的映射与合并可行性的技术问询
在ArangoDB中链接/合并两个独立图的可行方案
肯定可以!在ArangoDB里链接或者合并两个独立的图完全可行,根据你的需求有几种简单的方法可以实现:
通过边集合建立跨图连接
ArangoDB的图本质是顶点集合和边集合组成的逻辑分组,你可以创建一个全新的边集合,用来连接两个原有图中的顶点。比如假设你有图A(包含顶点集合customers)和图B(包含顶点集合orders),你可以新建边集合customer_orders,然后插入类似这样的边文档:{ "_from": "customers/1001", "_to": "orders/2001", "relationship": "placed" }之后你可以选择把这个边集合添加到其中一个现有图里,或者直接创建一个全新的组合图,包含两个原有的顶点集合和这个新的边集合。
直接合并图的集合定义
如果两个图的顶点/边集合名称没有冲突,你可以直接创建一个新图,把两个原有的图的所有顶点集合和边集合都包含进来。比如原有的图1用了users和friendships集合,图2用了posts和likes集合,那么你可以创建一个新图,将这四个集合都纳入其中,这样就得到了一个包含所有节点和关系的合并图。
需要注意的细节:
- 如果两个图里有同名的集合,你得先处理冲突——要么重命名其中一个集合,要么确认这两个集合本来就是同一类数据,可以合并成一个集合。
- 不用操心顶点ID冲突的问题,因为ArangoDB的
_id是集合名/文档键的格式,不同集合的顶点_id天然是唯一的。
内容的提问来源于stack exchange,提问作者MHH
相关产品推荐
相关产品推荐

