Ein -Datenmodell (oder -Datenmodell [1][2][3][4][5]) ist ein abstraktes Modell, das Elemente von Daten organisiert und standardisiert, wie sie sich zueinander und mit Eigenschaften der Entitäten der realen Welt verbinden. Zum Beispiel kann ein Datenmodell angeben, dass das Datenelement, das ein Auto darstellt, aus einer Anzahl anderer Elemente besteht, die wiederum die Farbe und Größe des Autos repräsentieren und seinen Besitzer definieren.
Der Begriff Datenmodell wird in zwei verschiedenen, aber eng verwandten Sinnen verwendet. Manchmal bezieht sich dies auf eine abstrakte Formalisierung der Objekte und Beziehungen, die in einer bestimmten Anwendungsdomäne gefunden werden, z. B. die Kunden, Produkte und Aufträge einer Fertigungsorganisation. Zu anderen Zeiten bezieht es sich auf eine Reihe von Konzepten, die zur Definition solcher Formalisierungen verwendet werden, beispielsweise Konzepte wie Entitäten, Attribute, Beziehungen oder Tabellen. Das "Datenmodell" einer Bankanwendung kann also unter Verwendung der Entitätsbeziehung "Datenmodell" definiert werden. Dieser Artikel verwendet den Begriff in beiden Richtungen.
Ein Datenmodell bestimmt explizit die Struktur von Daten. Datenmodelle werden in einer Datenmodellierungsnotation spezifiziert, die häufig grafisch in der Form ist. [7]
Ein Datenmodell kann manchmal als Datenstruktur bezeichnet werden, insbesondere im Zusammenhang mit Programmiersprachen. Datenmodelle werden häufig durch Funktionsmodelle ergänzt, insbesondere im Zusammenhang mit Unternehmensmodellen.
Überblick [ edit ]
Die Verwaltung großer Mengen strukturierter und unstrukturierter Daten ist eine Hauptfunktion von Informationssystemen. Datenmodelle beschreiben die Struktur, die Manipulation und die Integritätsaspekte der Daten, die in Datenverwaltungssystemen wie relationalen Datenbanken gespeichert sind. Sie beschreiben in der Regel keine unstrukturierten Daten wie Textverarbeitungsdokumente, E-Mail-Nachrichten, Bilder, digitale Audiodaten und Videos.
Die Rolle von Datenmodellen [ edit ]
Das Hauptziel von Datenmodellen besteht darin, die Entwicklung von Informationssystemen durch Bereitstellung der Definition und der Unterstützung von Datenmodellen zu unterstützen Datenformat. Nach West and Fowler (1999) "Wenn dies systemübergreifend konsistent gemacht wird, kann eine Datenkompatibilität erreicht werden. Wenn dieselben Datenstrukturen zum Speichern und Zugreifen auf Daten verwendet werden, können verschiedene Anwendungen Daten gemeinsam nutzen. Die Ergebnisse davon sind oben angegeben Systeme und Schnittstellen kosten jedoch häufig mehr, als sie sollten, um zu bauen, zu betreiben und zu warten, und sie können das Geschäft eher einschränken als es unterstützen. Ein Hauptgrund ist, dass die Qualität der in den Systemen und Schnittstellen implementierten Datenmodelle schlecht ist ". [8]
- " Geschäftsregeln, die sich darauf beziehen, wie Dinge an einem bestimmten Ort ausgeführt werden, sind häufig in der Struktur eines Datenmodells festgelegt. Dies bedeutet, dass geringfügige Änderungen in der Geschäftsführung zu großen Änderungen in Computersystemen führen Schnittstellen ". [8]
- " Entitätstypen werden häufig nicht oder falsch identifiziert. Dies kann zu einer Replikation von Daten, Datenstruktur und Funktionalität zusammen mit den zugehörigen Kosten dieser Duplizierung in developmentm führen und Wartung ". [8]
- " Datenmodelle für verschiedene Systeme sind willkürlich verschieden. Dies führt dazu, dass komplexe Schnittstellen zwischen Systemen, die Daten gemeinsam nutzen, erforderlich sind. Diese Schnittstellen können zwischen 25 und 70% der Kosten aktueller Systeme ausmachen. "[8]
- " Daten können nicht elektronisch mit Kunden und Lieferanten geteilt werden, da Struktur und Bedeutung der Daten nicht standardisiert sind. Zum Beispiel werden Konstruktionsdaten und Zeichnungen für verfahrenstechnische Anlagen manchmal noch auf Papier ausgetauscht. "[8]
Der Grund für diese Probleme ist das Fehlen von Standards, die sicherstellen, dass Datenmodelle sowohl geschäftliche Anforderungen erfüllen als auch konsistent sind. [8]
Ein Datenmodell bestimmt explizit die Struktur von Daten Typische Anwendungen von Datenmodellen umfassen Datenbankmodelle, den Entwurf von Informationssystemen und den Datenaustausch, wobei Datenmodelle normalerweise in einer Datenmodellierungssprache angegeben werden. [3]
Drei Perspektiven [ edit ]
Eine Datenmodell-Instanz kann gemäß ANSI eine der drei Arten sein 1975: [9]
- Konzeptionelles Datenmodell : Beschreibt die Semantik einer Domäne, die den Umfang des Modells darstellt. Beispielsweise kann es sich um ein Modell des Interessenbereichs einer Organisation oder Branche handeln. Diese besteht aus Entitätsklassen, die Arten von wichtigen Dingen in der Domäne darstellen, und Beziehungsbestätigungen über Assoziationen zwischen Paaren von Entitätsklassen. Ein konzeptionelles Schema spezifiziert die Arten von Tatsachen oder Sätzen, die unter Verwendung des Modells ausgedrückt werden können. In diesem Sinne definiert es die erlaubten Ausdrücke in einer künstlichen "Sprache" mit einem Umfang, der durch den Umfang des Modells begrenzt ist.
- Logisches Datenmodell: Beschreibt die Semantik, wie sie durch eine bestimmte Datenmanipulationstechnologie dargestellt wird. Dies umfasst unter anderem Beschreibungen von Tabellen und Spalten, objektorientierten Klassen und XML-Tags.
- Physisches Datenmodell: Beschreibt die physischen Mittel, mit denen Daten gespeichert werden. Dies betrifft Partitionen, CPUs, Tablespaces und dergleichen.
Die Bedeutung dieses Ansatzes besteht laut ANSI darin, dass die drei Perspektiven relativ unabhängig voneinander sind. Die Speichertechnologie kann sich ändern, ohne das logische oder das konzeptionelle Modell zu beeinflussen. Die Tabellen- / Spaltenstruktur kann sich ändern, ohne (notwendigerweise) das konzeptionelle Modell zu beeinflussen. In jedem Fall müssen die Strukturen natürlich mit dem anderen Modell übereinstimmen. Die Tabellen- / Spaltenstruktur kann sich von einer direkten Übersetzung der Entitätsklassen und -attribute unterscheiden, sie muss jedoch letztendlich die Ziele der konzeptionellen Entitätsklassenstruktur erfüllen. Frühe Phasen vieler Softwareentwicklungsprojekte betonen den Entwurf eines konzeptionellen Datenmodells. Ein solcher Entwurf kann in ein logisches Datenmodell detailliert werden. In späteren Stufen kann dieses Modell in ein physikalisches Datenmodell übersetzt werden. Es ist jedoch auch möglich, ein konzeptionelles Modell direkt zu implementieren.
Geschichte [ edit ]
Eine der ersten Pionierarbeiten in der Modellierung von Informationssystemen wurde von Young und Kent (1958), [10][11] die für "eine präzise und abstrakte Darstellung" argumentierten Art und Weise der Angabe der Informations- und Zeitmerkmale eines Datenverarbeitungsproblems ". Sie wollten "eine Notation erstellen, die es dem Analytiker ermöglichen sollte, das Problem um jede Hardware herum zu organisieren". Ihre Arbeit war ein erster Versuch, eine abstrakte Spezifikation und eine unveränderliche Basis für den Entwurf verschiedener alternativer Implementierungen unter Verwendung verschiedener Hardwarekomponenten zu schaffen. Ein nächster Schritt in der IS-Modellierung wurde von CODASYL unternommen, einem 1959 gegründeten IT-Industrie-Konsortium, das im Wesentlichen das gleiche Ziel wie Young und Kent anstrebte: die Entwicklung einer "richtigen Struktur für eine maschinenunabhängige Problemdefinitionssprache" auf der Systemebene von Datenverarbeitung". Dies führte zur Entwicklung einer spezifischen IS-Informationsalgebra. [11]
In den 1960er Jahren gewann die Datenmodellierung mit der Einführung des Management Information System (MIS) -Konzepts an Bedeutung. Leondes (2002) zufolge "stellte das Informationssystem während dieser Zeit die Daten und Informationen für Verwaltungszwecke bereit. Das Datenbanksystem der ersten Generation, Integrated Data Store (IDS), wurde von Charles Bachman von General Electric entwickelt. Zwei berühmte Datenbanken In dieser Zeit wurden Modelle, das Netzwerkdatenmodell und das hierarchische Datenmodell vorgeschlagen. "[12] Ende der 1960er Jahre erarbeitete Edgar F. Codd seine Theorien der Datenanordnung und schlug das relationale Modell für die Datenbank vor Management basierend auf Prädikaten erster Ordnung [13]
In den 1970er Jahren entwickelte sich Entity-Relationship-Modellierung zu einer neuen Art der konzeptuellen Datenmodellierung, die 1976 von Peter Chen vorgeschlagen wurde. In der ersten Stufe des Informationssystemdesigns wurden während der Anforderungsanalyse Entitätsbeziehungsmodelle verwendet, um den Informationsbedarf oder die Art der Informationen anzugeben, die in einer Datenbank gespeichert werden sollen. Diese Technik kann jede Ontologie beschreiben, d. H. Eine Übersicht und Klassifizierung von Konzepten und deren Beziehungen für ein bestimmtes Interessengebiet.
In den 1970er Jahren wurde G.M. Nijssen entwickelte die "Natural Language Information Analysis Method" (NIAM) -Methode und entwickelte diese in den 1980er Jahren in Zusammenarbeit mit Terry Halpin in Object-Role Modeling (ORM). Terry Halpins Doktorarbeit aus dem Jahr 1989 schuf jedoch die formale Grundlage, auf der Object-Role Modeling basiert.
Bill Kent verglich in seinem 1978 erschienenen Buch Data and Reality, [14] ein Datenmodell mit einer Karte eines Territoriums und betont, dass in der realen Welt "Autobahnen nicht rot gestrichen sind, Flüsse nicht Grafschaftslinien, die in der Mitte verlaufen, und Sie können auf einem Berg keine Konturlinien sehen ". Im Gegensatz zu anderen Forschern, die versuchten, Modelle zu schaffen, die mathematisch sauber und elegant sind, betonte Kent die grundlegende Unordnung der realen Welt und die Aufgabe des Datenmodellierers, Ordnung aus dem Chaos zu schaffen, ohne die Wahrheit übermäßig zu verfälschen.
In den 80er Jahren, so Jan L. Harrington (2000), "führte die Entwicklung des objektorientierten Paradigmas zu einer grundlegenden Änderung der Art und Weise, wie wir Daten und Verfahren betrachten, die mit Daten arbeiten. Traditionell Daten und Prozeduren wurden separat gespeichert: die Daten und ihre Beziehung in einer Datenbank, die Prozeduren in einem Anwendungsprogramm. Die Objektorientierung kombinierte jedoch die Prozedur einer Entität mit ihren Daten. "[15]
Typen von Datenmodellen [ edit ]
Datenbankmodell [ edit ]
Ein Datenbankmodell ist eine Spezifikation, die beschreibt, wie eine Datenbank strukturiert und verwendet wird.
Mehrere solcher Modelle wurden vorgeschlagen. Gängige Modelle sind:
- Flaches Modell
- Dies ist möglicherweise nicht unbedingt ein Datenmodell. Das flache (oder Tabellen-) Modell besteht aus einem einzigen zweidimensionalen Array von Datenelementen, wobei angenommen wird, dass alle Elemente einer bestimmten Spalte ähnliche Werte sind und dass alle Elemente einer Zeile miteinander in Beziehung stehen. [19659047] Hierarchisches Modell
- Das hierarchische Modell ist dem Netzwerkmodell ähnlich, mit der Ausnahme, dass Verknüpfungen im hierarchischen Modell eine Baumstruktur bilden, während das Netzwerkmodell einen beliebigen Graphen zulässt.
- Netzwerkmodell
- Dieses Modell organisiert Daten unter Verwendung von zwei grundlegende Konstrukte, so genannte Records und Sets. Datensätze enthalten Felder und Mengen definieren Eins-zu-Viele-Beziehungen zwischen Datensätzen: ein Eigentümer, viele Mitglieder.Das Netzwerkdatenmodell ist eine Abstraktion des Entwurfskonzepts, das bei der Implementierung von Datenbanken verwendet wird.
- Das relationale Modell
- ist ein Datenbankmodell basierend auf Prädikatlogik erster Ordnung. Die Grundidee besteht darin, eine Datenbank als eine Sammlung von Prädikaten über eine begrenzte Menge von Prädikatenvariablen zu beschreiben, wobei Einschränkungen für die möglichen Werte und Kombinationen von Werten beschrieben werden. Die Stärke des relationalen Datenmodells liegt in seinen mathematischen Grundlagen und in einer einfachen Benutzerebene Paradigma.
- Objektrelationales Modell
- Ähnlich einem relationalen Datenbankmodell, aber Objekte, Klassen und Vererbung werden direkt in Datenbankschemas und in der Abfragesprache unterstützt.
- Objektrollenmodellierung
- Eine Methode von Datenmodellierung, die als "attributfrei" und "faktenbasiert" definiert wurde. Das Ergebnis ist ein nachweislich korrektes System, aus dem andere gängige Artefakte wie ERD, UML und semantische Modelle abgeleitet werden können. Assoziationen zwischen Datenobjekten werden während des Datenbankentwurfs beschrieben, sodass die Normalisierung ein unvermeidliches Ergebnis des Prozesses ist.
- Sternschema
- Der einfachste Stil eines Data Warehouse-Schemas. Das Sternschema besteht aus einigen "Faktentabellen" (möglicherweise nur einer, die den Namen rechtfertigen), die auf eine beliebige Anzahl von "Dimensionstabellen" verweisen. Das Sternschema gilt als wichtiger Spezialfall des Schneeflockenschemas.
Datenstrukturdiagramm [ edit ]
Ein Datenstrukturdiagramm (DSD ) ist ein Diagramm und ein Datenmodell, das zur Beschreibung konzeptioneller Datenmodelle verwendet wird, indem grafische Notationen bereitgestellt werden, die Entitäten und ihre Beziehungen sowie die Einschränkungen, die sie binden, dokumentieren. Die grundlegenden grafischen Elemente von DSDs sind Boxen, die Entitäten darstellen, und Pfeile, die Beziehungen darstellen. Datenstrukturdiagramme sind am nützlichsten zum Dokumentieren komplexer Datenentitäten.
Datenstrukturdiagramme sind eine Erweiterung des Entity-Relationship-Modells (ER-Modell). In DSDs werden Attribute innerhalb der Entitätsfelder und nicht außerhalb von ihnen angegeben, während Beziehungen als Felder dargestellt werden, die aus Attributen bestehen, die die Bedingungen angeben, die die Entitäten verbinden. DSDs unterscheiden sich vom ER-Modell dadurch, dass das ER-Modell sich auf die Beziehungen zwischen verschiedenen Entitäten konzentriert, während DSDs sich auf die Beziehungen der Elemente innerhalb einer Entität konzentrieren und Benutzern ermöglichen, die Verknüpfungen und Beziehungen zwischen den einzelnen Entitäten vollständig zu sehen.
Es gibt verschiedene Stile zur Darstellung von Datenstrukturdiagrammen, wobei sich die Art und Weise der Definition der Kardinalität bemerkenswert unterscheidet. Sie können zwischen Pfeilspitzen, umgekehrten Pfeilspitzen (Krähenfüßen) oder einer numerischen Darstellung der Kardinalität wählen.
Entity-Relationship-Modell [ edit
Ein Entity-Relationship-Modell (ERM), manchmal als bezeichnet Ein Entity-Relationship-Diagramm (ERD) könnte zur Darstellung eines abstrakten konzeptionellen Datenmodells (oder eines semantischen Datenmodells oder eines physikalischen Datenmodells) verwendet werden, das im Software-Engineering zur Darstellung strukturierter Daten verwendet wird. Es gibt verschiedene Notationen für ERMs. Wie bei DSDs werden Attribute innerhalb der Entitätsfelder und nicht außerhalb von ihnen angegeben, während Beziehungen als Linien mit den Beziehungseinschränkungen als Beschreibungen in der Linie gezeichnet werden. Das E-R-Modell ist zwar robust, kann jedoch visuell schwerfällig werden, wenn Entitäten mit mehreren Attributen dargestellt werden.
Es gibt verschiedene Stile zur Darstellung von Datenstrukturdiagrammen, wobei sich die Art und Weise der Definition der Kardinalität bemerkenswert unterscheidet. Sie können zwischen Pfeilspitzen, umgekehrten Pfeilspitzen (Krähenfüßen) oder einer numerischen Darstellung der Kardinalität wählen.
Geografisches Datenmodell [ edit ]
Ein Datenmodell in Geographischen Informationssystemen ist ein mathematisches Konstrukt zur Darstellung geografischer Objekte oder Oberflächen als Daten. Zum Beispiel,
- Das Vektordatenmodell stellt Geografie als Sammlungen von Punkten, Linien und Polygonen dar;
- stellt das Raster-Datenmodell Geographie als Zellmatrizen dar, die numerische Werte speichern,
- und das Triangulated Irregular Network (TIN) -Datenmodell Geographie als Gruppe von zusammenhängenden, nicht überlappenden Dreiecken. [17]
Gruppen beziehen sich auf den Vorgang der Erstellung einer Karte [18]
NGMDB-Datenmodellanwendungen [18]
miteinander verknüpfte NGMDB-Datenbanken [18]
die 3D-Karteninformationen darstellen [18]
Generisches Datenmodell ]
Generische Datenmodelle sind Verallgemeinerungen herkömmlicher Datenmodelle. Sie definieren standardisierte allgemeine Beziehungstypen zusammen mit den Arten von Dingen, die durch einen solchen Beziehungstyp verknüpft werden können. Generische Datenmodelle werden entwickelt, um einige Nachteile herkömmlicher Datenmodelle zu beheben. Beispielsweise erzeugen verschiedene Modellierer normalerweise verschiedene herkömmliche Datenmodelle derselben Domäne. Dies kann zu Schwierigkeiten beim Zusammenführen der Modelle verschiedener Personen führen und behindert den Datenaustausch und die Datenintegration. Dieser Unterschied ist jedoch immer auf unterschiedliche Abstraktionsebenen in den Modellen und Unterschiede in den Arten von Fakten zurückzuführen, die instanziiert werden können (die semantischen Ausdrucksfähigkeiten der Modelle). Die Modellierer müssen bestimmte Elemente kommunizieren und vereinbaren, die konkreter dargestellt werden sollen, um die Unterschiede zu verringern.
Semantisches Datenmodell [ edit ]
Ein semantisches Datenmodell in der Softwaretechnik ist eine Technik, um die Bedeutung von Daten im Kontext ihrer Beziehungen zu anderen Daten zu definieren. Ein semantisches Datenmodell ist eine Abstraktion, die definiert, wie die gespeicherten Symbole sich auf die reale Welt beziehen. [16] Ein semantisches Datenmodell wird manchmal als konzeptionelles Datenmodell bezeichnet.
Die logische Datenstruktur eines Datenbankverwaltungssystems (DBMS), egal ob hierarchisch, netzwerkbasiert oder relational, kann die Anforderungen an eine konzeptionelle Definition von Daten nicht vollständig erfüllen, da sie nur einen begrenzten Umfang hat und der Implementierungsstrategie des Systems entgegensteht DBMS. Daher hat die Notwendigkeit, Daten aus einer konzeptionellen Sicht zu definieren, zur Entwicklung semantischer Datenmodellierungstechniken geführt. Das heißt, Techniken zum Definieren der Bedeutung von Daten im Kontext ihrer Wechselbeziehungen zu anderen Daten. Wie in der Figur dargestellt. Die reale Welt in Bezug auf Ressourcen, Ideen, Ereignisse usw. wird in physischen Datenspeichern symbolisch definiert. Ein semantisches Datenmodell ist eine Abstraktion, die definiert, wie sich die gespeicherten Symbole auf die reale Welt beziehen. Das Modell muss also eine echte Repräsentation der realen Welt sein. [16]
Datenmodell-Themen [ edit ]
Datenarchitektur [ edit ] 19659043] Datenarchitektur ist das Design von Daten zur Verwendung beim Definieren des Zielzustands und der nachfolgenden Planung, die erforderlich ist, um den Zielzustand zu erreichen. Dies ist normalerweise eine von mehreren Architekturdomänen, die die Säulen einer Unternehmensarchitektur oder Lösungsarchitektur bilden. Eine Datenarchitektur beschreibt die Datenstrukturen, die ein Unternehmen und / oder seine Anwendungen verwenden. Es gibt Beschreibungen von Daten im Speicher und in Bewegung befindlichen Daten. Beschreibungen von Datenspeichern, Datengruppen und Datenelementen; und Zuordnungen dieser Datenartefakte zu Datenqualitäten, Anwendungen, Standorten usw.
Die Datenarchitektur ist für die Verwirklichung des Zielzustands wesentlich. Sie beschreibt, wie Daten in einem bestimmten System verarbeitet, gespeichert und verwendet werden. Sie enthält Kriterien für Datenverarbeitungsvorgänge, die es ermöglichen, Datenflüsse zu entwerfen und auch den Datenfluss im System zu steuern.
Datenmodellierung [ edit ]
Bei der Datenmodellierung in der Softwaretechnik wird ein Datenmodell erstellt, indem formale Datenmodellbeschreibungen unter Verwendung von Datenmodellierungstechniken angewendet werden . Datenmodellierung ist eine Technik zum Definieren von Geschäftsanforderungen für eine Datenbank. Es wird manchmal als Datenbankmodellierung bezeichnet, da ein Datenmodell schließlich in einer Datenbank implementiert wird. [19]
Die Abbildung zeigt, wie Datenmodelle heute entwickelt und verwendet werden. Basierend auf den Datenanforderungen für die zu entwickelnde Anwendung wird ein konzeptionelles Datenmodell entwickelt, möglicherweise im Kontext eines Aktivitätsmodells. Das Datenmodell besteht normalerweise aus Entitätstypen, Attributen, Beziehungen, Integritätsregeln und den Definitionen dieser Objekte. Dieser wird dann als Ausgangspunkt für das Design von Schnittstellen oder Datenbanken verwendet. [8]
Dateneigenschaften [ edit ]
Einige wichtige Eigenschaften von Daten, für die Anforderungen erfüllt werden müssen, sind:
- Definitionsbezogene Eigenschaften [8]
- Relevanz : Die Nützlichkeit der Daten in Zusammenhang mit Ihrem Unternehmen
- Klarheit : Die Verfügbarkeit einer klaren und gemeinsam genutzten Definition für die Daten.
- Konsistenz : die Kompatibilität desselben Datentyps aus verschiedenen Quellen.
- inhaltsbezogene Eigenschaften
- Aktualität : die Verfügbarkeit von Daten zum erforderlichen Zeitpunkt und wie aktuell diese Daten sind.
- Genauigkeit : wie nahe an der Wahrheit die Daten sind.
] - Eigenschaften bezogen sich sowohl auf die Definition als auch auf den Inhalt
- Vollständigkeit : Wie viele der erforderlichen Daten sind verfügbar.
- Zugänglichkeit : Wo, wie und wem die Daten verfügbar sind oder nicht (z. B. Sicherheit).
- cost : Die Kosten, die anfallen, um die Daten zu erhalten und verfügbar zu machen.
Datenorganisation [ edit
Eine andere Art von Datenmodell beschreibt, wie zum Organisieren von Daten mithilfe eines Datenbankverwaltungssystems oder einer anderen Datenverwaltungstechnologie. Es beschreibt zum Beispiel relationale Tabellen und Spalten oder objektorientierte Klassen und Attribute. Ein solches Datenmodell wird manchmal als physisches Datenmodell bezeichnet, aber in der ursprünglichen ANSI-Architektur mit drei Schemata wird es als "logisch" bezeichnet. In dieser Architektur beschreibt das physische Modell die Speichermedien (Zylinder, Spuren und Tablespaces). Idealerweise wird dieses Modell aus dem oben beschriebenen eher konzeptuellen Datenmodell abgeleitet. Es kann jedoch unterschiedlich sein, um Einschränkungen wie Verarbeitungskapazität und Nutzungsmuster Rechnung zu tragen.
Während die Datenanalyse ein gebräuchlicher Begriff für die Datenmodellierung ist, hat die Aktivität tatsächlich mehr mit den Ideen und Methoden der Synthese von zu tun (was allgemeine Vorstellungen von bestimmten Fällen herleitet) als sie macht mit Analyse (Identifizieren von Komponentenkonzepten aus allgemeineren). [ Vermutlich nennen wir uns Systemanalytiker, weil niemand sagen kann, Systems-Synthesiker. . Die Datenmodellierung versucht, die interessierenden Datenstrukturen zu einem zusammenhängenden, untrennbaren Ganzen zusammenzuführen, indem unnötige Datenredundanzen eliminiert werden und Datenstrukturen miteinander verknüpft werden mit Beziehungen.
Ein anderer Ansatz ist die Verwendung adaptiver Systeme wie künstlicher neuronaler Netze, die implizit Datenmodelle autonom erstellen können.
Datenstruktur [ edit ]
Eine Datenstruktur ist eine Möglichkeit, Daten in einem Computer so zu speichern kann effizient genutzt werden. Es ist eine Organisation von mathematischen und logischen Datenkonzepten. Häufig ermöglicht eine sorgfältig ausgewählte Datenstruktur die Verwendung des effizientesten Algorithmus. Die Wahl der Datenstruktur beginnt oft mit der Wahl eines abstrakten Datentyps.
Ein Datenmodell beschreibt die Struktur der Daten innerhalb einer bestimmten Domäne und damit implizit die zugrunde liegende Struktur dieser Domäne selbst. Dies bedeutet, dass ein Datenmodell tatsächlich eine dedizierte Grammatik für eine dedizierte künstliche Sprache für diese Domäne spezifiziert. Ein Datenmodell stellt Entitätsklassen (Arten von Dingen) dar, über die ein Unternehmen Informationen halten möchte, die Attribute dieser Informationen und Beziehungen zwischen diesen Entitäten und (oft implizite) Beziehungen zwischen diesen Attributen. Das Modell beschreibt die Organisation der Daten in gewissem Umfang unabhängig davon, wie Daten in einem Computersystem dargestellt werden können.
Die durch ein Datenmodell repräsentierten Entitäten können die materiellen Entitäten sein, aber Modelle, die solche konkreten Entitätsklassen enthalten, neigen dazu, sich mit der Zeit zu ändern. Robuste Datenmodelle identifizieren häufig Abstraktionen solcher Entitäten. Ein Datenmodell kann beispielsweise eine Entitätsklasse namens "Person" enthalten, die alle Personen darstellt, die mit einer Organisation interagieren. Eine solche abstrakte Entitätsklasse ist in der Regel geeigneter als solche, die als "Verkäufer" oder "Angestellter" bezeichnet werden und die bestimmte Rollen dieser Personen identifizieren.
Datenmodelltheorie [ edit ]
Der Begriff Datenmodell kann zwei Bedeutungen haben: [20]
- Ein Datenmodell -Theorie dh eine formale Beschreibung des How Daten können strukturiert sein und darauf zugegriffen werden.
- Eine Datenmodell -Instanz dh Anwenden einer Datenmodell -Theorie um eine praktische Datenmodell -Instanz für eine bestimmte Anwendung zu erstellen
Eine Datenmodelltheorie besteht aus drei Hauptkomponenten: [20]
- Der strukturelle Teil: Eine Sammlung von Datenstrukturen, die zum Erstellen von Datenbanken verwendet werden, die die von der Datenbank modellierten Entitäten oder Objekte darstellen.
- Der Integritätsteil: Eine Sammlung von Regeln, die die Einschränkungen festlegen, die an diese Datenstrukturen gestellt werden, um die strukturelle Integrität zu gewährleisten.
- Der Manipulationsteil: Eine Sammlung von Operatoren, die auf die Datenstrukturen angewendet werden können, um die Daten zu aktualisieren und abzufragen in der Datenbank enthalten.
Für Beispiel In dem relationalen Modell basiert der strukturelle Teil auf einem modifizierten Konzept der mathematischen Beziehung. Der Integritätsteil wird in der Logik erster Ordnung ausgedrückt, und der Manipulationsteil wird unter Verwendung der relationalen Algebra, des Tupelkalküls und des Domänenkalküls ausgedrückt.
Eine Datenmodellinstanz wird durch Anwenden einer Datenmodelltheorie erstellt. Dies geschieht normalerweise, um einige Unternehmensanforderungen zu erfüllen. Geschäftsanforderungen werden normalerweise durch ein semantisches logisches Datenmodell erfasst. Diese wird in eine physische Datenmodellinstanz umgewandelt, aus der eine physische Datenbank generiert wird. Beispielsweise kann ein Datenmodellierer ein Datenmodellierungstool verwenden, um ein Entitätsbeziehungsmodell des Unternehmensdaten-Repositorys eines Unternehmens zu erstellen. Dieses Modell wird in ein relationales Modell umgewandelt, das wiederum eine relationale Datenbank generiert.
Patterns [ edit ]
Patterns [21] sind gebräuchliche Datenmodellierungsstrukturen, die in vielen Datenmodellen vorkommen.
Verwandte Modelle [ edit ]
Datenflussdiagramm [ edit ]
- Relevanz : Die Nützlichkeit der Daten in Zusammenhang mit Ihrem Unternehmen
- Klarheit : Die Verfügbarkeit einer klaren und gemeinsam genutzten Definition für die Daten.
- Konsistenz : die Kompatibilität desselben Datentyps aus verschiedenen Quellen.
- Aktualität : die Verfügbarkeit von Daten zum erforderlichen Zeitpunkt und wie aktuell diese Daten sind.
- Genauigkeit : wie nahe an der Wahrheit die Daten sind.
- Vollständigkeit : Wie viele der erforderlichen Daten sind verfügbar.
- Zugänglichkeit : Wo, wie und wem die Daten verfügbar sind oder nicht (z. B. Sicherheit).
- cost : Die Kosten, die anfallen, um die Daten zu erhalten und verfügbar zu machen.
No comments:
Post a Comment