-
Notifications
You must be signed in to change notification settings - Fork 17
Expand file tree
/
Copy pathreporting_schema_ports.html
More file actions
124 lines (113 loc) · 13.6 KB
/
reporting_schema_ports.html
File metadata and controls
124 lines (113 loc) · 13.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8"/>
<meta name="viewport" content="width=device-width,initial-scale=1"/>
<title>Schema Documentation – dwh_ports</title>
<style>
* { box-sizing: border-box; margin: 0; padding: 0; }
body {
font-family: 'Segoe UI', Arial, sans-serif;
font-size: 14px;
background: #f4f6f9;
color: #1a1a2e;
padding: 24px;
}
h1 { font-size: 2em; margin-bottom: 8px; color: #0d47a1; }
h2 { font-size: 1.5em; margin: 32px 0 10px; color: #1565c0; border-bottom: 2px solid #90caf9; padding-bottom: 4px; }
h3 { font-size: 1.1em; margin: 20px 0 6px; color: #263238; }
p { margin: 4px 0 8px; color: #555; }
a { color: #1565c0; text-decoration: none; }
a:hover { text-decoration: underline; }
/* TOC */
#toc { background: #fff; border: 1px solid #cfd8dc; border-radius: 6px; padding: 16px 24px; margin-bottom: 32px; max-width: 480px; }
#toc h2 { margin-top: 0; border: none; }
#toc ul { list-style: disc; padding-left: 20px; line-height: 1.8; }
/* Tables */
table {
width: 100%;
border-collapse: collapse;
margin-bottom: 24px;
background: #fff;
border-radius: 6px;
overflow: hidden;
box-shadow: 0 1px 4px rgba(0,0,0,.1);
}
th {
background: #1565c0;
color: #fff;
padding: 8px 12px;
text-align: left;
font-weight: 600;
font-size: 0.9em;
letter-spacing: .03em;
}
td { padding: 7px 12px; border-bottom: 1px solid #eceff1; vertical-align: top; }
tr:last-child td { border-bottom: none; }
tr:hover td { background: #e3f2fd; }
/* Badges */
.badge {
display: inline-block;
padding: 2px 7px;
border-radius: 12px;
font-size: 0.75em;
font-weight: 700;
letter-spacing: .04em;
margin-left: 4px;
vertical-align: middle;
}
.pk { background: #ffd54f; color: #5d4037; }
.fk { background: #a5d6a7; color: #1b5e20; }
.nn { background: #ef9a9a; color: #b71c1c; }
/* Relationship table */
.rel-table th { background: #37474f; }
/* Entity section */
.entity-section { margin-bottom: 40px; }
.entity-section h3 {
background: #e8eaf6;
padding: 8px 14px;
border-left: 4px solid #3949ab;
border-radius: 3px;
font-size: 1em;
}
/* Back-to-top */
.back { font-size: 0.8em; float: right; margin-top: -2px; color: #90a4ae; }
/* Fact-grouped relationships */
.fact-group { margin-bottom: 28px; }
.fact-heading {
background: #eceff1;
padding: 6px 12px;
border-left: 4px solid #37474f;
border-radius: 3px;
font-size: .95em;
margin-bottom: 0;
color: #263238;
}
.fact-heading a { color: #263238; }
.fact-group .rel-table { margin-top: 0; border-radius: 0 0 6px 6px; }
</style>
</head>
<body>
<h1>Schema Documentation</h1>
<p>Source: <code>dwh_ports</code> OData endpoint — Cloud Insights</p>
<p>Tables found: <strong>7</strong> | Associations: <strong>4</strong></p>
<div id="toc">
<h2>Table of Contents</h2>
<ul>
<li><a href="#relationships">Key Relationships</a></li>
<li><a href="#entity-cardinals">cardinals</a></li>
<li><a href="#entity-connected_device_dimension">connected_device_dimension</a></li>
<li><a href="#entity-date_dimension">date_dimension</a></li>
<li><a href="#entity-port_dimension">port_dimension</a></li>
<li><a href="#entity-ports_fact">ports_fact</a></li>
<li><a href="#entity-ports_fact_current">ports_fact_current</a></li>
<li><a href="#entity-switch_dimension">switch_dimension</a></li>
</ul>
</div>
<h2 id="relationships">Key Relationships Between Tables</h2>
<div class='fact-group'><h3 class='fact-heading'><a href='#entity-ports_fact'>ports_fact</a></h3><table class='rel-table'><thead><tr><th>Referenced (parent) table</th><th>FK column</th><th>Parent PK</th></tr></thead><tbody><tr><td><a href='#entity-connected_device_dimension'>connected_device_dimension</a></td><td>connectedDeviceTk</td><td>tk</td></tr><tr><td><a href='#entity-date_dimension'>date_dimension</a></td><td>dateTk</td><td>tk</td></tr><tr><td><a href='#entity-port_dimension'>port_dimension</a></td><td>portTk</td><td>tk</td></tr><tr><td><a href='#entity-switch_dimension'>switch_dimension</a></td><td>switchTk</td><td>tk</td></tr></tbody></table></div>
<h2>Tables & Fields</h2>
<p style='margin-bottom:16px'><span class="badge pk">PK</span> Primary Key <span class="badge fk">FK</span> Foreign Key <span class="badge nn">NOT NULL</span> Required field</p>
<div class="entity-section" id="entity-cardinals"><h3>cardinals<a class="back" href="#toc">↑ top</a></h3><p style='font-size:.8em;color:#78909c;'>Entity Set(s): <strong>cardinals</strong></p><table><thead><tr><th>Field</th><th>Type</th><th>Nullable</th></tr></thead><tbody><tr><td>digit</td><td>Int32</td><td>Yes</td></tr></tbody></table></div><div class="entity-section" id="entity-connected_device_dimension"><h3>connected_device_dimension<a class="back" href="#toc">↑ top</a></h3><p style='font-size:.8em;color:#78909c;'>Entity Set(s): <strong>connected_device_dimension</strong></p><table><thead><tr><th>Field</th><th>Type</th><th>Nullable</th></tr></thead><tbody><tr><td>tk<span class="badge pk">PK</span></td><td>Int32</td><td>Yes</td></tr><tr><td>name</td><td>String</td><td>Yes</td></tr><tr><td>manufacturer</td><td>String</td><td>Yes</td></tr><tr><td>model</td><td>String</td><td>Yes</td></tr><tr><td>type</td><td>String</td><td>Yes</td></tr><tr><td>firmware</td><td>String</td><td>Yes</td></tr><tr><td>id</td><td>Int32</td><td>Yes</td></tr><tr><td>latest</td><td>String</td><td>Yes</td></tr></tbody></table><h4 style='margin:12px 0 6px;color:#546e7a;'>Navigation Properties (Joins)</h4><table><thead><tr><th>Nav Property</th><th>Related Entity</th><th>Cardinality / Join</th></tr></thead><tbody><tr><td>ports_fact</td><td><a href='#entity-ports_fact'>ports_fact</a></td><td style='font-size:.85em'>many</td></tr></tbody></table></div><div class="entity-section" id="entity-date_dimension"><h3>date_dimension<a class="back" href="#toc">↑ top</a></h3><p style='font-size:.8em;color:#78909c;'>Entity Set(s): <strong>date_dimension</strong></p><table><thead><tr><th>Field</th><th>Type</th><th>Nullable</th></tr></thead><tbody><tr><td>tk</td><td>Int32</td><td>Yes</td></tr><tr><td>fullDate</td><td>DateTimeOffset</td><td>Yes</td></tr><tr><td>dayInMonth</td><td>Byte</td><td>Yes</td></tr><tr><td>dayInYear</td><td>Int32</td><td>Yes</td></tr><tr><td>dateYear</td><td>Int32</td><td>Yes</td></tr><tr><td>yearLabel</td><td>String</td><td>Yes</td></tr><tr><td>monthNum</td><td>Byte</td><td>Yes</td></tr><tr><td>monthLabel</td><td>String</td><td>Yes</td></tr><tr><td>dayInWeekNum</td><td>Byte</td><td>Yes</td></tr><tr><td>quarter</td><td>Byte</td><td>Yes</td></tr><tr><td>quarterLabel</td><td>String</td><td>Yes</td></tr><tr><td>dayInQuarter</td><td>Int32</td><td>Yes</td></tr><tr><td>repQuarter</td><td>Byte</td><td>Yes</td></tr><tr><td>repMonth</td><td>Byte</td><td>Yes</td></tr><tr><td>repWeek</td><td>Byte</td><td>Yes</td></tr><tr><td>repDay</td><td>Byte</td><td>Yes</td></tr><tr><td>repMonthOrLatest</td><td>Byte</td><td>Yes</td></tr><tr><td>sspFlag</td><td>Byte</td><td>Yes</td></tr><tr><td>latest</td><td>String</td><td>Yes</td></tr><tr><td>future</td><td>String</td><td>Yes</td></tr></tbody></table><h4 style='margin:12px 0 6px;color:#546e7a;'>Navigation Properties (Joins)</h4><table><thead><tr><th>Nav Property</th><th>Related Entity</th><th>Cardinality / Join</th></tr></thead><tbody><tr><td>ports_fact</td><td><a href='#entity-ports_fact'>ports_fact</a></td><td style='font-size:.85em'>many</td></tr></tbody></table></div><div class="entity-section" id="entity-port_dimension"><h3>port_dimension<a class="back" href="#toc">↑ top</a></h3><p style='font-size:.8em;color:#78909c;'>Entity Set(s): <strong>port_dimension</strong></p><table><thead><tr><th>Field</th><th>Type</th><th>Nullable</th></tr></thead><tbody><tr><td>tk</td><td>Int32</td><td>Yes</td></tr><tr><td>wwn</td><td>String</td><td>Yes</td></tr><tr><td>name</td><td>String</td><td>Yes</td></tr><tr><td>gbicType</td><td>String</td><td>Yes</td></tr><tr><td>type</td><td>String</td><td>Yes</td></tr><tr><td>speed</td><td>String</td><td>Yes</td></tr><tr><td>isGenerated</td><td>String</td><td>Yes</td></tr><tr><td>url</td><td>String</td><td>Yes</td></tr><tr><td>id</td><td>Int32</td><td>Yes</td></tr><tr><td>latest</td><td>String</td><td>Yes</td></tr><tr><td>dateTk</td><td>Int32</td><td>Yes</td></tr></tbody></table><h4 style='margin:12px 0 6px;color:#546e7a;'>Navigation Properties (Joins)</h4><table><thead><tr><th>Nav Property</th><th>Related Entity</th><th>Cardinality / Join</th></tr></thead><tbody><tr><td>ports_fact</td><td><a href='#entity-ports_fact'>ports_fact</a></td><td style='font-size:.85em'>many</td></tr></tbody></table></div><div class="entity-section" id="entity-ports_fact"><h3>ports_fact<a class="back" href="#toc">↑ top</a></h3><p style='font-size:.8em;color:#78909c;'>Entity Set(s): <strong>ports_fact</strong></p><table><thead><tr><th>Field</th><th>Type</th><th>Nullable</th></tr></thead><tbody><tr><td>tk<span class="badge pk">PK</span></td><td>Int32</td><td>Yes</td></tr><tr><td>dateTk<span class="badge fk">FK</span><br><span style='font-size:.8em;color:#546e7a'>→ <a href='#entity-date_dimension'>date_dimension</a>.tk</span></td><td>Int32</td><td>Yes</td></tr><tr><td>switchTk<span class="badge fk">FK</span><br><span style='font-size:.8em;color:#546e7a'>→ <a href='#entity-switch_dimension'>switch_dimension</a>.tk</span></td><td>Int32</td><td>Yes</td></tr><tr><td>connectedDeviceTk<span class="badge fk">FK</span><br><span style='font-size:.8em;color:#546e7a'>→ <a href='#entity-connected_device_dimension'>connected_device_dimension</a>.tk</span></td><td>Int32</td><td>Yes</td></tr><tr><td>portTk<span class="badge fk">FK</span><br><span style='font-size:.8em;color:#546e7a'>→ <a href='#entity-port_dimension'>port_dimension</a>.tk</span></td><td>Int32</td><td>Yes</td></tr><tr><td>fabric</td><td>String</td><td>Yes</td></tr><tr><td>speed</td><td>String</td><td>Yes</td></tr><tr><td>connectivityType</td><td>String</td><td>Yes</td></tr><tr><td>type</td><td>String</td><td>Yes</td></tr><tr><td>status</td><td>String</td><td>Yes</td></tr></tbody></table><h4 style='margin:12px 0 6px;color:#546e7a;'>Navigation Properties (Joins)</h4><table><thead><tr><th>Nav Property</th><th>Related Entity</th><th>Cardinality / Join</th></tr></thead><tbody><tr><td>connected_device_dimension</td><td><a href='#entity-connected_device_dimension'>connected_device_dimension</a></td><td style='font-size:.85em'>one<br><span style='font-size:.85em;color:#546e7a'>JOIN: <code>connectedDeviceTk</code> = <a href='#entity-connected_device_dimension'>connected_device_dimension</a>.<code>tk</code></span></td></tr><tr><td>port_dimension</td><td><a href='#entity-port_dimension'>port_dimension</a></td><td style='font-size:.85em'>one<br><span style='font-size:.85em;color:#546e7a'>JOIN: <code>portTk</code> = <a href='#entity-port_dimension'>port_dimension</a>.<code>tk</code></span></td></tr><tr><td>date_dimension</td><td><a href='#entity-date_dimension'>date_dimension</a></td><td style='font-size:.85em'>one<br><span style='font-size:.85em;color:#546e7a'>JOIN: <code>dateTk</code> = <a href='#entity-date_dimension'>date_dimension</a>.<code>tk</code></span></td></tr><tr><td>switch_dimension</td><td><a href='#entity-switch_dimension'>switch_dimension</a></td><td style='font-size:.85em'>one<br><span style='font-size:.85em;color:#546e7a'>JOIN: <code>switchTk</code> = <a href='#entity-switch_dimension'>switch_dimension</a>.<code>tk</code></span></td></tr></tbody></table></div><div class="entity-section" id="entity-ports_fact_current"><h3>ports_fact_current<a class="back" href="#toc">↑ top</a></h3><p style='font-size:.8em;color:#78909c;'>Entity Set(s): <strong>ports_fact_current</strong></p><table><thead><tr><th>Field</th><th>Type</th><th>Nullable</th></tr></thead><tbody><tr><td>tk</td><td>Int32</td><td>Yes</td></tr><tr><td>dateTk</td><td>Int32</td><td>Yes</td></tr><tr><td>switchTk</td><td>Int32</td><td>Yes</td></tr><tr><td>connectedDeviceTk</td><td>Int32</td><td>Yes</td></tr><tr><td>portTk</td><td>Int32</td><td>Yes</td></tr><tr><td>fabric</td><td>String</td><td>Yes</td></tr><tr><td>speed</td><td>String</td><td>Yes</td></tr><tr><td>connectivityType</td><td>String</td><td>Yes</td></tr><tr><td>type</td><td>String</td><td>Yes</td></tr><tr><td>status</td><td>String</td><td>Yes</td></tr></tbody></table></div><div class="entity-section" id="entity-switch_dimension"><h3>switch_dimension<a class="back" href="#toc">↑ top</a></h3><p style='font-size:.8em;color:#78909c;'>Entity Set(s): <strong>switch_dimension</strong></p><table><thead><tr><th>Field</th><th>Type</th><th>Nullable</th></tr></thead><tbody><tr><td>tk</td><td>Int32</td><td>Yes</td></tr><tr><td>wwn</td><td>String</td><td>Yes</td></tr><tr><td>name</td><td>String</td><td>Yes</td></tr><tr><td>identifier</td><td>String</td><td>Yes</td></tr><tr><td>ip</td><td>String</td><td>Yes</td></tr><tr><td>model</td><td>String</td><td>Yes</td></tr><tr><td>manufacturer</td><td>String</td><td>Yes</td></tr><tr><td>firmware</td><td>String</td><td>Yes</td></tr><tr><td>serialNumber</td><td>String</td><td>Yes</td></tr><tr><td>npv</td><td>String</td><td>Yes</td></tr><tr><td>isGenerated</td><td>String</td><td>Yes</td></tr><tr><td>type</td><td>String</td><td>Yes</td></tr><tr><td>url</td><td>String</td><td>Yes</td></tr><tr><td>id</td><td>Int32</td><td>Yes</td></tr><tr><td>latest</td><td>String</td><td>Yes</td></tr><tr><td>dateTk</td><td>Int32</td><td>Yes</td></tr><tr><td>dataCenter</td><td>String</td><td>Yes</td></tr><tr><td>switchLevel</td><td>String</td><td>Yes</td></tr></tbody></table><h4 style='margin:12px 0 6px;color:#546e7a;'>Navigation Properties (Joins)</h4><table><thead><tr><th>Nav Property</th><th>Related Entity</th><th>Cardinality / Join</th></tr></thead><tbody><tr><td>ports_fact</td><td><a href='#entity-ports_fact'>ports_fact</a></td><td style='font-size:.85em'>many</td></tr></tbody></table></div>
</body>
</html>