of 27/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

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

  • View
    1

  • Download
    0

Embed Size (px)

Text of MySQL Architekturen für Oracle DBA's... 2 Inhalt MySQL Architekturen für Oracle DBA's Der LAMP...

  • 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

  • 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

  • www.fromdual.com 3

    Der LAMP Stack

    PHP

    Wer steht dahinter?

    Alternativen

    MySQLApacheLinux

    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

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

  • 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

  • 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

  • www.fromdual.com 7

    Wechsel von Oracle?

    Oracle MySQL

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

  • 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

  • www.fromdual.com 9

    Pluggable Storage Engines

    Konventionelles(R)DBMS

    = Monolith

    MYSQL SEHandler Interface

    ISAM MyISAM BDB ...

    built-inMYSQL pluggable SE

    InnoDB MyISAM PBXT NDB ...

    Handler Interface

    plug-in

  • 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.

  • 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

  • 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

  • www.fromdual.com 13

    Scale-Up vs. Scale-Out

    Scale-Up

    Scale-Out

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

  • www.fromdual.com 14

    Der MySQL Scale-Out Ansatz

    Application

    Master

    Slave Backup

    Load balancer

    Slave 1

    Slave Reporting

    Slave 2

    Slave 3

    rtwro

    ...

  • www.fromdual.com 15

    Aktiv/passiv fail-over mit SAN

    App App App

    M'

    SAN

    Slave1

    Slave2

    Slave3

    Load balancing (LB)

    M

    VIP

  • www.fromdual.com 16

    Aktiv/passiv fail-over mit SAN● SPOF! App App App

    M'

    SAN

    Slave1

    Slave2

    Slave3

    Load balancing (LB)

    M

    VIP

    !!!

  • www.fromdual.com 17

    Aktiv/passiv fail-over mit DRBD

    App App App

    M'

    Slave1

    Slave2

    Slave3

    Load balancing (LB)

    M

    VIP

    DRBD

  • www.fromdual.com 18

    Activ/passiv fail-over mit DRBD

    App App App

    M'

    Slave1

    Slave2

    Slave3

    Load balancing (LB)

    M

    VIP

    DRBD

  • 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

  • www.fromdual.com 20

    Laser-Schweissgerät aus der Automobilindustrie

  • www.fromdual.com 21

    Daten sammeln der Lasergeräte

  • www.fromdual.com 22

    Messen von Medienkonsum

  • www.fromdual.com 23

    Car-Sharing Plattform

  • www.fromdual.com 24

    Solarzellenproduktion

  • www.fromdual.com 25

    Solarzellenproduktion

  • www.fromdual.com 26

    Online Börsenplattform

  • www.fromdual.com 27

    Fragen und Antworten

    ?Sonst: Slides: www.fromdual.com

    [email protected]

    http://www.fromdual.com/

    Slide 1Slide 2Slide 3Slide 4Slide 5Slide 6Slide 7Slide 8Slide 9Slide 10Slide 11Slide 12Slide 13Slide 14Slide 15Slide 16Slide 17Slide 18Slide 19Slide 20Slide 21Slide 22Slide 23Slide 24Slide 25Slide 26Slide 27