380 likes | 599 Views
Datenbanken?. Daten banken!. Vertragsdaten. Kundendaten. Rechnungsdaten. Telefonbuchdaten. Marketingdaten. Leitungsdaten. Antennendaten. Mitarbeiterdaten. Immobiliendaten. Telefon-Verbindungsdaten. Internet-Verbindungsdaten. de.wikipedia.org/wiki/Vorratsdatenspeicherung.
E N D
Vertragsdaten Kundendaten Rechnungsdaten Telefonbuchdaten Marketingdaten Leitungsdaten Antennendaten Mitarbeiterdaten Immobiliendaten Telefon-Verbindungsdaten Internet-Verbindungsdaten de.wikipedia.org/wiki/Vorratsdatenspeicherung
Vertragsdaten Kundendaten Rechnungsdaten Telefonbuchdaten Marketingdaten Und viele Daten mehr Leitungsdaten Antennendaten Mitarbeiterdaten Immobiliendaten Telefon-Verbindungsdaten Internet-Verbindungsdaten de.wikipedia.org/wiki/Vorratsdatenspeicherung
70 Sprachen 130 Bekannte / Benutzer 200’000’000 Mobile Benutzer 550’000’000 Benutzer 900’000’000 Seiten, Gruppen etc. 30’000’000’000 Inhalte verbreitet / Monat 700’000’000’000 Minuten / Monat
70 Sprachen 130 Bekannte / Benutzer 200’000’000 Mobile Benutzer Gigantische Datenmengen! 550’000’000 Benutzer 900’000’000 Seiten, Gruppen etc. 30’000’000’000 Inhalte verbreitet / Monat 700’000’000’000 Minuten / Monat
Facebook Server Farm www.time.com/time/photogallery/0,29307,2036928_2218536,00.html
Relationale Datenbanken: Kleines Beispiel programmingwiki.de/SQL_Bankraub
Was isteineDatenbank? • Was ist eine DB und wie funktioniert sie? • Wie speichert eine DB Daten? • Etwas über Sparsamkeit • Wie holen wir die Daten wieder raus?
Was isteineDatenbank?GrundlegendeOperationen Datenbank erzeugen: Datenbankstruktur entwerfen Einfügen von Daten Abfragen von Daten Löschen von Daten Ändern von Daten
Was isteineDatenbank? VergleichmiteinemFundbüro. Speicher Verwaltungssystem Benutzer DBMS Lager Verwalter Kunden
Nummer: 14555 Art: Schlüssel Nummer: 14556 Farbe: - Art: Schlüssel Funddatum: 12.09.2000 Farbe: - Fundort: Bahnhof Funddatum: 12.09.2000 Finder: Hegi Roger Fundort: Bahnhof Brandweg 12 Finder: Hegi Roger 9876 Zuchwil Brandweg 12 9876 Zuchwil Datenfrüher: ZettelfürZettel
Nummer: 14556 Art: Schlüssel Farbe: - Funddatum: 12.09.2000 Fundort: Bahnhof Finder: Hegi Roger Brandweg 12 9876 Zuchwil Definition einerTabelle:Name der Tabelle Fundgegenstand
Nummer: 14556 Art: Schlüssel Farbe: - Funddatum: 12.09.2000 Fundort: Bahnhof Finder: Hegi Roger Brandweg 12 9876 Zuchwil Definition einerTabelle: Attributnamen, Spaltennamen Fundgegenstand Nummer Art Farbe Funddatum Fundort Finder
Nummer: 14556 Art: Schlüssel Farbe: - Funddatum: 12.09.2000 Fundort: Bahnhof Finder: Hegi Roger Brandweg 12 9876 Zuchwil Definition einerTabelle: Datentypen der Spalten Fundgegenstand Nummer Art Farbe Funddatum Fundort Finder Zahl Text Text Datum Text Text
Nummer: 14556 Art: Schlüssel Farbe: - Funddatum: 12.09.2000 Fundort: Bahnhof Finder: Hegi Roger Brandweg 12 9876 Zuchwil Definition einerTabelle: Spaltenobligatorisch? Fundgegenstand Nummer Art Farbe Funddatum Fundort Finder Zahl Text Text Datum Text Text Ja Ja Nein Ja Nein Nein
Nummer: 14556 Art: Schlüssel Farbe: - Funddatum: 12.09.2000 Fundort: Bahnhof Finder: Hegi Roger Brandweg 12 9876 Zuchwil Definition einerTabelle: EindeutigerHauptschlüssel Fundgegenstand Nummer Art Farbe Funddatum Fundort Finder Zahl Text Text Datum Text Text Ja Ja Nein Ja Nein Nein
Definition einerTabelle: Zusammenfassung Tabellenname Attributnamen Datentypen Obligatorisch Hauptschlüssel
Nummer: 14556 Art: Schlüssel Farbe: - Funddatum: 12.09.2000 Fundort: Bahnhof Finder: Hegi Roger Brandweg 12 9876 Zuchwil RelationaleDatenbanken: Vermeiden von Redundanz
Nummer: 14556 Art: 1 Farbe: - Funddatum: 12.09.2000 Fundort: Bahnhof Finder: Hegi Roger Brandweg 12 9876 Zuchwil RelationaleDatenbanken: Vermeiden von Redundanz
RelationaleDatenbanken: Schlüsselfür die Integrität Fremdschlüssel Hauptschlüssel
Nummer: 14559 Art: 5 Farbe: - Funddatum: 14.09.2000 Fundort: Bahnhof Finder: Hegi Roger Brandweg 12 9876 Zuchwil RelationaleDatenbanken: Schlüsselfür die Integrität ?
Nummer: 14559 Art: 9 Farbe: - Funddatum: 14.09.2000 Fundort: Bahnhof Finder: Hegi Roger Brandweg 12 9876 Zuchwil RelationaleDatenbanken: Schlüsselfür die Integrität ?
RelationaleDatenbanken:Abfragen von Daten • Auswahl der angezeigten Spalten • Einschränken/Filtern der angezeigten Einträge • Sortieren der angezeigten Einträge • Informationen aus mehreren Tabellen gemeinsam anzeigen
RelationaleDatenbanken:Abfragen von Daten: SQL • «SQL ist eine Datenbanksprache zur Definition, Abfrage und Manipulation von Daten in relationalen Datenbanken.» de.wikipedia.org/wiki/SQL • Erfunden in den 1970er von Edgar F. Codd. Später standardisiert, heute extrem weit verbreitet. de.wikipedia.org/wiki/Edgar_F._Codd
RelationaleDatenbanken:Abfragen von Daten: SQL • Abfragen auf einer Tabelle mit SQL haben folgende Kernelemente: • SELECT [DISTINCT] Auswahlliste welche Spalten? • FROM Quelle aus welcher Tabelle? • [WHERE Where-Klausel] welche Zeilen? • [GROUP BY (Group-by-Attribut)+ gruppiert nach? • [HAVING Having-Klausel]] welche Gruppen? • [ORDER BY (Sortierungsattribut [ASC|DESC])+]; sortiert nach? • Demo: http://programmingwiki.de/AKSA-EFI/SprintAuswertung
Abfragen von Daten: Auswahl der Angezeigten Felder Projektion
Abfragen von Daten: Einschränken der Einträge WelcheFundgegenständewurden am Bahnhofgefunden:Fundort= “Bahnhof” AlleSchirme:Art = 2 Selektion
Abfragen von Daten: Sortieren der Anzeige SortierennachFunddatum Bearbeiten der Ausgabe
Abfragen von Daten: MehrereTabellenkombinieren Nummer und FarbeallerRegenschirme, die dieses Jahrgefundenwurden:
RelationaleDatenbanken:Abfragen von Daten: SQL • Abfragen auf einer Tabelle mit SQL haben folgende Kernelemente: • SELECT [DISTINCT] Auswahlliste welche Spalten? • FROM Quelle aus welcher Tabelle? • [WHERE Where-Klausel] welche Zeilen? • [GROUP BY (Group-by-Attribut)+ gruppiert nach? • [HAVING Having-Klausel]] welche Gruppen? • [ORDER BY (Sortierungsattribut [ASC|DESC])+]; sortiert nach? • Demo: http://programmingwiki.de/AKSA-EFI/SprintAuswertung
RelationaleDatenbanken:Zusammenfassung • Eine Datenbank ist ein Programm, das grosse Mengen von Daten verwalten kann. • Daten werden in mit einander verknüpften Tabellen gespeichert. • In diese Tabellen können Eintrage eingefügt, geändert, gelöscht und abgefragt werden. Der Vortrag basiert auf swisseduc.ch/informatik/datenbanken/beziehungen_datenbank/