Datenbanken für den Einsatz auf Embedded Linux

Slides:



Advertisements
Ähnliche Präsentationen
Einführung "Datenbanksysteme"
Advertisements

Programmieren im Großen von Markus Schmidt und Benno Kröger.
Datenbanken Einführung.
spezielle Nutzersichten formale Ebene (deskriptive Regeln)
Objektorientierte Datenbanken
Authentifizierung, Autorisierung und Rechteverwaltung Einsatz und Funktion des Rechteservers 2. Shibboleth-Workshop Freiburg, 23. März 2006 Gerald Schupfner,
Vorlesung: Prof. Norbert Fuhr
Einführung in Informationssysteme
Datenbankzugriff im WWW (Kommerzielle Systeme)
Das Entity-Relationship-Modell
SAP R/3 - Speichermanagement
Universität Paderborn
Datenbanken I (0,*) Produkt 3 Karczewski Datenbanken I.
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/7 Datenbanken werden als Anhäufung von Werten eines Wertebereiches aufgefasst und Datenbankabfragen.
DOM (Document Object Model)
Gliederung der Vorlesung Software Engineering WS 2001/2002
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
Access 2000 Datenbanken.
Datenbanken Einführung Merkmale dateiorientierte Datenverwaltung
Seminar: Verteilte Datenbanken
Einführung Dateisystem <-> Datenbanksystem
Fachbereich Mathematik/Informatik Universität Osnabrück
Einführung und Überblick
Grundschutztools
Typo3 Eine Einführung.
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
Visualisierung objektrelationaler Datenbanken
Tobias Kluge: FAME Middleware / Karlsruhe / The FAME project – Middleware.
Projektarbeit PHP 5.3 / MySQL & Content Management Systems
Vergleich verschiedener Konzepte für das Software Engineering Praktikum.
Überblick über die Datenbankproblematik
WS 2009/10 Datenbanksysteme Fr 15:15 – 16:45 R Vorlesung #3 Das relationale Modell (Teil 2)
Vorlesung #2 Datenbankentwurf
SS 2009 – IBB4C Datenmanagement Fr 15:15 – 16:45 R Vorlesung #2 Datenbankentwurf.
SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R Vorlesung #2 Datenbankentwurf.
Vorlesung #4 Überführung des ER-Modells in das relationale Modell
SS 2013 – IBB4B Datenmanagement Fr 15:15 – 16:45 R Vorlesung #1 Datenmanagement.
Vorlesung #4 Überführung des ER-Modells in das relationale Modell
Allgemeines zu Datenbanken
(D.h. „Hallo MausFans!“ auf Japanisch).
DI (FH) DI Roland J. Graf MSc (GIS) U N I V E R S I T Ä T S L E H R G A N G Geographical Information Science & Systems UNIGIS.
Einführung in Datenbankmodellierung und SQL
verstehen planen bearbeiten
Lernfeld - Thema Datenbanksystem
Datenanbindung in Webapplikationen
Analyseprodukte numerischer Modelle
ADAT©2004 Dipl. - Ing. Walter SabinSeite: 19 Version 1.0a Programme - Zusatzsoftware Oracle: –Forms –Reports –Designer –Jdeveloper –APEX (Application Express)
Studiengang Informatik FHDW
Dokumenten- und Publikationsserver
SS 2014 – IBB4C Datenmanagement Do 17:00 – 18:30 R Vorlesung #1 Datenmanagement.
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
SS 2014 – IBB4C Datenmanagement Do 17:00 – 18:30 R Vorlesung #2 Datenbankentwurf.
Einführung Dateisystem <-> Datenbanksystem
Datenbanken im Web 1.
Middleware in Java vieweg 2005 © Steffen Heinzl, Markus Mathes Kapitel 1: Architektur verteilter Systeme.
WINLearn Technische Umsetzung. Basistechnologie Oberfläche in HTML JSP (JavaServerPages) zur Datenauswertung Datenhaltung: Datenbank oder Filesystem JDBC.
Dieser Vortrag wird gesponsort von:
SS 2015 – IBB4C Datenmanagement Fr 17:00 – 18:30 R Vorlesung #1 Datenmanagement.
SS 2015 – IBB4C Datenmanagement Fr 17:00 – 18:30 R Vorlesung #2 Datenbankentwurf.
SS 2015 – IBB4C Datenmanagement Fr 17:00 – 18:30 R Vorlesung #4 Überführung des ER-Modells in das relationale Modell.
© 2015 TravelTainment NoSQL – Eine Alternative zu relationalen Datenbanken Dominik Schmitz.
Technische Universität München Übung zur Einführung in die Informatik für Hörer anderer Fachrichtungen im Sommersemester 2010 Sitzung 6: Datenbanksysteme.
Datenbanken Eine Einführung Kerstin Fröhlig, HHBK.
Von Wietlisbach, Lenzin und Winter
Datenbanksystem Von Anna und Robin.
Da·ten·bank /Dátenbank/ Substantiv, feminin [die]
Präsentation von Darleen und Michèle
Von Wietlisbach, Lenzin und Winter
 Präsentation transkript:

