logo

Datenbankschemata

Heutzutage sind Daten eines der wichtigsten Dinge in der Geschäftswelt. Jedes Unternehmen erfasst die Daten seiner Kunden, um deren Verhalten zu verstehen. In der Welt des Internets wachsen die Daten wie verrückt, daher benötigen Unternehmen fortschrittlichere Datenbanklösungen, mit denen sie können die Datenbanksysteme warten und wann immer sie Daten zur Lösung von Geschäftsproblemen benötigen, können sie problemlos die gewünschten Daten erhalten. Um diese Bedingung zu erfüllen, ist das Datenbankschema im Bild erforderlich.

Was ist Schema?

  • Das Skelett der Datenbank wird durch die Attribute erstellt und dieses Skelett wird Schema genannt.
  • Schema erwähnt die logischen Einschränkungen wie Tabelle, Primärschlüssel usw.
  • Das Schema stellt nicht den Datentyp der Attribute dar.

Details eines Kunden



Details eines Kunden

Schema des Kunden

Schema des Kunden

Datenbankschema

  • Ein Datenbankschema ist ein logische Darstellung von Daten Das zeigt, wie die Daten in einer Datenbank logisch gespeichert werden sollten. Es zeigt, wie die Daten organisiert sind und welche Beziehung zwischen den Tabellen besteht.
  • Das Datenbankschema enthält Tabellen, Felder, Ansichten und Beziehungen zwischen verschiedenen Schlüsseln wie z Primärschlüssel , Unbekannter Schlüssel .
  • Die Daten werden in Form von unstrukturierten Dateien gespeichert, was den Zugriff auf die Daten erschwert. Um das Problem zu lösen, werden die Daten mithilfe eines Datenbankschemas strukturiert organisiert.
  • Das Datenbankschema sorgt für die Organisation von Daten und die Beziehung zwischen den gespeicherten Daten.
  • Das Datenbankschema definiert eine Reihe von Richtlinien, die die Datenbank steuern und Informationen über die Art und Weise des Zugriffs auf die Daten und deren Änderung bereitstellen.

Arten von Datenbankschemata

Es gibt drei Arten von Datenbankschemata:



Schema der physischen Datenbank

  • Ein physisches Schema definiert, wie die Daten oder Informationen physisch in den Speichersystemen in Form von Dateien und Indizes gespeichert werden. Dies ist der tatsächliche Code oder die Syntax, die zum Erstellen der Struktur einer Datenbank erforderlich ist. Wenn wir eine Datenbank auf physischer Ebene entwerfen, wird dies als physisches Schema bezeichnet.
  • Der Datenbankadministrator wählt, wo und wie die Daten in den verschiedenen Speicherblöcken gespeichert werden.

Logisches Datenbankschema

  • Ein logisches Datenbankschema definiert alle logischen Einschränkungen, die auf die gespeicherten Daten angewendet werden müssen, und beschreibt außerdem Tabellen, Ansichten, Entitätsbeziehungen und Integritätsbeschränkungen.
  • Das logische Schema beschreibt, wie die Daten in Form von Tabellen gespeichert werden und wie die Attribute einer Tabelle verbunden sind.
  • Benutzen IS-Modellierung Die Beziehung zwischen den Komponenten der Daten bleibt erhalten.
  • Im logischen Schema werden verschiedene Integritätsbeschränkungen definiert, um die Qualität der Einfügung aufrechtzuerhalten und die Daten zu aktualisieren.

Datenbankschema anzeigen

  • Es handelt sich um ein Design auf Ansichtsebene, das die Interaktion zwischen Endbenutzer und Datenbank definieren kann.
  • Der Benutzer kann mithilfe der Schnittstelle mit der Datenbank interagieren, ohne viel über den Speichermechanismus der Daten in der Datenbank zu wissen.
Datenbankschema anzeigen

Dreischichtiges Schemadesign

Linkedlist Java

Erstellen eines Datenbankschemas

Zur Erstellung eines Schemas wird in jeder Datenbank die Anweisung CREATE SCHEMA verwendet. Unterschiedliche Datenbanken haben hierfür jedoch unterschiedliche Bedeutungen. Im Folgenden betrachten wir einige Anweisungen zum Erstellen eines Datenbankschemas in verschiedenen Datenbanksystemen:

