faecher:informatik:oberstufe:datenbanken:einfuerung:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Letzte ÜberarbeitungBeide Seiten der Revision
faecher:informatik:oberstufe:datenbanken:einfuerung:start [19.10.2020 17:51] sbelfaecher:informatik:oberstufe:datenbanken:einfuerung:start [19.10.2020 20:06] sbel
Zeile 2: Zeile 2:
  
 Dieses Kapitel soll eine Einführung in Datenbanken mit MySQL/MariaDB geben. Bevor wir uns jedoch genauer mit MySQL/MariaDB befassen, sollten wir kurz ein paar Worte über Datenbanken im Allgemeinen verlieren. Dieses Kapitel soll eine Einführung in Datenbanken mit MySQL/MariaDB geben. Bevor wir uns jedoch genauer mit MySQL/MariaDB befassen, sollten wir kurz ein paar Worte über Datenbanken im Allgemeinen verlieren.
 +
 +===== Große Datenbanken =====
 +
  
 Datenbanken werden überall da eingesetzt, wo **große** Datenmengen **effizient** verwaltet werden sollen. Datenbanken werden überall da eingesetzt, wo **große** Datenmengen **effizient** verwaltet werden sollen.
Zeile 8: Zeile 11:
 {{ .:datenbanken_logos.png?600 |}} {{ .:datenbanken_logos.png?600 |}}
  
-Zudem gibt es noch etliche andere Anwendungen für Datenbankenssysteme: Personalverwaltungen, Schulverwaltungen oder Bibliotheken.+==== Weitere Beispiele im Alltag ==== 
 + 
 + 
 +Zudem gibt es noch etliche andere Anwendungen für **Datenbankenssysteme**: Personalverwaltungen, Schulverwaltungen oder Bibliotheken.
 Auch das **DNS-System**, das Domain Name System, im Internet ist nichts anderes als eine große Datenbank. [[http://de.wikipedia.org/wiki/Domain_Name_System|Über DNS bei Wikipedia]] Auch das **DNS-System**, das Domain Name System, im Internet ist nichts anderes als eine große Datenbank. [[http://de.wikipedia.org/wiki/Domain_Name_System|Über DNS bei Wikipedia]]
  
  
  
-===== Begriffe 1 ===== 
  
-  * Eine Datenbank ist eine Sammlung von Daten verschiedener Objekte auf Datenträgern +<WRAP center round info 90%>
-  * Datenbanken werden überall da eingesetzt, wo große Datenmengen effizient verwaltet werden sollen+
  
-===== Begriffe 2 =====+  * Eine **Datenbank** ist eine Sammlung von Daten verschiedener Objekte auf Datenträgern 
 +  * Datenbanken werden überall da eingesetzt, wo **große Datenmengen** **effizient** verwaltet werden sollen
  
-Der formelle Überbegriff ist **Datenbankensystem (DBS)** +</WRAP> 
 + 
 +===== Begrifflichkeiten ===== 
 + 
 +==== Datenbanksystem ==== 
 + 
 + 
 +Etwas genauer: Ein **Datenbanksystem** ist ein System zur Beschreibung, Speicherung und Wiedergewinnung von Datenmengen. Es besteht aus einer **Datenbank**, die die Nutz- und Metadaten (z.B. Indizes) vorhält, und einem **Datenbankverwaltungssystem**, das Schnittstellen für Anwendungsprogram­me bereitstellt, die über eine **Datenbanksprache** angesprochen werden. So bleiben die Details der physischen Datenspeicherung (Ort sowie Art und Weise) vor den Anwendungsprogrammierern verborgen und Programme, welche auf die Daten zugreifen, bleiben weitgehend unabhängig von der physischen (Re-)Organisation der Daten. 
 + 
 + 
 + 
 + 
 +<WRAP center round box 90%> 
 + 
 +Der formelle Überbegriff ist also **Datenbankensystem (DBS)** 
  
 Ein Datenbankensystem (auch in Kurzform einfach Datenbank) besteht aus zwei Teilen: Ein Datenbankensystem (auch in Kurzform einfach Datenbank) besteht aus zwei Teilen:
   - Einem **Datenbank-Management-System (DBMS)**, welches die Verwaltungsssoftware ist (z.B. MySQL, DB2, PostgreSQL).   - Einem **Datenbank-Management-System (DBMS)**, welches die Verwaltungsssoftware ist (z.B. MySQL, DB2, PostgreSQL).
-  - Der eigentlichen Datenbank, die aus den gespeicherten Informationen besteht.+  - Der eigentlichen **Datenbank**, die aus den gespeicherten Informationen besteht.
  
 {{  .:datenbanksystem_01_kl.png  |}} {{  .:datenbanksystem_01_kl.png  |}}
 +
 +Zugriff auf die Daten erfolgt mit einer **Datenbank(abfrage)sprache**.
 +</WRAP>
 +
 +
 +==== Datenbankmanagementsystem ====
 +
 +=== Allgemein ===
 +
 +
 +Das **Datenbankmanagementsystem** erfüllt einige Aufgaben, die der zuverlässigen Verwaltung der Daten dienen und muss zu diesem Zweck verschiedene Bestandteile implementieren. Die folgende Grafik zeigt eine Übersicht.
 +
 +{{ :faecher:informatik:oberstufe:datenbanken:einfuerung:dbms_1_.png |}}
 +
 +=== Beispiel: Postgresql ===
 +
 +Ein bekanntes und sehr zuverlässiges FOSS DMBS ist [[https://www.postgresql.org|Postgresql]]. Postgresql implementiert die Bestandteile, die nötig sind, um die Aufgaben des DMBS zu erfüllen. Die Datenspeicherung kann z.B. auch auf einem verteilten Dateisystem erfolgen, um beispielsweise Schutz vor defekten Speichermedien zu gewährleisten. Darüber hinaus verfügen viele moderne DBMS über Möglichkeiten der "Replikation" über viele Serversysteme hinweg, um eine DAtenhaltung an verschiedenen Orten zu ermöglichen und sicherzustellen, das die Systeme mit größerer Last skalieren. Die Darstellung  würde den Umfang unserer Grafiken an dieser Stelle aber sprengen.
 +
 +{{ :faecher:informatik:oberstufe:datenbanken:einfuerung:pgsql.png |}}
 +
 +===== Prinzip: Abstraktion =====
 +
 +Auf die beschriebene Weise erreicht man ein hohes Mass an **Abstraktion**, die letztlich dazu führt, dass Management und Manipulation der Daten in einem DBMS über die **Datenmanipulationssprache** erfolgen - ein Anwender muss lediglich diese Sprache beherrschen, um mit Daten in einem solchen Datenbanksystem zu interagieren.
 +
 +Die meisten relationalen DBMS verwenden als Datenmanipulationssprache eine Dialekt von SQL. Deswegen werden wir  im weiteren Verlauf des Kurses SQL lernen.
 +
 +{{ :faecher:informatik:oberstufe:datenbanken:einfuerung:abstraktion.png |}}
 +
 +
 ===== Material ===== ===== Material =====
    
 {{simplefilelist>.:praesis:*}} {{simplefilelist>.:praesis:*}}