SlideShare ist ein Scribd-Unternehmen logo
1 von 35
Datenbanken
Eine Auswahl
WP Meetup München – 17.10.2017
Datenbanken – Eine Übersicht
 Übersicht von Datenbankmanagementsystemen im Hosting-Umfeld
 Fokus auf MySQL und MySQL-nahen Datenbanktypen sowie Blick auf NoSQL
 Auf/mit welchen Systemen läuft WordPress
Speaker – Dietmar Leher
 Xing: http://www.xing.com/profile/Dietmar_Leher
 LinkedIN: https://www.linkedin.com/in/dietmarleher/
 Facebook: https://www.facebook.com/dietmarleher
 Twitter: https://twitter.com/spacehostDE
 Webseite: https://spacehost.de
 Blog: https://spacehost.de/blog
Datenbanken - Inhalt
 Datenbanken - Eine kurze Einführung
 Objektrelationales Datenbankmodell
 Nicht-Relationales Datenbankmodell
 NoSQL
 Relationales Datenbankmodell
 MySQL und Varianten
 Ein paar Worte zur Performance
 WordPress und Datenbanken
Datenbanken - Eine kurze Einführung
 Eine Datenbank speichert große Datenmengen
 Aufgaben bei der Speicherung:
 Effizient (z.B. platzsparend)
 Widerspruchsfrei
 Dauerhaft
 In passender Darstellung für Benutzer und Anwendungen (Format)
Datenbanken - Eine kurze Einführung
Besteht aus zwei Teilen: DB + DBMS
1) Verwaltungssoftware =
Datenbankmanagementsystem (DBMS)
2) Menge der zu verwaltenden Daten
(Datensätze) =
Datenbank (DB)
Bildquelle: http://www.datenbanken-verstehen.de/wordpress/dbv/uploads/datenbank.jpg
1) Datenbankmanagementsystem
 Interne Organisation der Speicherung der Daten
 Kontrolle aller lesenden und schreibenden Zugriffe (Benutzer und
Zugriffsverwaltung)
 Datenbanksprache zur Abfrage und Verwaltung der Daten
 nutzt ein Datenbankmodell das bestimmt, auf welche Art und Weise Daten in
einem Datenbanksystem gespeichert und bearbeitet werden können:
 Hierarchisches Datenbankmodell
 Netzwerkdatenbankmodell
 Objektrelationales Datenbankmodell
 Objektorientiertes Datenbankmodell
 Nicht-Relationales Datenbankmodell, NoSQL
 Relationales Datenbankmodell
Eine Auswahl
 Liste bei Wikipedia:
https://de.wikipedia.org/wiki/Liste_der_Datenbankmanagementsysteme
 Ranking:
https://db-engines.com/de/ranking/relational+dbms
Objektrelationales Datenbankmodell
z.B. PostgreSQL
PostgreSQL
 PostgreSQL, kurz Postgres
 Seit 1997 Open-Source
 Aktueller Versionszweig: 10.x
 Galt lange Jahre als „das fortschrittlichste Open-Source-Datenbanksystem“
 Einsatz bei großen Datensätzen:
 unbegrenzte Größe der Datenbank
 einzelne Tabelle bis 32 TB
 Einzelner Datensatz bis 1,6 TB
Bildquelle: https://www.postgresql.org
Nicht-Relationales Datenbankmodell
= "not only SQL" (kurz: NoSQL)
~ Dokumentenorientiertes Datenbankmodell
NoSQL-Datenbanken
 MongoDB
 von "huMONGOus", sprich "extrem groß"
 2009, Open-Source seit 2012
 aktueller Versionszweig: 3.4.x
 In C++ geschrieben, kann mit allen JSON-ähnlichen Dokumenten arbeiten
 am weitesten verbreitete NoSQL-Datenbank; „Allzweck-Datenbank“
 Direkte MongoDB-Alternativen
 ArangoDB (2011 AvocadoDB)
 Percona Server for MongoDB (seit v3.0 - 2015)
Bildquelle: https://webassets.mongodb.com
NoSQL-Datenbanken
 CouchDB
 Erlang (Ericsson) & Javascript - Apache Foundation
 2005
 Zuverlässigkeit
 Cassandra
 Java - Apache Foundation
 Bei Facebook entwickelt und 2008 veröffentlicht
 Beteiligungen von IBM, Rackspace und Twitter in den Jahren danach
 Ausfallsicherheit
NoSQL-Datenbanken
 Riak
 2009 – Basho Technologies
 Setzt auf den Veröffentlichungen von DynamoDB auf
 Key-Value-Store
 Amazon DynamoDB
 Von AWS entwickelt (ca. 2007)
 Auch lokal einsetzbar
 Hochgradig skalierbar durch Einsatz im AWS
 Key-Value-Store oder dokumentenorientiert
NoSQL-Datenbanken
 Begriffserklärung: Key-Value-Store
Key-Value Stores können lediglich Paare von Schlüsseln und Werten abspeichern, sowie
die Werte anhand des Schlüssels wieder zurückliefern. Ressourcenschonend, dafür
meist weniger komplex.
 Begriffserklärung: Dokumentenorientiert
Daten werden in Dokumenten anstelle von Tabellen gespeichert. Ein Dokument ist in
diesem Zusammenhang eine strukturierte Zusammenstellung bestimmter Daten also
keine „Datei“. Durch die kaum vorhandenen Einschränkung beim Aufbau der
Dokumente ergeben sich umfassende Gestaltungsfreiheiten.
NoSQL-Datenbanken
 Redis
 Einfacher Key-Value-Store
 2009 - Salvatore Sanfilippo & Redis Labs & Sponsors
 In-Memory-Datenbank
 SQLite
 zählt streng genommen nicht zu den NoSQL-Datenbanken
 Reine "In-Memory-Datenbank". Keine Installation oder Konfiguration. SQLite lädt