1. MySQL: In MySQL verwenden wir die CREATE SCHEMA-Anweisung zum Erstellen der Datenbank, da in MySQL CREATE SCHEMA und CREATE DATABASE beide Anweisungen ähnlich sind.



2. SQL-Server: In SQL Server verwenden wir die CREATE SCHEMA-Anweisung zum Erstellen eines neuen Schemas.

3. Oracle-Datenbank: In der Oracle-Datenbank verwenden wir CREATE USER zum Erstellen eines neuen Schemas, da in der Oracle-Datenbank bereits für jeden Datenbankbenutzer ein Schema erstellt wird. Die Anweisung CREATE SCHEMA erstellt kein Schema, sondern füllt das Schema mit Tabellen und Ansichten und ermöglicht außerdem den Zugriff auf diese Objekte, ohne dass mehrere SQL-Anweisungen für mehrere Transaktionen erforderlich sind.

Datenbankschema-Designs

Es gibt viele Möglichkeiten, eine Datenbank zu strukturieren, und wir sollten zum Erstellen unserer Datenbank das am besten geeignete Schemadesign verwenden, da ineffektive Schemadesigns schwierig zu verwalten sind und zusätzlichen Speicher und Ressourcen verbrauchen.

Objekt für JSON in Java

Das Schemadesign hängt hauptsächlich von den Anforderungen der Anwendung ab. Hier haben wir einige effektive Schema-Designs zum Erstellen unserer Anwendungen. Werfen wir einen Blick auf die Schema-Designs:

  1. Flaches Modell
  2. Hierarchisches Modell
  3. Netzwerkmodell
  4. Relationales Modell
  5. Sternenschema
  6. Schneeflockenschema

Flaches Modell

Ein flaches Modellschema ist ein 2D-Array, in dem jede Spalte denselben Daten-/Informationstyp enthält und die Elemente mit Zeilen miteinander in Beziehung stehen. Es ist wie eine Tabelle oder eine Tabellenkalkulation. Dieses Schema eignet sich besser für kleine Anwendungen, die keine komplexen Daten enthalten.

Flaches Modell

Entwerfen eines flachen Modells

Hierarchisches Modell

Daten werden mithilfe von Eltern-Kind-Beziehungen und einer baumartigen Struktur im hierarchischen Datenbankmodell angeordnet. Da jeder Datensatz aus mehreren untergeordneten und einem übergeordneten Datensatz besteht, kann er zur Darstellung von Eins-zu-viele-Beziehungen in Diagrammen wie Organigrammen verwendet werden. Obwohl es offensichtlich ist, ist es in komplizierten Partnerschaften möglicherweise nicht so anpassungsfähig.

Hierarchisches Modell

Entwerfen eines hierarchischen Modells

Netzwerkmodell

Das Netzwerkmodell und das hierarchische Modell sind ziemlich ähnlich, mit einem wichtigen Unterschied, der mit den Datenbeziehungen zusammenhängt. Das Netzwerkmodell ermöglicht Viele-zu-Viele-Beziehungen, während hierarchische Modelle Eins-zu-Viele-Beziehungen zulassen.

Java-Swing
Netzwerkmodell

Entwerfen eines Netzwerkmodells

Relationales Modell

Das relationale Modell wird hauptsächlich für relationale Datenbanken verwendet, bei denen die Daten als Beziehungen der Tabelle gespeichert werden. Das relationales Modellschema ist besser für die objektorientierte Programmierung.

Relationales Modell

Entwerfen eines relationalen Modells

Sternenschema

Das Sternschema eignet sich besser zum Speichern und Analysieren großer Datenmengen. In der Mitte befindet sich eine Faktentabelle und mehrere Dimensionstabellen, die wie ein Stern damit verbunden sind. Die Faktentabelle enthält die numerischen Daten, die Geschäftsprozesse ausführen, und die Dimensionstabelle enthält Daten zu Dimensionen wie Produkt, Zeit, Personen usw . oder wir können sagen, diese Tabelle enthält die Beschreibung der Faktentabelle. Das Sternschema ermöglicht es uns, die Daten von zu strukturieren RDBMS .

