BennySobol commented on issue #2138:
URL: https://github.com/apache/age/issues/2138#issuecomment-2561681923
In my experience, this extension works exceptionally well for queries with a
well-defined path and consistent hops. It translates these queries into SQL
joins efficiently, making it a reliable choice in such scenarios.
However, indexing can be a challenge and is not well-documented. The
extension uses native GIN indexes for match (e.g., {} clauses), while B-tree
indexes are applied to standard WHERE operand. For example, merging operations
must use a GIN index, even if it seems unnecessary in your specific case.
For less structured queries — such as finding all leaves of a given root —
the extension shines compared to manually writing SQL joins. It performs
operations directly in the database by loading nodes, sorting them, and
applying graph algorithms to find paths. These operations benefit significantly
from in-memory processing, as disk-based operations are inherently slower.
However, performance can degrade exponentially when traversing large, dense
graphs. If your data involves a tree with many dense nodes and long traversal
paths, performance may become a bottleneck.
Additionally, the extension supports Cypher queries, a query language
optimized for graph operations. Its syntax is specifically designed for graph
traversal and analysis, offering a more efficient and intuitive approach
compared to traditional SQL.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]