GMA uses rest.li, which is LinkedIn's open source REST framework. All metadata in GMA needs to be modelled using Pegasus schema (PDL) which is the data schema for rest.li.
Conceptually we’re modelling metadata as a hybrid graph of nodes (entities) and edges (relationships), with additional documents (metadata aspects) attached to each node. You can also think of it as a modified Entity-Relationship Model.
Here is an example graph consisting of 3 types of entities (User
, Group
, Dataset
), 3 types of relationships
(OwnedBy
, HasAdmin
, HasMember
), and 3 types of metadata aspects (Ownership
, Profile
, and Membership
).