Sternenschema

Entwerfen eines Sternschemas

Schneeflockenschema

Genau wie das Star-Schema verfügt auch das Snowflake-Schema über eine Faktentabelle in der Mitte und mehrere damit verbundene Dimensionstabellen. Der Hauptunterschied zwischen beiden Modellen besteht jedoch darin, dass die Dimensionstabellen im Snowflake-Schema weiter in mehrere verwandte Tabellen normalisiert werden. Das Snowflake-Schema wird zur Analyse großer Datenmengen verwendet.

Schneeflockenschema

Entwerfen eines Schneeflockenschemas

Unterschied zwischen logischem und physischem Datenbankschema

Physikalisches Schema

Logisches Schema

Das physische Schema beschreibt die Art der Datenspeicherung auf der Festplatte.

Das logische Schema stellt die konzeptionelle Ansicht bereit, die die Beziehung zwischen den Datenentitäten definiert.

Niedriges Abstraktionsniveau. Ein hohes Maß an Abstraktion haben.

Das Design der Datenbank ist unabhängig von einem Datenbankverwaltungssystem.

Linux welcher Befehl

Der Entwurf einer Datenbank muss mit einem bestimmten Datenbankverwaltungssystem oder einer bestimmten Hardwareplattform funktionieren.

Änderungen im physischen Schema wirken sich auf das logische Schema aus Alle am logischen Schema vorgenommenen Änderungen haben nur minimale Auswirkungen auf das physische Schema
Das physische Schema enthält keine Attribute. Das logische Schema umfasst Attribute.
Das physische Schema enthält die Attribute und ihre Datentypen. Das logische Schema enthält keine Attribute oder Datentypen.
Beispiele: Datendefinitionssprache (DDL), Speicherstrukturen, Indizes. Beispiele: Entity-Relationship-Diagramm , Unified Modeling Language, Klassendiagramm.

Vorteile des Datenbankschemas

  • Gewährleistung der Datenkonsistenz: Datenbankschema stellt die Datenkonsistenz sicher und verhindert Duplikate.
  • Aufrechterhaltung der Skalierbarkeit: Ein gut gestaltetes Datenbankschema hilft bei der Aufrechterhaltung des Hinzufügens neuer Tabellen in der Datenbank und hilft bei der Verarbeitung großer Datenmengen in wachsenden Tabellen.
  • Leistungsverbesserung: Das Datenbankschema hilft beim schnelleren Datenabruf, wodurch die Bearbeitungszeit für die Datenbanktabellen verkürzt werden kann.
  • Einfache Wartung: Das Datenbankschema hilft bei der Pflege der gesamten Datenbank, ohne den Rest der Datenbank zu beeinträchtigen
  • Datensicherheit: Das Datenbankschema hilft bei der Speicherung sensibler Daten und erlaubt nur autorisierten Zugriff auf die Datenbank.

Datenbankinstanz

Das Datenbankschema wird definiert, bevor die eigentliche Datenbank erstellt wird. Nachdem die Datenbank betriebsbereit ist, ist es sehr schwierig, das Schema zu ändern, da das Schema die grundlegende Struktur der Datenbank darstellt. Die Datenbankinstanz enthält keine Informationen zu den in der Datenbank gespeicherten Daten. Daher stellt die Datenbankinstanz die Daten und Informationen dar, die zu einem bestimmten Zeitpunkt aktuell in der Datenbank gespeichert sind.

Datenbankinstanz

Datenbankinstanz der Kundentabelle zu einem bestimmten Zeitpunkt

Abschluss

  • Die Struktur der Datenbank wird als Schema bezeichnet und stellt unter anderem logische Einschränkungen wie Tabelle und Schlüssel dar.
  • Drei-Schema-Architektur wurde entwickelt, um den direkten Zugriff des Benutzers auf die Datenbank zu verhindern.
  • Da die in der Datenbank gespeicherten Informationen häufigen Änderungen unterliegen, handelt es sich bei der Instanz um eine Darstellung von Daten zu einem bestimmten Zeitpunkt.