alle Daten aus einer Datendatei in den Speicher (Daten weg bei Crash, wenn nicht
gespeichert).
Am Rande: Elasticsearch und Solr
Elasticsearch
 Keine Datenbank!
 Suchmaschine auf Basis von Lucene*
 In Java geschrieben
 speichert Suchergebnisse in JSON,
Ausgabe erfolgt über ein RESTful-
Webinterface
Solr
 Keine Datenbank!
 Ein in Lucene* enthaltenes Servlet
 älter als EL und "näher" / direkter
an Lucene
 kommuniziert mittels HTTP und
kann verschiedene Dateiformate
wie z.B. XML, JSON oder PDF.
 Bezeichnung stand für „Search on
Lucene and Resin“
* Apache Lucene ist eine in Java geschriebene Volltextsuchmaschine
Relationales Datenbankmodell
MS SQL, DB2, MySQL uvm.
Relationale Datenbanken
Kostenpflichtig, Enterprise-Umfeld:
 MS SQL (Microsoft)
 Oracle Database (Oracle)
 DB2 (IBM)
 Informix (seit 2001 IBM)
Relationale Datenbanken
 MySQL
 Seit 1994
 gekauft 2010 von Oracle
 MySQL Community Edition (frei verfügbar)
 Editionen mit erweiterten Funktionen, Verwaltungswerkzeugen, technischen
Supportleistungen etc.
 MySQL Standard Edition
 MySQL Enterprise Edition
 MySQL Cluster CGE
Bildquelle: https://www.mysql.com
Versionsübersicht
 MySQL 5.6
 Premier Support End, Februar 2018
 Extended Support bis Februar 2021
 MySQL 5.7
 Aktuelle Stable-Version
 Viele Verbesserungen bei der Inno-DB Engine > bessere Performance
 Verbesserte Replikation und Logging
 Native JSON Unterstützung
 MySQL 8
 In Entwicklung
 Standardzeichensatz UTF8 statt Latin1
Bildquelle: https://www.mysql.com
MySQL - Percona
MySQL Community Edition
 offizielles MySQL (Oracle)
 aktuelle Version 5.7.x
Percona Server for MySQL
 2006 - Percona LLC
 aktuelle Version 5.7.x
 legt Wert auf Performance und
Skalierbarkeit
 Einsatz z.B. in Debian 9
Featurevergleich:
https://www.percona.com/software/mysql-database/percona-server/feature-comparison
MySQL - MariaDB
MySQL Community Edition
 offizielles MySQL (Oracle)
 aktuelle Version 5.7.x
MariaDB
 2009 - MariaDB Foundation
 aktuelle Version 10.2
 Standard-Datenbank in vielen
Linux-Distributionen, z.B. in
Ubuntu seit 14.04,Fedora ab
Version 19, seit RHEL 7
 Entfernt sich schrittweise von
MySQL
Featurevergleich:
https://mariadb.com/kb/en/library/mariadb-vs-mysql-features/
Exkurs: Google Cloud SQL for MySQL
 Google Cloud SQL for MySQL - https://cloud.google.com/sql/
 Nur in Google Cloud SQL nutzbar
 Skalierbarkeit, z.B. Server mit bis zu 32 Prozessorkernen und 200 GB RAM
Exkurs: Amazon Aurora
 Amazon Aurora - https://aws.amazon.com/de/rds/aurora/details/
 Nur mit Amazon AWS verwendbar
 Bei Verwendung der InnoDB-Speicher-Engine voll kompatibel mit MySQL 5.6
 Bis zu 5 mal performanter als Standard-MySQL (eigene Angabe)
Exkurs: Amazon Aurora
Wordpress-Performance
 2-3 mal performanter bei WordPress nach Tests von 2015
 Setup komplett über AWS realisiert
 https://pagely.com/blog/2015/08/we-benchmarked-amazons-new-aurora-database-
for-use-with-wordpress-results-within/
 Alternative Tests mit Aurora gegen ein Percona-MySQL-Setup mit Galera-Cluster
 Hier verliert Aurora deutlich bei den Themen Performance und Ausfallsicherheit
 http://www.tusacentral.net/joomla/index.php/mysql-blogs/175-aws-aurora-
benchmarking-blast-or-splash.html (2015)
 https://www.percona.com/blog/2016/05/26/aws-aurora-benchmarking-part-2/
(2016)
Ein paar Worte zur Performance
Ein paar Worte zur Performance
NoSQL
+ viele Schreib-/Leseanfragen
- schwache Garantien hinsichtlich
Konsistenz > unsichere Transaktionen
-/+ verteilte Datenbanken mit
redundanter Datenhaltung auf vielen
Servern, meist durch eine verteilte
Hashtabelle (Prüfsumme)
+ einfache Skalierung > Ausfälle
einzelner Server
Relationale Datenbanken
+ effizient bei häufigen, aber kleinen
Transaktionen
+ große Batch-Transaktionen mit
seltenen Schreibzugriffen
- wenn beides zusammentrifft: hohen
Datenanforderungen und häufigen
Datenänderungen
- bei datenintensiven Applikationen
wie Indexierung großer
Dokumentmengen, Webseiten mit
hohen Lastaufkommen, Streaming-
Media-Applikationen
Ein paar Worte zur Performance
 NoSQL vs. MySQL - Technische Unterschiede:
