2010-11-25 12 views

Antwort

44

Im konzeptuellen Datenmodell machen Sie sich nur Gedanken über das High-Level-Design - welche Tabellen existieren und welche Verbindungen zwischen ihnen bestehen sollten. In dieser Phase erkennen Sie Entitäten in Ihrem Modell und die Beziehungen zwischen ihnen.

Das logische Modell kommt nach der konzeptionellen Modellierung, wenn Sie explizit definieren, was die Spalten in jeder Tabelle sind. Beim Schreiben des logischen Modells können Sie auch das tatsächliche Datenbanksystem berücksichtigen, für das Sie entwerfen, aber nur, wenn es sich auf das Design auswirkt (dh, wenn keine Trigger vorhanden sind, können Sie einige Redundanzspalten usw. entfernen)

es gibt auch physikalisches Modell, das auf dem logischen Modell erarbeitet und weist jede Spalte mit seiner Art/Länge usw.

Here ist ein gutes Bild, das jeder der drei Ebenen beschrieben.

+5

Diese Antwort ist nur korrekt, wenn Sie sicher sind, dass Sie ein System in einer relationalen Datenbank erstellen werden. Konzeptionelle Datenmodellierung ist auch sehr nützlich, wenn Sie eine nicht-relationale Datenbank (z. B. NoSQL wie Graph Database) oder überhaupt keine Datenbank verwenden! (z. B. Ihr eigener Code, oder um die richtigen Klassen und Objekte in Ihrem Code herauszufinden, oder gar keinen Code beim Modellieren einer Domain oder eines Unternehmens) –

+0

@veljkoz: Ich habe irgendwo studiert, dass konzeptionell dasselbe wie logische Ebene ist. Hier ist die Referenz Bitte löschen Sie meine Zweifel. Http://jcsites.juniata.edu/faculty/rhodes/dbms/dbarch.htm – Sudhir

+0

@ Sudhir Sie diskutieren beide die gleiche Ebene des Designs, aber mit unterschiedlichen Detaillierungsgrad, so Ja, Sie könnten sie wahrscheinlich mit dem gleichen Namen benennen (obwohl ich persönlich eher "logisch" als "konzeptionell" als einkapselnden Namen wählen würde). Das ist Theorie, also wirst du wahrscheinlich auch andere Varianten finden. – veljkoz

8

Diese Begriffe sind leider mit mehreren möglichen Definitionen überladen. Gemäß dem ANSI-SPARC- "Drei-Schema" -Modell besteht das konzeptuelle Schema oder das konzeptuelle Modell beispielsweise aus dem Satz von Objekten in einer Datenbank (Tabellen, Ansichten usw.) im Gegensatz zu dem externen Schema, die die Objekte sind, die Benutzer sehen.

In den Datenmanagement-Berufen und vor allem bei den Daten Modellierer/Architekten, wird der Begriff Begriffsmodell häufig eine vorläufige oder virtuelle Datenbank Design bedeutete ein semantisches Modell während des Begriffs Logical Modell verwendet bedeuten, die verwendet. Dies ist wahrscheinlich die Verwendung, auf die Sie am Arbeitsplatz am wahrscheinlichsten stoßen.

In der akademischen Verwendung und bei der Beschreibung von DBMS-Architekturen bedeutet Logische Ebene jedoch die Datenbankobjekte (Tabellen, Ansichten, Tabellen, Schlüssel, Einschränkungen usw.) im Unterschied zur physischen Ebene (Dateien, Indizes, Speicher). Um die Dinge noch weiter zu verwechseln, wird am Arbeitsplatz unter dem Begriff Physisches Modell oft das Design verstanden, das in einer tatsächlichen Datenbank implementiert oder geplant ist. Das kann sowohl "physische" als auch "logische" Ebenenkonstrukte beinhalten (sowohl Tabellen als auch Indizes).

Wenn Sie auf einen dieser Begriffe stoßen, müssen Sie sich unbedingt erkundigen, was beschrieben wird, es sei denn, der Kontext macht es offensichtlich.

