MySQL Performance: Getting Started InnoDB Erkan Yanar linsenraum.de 13. März 2012 Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 1 / 20
Die Welt der Performacne Was ist Performance? Latenz Durchsatz Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 2 / 20
Die Welt der Performacne Freiheitsgrade Architektur Server Konfiguration GLOBAL SESSION Applikationslogik Schema Indizierung Analyse OS Hardware Messung! Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 3 / 20
Die Welt der Performacne Freiheitsgrade Architektur Server Konfiguration GLOBAL SESSION Applikationslogik Schema Indizierung Analyse OS Hardware Messung! Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 3 / 20
Die Welt der Performacne Was will ich? Wir können lauter Counter durchgehen Oder wir können anfangen zu verstehen Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 4 / 20
Die Welt der Performacne Was will ich? Wir können lauter Counter durchgehen Oder wir können anfangen zu verstehen Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 4 / 20
Die Welt der Performacne Ziel: Einführung/Verständnis in die Funktionsweise von InnoDB Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 5 / 20
MyISAM Kurzüberblick Abrenzung zu MyISAM MVCC ACID Row/Table-Locking Transaktionen FK FT GIS Crash safe Backup MyISAM Nein Nein Table Nein Nein Ja Ja Nein Nur Locking Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 6 / 20
MyISAM Filesystem Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 7 / 20
MyISAM Index Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 8 / 20
InnoDB InnoDB Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 9 / 20
InnoDB Kurzüberblick MyISAM InnoDB MVCC Nein Ja ACID Nein Ja Row/Table-Locking Table Row Transaktionen Nein Ja FK Nein Ja FT Ja Nein (5.6 Ja) GIS Ja Nein Crash safe Nein Ja Backup Nur Locking Hot Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 10 / 20
InnoDB Funktionsweise Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 11 / 20
InnoDB Funktionsweise innodb buffer pool instances Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 12 / 20
Clustered Index Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 13 / 20
Clustered Index http://linsenraum.de/erkules/2010/12/pbxt-new-kid-on-the-block.html Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 14 / 20
Allgemeines Besonderheiten Noch etwas zum Notieren query cache size Waste of Memory/Performance sort buffer size Voll angefordert per Thread thread cache size Siehe Threads connected/created max heap table size Memory Engine? tmp table size Begrenzung für tmp Tables Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 15 / 20
Allgemeines Besonderheiten Mehr Richtung OS? Swappiness echo 0 > /proc/sys/vm/swappiness IO-Scheduler NOOP, Deadline Filesystem XFS RAID 10 OS Linux Virtualisierung OMG! Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 16 / 20
Allgemeines Besonderheiten Weiter Spielen Partitionierung ConnectionPool Sharding SpiderSE HandlerSocket Memcached-API NoSQL... Anyone? Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 17 / 20
Allgemeines Besonderheiten Replikation RBR/SBR NDB Galera... Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 18 / 20
APPLIKATION Letzendlich: Applikation! Applikation! Applikation! Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 19 / 20
Ende Gelände APPLIKATION Erkan Yanar @ erkan.yanar@linsenraum.de... linsenraum.de/erkules www.xing.com/profile/erkan Yanar Erkan Yanar (linsenraum.de) MySQL Performance: Getting Started InnoDB 13. März 2012 20 / 20