DB 13 Cloud Datenbanken Flashcards
Agenda Cloud Datenbanken
- Multi Tenancy
- Hadoop Cluster
- Cloud Plattformen (mit In Memory Datenbanken)
Für was steht der Begriff Multi-Tenancy im Datenbank Kontext?
Idee – geboren aus Trend zur Cloud: zur Erhöhung der Effizienz bzw.
Reduktion von Kosten „mieten“ sich mehrere Nutzer gleichzeitig in ein System
„ein“ (Tenancy = Miete)
Single Tenancy = jeder Kunde hat ein eigenes DBMS mit dediziertem Server
Vorteil: volle exklusive Verfügbarkeit
Nachteil: Hohe Kosten und nur teilweise Nutzung
Multi Tenancy = Kunde teilen sich die Resourcen auf einem Server
Vorteil: bessere Auslasung und niedrigere Kosten
Nachteil: ggfs. Konkurrenz um Resourcen und technische Abhängigkeiten
Welche Ressourcen werden in Bezug auf Datenbanken bei Multi Tenancy geteilt?
- Server
- Datenbank
- Tabelle
Welche Vorteile und Nachteile von einer geteilte Datenbank Instanz?
Geteilte Datenbank Instanz
+ Jeder Kunde hat seine eigenen Tabellen
+ Datenbank und DB Prozesse werden geteilt
+ Bessere Speicher- und damit Maschinenauslastung
+ Simultanadministration möglich
+ niedrigere Kosten
- Keine Isolation
Welche Vorteile und Nachteile von geteilten Tabellen?
\+ Datenbank, DB Prozesse und Tabellen werden geteilt \+ Jeder Kunde hat eigene Datensätze gekennzeichnet mit TenantID oder Mandant \+ Maximale Resourcenauslastung \+ Simultanadministration möglich \+ niedrigere Kosten - Keine Isolation
Fazit aus Multi Tenancy
Zusammenfassung
• Shared Database oder Shared Tables sind State-of-the-Art Ansätze im Cloud
Computing
• Vorteile sind optimale Resourcenausnutzung und damit niedrige Kosten
• Alle Kunden werden grundsätzlich gleichzeitig mit neuen Releases versorgt
• On-the-Fly Reorgs durch Kunden individuelle Änderungen ohne Downtime
nur bei IMDBs möglich
Hadoop
Wikipedia: Apache Hadoop ist ein freies, in Java geschriebenes Framework für
skalierbare, verteilt arbeitende Software. Es basiert auf dem MapReduceAlgorithmus von Google Inc. sowie auf Vorschlägen des GoogleDateisystemsund ermöglicht es, intensive Rechenprozesse mit großen
Datenmengen (Big Data, Petabyte-Bereich)
auf Computerclustern durchzuführen.
HDFS (Hadoop Distributed Filesystem)
Was ist HDFS einfach ausgedrückt?
Was ist ein typischer Anwendungsfall für HDFS?
hochverfügbares Dateisystem zur Speicherung sehr großer Datenmengen auf
den Dateisystemen mehrerer Rechner (Knoten)
• Dateien werden in Datenblöcke mit fester Länge zerlegt und redundant auf
die teilnehmenden Knoten verteilt.
• Ein Masterknoten (NameNode) bearbeitet eingehende Datenanfragen,
organisiert die Ablage von Dateien in den Slaveknoten und speichert
anfallende Metadaten.
• unterstützt Dateisysteme mit mehreren 100 Millionen Dateien. Sowohl
Dateiblocklänge als auch Redundanzgrad sind konfigurierbar.
• HDFS eignet sich für große Dateien
In Memory Datenbanken in der
Cloud
Hersteller bieten Cloud Plattformen
• PaaS: Platform as a Service
• IMDB Teil der Gesamtplattform
• Zugriff über Internet mit Cloud Authentifizierung (Saml, SSO, …)
• Meist gepaart mit Set an Programmierfunktionen und vorgefertigten SW
Moduln