https://www.percona.com/resources/technical-presentations/mysql-vs-mongodb-
percona-university-budapest
 NoSQL vs. MySQL – Wann welche Version verwenden:
https://www.percona.com/resources/technical-presentations/mysql-vs-mongodb-
choosing-right-technology-your-application-scale
Ein paar Worte zur Performance
Es kommt darauf an…
 Percona oder MariaDB vor „Standard-MySQL“
 Cluster / mehrere Server bei Ausfallsicherheit und hoher Performance
 Amazon Aurora und Cloud-Anbieter am besten im jeweiligen Umfeld
verwenden (AWS, Google-Cloud etc.)
 NoSQL bei „BigData“: häufige Zugriffe auf große Datensätze
 NoSQL bei reiner Ausgabe (Lesen, ohne JOINS bei Tabellen)
WordPress und Datenbanken
Mit welchem Datenbankmanagementsystem funktioniert WordPress?
WordPress und Datenbanken
F: Mit welchem Datenbankmanagementsystem funktioniert WordPress?
A: MySQL
Offiziell - und auch praktisch - nur mit diesem relationalem DBMS.
Dies ist nicht nur dem DB-Aufbau selbst, sondern auch vielen Plugins geschuldet.
WordPress und MySQL
 Damit sind aber alle „Ableger“ und Forks von MySQL nutzbar:
 Percona Server for MySQL
 MariaDB
 Amazon Aurora
 Google Cloud SQL
 …
 Aber: MariaDB läuft vom „offiziellen“ MySQL zunehmend auseinander und hat
immer mehr Inkompatibilitäten
https://mariadb.com/kb/en/library/mariadb-vs-mysql-compatibility/
WordPress und Postgres und NoSQL
 PostgreSQL (Objektrelationales Datenbankmodell) war nur inoffiziell
unterstützt und ist nicht empfohlen
https://codex.wordpress.org/Using_Alternative_Databases
 Über Umwege sind auch NoSQL-Datenbanken nutzbar. Allerdings nur als Export
der Daten z.B. in eine MongoDB mittels REST-API:
https://zapier.com/zapbook/mongodb/wordpress/
https://gabrieleromanato.name/how-to-export-data-from-wordpress-to-mongodb
Vielen Dank
Fragen?

Weitere ähnliche Inhalte

Was ist angesagt?

Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...
Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...
Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...OPITZ CONSULTING Deutschland
 
Enter the WebMatrix
Enter the WebMatrixEnter the WebMatrix
Enter the WebMatrixMartin Hey
 
20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge
20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge
20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatengeKarin Patenge
 
Microsoft Azure Platform - System Management v.0.5
Microsoft Azure Platform -  System Management v.0.5 Microsoft Azure Platform -  System Management v.0.5
Microsoft Azure Platform - System Management v.0.5 Oliver Michalski
 
FMK2012: Datenaustausch zwischen FileMaker und MySQL von Nico Busch
FMK2012: Datenaustausch zwischen FileMaker und MySQL von Nico BuschFMK2012: Datenaustausch zwischen FileMaker und MySQL von Nico Busch
FMK2012: Datenaustausch zwischen FileMaker und MySQL von Nico BuschVerein FM Konferenz
 
Webinar SharePoint auf AWS
Webinar SharePoint auf AWSWebinar SharePoint auf AWS
Webinar SharePoint auf AWSAWS Germany
 
aOS Aachen 2019 - Exchange Server 2019 - Wie macht man es richtig?
aOS Aachen 2019 - Exchange Server 2019 - Wie macht man es richtig?aOS Aachen 2019 - Exchange Server 2019 - Wie macht man es richtig?
aOS Aachen 2019 - Exchange Server 2019 - Wie macht man es richtig?Thomas Stensitzki
 
FMK2012: Mit SQL-Kommandos FileMaker Daten lesen - und schreiben von Nico Busch
FMK2012: Mit SQL-Kommandos FileMaker Daten lesen - und schreiben von Nico BuschFMK2012: Mit SQL-Kommandos FileMaker Daten lesen - und schreiben von Nico Busch
FMK2012: Mit SQL-Kommandos FileMaker Daten lesen - und schreiben von Nico BuschVerein FM Konferenz
 
Azure für SysAdmins Eine Reise durch die Cloud v.0.5
Azure für SysAdmins   Eine Reise durch die Cloud v.0.5 Azure für SysAdmins   Eine Reise durch die Cloud v.0.5
Azure für SysAdmins Eine Reise durch die Cloud v.0.5 Oliver Michalski
 
WildFly als Plattform moderner Enterprise-Anwendungen
WildFly als Plattform moderner Enterprise-AnwendungenWildFly als Plattform moderner Enterprise-Anwendungen
WildFly als Plattform moderner Enterprise-Anwendungengedoplan
 
Überblick Oracle GoldenGate
Überblick Oracle GoldenGateÜberblick Oracle GoldenGate
Überblick Oracle GoldenGateIleana Somesan
 
20160310_ModernApplicationDevelopment_NoSQL_KPatenge
20160310_ModernApplicationDevelopment_NoSQL_KPatenge20160310_ModernApplicationDevelopment_NoSQL_KPatenge
20160310_ModernApplicationDevelopment_NoSQL_KPatengeKarin Patenge
 
