Graph Insights
Once your catalog is a graph, graph algorithms become available to it. OpenMetadata exposes a set of them under/api/v1/rdf/insights — the kind of analysis that is trivial on a graph and painful on tables.
All insight endpoints are admin-only and require RDF to be enabled.
Importance
- Usage percentile — real query activity from OpenMetadata’s usage data (weight 0.6).
- Downstream lineage edge count — graph topology (weight 0.4).
entityType (required, singular — table, dashboard, pipeline, mlmodel, …), window (daily, weekly, monthly; default daily), limit (1–100, default 20). Results are SPARQL JSON with usage percentile, downstream count, and the composite score.
Centrality (PageRank)
om:insights/centrality/{entityType}. Importance ranking blends these scores in for entities that have no query-usage data.
Expensive by design — intended to run on a schedule, exposed for manual triggering.
Communities (Louvain)
om:insights/communities/{graphType}/{entityType}. Each community is an om:Community resource with om:hasMember triples and a modularity score.
graphType is lineage (default) or tagCoOccurrence.
Communities surface the de facto structure of your platform — clusters of assets that move together — which is often not the structure your org chart or your domain model claims. Comparing the discovered partition against your declared domains is one of the more useful audits available.
Shortest Lineage Path
prov:wasDerivedFrom, om:upstream, om:downstream) returning the shortest path between two entity URIs.
Each hop returns the URI, the predicate that connected it, and the entity’s
om:* types. When no path exists within maxHops, the response says found: false rather than returning an empty list you have to interpret.
This is the endpoint behind “how does this dashboard actually get its numbers” — and the honest answer to an incident review.
Recommendations
limit is 1–50, default 10.
Note the weighting: shared lineage counts double a shared tag. Two tables that share a tag might merely both be PII; two tables that share an upstream are genuinely about the same thing.
This is a different notion of “similar” from semantic search, which compares embeddings of names and descriptions. Structural similarity finds assets that behave alike; semantic similarity finds assets that read alike. They disagree usefully.
Tag Analytics
Co-occurrence is a classification-hygiene tool: two tags that almost always appear together are usually one tag with a naming problem. Glossary reach identifies your genuinely cross-cutting concepts — the ones where a definition change is an organization-wide event rather than a team-local one.
Semantic Search over the Graph
SQL → SPARQL Translation
Linked Open Data
WithRDF_DEREFERENCEABLE_IRIS=true:
Next
Knowledge Graph API
The complete endpoint reference.
For AI Agents
Hand these capabilities to an assistant.