Für eine Diskussion dieser Unterschiede, sehen Sie sich Data Modeling Essentials von Simsion und Witt an.

1

Ich muss sowohl ein logisches Modell als auch ein konzeptionelles Modell erstellen. Alle Erklärungen hier sind sehr vage. Der Link oben zeigt nur den Unterschied, dass ein konzeptionelles Modell ein logisches Modell ohne Felder ist. Ok gut, ich erwähne den Namen der Datenbank nicht. Es scheint völlig überflüssig zu sein.

Ich weiß wirklich nicht was "semantisch" bedeutet. kann jemand erklären, was ich anders machen würde, indem ich "Englisch" benutze und möglicherweise einen Link zu besseren Beispielen poste als ein Bild, das ein Bild zeigt, das Felder hat und eines, das das nicht hat. Die Schlagworte sind alle gut und gut, aber es ist so vage, es nicht praktisch zu implementieren.

tue ich etwas anderes als mein logisches Modell (das ist im Grunde mein physikalisches Modell umgekehrt aus der DB, klicken Sie auf eine Schaltfläche in den genannten Werkzeugen und die Bilder sehen ein wenig anders aus und dann nehmen Sie die Datentypen).

Von dem, was ich praktisch sehen kann (und ohne Buzzwords)

physikalisches Modell: eigentlich Tabellen. Die kleinen Bilder haben Datentypen in ihnen und benannt pk/fk Einschränkungen Logisches Modell: Klicken Sie auf den kleinen Knopf mein Werkzeug (mit Oracles SQL Developer Data Modeller, ich habe keine Erwin-Lizenz und 2010 visio nicht mehr Reverse-Ingenieure aus der DB) und dann ändern sich die Bilder auf dem Bildschirm leicht. Die Datentypen sind verschwunden und die Namen der Abhängigkeiten sind verschwunden, dann ändern sich die Farben der Tabellendarstellungen in Violett (jetzt nenne ich sie Entitäten).

ok. Also, wie würde mein konzeptionelles Modell dann anders aussehen: genau dasselbe wie mein logisches Modell minus die Felder. Ich würde denken, dass es mehr als das gibt. Rezitieren, dass es eine 'semantische' Darstellung von Daten klingt wirklich nett und schick, aber macht keinen Sinn für jemanden, der eine dieser zuvor nicht gemacht hat.

+0

Ich stimme zu, die Erklärungen sind vage. Der Hauptgrund für die Existenz von drei Schichten ist a) Klarheit und b) sie tragen dazu bei, das Datenbankdesign zu entwickeln. Datenbankmodelle werden tendenziell eher groß. Wenn Sie mit dem Erstellen eines Datenbankentwurfs beginnen, möchten Sie am Anfang mehr oder weniger einfach die Hauptelemente festlegen und von dort aus fortfahren. Auf dieser Ebene sind Entitätsnamen und Beziehungen zwischen Entitäten am wichtigsten. Später (bei anderen Modelltypen) fügen Sie bei Bedarf Details hinzu (Abhängigkeiten, Beziehungen, Indizes usw.). – Robotron

-1

logisches Datenmodell

Ein logisches Datenmodell beschreibt die Daten so detailliert wie möglich, ohne Rücksicht darauf, wie sie physikalisch in der Datenbank implementiert sein werden. Zu den Funktionen eines logischen Datenmodells gehören: · Enthält alle Entitäten und Beziehungen zwischen ihnen. · Alle Attribute für jede Entität sind angegeben. · Der Primärschlüssel für jede Entität ist angegeben. · Fremdschlüssel (Schlüssel, die die Beziehung zwischen verschiedenen Entitäten angeben) werden angegeben. · Normalisierung erfolgt auf dieser Ebene. konzeptionelles Datenmodell