Volltextsuchen in RDBMS (2004)
Volltextsuchen in RDBMS (2004)Volltextsuchen in RDBMS (2004)
Volltextsuchen in RDBMS (2004)Gerrit Beine
 
Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...
Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...
Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...Ileana Somesan
 
Drupal 7 auf Amazon Web Services
Drupal 7 auf Amazon Web ServicesDrupal 7 auf Amazon Web Services
Drupal 7 auf Amazon Web ServicesSven Paulus
 
Überblick zu Oracle Database 12c Release 2
Überblick zu Oracle Database 12c Release 2Überblick zu Oracle Database 12c Release 2
Überblick zu Oracle Database 12c Release 2Ulrike Schwinn
 
SharePoint 2016 das fliegen lernen - SQL Server Performance Optimierung
SharePoint 2016 das fliegen lernen - SQL Server Performance OptimierungSharePoint 2016 das fliegen lernen - SQL Server Performance Optimierung
SharePoint 2016 das fliegen lernen - SQL Server Performance OptimierungLars Platzdasch
 
Replikation im heterogenen Umfeld mit Oracle GoldenGate
Replikation im heterogenen Umfeld mit Oracle GoldenGateReplikation im heterogenen Umfeld mit Oracle GoldenGate
Replikation im heterogenen Umfeld mit Oracle GoldenGateIleana Somesan
 
Exadata with VM as Consolidation Plattform
Exadata with VM as Consolidation PlattformExadata with VM as Consolidation Plattform
Exadata with VM as Consolidation PlattformDaniele Massimi
 
Apex on the Rocks - Hochverfügbarkeit
Apex on the Rocks - HochverfügbarkeitApex on the Rocks - Hochverfügbarkeit
Apex on the Rocks - HochverfügbarkeitStefan Witwicki
 

Was ist angesagt? (20)

Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...
Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...
Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...
 
Enter the WebMatrix
Enter the WebMatrixEnter the WebMatrix
Enter the WebMatrix
 
20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge
20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge
20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge
 
Microsoft Azure Platform - System Management v.0.5
Microsoft Azure Platform -  System Management v.0.5 Microsoft Azure Platform -  System Management v.0.5
Microsoft Azure Platform - System Management v.0.5
 
FMK2012: Datenaustausch zwischen FileMaker und MySQL von Nico Busch
FMK2012: Datenaustausch zwischen FileMaker und MySQL von Nico BuschFMK2012: Datenaustausch zwischen FileMaker und MySQL von Nico Busch
FMK2012: Datenaustausch zwischen FileMaker und MySQL von Nico Busch
 
Webinar SharePoint auf AWS
Webinar SharePoint auf AWSWebinar SharePoint auf AWS
Webinar SharePoint auf AWS
 
aOS Aachen 2019 - Exchange Server 2019 - Wie macht man es richtig?
aOS Aachen 2019 - Exchange Server 2019 - Wie macht man es richtig?aOS Aachen 2019 - Exchange Server 2019 - Wie macht man es richtig?
aOS Aachen 2019 - Exchange Server 2019 - Wie macht man es richtig?
 
FMK2012: Mit SQL-Kommandos FileMaker Daten lesen - und schreiben von Nico Busch
FMK2012: Mit SQL-Kommandos FileMaker Daten lesen - und schreiben von Nico BuschFMK2012: Mit SQL-Kommandos FileMaker Daten lesen - und schreiben von Nico Busch
FMK2012: Mit SQL-Kommandos FileMaker Daten lesen - und schreiben von Nico Busch
 
Azure für SysAdmins Eine Reise durch die Cloud v.0.5
Azure für SysAdmins   Eine Reise durch die Cloud v.0.5 Azure für SysAdmins   Eine Reise durch die Cloud v.0.5
Azure für SysAdmins Eine Reise durch die Cloud v.0.5
 
WildFly als Plattform moderner Enterprise-Anwendungen
WildFly als Plattform moderner Enterprise-AnwendungenWildFly als Plattform moderner Enterprise-Anwendungen
WildFly als Plattform moderner Enterprise-Anwendungen
 
Überblick Oracle GoldenGate
Überblick Oracle GoldenGateÜberblick Oracle GoldenGate
Überblick Oracle GoldenGate
 
20160310_ModernApplicationDevelopment_NoSQL_KPatenge
20160310_ModernApplicationDevelopment_NoSQL_KPatenge20160310_ModernApplicationDevelopment_NoSQL_KPatenge
20160310_ModernApplicationDevelopment_NoSQL_KPatenge
 
Volltextsuchen in RDBMS (2004)
Volltextsuchen in RDBMS (2004)Volltextsuchen in RDBMS (2004)
Volltextsuchen in RDBMS (2004)
 
Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...
Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...
Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, Nov...
 
Drupal 7 auf Amazon Web Services
Drupal 7 auf Amazon Web ServicesDrupal 7 auf Amazon Web Services
Drupal 7 auf Amazon Web Services
 
Überblick zu Oracle Database 12c Release 2
Überblick zu Oracle Database 12c Release 2Überblick zu Oracle Database 12c Release 2
Überblick zu Oracle Database 12c Release 2
 
SharePoint 2016 das fliegen lernen - SQL Server Performance Optimierung
SharePoint 2016 das fliegen lernen - SQL Server Performance OptimierungSharePoint 2016 das fliegen lernen - SQL Server Performance Optimierung
SharePoint 2016 das fliegen lernen - SQL Server Performance Optimierung
 
Replikation im heterogenen Umfeld mit Oracle GoldenGate
Replikation im heterogenen Umfeld mit Oracle GoldenGateReplikation im heterogenen Umfeld mit Oracle GoldenGate
Replikation im heterogenen Umfeld mit Oracle GoldenGate
 