Datenbanken für den Einsatz auf Embedded Linux Enrico Billich

Gliederung Aufbau und Aufgaben Veraltete Datenbankmodelle Motivation Aufbau und Aufgaben Veraltete Datenbankmodelle Relationales Modell Objektorientiertes Modell Sonstige Datenbankmodelle Anforderungen Empfehlung Literatur Mit grünen Punkt markierte Stellen oder Folien wurden für Präsentation entfernt. Siehe auch Kommentare.

Motivation Datenbanken sind mit die wichtigsten Systeme der Informationstechnik Sehr weit verbreitet und unverzichtbar im Unternehmenseinsatz Einfacher Zugriff und Speicherung der Daten möglich Somit interessant für den Einsatz im InnoProfile Projekt Sind aber auch durch das beinahe grenzenlose Sammeln von persönlichen Daten heutzutage die zweitgrößte Bedrohung, gleich nach einer außerirdischen Invasion

Logische Datenunabhängigkeit Physische Datenunabhängigkeit Aufbau ANSI-SPARC-Architektur Externe Ebene Sicht 1 Sicht n Logische Datenunabhängigkeit Konzeptuelle Ebene Physische Datenunabhängigkeit entfernt Interne Ebene Datenmedium

Datenbankmanagementsystem Aufbau Komponenten eines Datenbanksystems Datenbankmanagementsystem Datenbank

Datenträgerverwaltung Aufgaben Mehrbenutzerbetrieb Datenstruktur Datenträgerverwaltung DBMS Datensicherung Schnittstellen Abfragesprache Datenintegrität Redundanzminderung Benutzerverwaltung ACID

Veraltete Modelle Dateispeicherung Hierarchisches Modell Speicherung der Datensätze hintereinander in einer Datei Hierarchisches Modell Baumstruktur Datensätze stehen zueinander in Eltern-Kind-Beziehungen (1:1, 1:N) Netzwerkmodell Keine strikte Baumstruktur mehr Datensätze können nun mehrere Vorgänger besitzen M:N Beziehungen über speziellen Knoten entfernt

Veraltete Modelle Vorteile satzorientierter Datenbanken Schneller Zugriff auf die gespeicherten Datensätze Sehr gut geeignet für hierarchische Daten wie XML (XML-Datenbanken) Nachteile satzorientierter Datenbanken Kenntnis über genaue Struktur der Daten (keine strukturelle Datenunabhängigkeit), man muss sich zum gewünschten Datensatz erst durchsuchen Komplizierte Implementierung von komplexen Systemen entfernt

Entity-Relationship-Modell Name SWS Name Studenten Hören Vorlesungen N M Entities, Attribute, Relationen, Schlüssel Matrikel Nr. Vorl. Nr.

Relationales Datenmodell Studenten Matrikel Nr. Name 100345 Paul Specht 97254 Mia Fuchs Hören Matrikel Nr. Vorl. Nr. 100345 443 321 97254 Vorlesungen Vorl Nr. Name SWS 443 Mathematik 6 321 Physik 4 Entities und Beziehungen in Tabellenform bringen, heißen beide nun Relationen Beziehungen eindeutig identifizierbar durch die Schlüssel, der beteiligten Entities Entities sind Zeilen, Attribute sind Spalten, Schlüssel

