PowerPoint-Präsentation

January 20, 2018 | Author: Anonymous | Category: Ingenieurwissenschaften, Informatik, Datenbank
Share Embed Donate


Short Description

Download PowerPoint-Präsentation...

Description

Datenbanken für den Einsatz auf Embedded Linux

Enrico Billich

Gliederung  Motivation

 Aufbau und Aufgaben  Veraltete Datenbankmodelle  Relationales Modell  Objektorientiertes Modell  Sonstige Datenbankmodelle  Anforderungen  Empfehlung  Literatur -2-

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

-3-

Aufbau ANSI-SPARC-Architektur Externe Ebene

Sicht 1

Sicht n Logische Datenunabhängigkeit

Konzeptuelle Ebene Interne Ebene

Physische Datenunabhängigkeit

Datenmedium -4-

Aufbau Komponenten eines Datenbanksystems Datenbankmanagementsystem

Datenbank -5-

Aufgaben Mehrbenutzerbetrieb

Datenstruktur

Datensicherung

Datenintegrität

Datenträgerverwaltung

Schnittstellen

DBMS

Abfragesprache

Redundanzminderung

Benutzerverwaltung

ACID -6-

Veraltete Modelle Dateispeicherung  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

-7-

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 -8-

Entity-Relationship-Modell Name

Studenten

Name N

Hören

Matrikel Nr.

M

SWS

Vorlesungen

Vorl. Nr. -9-

Relationales Datenmodell Studenten Matrikel Nr. 100345

Name Paul Specht

97254

Mia Fuchs

Hören Matrikel Nr. 100345 100345 97254

Vorlesungen Vorl Nr. 443

Name Mathematik

321

Physik

SWS 6

Vorl. Nr. 443 321 443

4

• Entities und Beziehungen in Tabellenform bringen, heißen beide nun Relationen • Beziehungen eindeutig identifizierbar durch die Schlüssel, der beteiligten Entities -10-

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 -11-

Apache Derby Vollständig SQL92, Teilweise SQL99 Und 2003

Integrierte Prozeduren, Trigger

ACID

Apache 2.0 Lizenz, kostenlos

Verschlüsselung

2MB Footprint

Benutzer Verwaltung

Backup Management -12-

Multiuser fähig

ODBC JDBC

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 -13-

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

-14-

Firebird Vollständig SQL92 und 99, Teilweise 2003

Integrierte Prozeduren, Trigger

ACID

READ Only Mode

2,6MB Footprint 16MB empfohlen

Benutzer Verwaltung

IDPL, kostenlos

Backup Management -15-

Multiuser fähig

ODBC JDBC

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) -16-

SQLite Teilweise SQL92

Integrierte Funktionen, Trigger

ACID

Kein gleichzeitiger Schreibzugriff

ODBC JDBC

Gemeinfrei, kostenlos

Nur Embedded Mode, Aber Zugriff auf Datenbasis (Datei) Von verschiedenen Programmen möglich -17-

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

-18-

Objektorientiertes Modell

Relationale Datenbanken Objektorientierte Datenbanken Objektrelationale Datenbanken -19-

Objektorientiertes Modell Schneemann OR-Mapping

Kopf

Bauch

Speicherplatz für Schneemannobjekt

Boden

+ Eigene Typen deklarieren + Objekt IDs

Direkte Speicherung

-20-

Objektorientiertes Modell Datenübertragungsstrecke Programm Beim Client

Programm Beim Client

DatenDatenbank

Befehl

Auf Server

Ohne integrierte Prozeduren

Befehl Datenbank Auf Server Mit integrierte Prozeduren

-21-

Objektorientiertes Modell Vererbung

Geschachtelte Relationen/Attribute Fuß Knie

Mengenwertige Attribute Person

Nase

Mund Linkes Bein

Kopf

Person Mensch

Adresse 1

Adresse n

Menge von Adresse -22-

Objektorientiertes Modell Kostenlose OO-Datenbanken

Kommerzielle OO-Datenbanken

Kostenlose OR-Datenbanken

-23-

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 -24-

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 -25-

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 -26-

Deduktive Datenbanken Datenbanksystem Datenbasis

Deduktionsregeln

Neue Daten

-27-

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 -28-

Anforderungen Name

Messobjekt

O_Nr

Messwert

1

Name

Typ

Messung

Uhrzeit

S_Nr

-29-

N

Sensor

Dimension

Empfehlung

2

1 -30-

3

Ende -31-

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 -32-

View more...

Comments

Copyright � 2017 NANOPDF Inc.
SUPPORT NANOPDF