mysql architekturen für oracle dba's... 2 inhalt mysql architekturen für oracle dba's...

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

Upload: others

Post on 31-Aug-2020

14 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

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: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

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: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

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: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

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: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

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: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

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: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

www.fromdual.com 7

Wechsel von Oracle?

Oracle MySQL

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

Page 8: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

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: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

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: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

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: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

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: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

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: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

www.fromdual.com 13

Scale-Up vs. Scale-Out

Scale-Up

Scale-Out

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

Page 14: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

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: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

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: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

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: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

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: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

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: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

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: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

www.fromdual.com 20

Laser-Schweissgerät aus der Automobilindustrie

Page 21: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

www.fromdual.com 21

Daten sammeln der Lasergeräte

Page 22: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

www.fromdual.com 22

Messen von Medienkonsum

Page 23: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

www.fromdual.com 23

Car-Sharing Plattform

Page 24: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

www.fromdual.com 24

Solarzellenproduktion

Page 25: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

www.fromdual.com 25

Solarzellenproduktion

Page 26: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

www.fromdual.com 26

Online Börsenplattform

Page 27: MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP Stack Geschichte von MySQL Open Source Branches und Forks Wechsel von Oracle? MySQL

www.fromdual.com 27

Fragen und Antworten

?Sonst: Slides: www.fromdual.com

oder

[email protected]