yuqi1129 opened a new issue, #14238:
URL: https://github.com/apache/gravitino/issues/14238
### Describe the feature
Add a design doc for a business glossary in Gravitino. A glossary term has a
name, definition, synonyms, owner, domains, documentation links, relations to
other terms, and bindings to the assets and metrics that implement it.
### Motivation
Gravitino can describe where data lives, and which business area it belongs
to (Domain, #13864). It cannot describe what a business word such as "Active
Customer" or "Churn" means. As a result:
- Agents guess which table or metric a word refers to.
- Teams define the same word differently, with no owner and no review.
- Nothing links a definition to the data behind it.
### Describe the solution
- **Organization**: there is no glossary container. Terms live under the
metalake and are organized by Domain and by a broader/narrower hierarchy
(multi-parent, cross-domain, acyclic), plus a symmetric related relation.
- **Domain membership**: a term belongs to domains through an explicit
relation, not through tags, because domain membership decides who can manage
the term.
- **Privileges**: `VIEW_DEFINITION`, `CREATE_DEFINITION` and
`MANAGE_DEFINITIONS`, grantable on the metalake or a domain, with deny over
allow and no self-approval.
- **Lifecycle**: `DRAFT` → `APPROVED` → `DEPRECATED`, set through the API,
with a readable history of versions. There is no approval workflow in OSS.
- **Asset bindings**: explicit term → asset or metric bindings that never
grant access to data.
- **APIs**:
- REST endpoints, Java/Python clients and CSV import/export;
- a business-term resolve API (exact, case-insensitive match on names and
synonyms);
- read-only MCP tools for agents that return approved terms only.
### Additional context
Related: Domain design #13866 / #13867.
--
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]