Relationales Datenmodell Vorteile relationaler Datenbanken Sehr einfache Modellierung auch komplexer Sachverhalte Trennung von physischer und struktureller Form der Daten Standardisierte Zugriffssprache SQL Weit verbreitet, dominierendes Datenbankmodell Nachteile relationaler Datenbanken Hohe Ressourcenanforderungen Informationen über ein Objekt werden verstreut gespeichert

Apache Derby ACID Benutzer Verwaltung ODBC JDBC Backup Multiuser Integrierte Prozeduren, Trigger ACID Vollständig SQL92, Teilweise SQL99 Und 2003 Benutzer Verwaltung Apache 2.0 Lizenz, kostenlos Verschlüsselung entfernt 2MB Footprint ODBC JDBC Backup Management Multiuser fähig

Apache Derby Entwickelt von IBM (Cloudscape) und Apache Software Foundation seit 1997, Open Source Aufgenommen in Java 6 als Java DB Embedded Mode und Client-Server Mode Schnittstellen für C++, Perl, PHP, Python, .NET und Java Als Java Programm systemunabhängig Benötigt zusätzlich Laufzeitumgebung (ab JRE 1.3) Durchschnittlich gut dokumentiert Sehr bekannt (0,5 Millionen Treffer bei Google) und weit verbreitet entfernt

Java Datenbanken Weitere relationale Java Datenbanken HSQLDB (genutzt in OO Base, viele Funktionen, keine volle ACID Unterstützung, 600kB Footprint, nur Schnittstelle für Java, Teile von SQL) McKoi, H2 ebenfalls kostenlos JDataStore kostenpflichtig von Borland entfernt

Firebird ACID Vollständig SQL92 und 99, Benutzer Teilweise 2003 Integrierte Prozeduren, Trigger ACID Vollständig SQL92 und 99, Teilweise 2003 Benutzer Verwaltung READ Only Mode IDPL, kostenlos 2,6MB Footprint 16MB empfohlen Entwickelt seit 1981, Open Source, Embedded und Client-Server Mode Schnittstellen für C++, Java, .NET, etc. Gut dokumentiert, weit verbreitet, Sehr bekannt (2 Millionen Treffer bei Google) ODBC JDBC Backup Management Multiuser fähig

Firebird Entwickelt von Borland seit 1981, Open Source Embedded und Client-Server Mode Schnittstellen für C++, Java, Delphi, Pascal, Perl, Python, PHP und .NET Benötigt keine Zusatzsoftware Lauffähig unter Windows, Linux, Unix, FreeBSD und OS X auf x86 und SPARC Systemen Gut dokumentiert, weit verbreitet Sehr bekannt (2 Millionen Treffer bei Google) entfernt

Aber Zugriff auf Datenbasis (Datei) SQLite Teilweise SQL92 Integrierte Funktionen, Trigger ODBC JDBC ACID Kein gleichzeitiger Schreibzugriff Gemeinfrei, kostenlos Nur Embedded Mode, Aber Zugriff auf Datenbasis (Datei) Von verschiedenen Programmen möglich Entwickelt seit 2000, Open Source Schnittstellen für C++, Java, .NET, etc, Benötigt keine Zusatzsoftware Gut dokumentiert, weit verbreitet, Über 8 Millionen Treffer bei Google Erwähnenswert auch noch Java DB wie Apache Derby, benötigen aber JRE, dafür klein 225kB Footprint

SQLite Entwickelt seit 2000, Open Source Schnittstellen für C++, Java, Basic, Python, Perl, PHP, .NET und viele weitere Sprachen Lauffähig unter Windows, Linux, Unix, OS X Benötigt keine Zusatzsoftware Gut dokumentiert, weit verbreitet Über 8 Millionen Treffer bei Google entfernt

Objektorientiertes Modell Relationale Datenbanken Objektorientierte Datenbanken Objektrelationale Datenbanken

