Commit 5f503c15 by Barbara Eckman Committed by Madhan Neethiraj

ATLAS-2709: added model for RDBMS types

parent 76a20170
{
"enumDefs": [],
"structDefs": [],
"classificationDefs": [],
"entityDefs": [
{
"name": "rdbms_instance",
"description": "Instance that the rdbms server is running on",
"superTypes": ["DataSet", "Asset"],
"typeVersion": "1.0",
"attributeDefs": [
{
"name": "rdbms_type",
"typeName": "string",
"isOptional": false,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": true
},
{
"name": "platform",
"typeName": "string",
"isOptional": false,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": true
},
{
"name": "cloudOrOnPrem",
"typeName": "string",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "hostname",
"typeName": "string",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "port",
"typeName": "int",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "protocol",
"typeName": "string",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "contact_info",
"typeName": "string",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "comment",
"typeName": "string",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "databases",
"typeName": "array<rdbms_db>",
"isOptional": true,
"cardinality": "SET",
"isUnique": false,
"isIndexable": false,
"constraints": [
{
"type": "ownedRef"
}
]
}
]
},
{
"name": "rdbms_db",
"description": "a database (schema) in an rdbms",
"superTypes": ["DataSet", "Asset"],
"typeVersion": "1.0",
"attributeDefs": [
{
"name": "prodOrOther",
"typeName": "string",
"isOptional": false,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": true
},
{
"name": "instance",
"typeName": "rdbms_instance",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false,
"constraints": [
{
"type": "inverseRef",
"params": {
"attribute": "databases"
}
}
]
},
{
"name": "contact_info",
"typeName": "string",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "tables",
"typeName": "array<rdbms_table>",
"isOptional": true,
"cardinality": "SET",
"isUnique": false,
"isIndexable": false,
"constraints": [
{
"type": "ownedRef"
}
]
}
]
},
{
"name": "rdbms_table",
"description": "a table in an rdbms database (schema)",
"superTypes": ["DataSet", "Asset"],
"typeVersion": "1.0",
"attributeDefs": [
{
"name": "db",
"typeName": "rdbms_db",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false,
"constraints": [
{
"type": "inverseRef",
"params": {
"attribute": "tables"
}
}
]
},
{
"name": "name_path",
"typeName": "string",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "createTime",
"typeName": "date",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "comment",
"typeName": "string",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "type",
"typeName": "string",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "contact_info",
"typeName": "string",
"isOptional": true,
"cardinality": "SINGLE",
"valuesMinCount": 1,
"valuesMaxCount": 1,
"isUnique": false,
"isIndexable": false
},
{
"name": "columns",
"typeName": "array<rdbms_column>",
"isOptional": true,
"cardinality": "SET",
"isUnique": false,
"isIndexable": false,
"constraints": [
{
"type": "ownedRef"
}
]
},
{
"name": "indexes",
"typeName": "array<rdbms_index>",
"isOptional": true,
"cardinality": "SET",
"isUnique": false,
"isIndexable": false,
"constraints": [
{
"type": "ownedRef"
}
]
},
{
"name": "foreign_keys",
"typeName": "array<rdbms_foreign_key>",
"isOptional": true,
"cardinality": "SET",
"isUnique": false,
"isIndexable": false,
"constraints": [
{
"type": "ownedRef"
}
]
}
]
},
{
"name": "rdbms_column",
"description": "a column in an rdbms table",
"superTypes": ["DataSet", "Asset"],
"typeVersion": "1.0",
"attributeDefs": [
{
"name": "data_type",
"typeName": "string",
"isOptional": false,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": true
},
{
"name": "length",
"typeName": "int",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "default_value",
"typeName": "string",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "comment",
"typeName": "string",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "table",
"typeName": "rdbms_table",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false,
"constraints": [
{
"type": "inverseRef",
"params": {
"attribute": "columns"
}
}
]
},
{
"name": "isNullable",
"typeName": "boolean",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "isPrimaryKey",
"typeName": "boolean",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
}
]
},
{
"name": "rdbms_index",
"description": "An index on an RDBMS table",
"superTypes": ["DataSet", "Asset"],
"typeVersion": "1.0",
"attributeDefs": [
{
"name": "table",
"typeName": "rdbms_table",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false,
"constraints": [
{
"type": "inverseRef",
"params": {
"attribute": "indexes"
}
}
]
},
{
"name": "index_type",
"typeName": "string",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "isUnique",
"typeName": "boolean",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "columns",
"typeName": "array<rdbms_column>",
"isOptional": true,
"cardinality": "SET",
"isUnique": false,
"isIndexable": false
},
{
"name": "comment",
"typeName": "string",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
}
]
},
{
"name": "rdbms_foreign_key",
"description": null,
"superTypes": ["DataSet", "Asset"],
"typeVersion": "1.0",
"attributeDefs": [
{
"name": "table",
"typeName": "rdbms_table",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "key_columns",
"typeName": "array<rdbms_column>",
"isOptional": true,
"cardinality": "SET",
"isUnique": false,
"isIndexable": false
},
{
"name": "references_table",
"typeName": "rdbms_table",
"isOptional": true,
"cardinality": "SINGLE",
"isUnique": false,
"isIndexable": false
},
{
"name": "references_columns",
"typeName": "array<rdbms_column>",
"isOptional": true,
"cardinality": "SET",
"isUnique": false,
"isIndexable": false
}
]
}
],
"relationshipDefs": [
{
"name": "rdbms_instance_databases",
"typeVersion": "1.0",
"relationshipCategory": "AGGREGATION",
"endDef1": {
"type": "rdbms_instance",
"name": "databases",
"isContainer": true,
"cardinality": "SET",
"isLegacyAttribute": true
},
"endDef2": {
"type": "rdbms_db",
"name": "instance",
"isContainer": false,
"cardinality": "SINGLE",
"isLegacyAttribute": true
},
"propagateTags": "NONE"
},
{
"name": "rdbms_db_tables",
"typeVersion": "1.0",
"relationshipCategory": "AGGREGATION",
"endDef1": {
"type": "rdbms_db",
"name": "tables",
"isContainer": true,
"cardinality": "SET",
"isLegacyAttribute": true
},
"endDef2": {
"type": "rdbms_table",
"name": "db",
"isContainer": false,
"cardinality": "SINGLE",
"isLegacyAttribute": true
},
"propagateTags": "NONE"
},
{
"name": "rdbms_table_columns",
"typeVersion": "1.0",
"relationshipCategory": "AGGREGATION",
"endDef1": {
"type": "rdbms_table",
"name": "columns",
"isContainer": true,
"cardinality": "SET",
"isLegacyAttribute": true
},
"endDef2": {
"type": "rdbms_column",
"name": "table",
"isContainer": false,
"cardinality": "SINGLE",
"isLegacyAttribute": true
},
"propagateTags": "NONE"
},
{
"name": "rdbms_table_indexes",
"typeVersion": "1.0",
"relationshipCategory": "AGGREGATION",
"endDef1": {
"type": "rdbms_table",
"name": "indexes",
"isContainer": true,
"cardinality": "SET",
"isLegacyAttribute": true
},
"endDef2": {
"type": "rdbms_index",
"name": "table",
"isContainer": false,
"cardinality": "SINGLE",
"isLegacyAttribute": true
},
"propagateTags": "NONE"
},
{
"name": "rdbms_index_columns",
"typeVersion": "1.0",
"relationshipCategory": "ASSOCIATION",
"endDef1": {
"type": "rdbms_index",
"name": "columns",
"isContainer": false,
"cardinality": "SET",
"isLegacyAttribute": true
},
"endDef2": {
"type": "rdbms_column",
"name": "indexes",
"isContainer": false,
"cardinality": "SET",
"isLegacyAttribute": true
},
"propagateTags": "NONE"
},
{
"name": "rdbms_table_foreign_key",
"typeVersion": "1.0",
"relationshipCategory": "AGGREGATION",
"endDef1": {
"type": "rdbms_table",
"name": "foreign_keys",
"isContainer": true,
"cardinality": "SET",
"isLegacyAttribute": true
},
"endDef2": {
"type": "rdbms_foreign_key",
"name": "table",
"isContainer": false,
"cardinality": "SINGLE",
"isLegacyAttribute": true
},
"propagateTags": "NONE"
},
{
"name": "rdbms_foreign_key_key_columns",
"typeVersion": "1.0",
"relationshipCategory": "ASSOCIATION",
"endDef1": {
"type": "rdbms_foreign_key",
"name": "key_columns",
"isContainer": false,
"cardinality": "SET",
"isLegacyAttribute": true
},
"endDef2": {
"type": "rdbms_column",
"name": "key_column_references",
"isContainer": false,
"cardinality": "SET"
},
"propagateTags": "NONE"
},
{
"name": "rdbms_foreign_key_table_references",
"typeVersion": "1.0",
"relationshipCategory": "ASSOCIATION",
"endDef1": {
"type": "rdbms_foreign_key",
"name": "references_table",
"isContainer": false,
"cardinality": "SINGLE",
"isLegacyAttribute": true
},
"endDef2": {
"type": "rdbms_table",
"name": "foreign_key_references",
"isContainer": false,
"cardinality": "SET"
},
"propagateTags": "NONE"
},
{
"name": "rdbms_foreign_key_column_references",
"typeVersion": "1.0",
"relationshipCategory": "ASSOCIATION",
"endDef1": {
"type": "rdbms_foreign_key",
"name": "references_columns",
"isContainer": false,
"cardinality": "SET",
"isLegacyAttribute": true
},
"endDef2": {
"type": "rdbms_column",
"name": "foreign_key_references",
"isContainer": false,
"cardinality": "SET"
},
"propagateTags": "NONE"
}
]
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment