Performance Tuning & Scale-Out mit MySQL

Ähnliche Dokumente
HA Architekturen mit MySQL

MySQL Performance Tuning

MySQL Performance Tuning für Entwickler

MySQL High Availability. DOAG 2013 Datenbank. 14. Mai 2013, Düsseldorf. Oli Sennhauser

MySQL Performance Tuning

MySQL Cluster mit Galera

MySQL Architekturen für Oracle DBA's

Konsolidieren von MySQL Landschaften

MySQL Performance: Getting Started InnoDB

MySQL Konfiguration - die wichtigsten Parameter

MySQL Security. DOAG 2013 Datenbank. 14. Mai 2013, Düsseldorf. Oli Sennhauser

Installation SQL- Server 2012 Single Node

MySQL HA & Security SLAC Juni 2013, Berlin. Oli Sennhauser

MySQL Performance Tuning für Entwickler

MySQL Administration. Seminarunterlage. Version 3.02 vom

Synchrone multi-master Replikation für MySQL

Oracle EngineeredSystems

MySQL für Oracle DBA's

Die MySQL-Schulung der Heinlein Akademie: In diesem Training lernen Sie MySQL in all seinen Facetten kennen.

MySQL Backup und Restore

Systemanforderungen (Mai 2014)

MySQL Replikation, Scale-Out, Master- Master Replikation, Backup

EINSATZ VON MICROSOFT TERMINAL-SERVICES ODER CITRIX METAFRAME

MySQL Replikation - Die Eier legende Wollmilchsau?

Monitoring - Vorher Wissen was passieren wird

herzlich vsankameleon Anwendungsbeispiel Titelmasterformat durch Klicken bearbeiten willkommen Titelmasterformat durch Klicken bearbeiten

MySQL für Oracle DBA's

NEVARIS Build Systemvoraussetzungen

Keep your SAN simple Spiegeln stag Replizieren

Verfügbarkeit von Applikationen und Failover Szenarien. Winfried Wojtenek.

IBM DB2 für Linux/Unix/Windows Monitoring und Tuning

MySQL Replication: Eine Einführung

Datenverzeichnis backupen MySQLdump Replication. MySQL 4, 5. Kapitel 12: Backup. Marcel Noe

Hochverfügbarkeit mit Windows Server vnext. Carsten Rachfahl Microsoft Hyper-V MVP

Inhaltsangabe zu den Systemvoraussetzungen:

SPARC LDom Performance optimieren

GSCC General Storage Cluster Controller. TSM Verfügbarkeit

200 Millionen Messwerte pro Tag. App-Monitoring bei RTLs wer-kennt-wen.de

Vorstellung SimpliVity. Tristan P. Andres Senior IT Consultant

MySQL Architektur die Admin-Sicht

Kommunikationsübersicht XIMA FORMCYCLE Inhaltsverzeichnis

PostgreSQL in großen Installationen

4D Server v12 64-bit Version BETA VERSION

Hochverfügbarkeit mit MySQL: Eine Kartographie der Lösungen

Oracle Hot Standby. XE, SEOne, SE. Maximum Performance Mode. WIN, Linux, Unix Einfache Lösung. bis zu 10 Standby DB

Hochverfügbarkeit - wie geht das?

KASPERSKY SECURITY FOR VIRTUALIZATION 2015

Hochverfügbare LDOMs mit Oracle Solaris Cluster

SAP Memory Tuning. Erfahrungsbericht Fritz Egger GmbH & Co OG. Datenbanken sind unsere Welt

Excel beschleunigen mit dem mit Windows HPC Server 2008 R2

MySQL Replikation. Erkan Yanar linsenraum.de linsenraum.de

Systemvoraussetzungen für ConSol*CM Version Architektur Überblick

Neues in Hyper-V Version 2

Solaris im Datacenter Architektur, Implementation und Betrieb

Systemvoraussetzungen winvs office winvs advisor

Hardware- und Software-Anforderungen IBeeS.ERP

SolarWinds Engineer s Toolset

Reporting Services und SharePoint 2010 Teil 1

Netzwerk Monitoring in der Landesvermessung und Geobasisinformation Brandenburg (LGB) Der Klügste ist der, der weiß was er nicht weiß.

Hardware- und Softwareanforderungen für die Installation von California.pro

PROLAG WORLD 2.0 PRODUKTBESCHREIBUNG SERVERSYSTEM, CLUSTERSYSTEME FÜR PROLAG WORLD

Hochverfügbare Virtualisierung für das kleine IT-Budget

ProSeminar Speicher- und Dateisysteme

Speichernetze (Storage Area Networks, SANs)

Skalierbare Webanwendungen

Proxmox VE - mit OpenSource Virtualisierung leicht gemacht

HANA Solution Manager als Einstieg

Benchmarking und Performancetesting von und mit PostgreSQL

Performance Report OXID eshop 5.0 Enterprise Edition

Systemanforderungen ab Version 5.31

Systemvoraussetzungen

Application Performance Management. Auch eine Frage des Netzwerkes?

Oracle Database Appliance und Virtualisierung: OVM oder KVM?

DTS Systeme. IT Dienstleistungen das sind wir!

SANTEC Video Technologies Professionelle Lösungen für mehr Sicherheit

Herzlich willkommen!

Markus Feichtinger. Power Systems. Der Weg zu POWER! 2009 IBM Corporation

Hinweise zur Installation von MySQL

4 Planung von Anwendungsund

I/O Performance optimieren

Titel. App-V 5 Single Server Anleitung zur Installation

Voraussetzungen für jeden verwalteten Rechner

MySQL Cluster und MySQL Proxy

Elasticsearch aus OPS-Sicht Teil1. Markus Rodi Karlsruhe,

MySQL/MariaDB für. nicht-mysql DBAs

Transkript:

Performance Tuning & Scale-Out mit MySQL Erfa-Gruppe Internet Briefing 2. März 2010 Oli Sennhauser Senior MySQL Consultant, FromDual oli.sennhauser@fromdual.com www.fromdual.com 1

Inhalt Allgemeines zu Performance Tuning MySQL Performance Tuning Scale-Out Architekturen Und wie weiter? Fragen & Antworten www.fromdual.com 2

Szenarien 3 Entwicklungsszenarien: www.fromdual.com 3

Die FromDual Performance-Wippe Ursachen für schlechte Performance? www.fromdual.com 4

Wo ist der Flaschenhals? Wir haben 4 Möglichkeiten: CPU (Taktrate, Single-Threading, SQL-Queries) Memory (RAM, 32/64-bit OS) Disk (RAID, SAN, I/O Cache) Network (selten und wenn, dann Konfiguration) Virtualisierung? www.fromdual.com 5

Wie finde ich den Flaschenhals? shell> free shell> vmstat 1 shell> iostat -xk 1 shell> ifconfig Nagios, Cacti, MySQL Enterprise Monitor, etc. Windows: Performance Monitor Siehe man-pages. www.fromdual.com 6

Wie messe ich MySQL? mysql> SHOW PROCESSLIST; mysql> SHOW GLOBAL STATUS; mysql> SHOW ENGINE INNODB STATUS; MySQL Enterprise Montior [1] MyTop [2], InnoTop [3] MySQL Activity Report [4] oder: MySQL Monitoring Solutions [5] www.fromdual.com 7

Die wichtigsten MySQL Datenbank Parameter [6] key_buffer_size (MyISAM: 25 33% RAM) innodb_buffer_pool_size (InnoDB: 80% RAM) innodb_log_file_size (InnoDB: 32 256 Mbyte) innodb_flush_log_at_trx_commit (InnoDB: 2) sync_binlog (InnoDB: 0 oder >> 1) query_cache_size (MySQL: 16 128 Mbyte) Database Health Check for MySQL [7] www.fromdual.com 8

SQL Query Tuning Slow Query Log (slow_query_log, slow_query_log_file, long_query_time) log_queries_not_using_indexes (deprecated!) mysqldumpslow -s t slow.log Profile EXPLAIN SELECT... FROM... Execution Plan der Abfrage (nur SELECT) www.fromdual.com 9

Scale-Up vs. Scale-Out Scale-Up Kosten MySQL Design Physikalische Flaschenhälse Relaxation of Constraints Scale-Out www.fromdual.com 10

Was für Komponenten nehme ich idealerweise? LAMP 3 evtl. Java? Mainstream Linux (Solaris, Windows) 64-bit OS und Hardware (Intel, AMD, KEIN Sparc!) und viel RAM! Dediziertes I/O System (KEIN SAN, KEIN RAID-5!), schnelle Disks, Write Cache. >= 1 Gbit Netzwerk KEINE Virtualisierung! www.fromdual.com 11

Der MySQL Scale-Out Ansatz Application DB www.fromdual.com 12

Der MySQL Scale-Out Ansatz ro Application r t w Master Slave 1 www.fromdual.com 13

Der MySQL Scale-Out Ansatz ro Application r t w Master Slave Reporting Slave 3 www.fromdual.com 14

Der MySQL Scale-Out Ansatz ro Application r t w Master Slave Reporting Slave 1 Slave 2 Slave 3 Load balancer www.fromdual.com 15

Der MySQL Scale-Out Ansatz ro Application r t w Master Slave Reporting Slave Backup Slave 1 Slave 2 Slave 3... Load balancer www.fromdual.com 16

Weitere Möglichkeiten Irgendwann stehen wir beim Schreib- Durchsatz an... Stärkeres I/O system Solid State Drive/Disk (SSD) Bis > 1 Tbyte,, ca. 10-20 x schneller (Marketing: 100x!) MySQL Cluster In-Memory, Realtime, HP- und HA Datenbank www.fromdual.com 17

MySQL Cluster Application Application Application Application Application NDB-API NDB-API Load balancer SQL Node 1 SQL Node 2 SQL Node 3... Mgm Node 1 Mgm Node 2 Data Node 1 Data Node 2 Sw. Sw. Data Node 3 Data Node 4 www.fromdual.com 18

Und wenn das noch nicht reicht? - Sharding! [9] Horizontales Partitionieren der Daten Separieren Splitten www.fromdual.com 19

Wie bereite ich meine Applikation darauf vor? ro / rw Datenbank-Verbindungen modularisieren / kapseln Asynchron und lose gekoppelt, Anforderungen lockern, Cachen Messen, messen, messen... Verschiedene Lasttest-Szenarios fahren. Ich muss meine Applikation kennen! www.fromdual.com 20

Literatur Diese Präsentation: http://www.fromdual.com/presentations [1] MySQL Enterprise Montior: http://dev.mysql.com/doc/refman/5.1/en/mem-introduction.html [2] MyTop: http://jeremy.zawodny.com/mysql/mytop/ [3] InnoTop: http://www.xaprb.com/blog/2006/07/02/innotop-mysql-innodb-monitor/ [4] MySQL Activity Report: http://gert.sos.be/en/projects/mysqlar/ [5] MySQL Monitoring Solutions: http://www.shinguz.ch/mysql/mysql_monitoring.html [6] MySQL Datenbank Parameter: http://dev.mysql.com/doc/refman/5.1/en/server-system-variables.html [7] Database Health Check for MySQL: http://www.shinguz.ch/database_health_check/ [8] MySQL Cluster: http://dev.mysql.com/doc/refman/5.1/en/mysql-cluster.html [9] Sharding: http://en.wikipedia.org/wiki/shard_%28database_architecture%29 www.fromdual.com 21

Fragen & Antworten? und sonst oli.sennhauser@fromdual.com www.fromdual.com 22