Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

DB Begriffsdefinitionen

Empfohlene Antworten

Veröffentlicht

Hallo,

im DB / BI Bereich werden die Begriffe Datenbank, Katalog und Schema und oft synonym verwendet. Gibt es hier Unterschiede oder ist wirklich immer dasselbe gemeint?

G

  • 1 Monat später...

"Während Kataloge i.d.R. nur selbständig erscheinende Literatur (Monographien) verzeichnen und bestandsbezogen sind, verzeichnen Datenbanken jede Art von Literatur bestandsunabhängig. Zusätzlich bieten Datenbanken eine bisweilen bessere sachliche Suche"

"Ein Schema ist ein sprachlich artikulierter, universeller Aspekt eines Gegenstandes (Datei/Programm), welcher Informationen überträgt."

Siehe dazu auch:

http://de.wikipedia.org/wiki/Schema_(Informatik)

Nunja, das Schema ist zunächst die formale Beschreibung der Datenstrukturen.

Allerdings gibts in der SQL-Welt auch das Kommando "CREATE SCHEMA" - hier ist eigentlich ein Namespace gemeint (an dem aber auch access controls hängen können).

"Katalog" ist IMHO eher die technische Sicht, hier werden Informationen über die Datenstrukturen, udgl. gespeichert (meist sind das auch lediglich Tabellen, auf die man aber nicht direkt zugreift). Der Begriff stammt noch aus der pre-SQL-Welt.

Die Datenbank ist dann das "große Ganze", historisch sogar oft an eine eigene Server-Instanz gebunden, heutzutage aber meist eher ein rein logisches Konzept (ähnlich eines Namensraums).

AFAIK gibts für diese Begriffe keine allgemeingültige exakte Definition, sondern immer stark von Datenbank-Konzept und den konkret verwendeten Produkten abhängig.

Bei PostgreSQL siehts grob skizziert so aus:

* Datenbank: der "große" Container. Hier liegen alle Objekte (tables, sequences, indices, ...) drin.

* Eine Client-Connection ist stets an eine bestimmte Datenbank gebunden

* User werden global, außerhalb der einzelnen Datenbanken gemanaged (an die rohen Daten kommt man Normalfall nicht direkt ran)

* Schema: Namensraum innerhalb einer Datenbank, an den auch access controls gebunden sein können

* Katalog: interne Management-Daten (zB. physische Storage der einzelnen Relations, Users, etc, etc)

* der Katalog ist nicht direkt zugreifbar, einige Informationen werden aber in einem spezielles Schema in allen Datenbanken eingeblendet

Mysql handhabt das AFAIK so:

* Datenbank: organisatorischer Container, innerhalb dessen die einzelnen Relationen liegen

* Katalog-Daten (incl. User, Access controls, etc) in einer speziellen Datenbank

* kein separates Namensraums-Konzept (CREATE SCHEMA), stattdessen sind aber alle Datenbanken von einer Client-Connection direkt erreichbar

* IOW: was PostgreSQL in Datenbank und Schema separiert, ist hier in einem Konzept vereint.

All das gesagte bezieht sich jedoch auf Relationale bzw. Tabellarische Datenbank-Konzepte.

Bei Hierachie-Datenbanken (zB. LDAP) beschreibt das Schema zunächst nur die logische Struktur, eher vergleichbar mit Constraints aus der Relationalen Welt. (je nach konkreter Implementation wären auch mehrere Schemata parallel denkbar). Ähnlich bei Graph-Datenbanken.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.