age icon indicating copy to clipboard operation
age copied to clipboard

does age introduce a unique on disk data structure that stores the graphs?

Open ghost opened this issue 3 years ago • 4 comments

Is there a distinct on disk data structure used to store the graphs or do we transpile cypther to sql then execute the sql against the relational table data structures?

ghost avatar Dec 10 '22 18:12 ghost

I think it is done using the Postgres relational tables. The ag_graph and ag_label is stored as a relation under ag_catalog scheme

demo=# \dt
           List of relations
   Schema   |   Name   | Type  | Owner 
------------+----------+-------+-------
 ag_catalog | ag_graph | table | imran
 ag_catalog | ag_label | table | imran
 public     | company  | table | imran
 public     | employee | table | imran
(4 rows)

As you can see that my new graph cypher is stored as schema. The id and properties data of the nodes is saved in the table name _ag_label_vertex.

working

So I think it will be like, first we parse the cypher function and then perform corresponding psql operations defined.

imranzaheer612 avatar Dec 11 '22 13:12 imranzaheer612

Thank you for the explanation, I'm weighing options to replace neo4j. Given that AGE uses typical relational tables, am I to assume that I can expect relational performance when executing deep graph queries?

ghost avatar Dec 11 '22 17:12 ghost

no. AGE has the ability to meet traditional queries where it is necessary and it can surpass relational queries when necessary . We need details to help you.

JoshInnis avatar Dec 12 '22 02:12 JoshInnis

@OpenCoderX Any updates on this issue?

eyab avatar Aug 24 '23 14:08 eyab