Exadata with VM as Consolidation Plattform
Exadata with VM as Consolidation PlattformExadata with VM as Consolidation Plattform
Exadata with VM as Consolidation Plattform
 
Apex on the Rocks - Hochverfügbarkeit
Apex on the Rocks - HochverfügbarkeitApex on the Rocks - Hochverfügbarkeit
Apex on the Rocks - Hochverfügbarkeit
 

Ähnlich wie Datenbanken - Eine Übersicht (WPMeetUP München)

OOP 2014 SQL oder NoSQL - die Auswahl der richtigen Datenbankplattform für di...
OOP 2014 SQL oder NoSQL - die Auswahl der richtigen Datenbankplattform für di...OOP 2014 SQL oder NoSQL - die Auswahl der richtigen Datenbankplattform für di...
OOP 2014 SQL oder NoSQL - die Auswahl der richtigen Datenbankplattform für di...AWS Germany
 
Do´s and Dont´s mit Oracle RDS
Do´s and Dont´s mit Oracle RDS Do´s and Dont´s mit Oracle RDS
Do´s and Dont´s mit Oracle RDS esentri AG
 
Docker-Images mit vorinstallierter Instanz einer Oracle-DB
Docker-Images mit vorinstallierter Instanz einer Oracle-DBDocker-Images mit vorinstallierter Instanz einer Oracle-DB
Docker-Images mit vorinstallierter Instanz einer Oracle-DBPeter Ramm
 
Die SOA Suite in der Amazon Cloud sicher betreiben
Die SOA Suite in der Amazon Cloud sicher betreiben Die SOA Suite in der Amazon Cloud sicher betreiben
Die SOA Suite in der Amazon Cloud sicher betreiben OPITZ CONSULTING Deutschland
 
Cloud Computing für die Verarbeitung von Metadaten
Cloud Computing für die Verarbeitung von MetadatenCloud Computing für die Verarbeitung von Metadaten
Cloud Computing für die Verarbeitung von MetadatenMagnus Pfeffer
 
Amazon Lightsail Webinar
Amazon Lightsail WebinarAmazon Lightsail Webinar
Amazon Lightsail WebinarAWS Germany
 
Big Data Konnektivität
Big Data KonnektivitätBig Data Konnektivität
Big Data KonnektivitätTrivadis
 
Webinar Windows auf AWS (Deutsch)
Webinar Windows auf AWS (Deutsch)Webinar Windows auf AWS (Deutsch)
Webinar Windows auf AWS (Deutsch)AWS Germany
 
skilllocation Foliensatz zu Microsoft Azure
skilllocation Foliensatz zu Microsoft Azureskilllocation Foliensatz zu Microsoft Azure
skilllocation Foliensatz zu Microsoft AzureCarola Pantenburg
 
RDBMS oder NoSQL – warum nicht beides?
RDBMS oder NoSQL – warum nicht beides?RDBMS oder NoSQL – warum nicht beides?
RDBMS oder NoSQL – warum nicht beides?Capgemini
 
Heterogene Daten(-strukturen) in der Oracle Datenbank
Heterogene Daten(-strukturen) in der Oracle DatenbankHeterogene Daten(-strukturen) in der Oracle Datenbank
Heterogene Daten(-strukturen) in der Oracle DatenbankUlrike Schwinn
 
Blueprints bei E-Commerce Workloads mit AWS
Blueprints bei E-Commerce Workloads mit AWS Blueprints bei E-Commerce Workloads mit AWS
Blueprints bei E-Commerce Workloads mit AWS AWS Germany
 
Sql Server Grundlagen für Sharepoint Administratoren
Sql Server Grundlagen für Sharepoint AdministratorenSql Server Grundlagen für Sharepoint Administratoren
Sql Server Grundlagen für Sharepoint AdministratorenCommunardo GmbH
 
Sql Server GrundlagenfüR Share Point Admins
Sql Server GrundlagenfüR Share Point AdminsSql Server GrundlagenfüR Share Point Admins
Sql Server GrundlagenfüR Share Point AdminsSharepointUGDD
 
Oracle Technology Monthly Oktober 2017
Oracle Technology Monthly Oktober 2017Oracle Technology Monthly Oktober 2017
Oracle Technology Monthly Oktober 2017oraclebudb
 
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im ÜberblickBig Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im ÜberblickKarin Patenge
 
Modernes Rechenzentrum - Future Decoded
Modernes Rechenzentrum - Future DecodedModernes Rechenzentrum - Future Decoded
Modernes Rechenzentrum - Future DecodedMicrosoft Österreich
 
DOAG Webinar Oracle und Docker
DOAG Webinar Oracle und DockerDOAG Webinar Oracle und Docker
DOAG Webinar Oracle und DockerStefan Oehrli
 

Ähnlich wie Datenbanken - Eine Übersicht (WPMeetUP München) (20)

OOP 2014 SQL oder NoSQL - die Auswahl der richtigen Datenbankplattform für di...
OOP 2014 SQL oder NoSQL - die Auswahl der richtigen Datenbankplattform für di...OOP 2014 SQL oder NoSQL - die Auswahl der richtigen Datenbankplattform für di...
OOP 2014 SQL oder NoSQL - die Auswahl der richtigen Datenbankplattform für di...
 
Do´s and Dont´s mit Oracle RDS
Do´s and Dont´s mit Oracle RDS Do´s and Dont´s mit Oracle RDS
Do´s and Dont´s mit Oracle RDS
 
