27
www.fromdual.com 1 DOAG Konferenz, Nürnberg 16. November 2010 Oliver Sennhauser Senior MySQL Consultant, FromDual [email protected] http://www.fromdual.com MySQL Architekturen für Oracle DBA's

DOAG 2010: MySQL Architekturen für Oracle DBA's

Embed Size (px)

Citation preview

Page 1: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 1

DOAG Konferenz, Nürnberg16. November 2010

Oliver SennhauserSenior MySQL Consultant, FromDual

[email protected]

http://www.fromdual.com

MySQL Architekturen für Oracle DBA's

Page 2: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 2

Inhalt

MySQL Architekturen für Oracle DBA's

➢ Der LAMP Stack➢ Geschichte von MySQL➢ Open Source➢ Branches und Forks➢ Wechsel von Oracle?➢ MySQL Architektur➢ Pluggable Storage Engines➢ Unterschiede zwischen Oracle und MySQL➢ Scale-Up vs. Scale-Out➢ HA Lösungen➢ Architekturen aus der Praxis

Page 3: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 3

Der LAMP Stack

PHP

Wer steht dahinter?

Alternativen

MySQL

Apache

Linux

Wir sind das Web!

Zend Technologies

MySQL/Oracle

Apache Software Foundation

Linux Foundation

Perl, Java, Python, Ruby

PostgreSQL, others

Lighty (lighttpd), IIS

Windows, Solaris, BSD, others

Page 4: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 4

Geschichte von MySQL

2000 01 02 03 04 2005 06 07 0908 2010

Okt Oracle kauft Innobase

OY InnoDB Friday

...

1995: Projektstart durch Monty

Widenius, David Axmark und Allan

Larsson

Jun GPLOkt 4.1 GA

Jan 3.23 GA

Mar 4.0 GA

Okt 5.0 GA Oracle versucht MySQL zu kaufen

IPO wird für 2008 angekündigt

Jan Sun kauft MySQL für USD

1000 Mio

Nov 5.1 GA

Apr Oracle kauf Sun für USD 7400 Mio

Dez 5.5

Ca. July 5.6(nicht publik)

2. Sem. 5.5 GA(Prognose)

Page 5: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 5

Open Source

● Grundsätzliches:● Code ist verfügbar und einsehbar (Transparenz)

● Code darf abgeändert, angepasst oder anderweitig verwendet werden

● JeKaMi (Jeder Kann Mitmachen): Communities

● Vorteile● „kein“ Vendor Lock-in

● Geringere Kosten

● Mehr Flexibilität

● Bessere Qualität

● Grössere Zuverlässigkeit

● Nachteile● Es wird nicht immer alles auf dem goldenen Tablett serviert: „read the source“!

● Konfliktpotential wenn Kommerz ins Spiel kommt

● Für mich persönlich: Wissenstransfer und Wissensfreiheit

Page 6: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 6

Branches und Forks

2009

Jul Drizzle MySQL Fork

Jul ProvenScalingMySQL Branch (†)

Okt OurDelta MySQL Branch

Dez XtraDB InnoDB Branch / Percona Build / Percona Server

Mai MariaDB/Aria MySQL/MyISAM Branch Fork ?

2010

Google patches

MySQL2008

Page 7: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 7

Wechsel von Oracle?

Oracle MySQL

Es braucht etwas Umgewöhnungszeit (3-6 M?)!

Page 8: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 8

MySQL Architektur

mysqld

MySQL ist eine multi-Thread und NICHT eine multi-Prozess Applikation!

Application / Client

ThreadCache

ConnectionManager

User Au-thentication

CommandDispatcherLogging

Query CacheModule

QueryCache

Parser

Optimizer

Access Control

Table Manager

Table OpenCache (.frm, fh)

Table DefinitionCache (tbl def.)

Handler Interface

MyISAM Memory NDB PBXTInnoDB ...Aria XtraDB Federated-X

Page 9: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 9

Pluggable Storage Engines

Konventionelles(R)DBMS

= Monolith

MYSQL SE

Handler Interface

ISAM MyISAM BDB ...

built-inMYSQL pluggable SE

InnoDB MyISAM PBXT NDB ...

Handler Interface

plug-in

Page 10: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 10

Die wichtigsten Storage Engines

● MyISAM/Aria● InnoDB/XtraDB/PBXT (Transaktionen)● MEMORY● NDB (MySQL Cluster)● Federated-X (~ Oracle DB-Link)● CSV, Archive, Blackhole● Infobright/InfiniDB (Columnar SE)● Sphinx-SE● Spider, etc.

Page 11: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 11

Weitere Unterschiede zwischen Oracle und MySQL● Transaktionen/Locking ist SE-abhängig

→ Welche Eigenschaften sind wo untergebracht?

● Einige Buffers/Caches sind SE-abhängig andere nicht

→ Separat konfigurieren, je nach Bedarf

● Connections in Oracle sind teuer, in MySQL billig

● Oracle Multi-Prozess Modell, MySQL Multi-Thread Modell

Page 12: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 12

Weitere Unterschiede zwischen Oracle und MySQL● MySQL hat verschiedene Logs:

● Error log (= alert.log)● Binary log (~ archive log)● Transaction Log (~ REDO log, aber binary log !=

transaction log)● General Query log (Oracle ?)

● Schema in Orcl: User + Objekte● Backup in MySQL kann man falsch machen.● Oracle: Scale-up, MySQL: Scale-out

Page 13: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 13

Scale-Up vs. Scale-Out

Scale-Up

Scale-Out

● Kosten● MySQL Design● Physikalische Flaschenhälse● „Relaxation of Constraints“

Page 14: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 14

Der MySQL Scale-Out Ansatz

Application

Master

Slave Backup

Load balancer

Slave 1

Slave Reporting

Slave 2

Slave 3

rtwro

...

Page 15: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 15

Aktiv/passiv fail-over mit SAN

App App App

M'

SAN

Slave1

Slave2

Slave3

Load balancing (LB)

M

VIP

Page 16: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 16

Aktiv/passiv fail-over mit SAN

● SPOF! App App App

M'

SAN

Slave1

Slave2

Slave3

Load balancing (LB)

M

VIP

!!!

Page 17: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 17

Aktiv/passiv fail-over mit DRBD

App App App

M'

Slave1

Slave2

Slave3

Load balancing (LB)

M

VIP

DRBD

Page 18: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 18

Activ/passiv fail-over mit DRBD

App App App

M'

Slave1

Slave2

Slave3

Load balancing (LB)

M

VIP

DRBD

Page 19: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 19

MySQL Cluster

Application

Mgm Node 1

Load balancer

Application Application Application Application

SQL Node 1

Data Node 1

Data Node 2

Sw.

Data Node 3

Data Node 4

Sw.

SQL Node 2

SQL Node 3 ...

NDB-API NDB-API

Mgm Node 2

Page 20: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 20

Laser-Schweissgerät aus der Automobilindustrie

Page 21: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 21

Daten sammeln der Lasergeräte

Page 22: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 22

Messen von Medienkonsum

Page 23: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 23

Car-Sharing Plattform

Page 24: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 24

Solarzellenproduktion

Page 25: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 25

Solarzellenproduktion

Page 26: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 26

Online Börsenplattform

Page 27: DOAG 2010: MySQL Architekturen für Oracle DBA's

www.fromdual.com 27

Fragen und Antworten

?Sonst: Slides: www.fromdual.com

oder

[email protected]