1 a.dunfey 1.1 // ===================================================================
2 // Title: Database_System
3 // $State: Exp $
4 // $Date: 2004/11/29 18:31:42 $
5 // $RCSfile: Database_System.mof,v $
6 // $Revision: 1.5.2.3 $
7 // ===================================================================
8 //#pragma inLine ("Includes/copyright.inc")
9 // Copyright 1998-2005 Distributed Management Task Force, Inc. (DMTF).
10 // All rights reserved.
11 // DMTF is a not-for-profit association of industry members dedicated
12 // to promoting enterprise and systems management and interoperability.
13 // DMTF specifications and documents may be reproduced for uses
14 // consistent with this purpose by members and non-members,
15 // provided that correct attribution is given.
16 // As DMTF specifications may be revised from time to time,
17 // the particular version and release date should always be noted.
18 //
19 // Implementation of certain elements of this standard or proposed
20 // standard may be subject to third party patent rights, including
21 // provisional patent rights (herein "patent rights"). DMTF makes
22 a.dunfey 1.1 // no representations to users of the standard as to the existence
23 // of such rights, and is not responsible to recognize, disclose, or
24 // identify any or all such third party patent right, owners or
25 // claimants, nor for any incomplete or inaccurate identification or
26 // disclosure of such rights, owners or claimants. DMTF shall have no
27 // liability to any party, in any manner or circumstance, under any
28 // legal theory whatsoever, for failure to recognize, disclose, or
29 // identify any such third party patent rights, or for such party's
30 // reliance on the standard or incorporation thereof in its product,
31 // protocols or testing procedures. DMTF shall have no liability to
32 // any party implementing such standard, whether such implementation
33 // is foreseeable or not, nor to any patent owner or claimant, and shall
34 // have no liability or responsibility for costs or losses incurred if
35 // a standard is withdrawn or modified after publication, and shall be
36 // indemnified and held harmless by any party implementing the
37 // standard from any and all claims of infringement by a patent owner
38 // for such implementations.
39 //
40 // For information about patents held by third-parties which have
41 // notified the DMTF that, in their opinion, such patent may relate to
42 // or impact implementations of DMTF standards, visit
43 a.dunfey 1.1 // http://www.dmtf.org/about/policies/disclosures.php.
44 //#pragma inLine
45 // ===================================================================
46 // Description:
47 // This file contains the classes and associations that are
48 // related to the database system, how it is deployed, and the
49 // runtime aspects of the database environment.
50 //
51 // ===================================================================
52 // Change Log for V2.8 Preliminary
53 // CR1087 - Update DatabaseAdministrator description to reference
54 // UserContact
55 //
56 // Change Log for V2.8 Final
57 // CR1150 - Deprecate LastStatusChangeTime
58 // CR1179 - Update CIM_DatabaseSystem Description
59 // ==================================================================
60
61 #pragma Locale ("en-US")
62
63 // ==================================================================
64 a.dunfey 1.1 // DatabaseSystem
65 // ==================================================================
66 [Version ( "2.7.0" ), Description (
67 "A database environment is composed of a database system (the "
68 "application system represented by this class), one or more "
69 "database services, and one or more databases. See the "
70 "descriptions of CIM_DatabaseService and CIM_CommonDatabase to "
71 "get more detailed information about database services and "
72 "databases. \n"
73 "Each separately manageable database system SHOULD have an "
74 "instance in this class. This class can be used: \n"
75 "- to determine the software that belongs to the database "
76 "system. \n"
77 "- to perform database system wide management operations, such "
78 "as stopping all the databases that were created by the "
79 "database system for maintenance purposes. \n"
80 "- to view runtime statistics in the context of a database "
81 "system. \n"
82 "Many of the management capabilities needed to represent a "
83 "database system as an application system have already been "
84 "modeled in the CIM_ApplicationSystem class from which "
85 a.dunfey 1.1 "CIM_DatabaseSystem extends. CIM_DatabaseSystem provides a "
86 "logical entity to define the relationships that are specific "
87 "to the database management domain.")]
88 class CIM_DatabaseSystem : CIM_ApplicationSystem {
89 };
90
91
92 // ==================================================================
93 // CommonDatabase
94 // ==================================================================
95 [Version ( "2.7.0" ), Description (
96 "A database is a collection of interrelated data, treated as a "
97 "unit, which is organized into one or more schemas. The "
98 "CIM_CommonDatabase class defines the properties that are "
99 "common across database model and vendor implementations for "
100 "the database entity that is represented by the unit of "
101 "interrelated data. \n"
102 "Databases are manipulated through one or more database "
103 "services. More detailed information on database services is "
104 "provided in the description of the CIM_DatabaseService class.")]
105 class CIM_CommonDatabase : CIM_EnabledLogicalElement {
106 a.dunfey 1.1
107 [Key, Description (
108 "Within the scope of the instantiating Namespace, InstanceID "
109 "opaquely and uniquely identifies an instance of this class. "
110 "In order to ensure uniqueness within the NameSpace, the "
111 "value of InstanceID SHOULD be constructed using the "
112 "following 'preferred' algorithm: \n"
113 "<OrgID>:<LocalID> \n"
114 "Where <OrgID> and <LocalID> are separated by a colon ':', "
115 "and where <OrgID> MUST include a copyrighted, trademarked "
116 "or otherwise unique name that is owned by the business "
117 "entity creating/defining the InstanceID, or is a registered "
118 "ID that is assigned to the business entity by a recognized "
119 "global authority. (This is similar to the <Schema "
120 "Name>_<Class Name> structure of Schema class names.) In "
121 "addition, to ensure uniqueness <OrgID> MUST NOT contain a "
122 "colon (':'). When using this algorithm, the first colon to "
123 "appear in InstanceID MUST appear between <OrgID> and "
124 "<LocalID>. \n"
125 "<LocalID> is chosen by the business entity and SHOULD not "
126 "be re-used to identify different underlying (real-world) "
127 a.dunfey 1.1 "elements. If the above 'preferred' algorithm is not used, "
128 "the defining entity MUST assure that the resultant "
129 "InstanceID is not re-used across any InstanceIDs produced "
130 "by this or other providers for this instance's NameSpace. \n"
131 "For DMTF defined instances, the 'preferred' algorithm MUST "
132 "be used with the <OrgID> set to 'CIM'.")]
133 string InstanceID;
134
135 [Description (
136 "The version number for the database. If the version is not "
137 "relevant, the value for this property must be set to NULL."),
138 MappingStrings { "MIB.IETF|RDBMS-MIB.rdbmsDbInfoVersion" }]
139 string DatabaseVersion;
140
141 [Description (
142 "The date and time when the latest complete or partial "
143 "backup of the database was performed. If the database has "
144 "never been backed up, then this property has no meaning. "
145 "The value of this property should be set to all zeros if "
146 "the database has never been backed up."),
147 MappingStrings { "MIB.IETF|RDBMS-MIB.rdbmsDbInfoLastBackup" }]
148 a.dunfey 1.1 datetime LastBackup;
149
150 [Description (
151 "The estimated amount of disk space (in units) that has been "
152 "reserved for database use."),
153 MappingStrings { "MIB.IETF|RDBMS-MIB.rdbmsDbInfoSizeAllocated" }]
154 uint32 SizeAllocated;
155
156 [Description (
157 "The units for the SizeAllocated property and the SizeUsed "
158 "property that is defined in the "
159 "CIM_CommonDatabaseStatistics class. Mapping is 1 - Bytes, 2 "
160 "- Kilobytes, 3 - Megabytes, 4 - Gigabytes and 5 - "
161 "Terabytes."),
162 ValueMap { "1", "2", "3", "4", "5" },
163 Values { "Bytes", "Kilobyes", "Megabytes", "Gigabytes",
164 "Terabytes" },
165 MappingStrings { "MIB.IETF|RDBMS-MIB.rdbmsDbInfoSizeUnits" }]
166 uint16 SizeUnits;
167 };
168
169 a.dunfey 1.1
170 // ==================================================================
171 // AssociatedDatabaseSystem
172 // ==================================================================
173 [Association, Version ( "2.7.0" ), Description (
174 "The CIM_AssociatedDatabaseSystem association identifies the "
175 "database system that is responsible for the database.")]
176 class CIM_AssociatedDatabaseSystem : CIM_Dependency {
177
178 [Override ( "Antecedent" ), Min ( 1 ), Description (
179 "The database system that is responsible for the database.")]
180 CIM_DatabaseSystem REF Antecedent;
181
182 [Override ( "Dependent" ), Description (
183 "The database.")]
184 CIM_CommonDatabase REF Dependent;
185 };
186
187
188 // ==================================================================
189 // DatabaseAdministrator
190 a.dunfey 1.1 // ==================================================================
191 [Association, Version ( "2.7.0" ), Description (
192 "The DatabaseAdministrator association identifies a UserEntity "
193 "as a database administrator of a CommonDatabase. \n"
194 "The current version of CIM includes a UserContact class that "
195 "is concrete and extends from UserEntity. UserContact contains "
196 "the information needed to contact a database administrator. "
197 "The DatabaseAdministrator association should be implemented "
198 "through the UserContact class in favor creating a vendor "
199 "specific concrete class to define database administrator "
200 "contact information.")]
201 class CIM_DatabaseAdministrator : CIM_Dependency {
202
203 [Override ( "Antecedent" ), Description (
204 "The database that is being administered.")]
205 CIM_CommonDatabase REF Antecedent;
206
207 [Override ( "Dependent" ), Description (
208 "The user entity who is responsible for the administration "
209 "of the database.")]
210 CIM_UserEntity REF Dependent;
211 a.dunfey 1.1 };
212
213
214 // ==================================================================
215 // DatabaseService
216 // ==================================================================
217 [Version ( "2.7.0" ), Description (
218 "Database services perform tasks for a database. Examples of "
219 "tasks that are performed by a database service include "
220 "providing user access to the database, performing data and "
221 "metadata manipulation, database administration, and "
222 "maintenance operations. \n"
223 "One or more database services can perform tasks for a "
224 "database. The database services can reside on the same "
225 "computer system as the database or on different computer "
226 "systems. Database services may be implemented as one or more "
227 "processes.")]
228 class CIM_DatabaseService : CIM_Service {
229
230 [Description (
231 "The date and time when the database service was last "
232 a.dunfey 1.1 "started. If the database service has an OperationalStatus "
233 "of Stopped or Starting, then this value is not meaningful "
234 "and the contents MUST be set to zeros."),
235 MappingStrings { "MIB.IETF|RDBMS-MIB.rdbmsSrvInfoStartupTime" }]
236 datetime StartupTime;
237
238 [Override ( "OperationalStatus" ), Description (
239 "This property contains the operational status of the "
240 "database service. OK means that the database service is "
241 "operational and available for general use. Stopped means "
242 "that the service is unavailable and cannot be used. Service "
243 "implies an administrative state of unavailability. Degraded "
244 "means that the database service is operating at a less than "
245 "optimal level. Starting means that the database service is "
246 "in the process of becoming operational. \n"
247 "These status values map to the RFC1697 OperStatus values as "
248 "follows: OK - UP, Stopped - DOWN, In Service - HALTED, "
249 "Stressed - CONGESTED, and Starting - RESTARTING. Any "
250 "additional status variables that are defined are CIM "
251 "specific."),
252 MappingStrings { "MIB.IETF|RDBMS-MIB.rdbmsSrvInfoOperStatus" }]
253 a.dunfey 1.1 uint16 OperationalStatus[];
254
255 [Deprecated { "CIM_EnabledLogicalElement.TimeOfLastStateChange" },
256 Description (
257 "The LastStatusChangeTime property is deprecated in lieu of "
258 "the TimeOfLastStateChange property that is inherited from "
259 "CIM_EnabledLogicalElement. The date and time when the "
260 "status of the database service last changed."),
261 MappingStrings { "MIB.IETF|RDBMS-MIB.rdbmsSrvInfoLastChange" }]
262 datetime LastStatusChangeTime;
263
264 [Override ( "TimeOfLastStateChange" ),
265 MappingStrings { "MIB.IETF|RDBMS-MIB.rdbmsSrvInfoLastChange" }]
266 datetime TimeOfLastStateChange;
267
268 [Description (
269 "The maximum number of active inbound connections that can "
270 "be concurrently opened on the service."),
271 MappingStrings {
272 "MIB.IETF|RDBMS-MIB.rdbmsSrvInfoMaxInboundAssociations" }]
273 uint32 ConnectionLimit;
274 a.dunfey 1.1 };
275
276
277 // ==================================================================
278 // ServiceAvailableToDatabase
279 // ==================================================================
280 [Association, Version ( "2.7.0" ), Description (
281 "The CIM_ServiceAvailableToDatabase association relates "
282 "databases to the database services that are available for "
283 "database use.")]
284 class CIM_ServiceAvailableToDatabase : CIM_ServiceAvailableToElement {
285
286 [Override ( "ServiceProvided" ), Description (
287 "The database service that is providing service.")]
288 CIM_DatabaseService REF ServiceProvided;
289
290 [Override ( "UserOfService" ), Description (
291 "The database that is being served.")]
292 CIM_CommonDatabase REF UserOfService;
293
294 [Description (
295 a.dunfey 1.1 "The AvailableState property indicates the current state of "
296 "a database service regarding its ability to access a "
297 "specific database. A service can be actively using a "
298 "database (ACTIVE), or it can be waiting for a task to "
299 "perform (AVAILABLE), or the service can be less than "
300 "completely available for use by the database (RESTRICTED), "
301 "or the database is not accessible from this service "
302 "(UNAVAILABLE). Any service states that do not match one of "
303 "these values should specify (OTHER)."),
304 ValueMap { "1", "2", "3", "4", "5" },
305 Values { "Other", "Active", "Available", "Restricted",
306 "Unavailable" },
307 MappingStrings { "MIB.IETF|RDBMS-MIB.rdbmsRelState" },
308 ModelCorrespondence {
309 "CIM_ServiceAvailableToDatabase.OtherAvailableState" }]
310 uint16 AvailableState;
311
312 [Description (
313 "A string describing the service's available state when the "
314 "AvailableState property is set to 1 (\"Other\"). This "
315 "property MUST be set to NULL when AvailableState is any "
316 a.dunfey 1.1 "value other than 1."),
317 ModelCorrespondence {
318 "CIM_ServiceAvailableToDatabase.AvailableState" }]
319 string OtherAvailableState;
320
321 [Description (
322 "The time that the database was made active by this service. "
323 "If the AvailableState property is not active, then the "
324 "value of this property MUST be set to zero."),
325 MappingStrings { "MIB.IETF|RDBMS-MIB.rdbmsRelActiveTime" }]
326 datetime ActiveTime;
327 };
328
329
330 // ==================================================================
331 // DatabaseParameter
332 // ==================================================================
333 [Abstract, Version ( "2.7.0" ), Description (
334 "The CIM_DatabaseParameter class extends from "
335 "CIM_ScopedSettingData. This is an abstract class that "
336 "specifies the database and service configuration parameters "
337 a.dunfey 1.1 "that are common across database models and vendor "
338 "implementations. \n"
339 "The SNMP RDBMS MIB defines database and service parameters as "
340 "name/value pair combinations rather than as specific named "
341 "properties of the class. In order to maintain a consistent "
342 "mapping between SNMP and CIM a CIM_SNMPDatabaseParameter class "
343 "extends from the abstract CIM_DatabaseParameter class which "
344 "defines parameters as a name value pair. \n"
345 "In a future release of the database MOF, the working group may "
346 "choose to create a new class that extends from "
347 "CIM_DatabaseParameter that specifies properties for common "
348 "configuration parameters. \n"
349 "The parameter context for a specific database or database "
350 "service is established by collecting the SettingData using the "
351 "CIM_ElementProfile association. \n"
352 "The SNMP RDBMS MIB defines generic tables that contain rows of "
353 "named database or service configuration entries. A parameter "
354 "entry contains a parameter name, description, and value. See "
355 "the description of the rdbmsDbParamTable or the "
356 "rdbmsSrvParamTable for more information on the SNMP "
357 "definitions.")]
358 a.dunfey 1.1 class CIM_DatabaseParameter : CIM_ScopedSettingData {
359 };
360
361
362 // ==================================================================
363 // SNMPDatabaseParameter
364 // ==================================================================
365 [Version ( "2.7.0" ), Description (
366 "The CIM_SNMPDatabaseParameter class extends from "
367 "CIM_DatabaseParameter. This class is included in the CIM "
368 "database schema to provide explicit mapping to the way that "
369 "the SNMP MIB defines database and service parameters. More "
370 "information on the SNMP MIB parameters can be found in RFC "
371 "1697. \n"
372 "The SNMP RDBMS MIB defines generic tables that contain rows of "
373 "named database or service configuration entries. A parameter "
374 "entry contains a parameter name, description, and value. See "
375 "the description of the rdbmsDbParamTable or the "
376 "rdbmsSrvParamTable for more information on the SNMP "
377 "definitions.")]
378 class CIM_SNMPDatabaseParameter : CIM_DatabaseParameter {
379 a.dunfey 1.1
380 [Description (
381 "The value of a database or service parameter represented as "
382 "a string."),
383 MappingStrings { "MIB.IETF|RDBMS-MIB.rdbmsDbParamCurrValue" }]
384 string ParameterValue;
385 };
386
387 // ===================================================================
388 // end of file
389 // ===================================================================
|