Docker-Images mit vorinstallierter Instanz einer Oracle-DB
Docker-Images mit vorinstallierter Instanz einer Oracle-DBDocker-Images mit vorinstallierter Instanz einer Oracle-DB
Docker-Images mit vorinstallierter Instanz einer Oracle-DB
 
Die SOA Suite in der Amazon Cloud sicher betreiben
Die SOA Suite in der Amazon Cloud sicher betreiben Die SOA Suite in der Amazon Cloud sicher betreiben
Die SOA Suite in der Amazon Cloud sicher betreiben
 
Cloud Computing für die Verarbeitung von Metadaten
Cloud Computing für die Verarbeitung von MetadatenCloud Computing für die Verarbeitung von Metadaten
Cloud Computing für die Verarbeitung von Metadaten
 
Amazon Lightsail Webinar
Amazon Lightsail WebinarAmazon Lightsail Webinar
Amazon Lightsail Webinar
 
Big Data Konnektivität
Big Data KonnektivitätBig Data Konnektivität
Big Data Konnektivität
 
Daos
DaosDaos
Daos
 
Amazon Redshift
Amazon RedshiftAmazon Redshift
Amazon Redshift
 
Webinar Windows auf AWS (Deutsch)
Webinar Windows auf AWS (Deutsch)Webinar Windows auf AWS (Deutsch)
Webinar Windows auf AWS (Deutsch)
 
skilllocation Foliensatz zu Microsoft Azure
skilllocation Foliensatz zu Microsoft Azureskilllocation Foliensatz zu Microsoft Azure
skilllocation Foliensatz zu Microsoft Azure
 
RDBMS oder NoSQL – warum nicht beides?
RDBMS oder NoSQL – warum nicht beides?RDBMS oder NoSQL – warum nicht beides?
RDBMS oder NoSQL – warum nicht beides?
 
Heterogene Daten(-strukturen) in der Oracle Datenbank
Heterogene Daten(-strukturen) in der Oracle DatenbankHeterogene Daten(-strukturen) in der Oracle Datenbank
Heterogene Daten(-strukturen) in der Oracle Datenbank
 
Blueprints bei E-Commerce Workloads mit AWS
Blueprints bei E-Commerce Workloads mit AWS Blueprints bei E-Commerce Workloads mit AWS
Blueprints bei E-Commerce Workloads mit AWS
 
Sql Server Grundlagen für Sharepoint Administratoren
Sql Server Grundlagen für Sharepoint AdministratorenSql Server Grundlagen für Sharepoint Administratoren
Sql Server Grundlagen für Sharepoint Administratoren
 
Sql Server GrundlagenfüR Share Point Admins
Sql Server GrundlagenfüR Share Point AdminsSql Server GrundlagenfüR Share Point Admins
Sql Server GrundlagenfüR Share Point Admins
 
Oracle Technology Monthly Oktober 2017
Oracle Technology Monthly Oktober 2017Oracle Technology Monthly Oktober 2017
Oracle Technology Monthly Oktober 2017
 
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im ÜberblickBig Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
Big Data Community Webinar vom 16. Mai 2019: Oracle NoSQL DB im Überblick
 
Modernes Rechenzentrum - Future Decoded
Modernes Rechenzentrum - Future DecodedModernes Rechenzentrum - Future Decoded
Modernes Rechenzentrum - Future Decoded
 
DOAG Webinar Oracle und Docker
DOAG Webinar Oracle und DockerDOAG Webinar Oracle und Docker
DOAG Webinar Oracle und Docker
 

