(file) Return to Database_Storage.mof CVS log (file) (dir) Up to [Pegasus] / pegasus / Schemas / CIMPrelim29

  1 karl  1.1 // ===================================================================
  2           // Title:       Database Storage
  3           // $State: Preliminary $
  4           // $Date: 2004/06/25 16:11:06 $
  5           // $Source: /home/dmtf2/dotorg/var/cvs/repositories/dev/Schema/MOF/Database_Storage.mof,v $
  6           // $Revision: 1.3 $
  7           // ===================================================================
  8           //#pragma inLine ("Includes/copyright.inc")
  9           // Copyright 1998-2004 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 karl  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 karl  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 define
 48           // the manageable entities that are relevant for database storage.
 49           // 
 50           // ===================================================================
 51           // Change Log for V2.8 Preliminary
 52           // CR929  - Model changes for database storage
 53           // CR1084 - Remove redundant database segment properties
 54           // CR1085 - Add InitialExtentSize setting to DatabaseSegmentSettingData
 55           // CR1086 - Move NumberOfFreeLists to DatabaseSegmentSettingData
 56           // CR1088 - Refine the description of DatabaseSegmentSettingData
 57           // CR1121 - Correct the placement for database recovery settings and
 58           //          capabilities
 59           // CR1128 - Introduce HostedDependency into the Hierarchy
 60           // 
 61           // Change Log for V2.8 Final
 62           // CR1196 - Change Database Storage Model from Experimental to Final
 63           // CR1234 - Database model lint issues
 64 karl  1.1 //
 65           // Change Log for V2.9 Preliminary
 66           // CR1295 - Changes to descriptions to support RFC2119
 67           // ==================================================================
 68           
 69           // ===================================================================
 70           // DatabaseSegment
 71           // ===================================================================
 72              [Version ( "2.8.0" ), Description (
 73                  "A database segment is a logical storage entity composed of one "
 74                  "or more storage extents, each of which MAY have one or more "
 75                  "database blocks. Database segments have various types "
 76                  "depending on their purpose. Note that the order of extents "
 77                  "within a DatabaseSegment SHOULD be represented in the BasedOn "
 78                  "dependency of CIM_StorageExtent via the BasedOn.OrderIndex "
 79                  "attribute.")]
 80           class CIM_DatabaseSegment : CIM_StorageExtent {
 81           
 82                 [Override ( "Purpose" ), Description (
 83                     "The purpose of this segment within the context of the "
 84                     "database. A value of \"Data\" indicates that this segment "
 85 karl  1.1           "contains data for database area. A value of \"Data "
 86                     "Partition\" indicates this segment contains a portion of a "
 87                     "partitioned data area. A value of \"Data Cluster\" "
 88                     "indicates that this segment contains a portion of a "
 89                     "clustered database area. A value of \"Index\" indicates "
 90                     "that this segment contains index information. A value of "
 91                     "\"Index Partition\" indicates that this segment contains a "
 92                     "portion of a partitioned index. A value of \"LOB\" "
 93                     "indicates that this segment is used to hold large objects "
 94                     "such as Binary Large Object (BLOB) or Character Large "
 95                     "Object (CLOB) entities. A value of \"LOB Index\" indicates "
 96                     "that this segment is used to hold index information "
 97                     "relevant to a \"LOB\" segment. A value of \"Undo\" "
 98                     "indicates that this segment contains undo or rollback "
 99                     "information that MAY be used to reverse operations applied "
100                     "to a database. A value of \"Snapshot\" indicates that this "
101                     "segment is used to represent a portion of the database at a "
102                     "previous point-in-time. A value of \"Temp\" indicates that "
103                     "this segment is used as temporary space for database "
104                     "operations. A value of \"Other\" indicates that the segment "
105                     "is used for something other than any of the listed purposes "
106 karl  1.1           "and requires further description in the OtherPurpose "
107                     "attribute. Using a value of \"Other\" would generally "
108                     "indicate a need to extend the model to include an "
109                     "additional purpose."), 
110                  ValueMap { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10",
111                     "11" }, 
112                  Values { "Other", "Data", "Data Partition", "Data Cluster",
113                     "Index", "Index Partition", "LOB", "LOB Index", "Undo",
114                     "Snapshot", "Temp" }, 
115                  ModelCorrespondence { "CIM_DatabaseSegment.OtherPurpose" }]
116              string Purpose;
117           
118                 [Description (
119                     "The purpose of this segment when the Purpose attribute has "
120                     "a value of \"Other\". This attribute SHOULD be null in all "
121                     "other cases."), 
122                  ModelCorrespondence { "CIM_DatabaseSegment.Purpose" }]
123              string OtherPurpose;
124           };
125           
126           // ===================================================================
127 karl  1.1 // DatabaseStorageArea
128           // ===================================================================
129              [Version ( "2.8.0" ), Description (
130                  "Databases as modeled by instances of the CommonDatabase class "
131                  "are comprised of a collection of logical storage areas "
132                  "represented by instances of the DatabaseStorageArea class. "
133                  "Database storage areas allow the administrator to logically "
134                  "organize the content of the database. This class extends from "
135                  "FileSystem and uses the inherited associations to represent "
136                  "the internal structure of the database.")]
137           class CIM_DatabaseStorageArea : CIM_FileSystem {
138           
139                 [Description (
140                     "A Boolean value indicating the ownership of this "
141                     "StorageArea. A value of true indicates that this "
142                     "StorageArea is owned by the DatabaseSystem and contains "
143                     "system information. A value of false indicates that this is "
144                     "a user StorageArea containing data.")]
145              boolean IsSystemArea;
146           
147                 [Description (
148 karl  1.1           "A timestamp representing the date and time of the last "
149                     "successful backup of the DatabaseStorageArea. This property "
150                     "SHOULD be set to a value of zero, in interval format, if it "
151                     "is not known whether a backup has ever been completed.")]
152              datetime LastBackup;
153           };
154           
155           // ===================================================================
156           // DatabaseFile
157           // ===================================================================
158              [Association, Aggregation, Version ( "2.8.0" ), Description (
159                  "DatabaseFile captures the relationship between a database and "
160                  "the supporting files that make up the database as well as the "
161                  "purpose served by the files within the context of the "
162                  "database.")]
163           class CIM_DatabaseFile : CIM_Component {
164           
165                 [Aggregate, Override ( "GroupComponent" ), Min ( 1 ), Max ( 1 ), 
166                  Description (
167                     "The single CommonDatabase instance that uses the referenced "
168                     "LogicalFile.")]
169 karl  1.1    CIM_CommonDatabase REF GroupComponent;
170           
171                 [Override ( "PartComponent" ), Description (
172                     "One of any number of LogicalFile instances utilized by the "
173                     "referenced CommonDatabase.")]
174              CIM_LogicalFile REF PartComponent;
175           };
176           
177           // ===================================================================
178           // DatabaseStorage
179           // ===================================================================
180              [Association, Aggregation, Version ( "2.8.0" ), Description (
181                  "Databases are comprised of a collection of logical storage "
182                  "areas represented by instances of the DatabaseStorageArea "
183                  "class. The DatabaseStorage class represents the relationship "
184                  "between a CommonDatabase and the storage areas which it uses.")]
185           class CIM_DatabaseStorage : CIM_Component {
186           
187                 [Aggregate, Override ( "GroupComponent" ), Min ( 1 ), Max ( 1 ), 
188                  Description (
189                     "The database which makes use of the associated "
190 karl  1.1           "DatabaseStorageArea.")]
191              CIM_CommonDatabase REF GroupComponent;
192           
193                 [Override ( "PartComponent" ), Description (
194                     "A DatabaseStorageArea used by the associated "
195                     "CommonDatabase. A DatabaseStorageArea MUST only be used by a "
196                     "single database.")]
197              CIM_DatabaseStorageArea REF PartComponent;
198           };
199           
200           // ===================================================================
201           // DatabaseSegmentSettingData
202           // ===================================================================
203              [Version ( "2.8.0" ), Description (
204                  "This class defines the attributes that affect the growth of a "
205                  "DatabaseSegment. The attributes are tied to the "
206                  "DatabaseSegment through an ElementSettingData association. "
207                  "This class MAY also be used to specify the default settings "
208                  "for all DatabaseSegment instances created within a "
209                  "CommonDatabase through an ElementSettingData association to "
210                  "the CommonDatabase. Processes that create new instances of "
211 karl  1.1        "DatabaseSegment and the associated setting data SHOULD check "
212                  "for a DatabaseSegmentSettingData instance associated with the "
213                  "CommonDatabase and SHOULD only create a new instance of "
214                  "DatabaseSegmentSettingData specific to the DatabaseSegment if "
215                  "the default settings need to be overridden or frozen for the "
216                  "specific DatabaseSegment instance.")]
217           class CIM_DatabaseSegmentSettingData : CIM_ScopedSettingData {
218           
219                 [Write, Description (
220                     "The size, in bytes, of the first extent to be allocated "
221                     "when a database segment is created."), 
222                  Units ( "Bytes" )]
223              uint64 InitialExtentSize;
224           
225                 [Write, Description (
226                     "The total number of extents to be allocated when the "
227                     "database segment is created. This setting allows for a "
228                     "large initial segment allocation at creation time, even if "
229                     "contiguous space is not available.")]
230              uint64 MinimumExtents;
231           
232 karl  1.1       [Write, Description (
233                     "The upper limit on the number of extents that can be "
234                     "allocated for the segment.")]
235              uint64 MaximumExtents;
236           
237                 [Write, Description (
238                     "The size, in bytes, to be allocated for the next "
239                     "incremental extent for the segment. A NextExtentSize of 0 "
240                     "indicates that the size of incremental extents will be "
241                     "determined based on the value of PercentIncrease."), 
242                  Units ( "Bytes" ), MinValue ( 0 ), 
243                  ModelCorrespondence { 
244                     "CIM_DatabaseSegmentSettingData.PercentIncrease" }]
245              uint64 NextExtentSize;
246           
247                 [Write, Description (
248                     "The percentage by which the next incremental extent will "
249                     "grow over the previously allocated size of all extents for "
250                     "the segment. A PercentIncrease of 0 indicates that all "
251                     "incremental extents will be the same size, as specified by "
252                     "NextExtentSize. This value is ignored and SHOULD be set to "
253 karl  1.1           "0 if NextExtentSize has a value other than 0."), 
254                  MinValue ( 0 ), 
255                  ModelCorrespondence { 
256                     "CIM_DatabaseSegmentSettingData.NextExtentSize" }]
257              uint16 PercentIncrease;
258           
259                 [Write, Description (
260                     "A freelist is a list of the free blocks that are associated "
261                     "with a database segment. The freelist is used to determine "
262                     "which segments are eligible for accepting data when a new "
263                     "insert or update request is processed. The "
264                     "NumberOfFreeLists setting identifies the number of "
265                     "freelists that are defined for the database segment. This "
266                     "value is typically set to the expected number of concurrent "
267                     "inserts for the segment.")]
268              uint32 NumberOfFreeLists;
269           };
270           
271           
272           // ===================================================================
273           // DatabaseControlFile
274 karl  1.1 // ===================================================================
275              [Association, Version ( "2.8.0" ), Description (
276                  "CIM_DatabaseControlFile is a specialization of the "
277                  "CIM_Dependency association that identifies the LogicalFile(s) "
278                  "which provide control information for a Database. As an "
279                  "example, some implementations of CommonDatabase assign "
280                  "particular significance to a small number of files containing "
281                  "database state and configuration information. This association "
282                  "is intended to provide an efficient means of identifying these "
283                  "files.")]
284           class CIM_DatabaseControlFile : CIM_HostedDependency {
285           
286                 [Override ( "Antecedent" ), Min ( 1 ), Max ( 1 ), Description (
287                     "The parent CommonDatabase for the associated control file.")]
288              CIM_CommonDatabase REF Antecedent;
289           
290                 [Override ( "Dependent" ), Description (
291                     "The LogicalFile that contains control information for the "
292                     "associated CommonDatabase.")]
293              CIM_LogicalFile REF Dependent;
294           };
295 karl  1.1 
296           
297           // ===================================================================
298           // CommonDatabaseSettingData
299           // ===================================================================
300              [Version ( "2.8.0" ), Description (
301                  "This class contains the specific settings that identify the "
302                  "degree to which the high-level database capabilities that are "
303                  "defined in the CIM_CommonDatabaseCapabilities class are "
304                  "supported by a CommonDatabase. Specific values for the "
305                  "properties in this class MUST correspond to a valid capability "
306                  "that has been defined in the CIM_CommonDatabaseCapabilities "
307                  "class. \n"
308                  "Instances in the CIM_CommonDatabaseSettingData class are tied "
309                  "to the CommonDatabase using the ElementSettingData "
310                  "association.")]
311           class CIM_CommonDatabaseSettingData : CIM_SettingData {
312           
313                 [Write, Description (
314                     "RecoverabilityOption indicates the specific recoverability "
315                     "mode for the associated CommonDatabase."), 
316 karl  1.1        ValueMap { "1", "2", "3", "4" }, 
317                  Values { "Other", "Recoverable", "Non-Recoverable",
318                     "Rebuildable" }, 
319                  ModelCorrespondence { 
320                     "CIM_CommonDatabaseSettingData.OtherRecoverabilityOption",
321                     "CIM_CommonDatabaseCapabilities.RecoverabilityOptions" }]
322              uint16 RecoverabilityOption;
323           
324                 [Write, Description (
325                     "This property contains additional recovery information for "
326                     "the CommonDatabase. This property MUST be specified when "
327                     "the Recoverability property is \"Other\"."), 
328                  ModelCorrespondence { 
329                     "CIM_CommonDatabaseSettingData.RecoverabilityOption",
330                     "CIM_CommonDatabaseCapabilities.OtherRecoverabilityOptions" }]
331              string OtherRecoverabilityOption;
332           };
333           
334           
335           // ===================================================================
336           // CommonDatabaseCapabilities
337 karl  1.1 // ===================================================================
338           
339              [Version ( "2.8.0" ), Description (
340                  "Properties in this class represent general, high-level "
341                  "database capabilities that MAY be supported by a common "
342                  "database. For example, the ability for a database to support "
343                  "recoverability, replication, parallelism, or clustering would "
344                  "be specified in this class. Detailed settings, such as the "
345                  "minimum and maximum number of parallel servers for a database "
346                  "that supports parallelism, would be defined in the "
347                  "CIM_DatabaseParameter class. \n"
348                  "This information is tied to the CommonDatabase using the "
349                  "ElementCapabilities association.")]
350           class CIM_CommonDatabaseCapabilities : CIM_Capabilities {
351           
352                 [Description (
353                     "This property identifies the supported recoverability modes "
354                     "for the associated CommonDatabase."), 
355                  ValueMap { "1", "2", "3", "4" }, 
356                  Values { "Other", "Recoverable", "Non-Recoverable",
357                     "Rebuildable" }, ArrayType ( "Indexed" ), 
358 karl  1.1        ModelCorrespondence { 
359                     "CIM_CommonDatabaseCapabilities.OtherRecoverabilityOptions" }]
360              uint16 RecoverabilityOptions[];
361           
362                 [Description (
363                     "This property contains additional recovery information for "
364                     "the CommonDatabase. This property MUST be specified when "
365                     "the Recoverability property is \"Other\"."), 
366                  ArrayType ( "Indexed" ), 
367                  ModelCorrespondence { 
368                     "CIM_CommonDatabaseCapabilities.RecoverabilityOptions" }]
369              string OtherRecoverabilityOptions[];
370           };
371           
372           
373           
374           // ===================================================================
375           // end of file
376           // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2