Ein konzeptionelles Datenmodell identifiziert die Beziehungen auf höchster Ebene zwischen den verschiedenen Entitäten. Zu den Funktionen des konzeptionellen Datenmodells gehören: · Enthält die wichtigen Entitäten und die Beziehungen zwischen ihnen. · Es ist kein Attribut angegeben. · Kein Primärschlüssel angegeben.

+0

Wo haben Sie diese Antwort ausgeschnitten und eingefügt? –

2

Logische Datenbank Modell

Logische Datenbank-Modellierung ist für die Erstellung von Geschäftsanforderungen erforderlich und die die Anforderungen als Modell. Es ist hauptsächlich mit der Erfassung von Geschäftsanforderungen und nicht mit dem Datenbankdesign verbunden. Bei den Informationen, die gesammelt werden müssen, handelt es sich um Organisationseinheiten, Geschäftseinheiten und Geschäftsprozesse.

Sobald die Informationen zusammengestellt, Berichte und Diagramme erstellt, die allerdings darunter:

ERD-Entity-Relationship-Diagramm zeigt die Beziehung zwischen den verschiedenen Kategorien von Daten und zeigt die verschiedenen Kategorien von Daten für die Entwicklung einer Datenbank erforderlich . Geschäftsprozessdiagramm - Es zeigt die Aktivitäten von Personen innerhalb des Unternehmens. Es zeigt, wie sich die Daten innerhalb der Organisation bewegen, basierend darauf, welche Anwendungsschnittstelle entworfen werden kann. Feedback-Dokumentation von Benutzern.

Logische Datenbankmodelle bestimmen im Wesentlichen, ob alle Anforderungen des Unternehmens erfasst wurden. Es wird von Entwicklern, dem Management und schließlich den Endbenutzern überprüft, ob vor dem Start der physischen Modellierung weitere Informationen gesammelt werden müssen.

Physikalisches Datenbankmodell Die physische Datenbankmodellierung befasst sich mit dem Entwerfen der tatsächlichen Datenbank basierend auf den Anforderungen, die während der Modellierung logischer Datenbanken erfasst wurden. Alle gesammelten Informationen werden in relationale Modelle und Geschäftsmodelle umgewandelt. Während der physischen Modellierung werden Objekte auf einer Ebene definiert, die als Schemaebene bezeichnet wird.Ein Schema wird als eine Gruppe von Objekten betrachtet, die in einer Datenbank miteinander in Beziehung stehen. Tabellen und Spalten werden gemäß den Informationen erstellt, die während der logischen Modellierung bereitgestellt werden. Primärschlüssel, eindeutige Schlüssel und Fremdschlüssel werden definiert, um Einschränkungen bereitzustellen. Indizes und Snapshots sind definiert. Daten können zusammengefasst werden, und den Benutzern wird eine alternative Perspektive geboten, sobald die Tabellen erstellt wurden.

Die physische Datenbankmodellierung hängt von der Software ab, die bereits in der Organisation verwendet wird. Es ist softwarespezifisch. Die physische Modellierung umfasst:

Servermodelldiagramm: Es enthält Tabellen und Spalten sowie verschiedene Beziehungen, die in einer Datenbank vorhanden sind. Datenbank-Design-Dokumentation. Feedback-Dokumentation der Benutzer.

Zusammenfassung:

1.Logical Datenbank-Modellierung ist vor allem für Informationen über Geschäftsanforderungen zu sammeln und beinhaltet nicht die Gestaltung von Datenbanken; während die physische Datenbankmodellierung hauptsächlich für das tatsächliche Entwerfen der Datenbank benötigt wird. 2.Logical-Datenbank-Modellierung enthält keine Indizes und Einschränkungen; Das logische Datenbankmodell für eine Anwendung kann für verschiedene Datenbanksoftware und Implementierungen verwendet werden. während die physische Datenbankmodellierung software- und hardwarespezifisch ist und Indizes und Einschränkungen aufweist. 3.Logische Datenbankmodellierung umfasst; ERD, Geschäftsprozessdiagramme und Benutzer-Feedback-Dokumentation; während die Modellierung physikalischer Datenbanken umfasst; Server-Modell-Diagramm, Datenbank-Design-Dokumentation und Benutzer-Feedback-Dokumentation.