Datenbanken - Eine Übersicht (WPMeetUP München)

  • 1. Datenbanken Eine Auswahl WP Meetup München – 17.10.2017
  • 2. Datenbanken – Eine Übersicht  Übersicht von Datenbankmanagementsystemen im Hosting-Umfeld  Fokus auf MySQL und MySQL-nahen Datenbanktypen sowie Blick auf NoSQL  Auf/mit welchen Systemen läuft WordPress
  • 3. Speaker – Dietmar Leher  Xing: http://www.xing.com/profile/Dietmar_Leher  LinkedIN: https://www.linkedin.com/in/dietmarleher/  Facebook: https://www.facebook.com/dietmarleher  Twitter: https://twitter.com/spacehostDE  Webseite: https://spacehost.de  Blog: https://spacehost.de/blog
  • 4. Datenbanken - Inhalt  Datenbanken - Eine kurze Einführung  Objektrelationales Datenbankmodell  Nicht-Relationales Datenbankmodell  NoSQL  Relationales Datenbankmodell  MySQL und Varianten  Ein paar Worte zur Performance  WordPress und Datenbanken
  • 5. Datenbanken - Eine kurze Einführung  Eine Datenbank speichert große Datenmengen  Aufgaben bei der Speicherung:  Effizient (z.B. platzsparend)  Widerspruchsfrei  Dauerhaft  In passender Darstellung für Benutzer und Anwendungen (Format)
  • 6. Datenbanken - Eine kurze Einführung Besteht aus zwei Teilen: DB + DBMS 1) Verwaltungssoftware = Datenbankmanagementsystem (DBMS) 2) Menge der zu verwaltenden Daten (Datensätze) = Datenbank (DB) Bildquelle: http://www.datenbanken-verstehen.de/wordpress/dbv/uploads/datenbank.jpg
  • 7. 1) Datenbankmanagementsystem  Interne Organisation der Speicherung der Daten  Kontrolle aller lesenden und schreibenden Zugriffe (Benutzer und Zugriffsverwaltung)  Datenbanksprache zur Abfrage und Verwaltung der Daten  nutzt ein Datenbankmodell das bestimmt, auf welche Art und Weise Daten in einem Datenbanksystem gespeichert und bearbeitet werden können:  Hierarchisches Datenbankmodell  Netzwerkdatenbankmodell  Objektrelationales Datenbankmodell  Objektorientiertes Datenbankmodell  Nicht-Relationales Datenbankmodell, NoSQL  Relationales Datenbankmodell
  • 8. Eine Auswahl  Liste bei Wikipedia: https://de.wikipedia.org/wiki/Liste_der_Datenbankmanagementsysteme  Ranking: https://db-engines.com/de/ranking/relational+dbms
  • 10. PostgreSQL  PostgreSQL, kurz Postgres  Seit 1997 Open-Source  Aktueller Versionszweig: 10.x  Galt lange Jahre als „das fortschrittlichste Open-Source-Datenbanksystem“  Einsatz bei großen Datensätzen:  unbegrenzte Größe der Datenbank  einzelne Tabelle bis 32 TB  Einzelner Datensatz bis 1,6 TB Bildquelle: https://www.postgresql.org
  • 11. Nicht-Relationales Datenbankmodell = "not only SQL" (kurz: NoSQL) ~ Dokumentenorientiertes Datenbankmodell
  • 12. NoSQL-Datenbanken  MongoDB  von "huMONGOus", sprich "extrem groß"  2009, Open-Source seit 2012  aktueller Versionszweig: 3.4.x  In C++ geschrieben, kann mit allen JSON-ähnlichen Dokumenten arbeiten  am weitesten verbreitete NoSQL-Datenbank; „Allzweck-Datenbank“  Direkte MongoDB-Alternativen  ArangoDB (2011 AvocadoDB)  Percona Server for MongoDB (seit v3.0 - 2015) Bildquelle: https://webassets.mongodb.com
  • 13. NoSQL-Datenbanken  CouchDB  Erlang (Ericsson) & Javascript - Apache Foundation  2005  Zuverlässigkeit  Cassandra  Java - Apache Foundation  Bei Facebook entwickelt und 2008 veröffentlicht  Beteiligungen von IBM, Rackspace und Twitter in den Jahren danach  Ausfallsicherheit
  • 14. NoSQL-Datenbanken  Riak  2009 – Basho Technologies  Setzt auf den Veröffentlichungen von DynamoDB auf  Key-Value-Store  Amazon DynamoDB  Von AWS entwickelt (ca. 2007)  Auch lokal einsetzbar  Hochgradig skalierbar durch Einsatz im AWS  Key-Value-Store oder dokumentenorientiert
  • 15. NoSQL-Datenbanken  Begriffserklärung: Key-Value-Store Key-Value Stores können lediglich Paare von Schlüsseln und Werten abspeichern, sowie die Werte anhand des Schlüssels wieder zurückliefern. Ressourcenschonend, dafür meist weniger komplex.  Begriffserklärung: Dokumentenorientiert Daten werden in Dokumenten anstelle von Tabellen gespeichert. Ein Dokument ist in diesem Zusammenhang eine strukturierte Zusammenstellung bestimmter Daten also keine „Datei“. Durch die kaum vorhandenen Einschränkung beim Aufbau der Dokumente ergeben sich umfassende Gestaltungsfreiheiten.
  • 16. NoSQL-Datenbanken  Redis  Einfacher Key-Value-Store  2009 - Salvatore Sanfilippo & Redis Labs & Sponsors  In-Memory-Datenbank  SQLite  zählt streng genommen nicht zu den NoSQL-Datenbanken  Reine "In-Memory-Datenbank". Keine Installation oder Konfiguration. SQLite lädt alle Daten aus einer Datendatei in den Speicher (Daten weg bei Crash, wenn nicht gespeichert).
  • 17. Am Rande: Elasticsearch und Solr Elasticsearch  Keine Datenbank!  Suchmaschine auf Basis von Lucene*  In Java geschrieben  speichert Suchergebnisse in JSON, Ausgabe erfolgt über ein RESTful- Webinterface Solr  Keine Datenbank!  Ein in Lucene* enthaltenes Servlet  älter als EL und "näher" / direkter an Lucene  kommuniziert mittels HTTP und kann verschiedene Dateiformate wie z.B. XML, JSON oder PDF.  Bezeichnung stand für „Search on Lucene and Resin“ * Apache Lucene ist eine in Java geschriebene Volltextsuchmaschine
  • 19. Relationale Datenbanken Kostenpflichtig, Enterprise-Umfeld:  MS SQL (Microsoft)  Oracle Database (Oracle)  DB2 (IBM)  Informix (seit 2001 IBM)
  • 20. Relationale Datenbanken  MySQL  Seit 1994  gekauft 2010 von Oracle  MySQL Community Edition (frei verfügbar)  Editionen mit erweiterten Funktionen, Verwaltungswerkzeugen, technischen Supportleistungen etc.  MySQL Standard Edition  MySQL Enterprise Edition  MySQL Cluster CGE Bildquelle: https://www.mysql.com
  • 21. Versionsübersicht  MySQL 5.6  Premier Support End, Februar 2018  Extended Support bis Februar 2021  MySQL 5.7  Aktuelle Stable-Version  Viele Verbesserungen bei der Inno-DB Engine > bessere Performance  Verbesserte Replikation und Logging  Native JSON Unterstützung  MySQL 8  In Entwicklung  Standardzeichensatz UTF8 statt Latin1 Bildquelle: https://www.mysql.com
  • 22. MySQL - Percona MySQL Community Edition  offizielles MySQL (Oracle)  aktuelle Version 5.7.x Percona Server for MySQL  2006 - Percona LLC  aktuelle Version 5.7.x  legt Wert auf Performance und Skalierbarkeit  Einsatz z.B. in Debian 9 Featurevergleich: https://www.percona.com/software/mysql-database/percona-server/feature-comparison
  • 23. MySQL - MariaDB MySQL Community Edition  offizielles MySQL (Oracle)  aktuelle Version 5.7.x MariaDB  2009 - MariaDB Foundation  aktuelle Version 10.2  Standard-Datenbank in vielen Linux-Distributionen, z.B. in Ubuntu seit 14.04,Fedora ab Version 19, seit RHEL 7  Entfernt sich schrittweise von MySQL Featurevergleich: https://mariadb.com/kb/en/library/mariadb-vs-mysql-features/
  • 24. Exkurs: Google Cloud SQL for MySQL  Google Cloud SQL for MySQL - https://cloud.google.com/sql/  Nur in Google Cloud SQL nutzbar  Skalierbarkeit, z.B. Server mit bis zu 32 Prozessorkernen und 200 GB RAM
  • 25. Exkurs: Amazon Aurora  Amazon Aurora - https://aws.amazon.com/de/rds/aurora/details/  Nur mit Amazon AWS verwendbar  Bei Verwendung der InnoDB-Speicher-Engine voll kompatibel mit MySQL 5.6  Bis zu 5 mal performanter als Standard-MySQL (eigene Angabe)
  • 26. Exkurs: Amazon Aurora Wordpress-Performance  2-3 mal performanter bei WordPress nach Tests von 2015  Setup komplett über AWS realisiert  https://pagely.com/blog/2015/08/we-benchmarked-amazons-new-aurora-database- for-use-with-wordpress-results-within/  Alternative Tests mit Aurora gegen ein Percona-MySQL-Setup mit Galera-Cluster  Hier verliert Aurora deutlich bei den Themen Performance und Ausfallsicherheit  http://www.tusacentral.net/joomla/index.php/mysql-blogs/175-aws-aurora- benchmarking-blast-or-splash.html (2015)  https://www.percona.com/blog/2016/05/26/aws-aurora-benchmarking-part-2/ (2016)
  • 27. Ein paar Worte zur Performance
  • 28. Ein paar Worte zur Performance NoSQL + viele Schreib-/Leseanfragen - schwache Garantien hinsichtlich Konsistenz > unsichere Transaktionen -/+ verteilte Datenbanken mit redundanter Datenhaltung auf vielen Servern, meist durch eine verteilte Hashtabelle (Prüfsumme) + einfache Skalierung > Ausfälle einzelner Server Relationale Datenbanken + effizient bei häufigen, aber kleinen Transaktionen + große Batch-Transaktionen mit seltenen Schreibzugriffen - wenn beides zusammentrifft: hohen Datenanforderungen und häufigen Datenänderungen - bei datenintensiven Applikationen wie Indexierung großer Dokumentmengen, Webseiten mit hohen Lastaufkommen, Streaming- Media-Applikationen
  • 29. Ein paar Worte zur Performance  NoSQL vs. MySQL - Technische Unterschiede: https://www.percona.com/resources/technical-presentations/mysql-vs-mongodb- percona-university-budapest  NoSQL vs. MySQL – Wann welche Version verwenden: https://www.percona.com/resources/technical-presentations/mysql-vs-mongodb- choosing-right-technology-your-application-scale
  • 30. Ein paar Worte zur Performance Es kommt darauf an…  Percona oder MariaDB vor „Standard-MySQL“  Cluster / mehrere Server bei Ausfallsicherheit und hoher Performance  Amazon Aurora und Cloud-Anbieter am besten im jeweiligen Umfeld verwenden (AWS, Google-Cloud etc.)  NoSQL bei „BigData“: häufige Zugriffe auf große Datensätze  NoSQL bei reiner Ausgabe (Lesen, ohne JOINS bei Tabellen)
  • 31. WordPress und Datenbanken Mit welchem Datenbankmanagementsystem funktioniert WordPress?
  • 32. WordPress und Datenbanken F: Mit welchem Datenbankmanagementsystem funktioniert WordPress? A: MySQL Offiziell - und auch praktisch - nur mit diesem relationalem DBMS. Dies ist nicht nur dem DB-Aufbau selbst, sondern auch vielen Plugins geschuldet.
  • 33. WordPress und MySQL  Damit sind aber alle „Ableger“ und Forks von MySQL nutzbar:  Percona Server for MySQL  MariaDB  Amazon Aurora  Google Cloud SQL  …  Aber: MariaDB läuft vom „offiziellen“ MySQL zunehmend auseinander und hat immer mehr Inkompatibilitäten https://mariadb.com/kb/en/library/mariadb-vs-mysql-compatibility/
  • 34. WordPress und Postgres und NoSQL  PostgreSQL (Objektrelationales Datenbankmodell) war nur inoffiziell unterstützt und ist nicht empfohlen https://codex.wordpress.org/Using_Alternative_Databases  Über Umwege sind auch NoSQL-Datenbanken nutzbar. Allerdings nur als Export der Daten z.B. in eine MongoDB mittels REST-API: https://zapier.com/zapbook/mongodb/wordpress/ https://gabrieleromanato.name/how-to-export-data-from-wordpress-to-mongodb