Objektorientiertes Modell Schneemann Kopf Bauch Boden OR-Mapping Speicherplatz für Schneemannobjekt Eigene Typen deklarieren Objekt IDs Direkte Speicherung

Objektorientiertes Modell Datenübertragungsstrecke Programm Beim Client Datenbank Auf Server Daten Befehl Ohne integrierte Prozeduren Programm Beim Client Befehl Datenbank Auf Server Mit integrierte Prozeduren

Objektorientiertes Modell Vererbung Geschachtelte Relationen/Attribute Mensch Kopf Linkes Bein Nase Mund Fuß Knie Mengenwertige Attribute Person Adresse 1 Adresse n Menge von Adresse

Objektorientiertes Modell Kostenlose OO-Datenbanken Kommerzielle OO-Datenbanken Kostenlose OR-Datenbanken Kosenlose OO, jung, unausgereift, wenig Funktionen eyeDB, 2MB FP, Backup, Multiuser, Benutzerverwaltung, Vererbung, OQL, C++, wenig bekannt Kommerzielle OO, viele Funktionen, weiter verbreitet, aber teuer, besonders db4o, objectivity als verteilte DB OR, kostenlos und viele Funktionen, vereinen Vorteile beider Seiten, aber enormer Ressourcenbedarf

Verteilte Datenbanken Lastenverteilung, Standortnähe, Ausfallsicherheit Master-Slave zur Spiegelung von Daten, Änderungen nur an Master Client-Server, Synchronisation der Clients nur über Server Vollständig verteilt, z.B. Peer-2-Peer, kein zentraler Server nötig entfernt

RRDtool Speziell entwickelt zum Speichern von zeitbezogenen Daten wie Messwerte Angabe des maximalen Speicherplatzes Speicherung der Daten nach dem Round Robin Verfahren, alte Daten werden von neuen überschrieben beim Überschreiten der angegebenen Grenze Viele Funktionen zur visuellen Aufbereitung der Daten Schnittstellen für Python, PHP, Tcl und Perl Sehr beliebt, von vielen Programmen genutzt Kostenlos und Open Source

Deduktive Datenbanken Erweitert die Datenbank um eine deduktive Komponente Anhand von Regeln kann sie aus bekannten Daten neue gewinnen Anfang der 1990er populär, mehrere Umsetzungen dieses Prinzips von verschiedenen Universitäten, kamen aber nie über akademischen Anwendung hinaus Wegen fehlenden Standards benutzt jede ihre eigene Anfragesprache, somit großer Einarbeitungsaufwand Großer Ressourcenbedarf, um Vorteile des deduktiven Datenbankmodells nutzen zu können entfernt

Deduktive Datenbanken Datenbanksystem Datenbasis Deduktionsregeln entfernt Neue Daten

Anforderungen Es sollen Messdaten gespeichert und auf Anfrage wieder ausgegeben werden Wichtig ist dabei die sichere und effiziente Datenspeicherung ein einfacher Zugriff über Schnittstellen für wichtige Programmiersprachen und standardisierte Anfragesprachen Sollte nichts oder nicht zuviel kosten und auch für kommerzielle Einsatzzwecke verwendbar sein Wenig Ressourcen verbrauchen Verbreitet und gut dokumentiert sein

Anforderungen Messung Messobjekt Sensor Name Name Typ Messwert 1 N Uhrzeit O_Nr entfernt S_Nr Dimension

Empfehlung 1 2 SQLite erfüllt meisten Anforderungen, Bietet viele Schnittstellen, Ausreichend viele Funktionen Ist kostenlos und ohne Lizenz nutzbar, Sehr geringe Hardwareanforderungen 3

Ende

Literatur Datenbanken – Grundlagen und Design, Frank Geisler, 2. Auflage 2006, mitp-Verlag Datenbanksysteme – Eine Einführung, Alfons Kemper, André Eickler, 6. Auflage 2006, Oldenbourg Wissenschaftsverlag GmbH Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme, Gottfried Vossen, 4. Auflage 2000, Oldenbourg Wissenschaftsverlag GmbH Datenbanken: Konzepte und Sprachen, Andreas Heuer, Gunter Saake, 2. Auflage 2000, mitp-Verlag Wikipedia.org