I have graph DB structure as shown in image below.
As described, I have 3 document collection - Collection 1, Collection 2, Collection 3. I also have 2 Edge collections - Edge Collection 1 have an attribute type which can take two values T1 or T2, Edge Collection 2.
I have a list of documents which satisfy certain filter condition on collection 1 - All documents which have status attribute as completed. Let say the list comes as
l1 = [c1a, c1b, c1c]
Now, starting with each item in list as start, I need to find the collection c2 traversing along edge in Edge Coll 1 and that edge must be of type T1 for that item using edge in Edge Coll 1 and similarly collection item c3 traversing along edge in Edge Coll 2.
After getting both, I need to store it as triplet - {coll 2, coll 1, coll 3} for each coll 1 item found in list
I know I can filter for items in Edge Coll 1 with type == T1 and _from == coll 1._id.
Similarly, I can repeat for Edge Coll 2 and combine the both results in my backend (GoLang).
But, that would be slow and would be better if I am able to do using graph traversals and in single macro (similar to SQL macro). I will be needing only one backend call to DB then.