Weiterlesen: Unterschied zwischen logischem und physischem Datenbankmodell | Unterschied zwischen | Logisches vs. physikalisches Datenbankmodell http://www.differencebetween.net/technology/software-technology/difference-between-logical-and-physical-database-model/#ixzz3AxPVhTlg

0

Die meisten Antworten hier beziehen sich ausschließlich auf Notationen und Syntax der Datenmodelle auf verschiedenen Abstraktionsebenen. Der Hauptunterschied wurde von niemandem erwähnt. Konzeptionelle Modelle Oberflächenkonzepte. Konzepte beziehen sich auf andere Weise auf eine andere Weise auf eine Entität auf der logischen Ebene der Abstraktion. Konzepte sind näher an Typen. Normalerweise zeigen Sie auf konzeptioneller Ebene Arten von Dingen an (dies bedeutet nicht, dass Sie den Begriff "Typ" in Ihrer Namenskonvention verwenden müssen) und Beziehungen zwischen diesen Typen. Daher ist die Existenz von Viele-zu-Viele-Beziehungen nicht die Regel, sondern die Folge der Beziehungen zwischen typweisen Elementen. In logischen Modellen stellen Entitäten eine Instanz dieser Sache in der realen Welt dar. In konzeptuellen Modellen wird nicht die Beschreibung einer Instanz einer Entität und ihrer Beziehungen erwartet, sondern die Beschreibung des "Typs" oder der "Klasse" dieser bestimmten Entität. Beispiele: - Fahrzeuge haben Räder und Räder sind in Fahrzeugen verwendet. Auf konzeptueller Ebene ist dies eine Viele-zu-Viele-Beziehung. - Ein bestimmtes Fahrzeug (z. B. ein Fahrzeug) mit einer spezifischen Zulassungsnummer hat 5 Räder und jedes einzelne Rad, jedes mit einer Seriennummer bezieht sich nur auf dieses bestimmte Fahrzeug . Auf der logischen Ebene ist dies eine Eins-zu-viele-Beziehung.

Konzeptionelle Abdeckungen "Typen/Klassen". Logical deckt "Instanzen" ab.

Ich würde einen weiteren Kommentar über Datenbanken hinzufügen. Ich stimme einem der Kollegen zu, die oben erwähnt haben, dass konzeptionelle und logische Modelle absolut nichts mit Datenbanken zu tun haben. Konzeptionelle und logische Modelle beschreiben die reale Welt aus einer Datenperspektive mit Notationen wie ER oder UML. Datenbankhersteller haben ihre Produkte intelligent so gestaltet, dass sie der gleichen Philosophie folgen, mit der die Welt logisch modelliert wurde, und sie erstellten Relational Databases, die jedermann das Leben erleichtern. Sie können die Datenlandschaft Ihrer Organisation auf allen Ebenen mit dem konzeptionellen und logischen Modell beschreiben und niemals eine relationale Datenbank verwenden.

Nun, ich denke, das ist mein 2 Cent ...

0

Konzeptionelles Schema - umfasst Entitäten und Beziehungen. Sollte zuerst erstellt werden. Im Gegensatz zu einigen der anderen Antworten; Tabellen sind hier nicht definiert. Zum Beispiel ist eine "Viele-zu-viele" -Tabelle nicht in einem konzeptionellen Datenmodell enthalten, sondern ist als eine "Viele-zu-viele" -Beziehung zwischen Entitäten definiert.

Logisches Schema - Deckt Tabellen, Attribute, Schlüssel, obligatorische Rolleneinschränkungen und referenzielle Integrität ab, unabhängig von der physischen Implementierung. Dinge wie Indizes sind nicht definiert, Attributtypen sollten logisch gehalten werden, z.B. Text anstelle von varchar2. Sollte basierend auf dem konzeptionellen Schema erstellt werden.