Tabellenerweiterung und -klassen

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 4 Minuten Lesedauer
  • Aktivieren Sie eine oder mehrere untergeordnete Tabellen, um Felder und Datensätze für eine übergeordnete Tabelle freizugeben. Administratoren und Anwendungsentwickler können Tabellen nur während der Tabellenerstellung erweitern.

    Administratoren und Anwendungsentwickler erweitern normalerweise Tabellen, um eine Reihe von zugehörigen Datensätzen zu erstellen, die Informationen gemeinsam nutzen. Im Basissystem haben beispielsweise die Tabellen „Aufgabe“ und „Konfigurationselement“ mehrere Erweiterungen:
    Tabelle : 1. Beispiele für erweiterte Tabellen im Basissystem
    Ursprüngliche Tabelle Zugehörige Tabellen, die aus der ursprünglichen Tabelle erweitert wurden
    Aufgabe [task]
    • Incident [incident]
    • Problem [problem]
    • Change Request [change_request]
    Konfigurationselement [cmdb_ci]
    • Anwendung [cmdb_ci_appl]
    • Computer [cmdb_ci_computer]
    • Datenbank [cmdb_ci_database]

    Eine Tabelle, die eine andere Tabelle erweitert, wird als untergeordnete Klassebezeichnet, und die Tabelle, die sie erweitert, ist die übergeordnete Klasse. Eine Tabelle kann sowohl eine übergeordnete als auch eine untergeordnete Klasse sein, die andere Tabellen erweitern und Erweiterungen für andere Tabellen bereitstellen. Eine übergeordnete Klasse, die keine Erweiterung einer anderen Tabelle ist, wird als Basisklassebezeichnet.

    Administratoren können diese Tools verwenden, um die Beziehungen zwischen Klassen anzuzeigen.
    • Schemakarte
    • Systemwörterbuch
    • Tabellenmodul
    Erweitern einer Tabelle:
    • Verknüpft die neue Tabelle mit der erweiternden Tabelle.
    • Erstellt Systemfelder in der neuen Tabelle.
    • Erstellt eine oder mehrere Datenbanktabellen zum Speichern der übergeordneten und untergeordneten Klassen. Die Anzahl der vom System erstellten Tabellen hängt vom bei der Tabellenerstellung ausgewählten Erweiterungsmodell ab.

    Erweiterungsmodelle

    Now Platform bietet diese Erweiterungsmodelle.
    • Tabelle pro Klasse
    • Tabelle pro Hierarchie
    • Tabelle pro Partition
    Das Erweiterungsmodell bestimmt diese Attribute.
    • Die Anzahl der erstellten Datenbanktabellen
    • Die Ableitung von Feldern aus übergeordneten Klassen
    • Die Replikation von Datensätzen aus untergeordneten Klassen

    Tabelle pro Klasse

    Tabellen erstellt
    Erstellt eine separate Datenbanktabelle für die übergeordnete Klasse und jede untergeordnete Klasse.
    Von der übergeordneten Klasse abgeleitete Felder
    Untergeordnete Klassen leiten Felder von übergeordneten Klassen ab.
    Wörterbuchdatensätze, die für die übergeordnete Klasse erstellt wurden
    Eine übergeordnete Klasse hat einen Dictionary-Datensatz für die Sammlung und für jedes Feld, das von ihr abgeleitet werden kann. Zum Beispiel hat die Tabelle „Vertrag“ [ast_contract] 59 Wörterbuchdatensätze, die die Tabelle und ihre Felder definieren.
    Wörterbuchdatensätze, die für untergeordnete Klassen erstellt wurden
    Jede untergeordnete Klasse hat nur Dictionary-Einträge für Felder, die für die Klasse eindeutig sind.
    Datensätze repliziert
    Die übergeordnete Klasse repliziert jeden in ihren untergeordneten Klassen gespeicherten Datensatz. Jede untergeordnete Klasse speichert nur Datensätze, die für die Klasse eindeutig sind. Replizierte Datensätze haben in jeder Tabelle denselben Sys-ID-Wert. Das System repliziert alle Änderungen, die Sie an einem untergeordneten Datensatz vornehmen, im entsprechenden Datensatz in der übergeordneten Tabelle. Beispielsweise repliziert die Tabelle „Vertrag“ [ast_contract] Datensätze aus den Tabellen „Lease“ [ast_lease] und „Garantie“ [ast_warranty].

    Tabelle pro Hierarchie

    Tabellen erstellt
    Erstellt eine Datenbanktabelle für die übergeordnete Klasse, in der alle Datensätze für die übergeordneten und untergeordneten Klassen gespeichert werden. Untergeordnete Klassen haben keine separaten Datenbanktabellen.
    Von der übergeordneten Klasse abgeleitete Felder
    Untergeordnete Klassen leiten Felder von übergeordneten Klassen ab. Beispielsweise leitet die Incident-Tabelle Felder von der Aufgabentabelle ab.
    Wörterbuchdatensätze, die für die übergeordnete Klasse erstellt wurden

    Eine übergeordnete Klasse hat einen Dictionary-Datensatz für die Sammlung und für jedes Feld, das von ihr abgeleitet werden kann. Zum Beispiel ist die Task Table eine übergeordnete Klasse mit 66 Dictionary-Datensätzen, die die Tabelle und ihre Felder definieren.

    Der Wörterbucheintrag für die übergeordnete Klasse enthält eine Spalte „sys_class_name“, deren Wert angibt, zu welcher untergeordneten Klasse jeder Datensatz gehört. Beispiel: Incident-Datensätze haben für sys_class_name den Wert „incident“ und Change-Datensätze für sys_class_name den Wert „change“.

    Wörterbuchdatensätze, die für untergeordnete Klassen erstellt wurden
    Jede untergeordnete Klasse hat nur Dictionary-Einträge für Felder, die für die Klasse eindeutig sind. Beispielsweise verfügt die Incident-Tabelle nur über 22 Dictionary-Datensätze, die noch nicht in der Task Table definiert wurden.
    Datensätze repliziert
    Eine Datensatzreplikation ist nicht erforderlich, da die übergeordnete Klasse alle Datensätze speichert, die zur Hierarchiegehören. Beispielsweise enthält die Tabelle „Aufgaben“ alle Datensätze aus den untergeordneten Klassen, z. B. die Tabellen „Change“, „Incident“ und „Problem“.

    Tabelle pro Partition

    Tabellen erstellt
    Erstellt eine Datenbanktabelle für die übergeordnete Klasse, in der alle Datensätze für die übergeordneten und untergeordneten Klassen gespeichert werden. Untergeordnete Klassen haben keine separaten Datenbanktabellen. Wenn die Datenbanktabelle ein Speicherlimit erreicht, fügt das System dynamisch Speichertabellen (Partitionen) hinzu, um zusätzliche Datensätze zu speichern.
    Von der übergeordneten Klasse abgeleitete Felder
    Untergeordnete Klassen leiten keine Felder von übergeordneten Klassen ab. Stattdessen hat jede untergeordnete Klasse eine eigene Liste von Feldern. Beispielsweise haben die Tabellen Basiskonfigurationselement [cmdb], Konfigurationselement [cmdb_ci] und Hardware [cmdb_ci_hardware] jeweils eigene Felddefinitionen.
    Wörterbuchdatensätze, die für die übergeordnete Klasse erstellt wurden

    Eine übergeordnete Klasse hat einen Wörterbuchdatensatz für die Sammlung und für jedes für sie relevante Feld. Zum Beispiel ist die Tabelle Base Configuration Item [cmdb] eine übergeordnete Klasse mit 48 Dictionary-Datensätzen.

    Das System repliziert Änderungen, die an Wörterbucheinträgen der übergeordneten Klasse vorgenommen wurden, in die Einträge des Wörterbuchs der untergeordneten Klasse. Wenn Sie beispielsweise die Namensspalte in der Tabelle der übergeordneten Klasse „Basiskonfigurationselement“ [cmdb] ändern, repliziert das System dies in untergeordneten Klassenwörterbucheinträgen wie den Tabellen „Konfigurationselement“ [cmdb_ci] und „Hardware“ [cmdb_ci_hardware].

    Der Wörterbucheintrag für die übergeordnete Klasse enthält Spalten für „sys_class_name“ und „sys_class_path“, deren Werte angeben, zu welcher untergeordneten Klasse jeder Datensatz gehört. Hardwaredatensätze haben beispielsweise einen sys_class_name-Wert von cmdb_ci_hardware, und Computerdatensätze haben einen sys_class_name-Wert von cmdb_ci_computer.

    Wenn die Datenbanktabelle ein Speicherlimit erreicht, aktualisiert das System den Wörterbucheintrag für die übergeordnete Klasse und fügt Spalten für „sys_storage_alias“ und „storage_table_name“ hinzu. Mit diesen Speicherspalten-Dictionary-Einträgen können Administratoren die übergeordnete Klasse und ihre Speichertabellen als eine einzige logische Einheit verwalten.

    Wörterbuchdatensätze, die für untergeordnete Klassen erstellt wurden
    Jede untergeordnete Klasse hat einen Wörterbuchdatensatz für die Sammlung und für jedes für sie relevante Feld. Zum Beispiel hat die Tabelle „Hardware“ 73 Dictionary-Datensätze, wobei einige Datensätze Spalten in der übergeordneten Klasse duplizieren.
    Datensätze repliziert
    Eine Datensatzreplikation ist nicht erforderlich, da die übergeordnete Klasse alle Datensätze speichert, die zur Hierarchiegehören. Beispielsweise enthält die Tabelle „Basiskonfigurationselement“ [cmdb] alle Datensätze aus ihren untergeordneten Klassen, z. B. die Tabellen „Anwendung“ [cmdb_ci_appl], „Computer“ [cmdb_ci_computer] und „Hardware“ [cmdb_ci_hardware].