SlideShare una empresa de Scribd logo
1 de 18
Co dokáže databáze MySQL
        Jakub Vrána
Mýty o MySQL
• MySQL je jen lepší souborový systém
    –   Poddotazy
    –   Triggery
    –   Pohledy
    –   Uložené procedury




2
Mýty o MySQL
• MySQL nepodporuje transakce a cizí klíče
    –   MySQL obsahuje více různých úložišť
    –   Úložiště MyISAM transakce a cizí klíče opravdu nemá
    –   Úložiště InnoDB ano




3
Mýty o MySQL
• MySQL je rychlé, ale málo konkurenční
    –   Tabulky InnoDB zamykají jednotlivé záznamy
    –   MySQL je ideální pro webové aplikace

• MySQL je rychlé, ale špatně škáluje,
  MySQL není odolné proti výpadku serveru
    –   Replikace
    –   MySQL Cluster


4
Mýty o MySQL
• MySQL neumí pracovat s více než X záznamy
    –   Nejde o počet záznamů, ale o paměť
    –   Pokud se vejdou data do paměti, máme vyhráno
    –   Pokud alespoň indexy, tak je to pořád dobré
    –   Když ani ty ne, tak máme I/O workload
    –   Množství dostupné paměti ovlivňuje konfigurace
    –   V MySQL 5.1 lze navíc použít rozdělení tabulky


5
Výkonnost MySQL
100
 90
 80
 70
 60
 50
 40
 30
 20
 10
  0
      Data v   Indexy v   Vše na disku
      paměti    paměti



6
Mýty o MySQL
• Komerční projekty musí mít placenou verzi
    –   Pokud distribuuji program linkující MySQL, tak musí
        být pod GPL nebo musí použít placenou verzi
    –   Nezáleží na tom, jestli je komerční nebo ne
    –   Když program nedistribuuji, lze použít jakoukoliv verzi
    –   Placená verze má další výhody (podpora, nástroje)




7
Mýty o MySQL
• MySQL je nekvalitní a špatně dokumentované
    –   Nová verze vycházela jen pokud měla 0 známých chyb
    –   Teď alespoň 0 závažných chyb
    –   Všechny nové vlastnosti musí mít dokumentaci
    –   Nedokumentované vlastnosti opravdu neexistují




8
Příjemné vlastnosti
• Vynikající podpora kódování a porovnávání
    –   Kódování uložených dat
    –   Kódování posílaných a vracených dat
    –   Každému sloupci lze nastavit vlastní porovnávání




9
Příjemné vlastnosti
• Snadné vytvoření umělého primárního klíče
     –   Sloupec s příznakem AUTO_INCREMENT
     –   Není potřeba pracovat se sekvencemi
     –   Sekvence se ale dají emulovat




10
Příjemné vlastnosti
• Automatický čas modifikace záznamu
     –   Výborně se hodí pro HTTP cachování
     –   Sloupec typu timestamp
     –   Aktualizace ze závislých tabulek pomocí triggeru




11
Příjemné vlastnosti
• Změna záznamu při konfliktu unikátního klíče
     –   INSERT INTO ... ON DUPLICATE KEY UPDATE
     –   Hodí se např. na čtenost článků po dnech
     –   Dá se použít i pro vložení do číselníku




12
Příjemné vlastnosti
• Agregační funkce GROUP_CONCAT
     –   Spojí jednotlivé prvky skupiny do řetězce
     –   Oddělovač a pořadí se dá nastavit
     –   Dá se použít např. pro výpis článků s jejich tagy




13
Příjemné vlastnosti
• Fulltextové vyhledávání
     –   Respektuje kódování dat
     –   Umí vracet relevanci záznamu
     –   Dovoluje používat základní operátory




14
Příjemné vlastnosti
• Replikace
     –   Automatická asynchronní kopie databáze
     –   Lze použít pro zálohování a rozkládání zátěže
     –   Master-master replikace se dá použít i pro fail-over




15
Nabídka Gopas školení
• MySQL – jazyk SQL
     –   10. – 12. 6. 2009
     –   1. – 3. 7. 2009

• MySQL2 – praktické využití a administrace
     –   20. – 22. 7. 2009




16
Nabídka oficiálních školení
• Kurzy pro vývojáře
     –   MySQL pro začátečníky
     –   MySQL pro vývojáře
     –   MySQL a PHP
     –   Nové vlastnosti MySQL 5
     –   Uložené procedury

• Certifikace

17
Nabídka oficiálních školení
• Kurzy pro administrátory
     –   MySQL pro začátečníky
     –   MySQL pro správce databáze
     –   Ladění výkonu MySQL
     –   Vysoká dostupnost MySQL
     –   MySQL Cluster

• Certifikace

18

Más contenido relacionado

La actualidad más candente

Veeam v10 jak na to
Veeam v10 jak na toVeeam v10 jak na to
Veeam v10 jak na toVladan Laxa
 
Přínosy správy mobilních zařízení a desktopové virtualizace
Přínosy správy mobilních zařízení a desktopové virtualizacePřínosy správy mobilních zařízení a desktopové virtualizace
Přínosy správy mobilních zařízení a desktopové virtualizaceMarketingArrowECS_CZ
 
WordCamp Brno 2017 - rychlý a bezpečný web
WordCamp Brno 2017  - rychlý a bezpečný webWordCamp Brno 2017  - rychlý a bezpečný web
WordCamp Brno 2017 - rychlý a bezpečný webVladimír Smitka
 
Dobrý skautský web
Dobrý skautský webDobrý skautský web
Dobrý skautský webMichal Janata
 
Možnosti IaaS služby Amazon EC2
Možnosti IaaS služby Amazon EC2Možnosti IaaS služby Amazon EC2
Možnosti IaaS služby Amazon EC2Stanislav Dusek
 
Amazon Web Services
Amazon Web ServicesAmazon Web Services
Amazon Web ServicesCollabim
 
WordPress - základy bezpečnosti
WordPress - základy bezpečnostiWordPress - základy bezpečnosti
WordPress - základy bezpečnostiVladimír Smitka
 
Základní pluginy pro WordPress
Základní pluginy pro WordPressZákladní pluginy pro WordPress
Základní pluginy pro WordPressRadek Kucera
 
WP výkon a jeho profilování
WP výkon a jeho profilováníWP výkon a jeho profilování
WP výkon a jeho profilováníVladimír Smitka
 

La actualidad más candente (9)

Veeam v10 jak na to
Veeam v10 jak na toVeeam v10 jak na to
Veeam v10 jak na to
 
Přínosy správy mobilních zařízení a desktopové virtualizace
Přínosy správy mobilních zařízení a desktopové virtualizacePřínosy správy mobilních zařízení a desktopové virtualizace
Přínosy správy mobilních zařízení a desktopové virtualizace
 
WordCamp Brno 2017 - rychlý a bezpečný web
WordCamp Brno 2017  - rychlý a bezpečný webWordCamp Brno 2017  - rychlý a bezpečný web
WordCamp Brno 2017 - rychlý a bezpečný web
 
Dobrý skautský web
Dobrý skautský webDobrý skautský web
Dobrý skautský web
 
Možnosti IaaS služby Amazon EC2
Možnosti IaaS služby Amazon EC2Možnosti IaaS služby Amazon EC2
Možnosti IaaS služby Amazon EC2
 
Amazon Web Services
Amazon Web ServicesAmazon Web Services
Amazon Web Services
 
WordPress - základy bezpečnosti
WordPress - základy bezpečnostiWordPress - základy bezpečnosti
WordPress - základy bezpečnosti
 
Základní pluginy pro WordPress
Základní pluginy pro WordPressZákladní pluginy pro WordPress
Základní pluginy pro WordPress
 
WP výkon a jeho profilování
WP výkon a jeho profilováníWP výkon a jeho profilování
WP výkon a jeho profilování
 

Destacado

Licence a support
Licence a supportLicence a support
Licence a supportTomas Solar
 
Ten Reasons Why You Should Prefer PostgreSQL to MySQL
Ten Reasons Why You Should Prefer PostgreSQL to MySQLTen Reasons Why You Should Prefer PostgreSQL to MySQL
Ten Reasons Why You Should Prefer PostgreSQL to MySQLanandology
 
PostgreSQL vs MySQL: PostgreSQL como alternativa.
PostgreSQL vs MySQL: PostgreSQL como alternativa.PostgreSQL vs MySQL: PostgreSQL como alternativa.
PostgreSQL vs MySQL: PostgreSQL como alternativa.Arturo Espinosa
 
MySQL Community and Commercial Edition
MySQL Community and Commercial EditionMySQL Community and Commercial Edition
MySQL Community and Commercial EditionMario Beck
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheLeslie Samuel
 

Destacado (6)

Licence a support
Licence a supportLicence a support
Licence a support
 
PostgreSQL and MySQL
PostgreSQL and MySQLPostgreSQL and MySQL
PostgreSQL and MySQL
 
Ten Reasons Why You Should Prefer PostgreSQL to MySQL
Ten Reasons Why You Should Prefer PostgreSQL to MySQLTen Reasons Why You Should Prefer PostgreSQL to MySQL
Ten Reasons Why You Should Prefer PostgreSQL to MySQL
 
PostgreSQL vs MySQL: PostgreSQL como alternativa.
PostgreSQL vs MySQL: PostgreSQL como alternativa.PostgreSQL vs MySQL: PostgreSQL como alternativa.
PostgreSQL vs MySQL: PostgreSQL como alternativa.
 
MySQL Community and Commercial Edition
MySQL Community and Commercial EditionMySQL Community and Commercial Edition
MySQL Community and Commercial Edition
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
 

Similar a Co dokáže databáze MySQL

Uživatelské testování webu NAVRCHOLU.cz
Uživatelské testování webu NAVRCHOLU.czUživatelské testování webu NAVRCHOLU.cz
Uživatelské testování webu NAVRCHOLU.czLubos Ploteny
 
Výběr vhodných technologii pro startup v prostředí cloudu
Výběr vhodných technologii pro startup v prostředí clouduVýběr vhodných technologii pro startup v prostředí cloudu
Výběr vhodných technologii pro startup v prostředí clouduJan Kodera
 
HCL Sametime V11 instalace - tipy
HCL Sametime V11  instalace - tipyHCL Sametime V11  instalace - tipy
HCL Sametime V11 instalace - tipyAles Lichtenberg
 
Jak zefektivnit vaši serverovou virtualizaci
Jak zefektivnit vaši serverovou virtualizaciJak zefektivnit vaši serverovou virtualizaci
Jak zefektivnit vaši serverovou virtualizaciMarketingArrowECS_CZ
 
Čtvrtkon #71 - Jan Kaštánek - Java & Docker & Microsevices
Čtvrtkon #71 - Jan Kaštánek - Java & Docker & MicrosevicesČtvrtkon #71 - Jan Kaštánek - Java & Docker & Microsevices
Čtvrtkon #71 - Jan Kaštánek - Java & Docker & MicrosevicesCtvrtkoncz
 

Similar a Co dokáže databáze MySQL (7)

Uživatelské testování webu NAVRCHOLU.cz
Uživatelské testování webu NAVRCHOLU.czUživatelské testování webu NAVRCHOLU.cz
Uživatelské testování webu NAVRCHOLU.cz
 
Joomla! na MS Windows
Joomla! na MS WindowsJoomla! na MS Windows
Joomla! na MS Windows
 
Výběr vhodných technologii pro startup v prostředí cloudu
Výběr vhodných technologii pro startup v prostředí clouduVýběr vhodných technologii pro startup v prostředí cloudu
Výběr vhodných technologii pro startup v prostředí cloudu
 
HCL Sametime V11 instalace - tipy
HCL Sametime V11  instalace - tipyHCL Sametime V11  instalace - tipy
HCL Sametime V11 instalace - tipy
 
Jak zefektivnit vaši serverovou virtualizaci
Jak zefektivnit vaši serverovou virtualizaciJak zefektivnit vaši serverovou virtualizaci
Jak zefektivnit vaši serverovou virtualizaci
 
Raid
RaidRaid
Raid
 
Čtvrtkon #71 - Jan Kaštánek - Java & Docker & Microsevices
Čtvrtkon #71 - Jan Kaštánek - Java & Docker & MicrosevicesČtvrtkon #71 - Jan Kaštánek - Java & Docker & Microsevices
Čtvrtkon #71 - Jan Kaštánek - Java & Docker & Microsevices
 

Co dokáže databáze MySQL

  • 1. Co dokáže databáze MySQL Jakub Vrána
  • 2. Mýty o MySQL • MySQL je jen lepší souborový systém – Poddotazy – Triggery – Pohledy – Uložené procedury 2
  • 3. Mýty o MySQL • MySQL nepodporuje transakce a cizí klíče – MySQL obsahuje více různých úložišť – Úložiště MyISAM transakce a cizí klíče opravdu nemá – Úložiště InnoDB ano 3
  • 4. Mýty o MySQL • MySQL je rychlé, ale málo konkurenční – Tabulky InnoDB zamykají jednotlivé záznamy – MySQL je ideální pro webové aplikace • MySQL je rychlé, ale špatně škáluje, MySQL není odolné proti výpadku serveru – Replikace – MySQL Cluster 4
  • 5. Mýty o MySQL • MySQL neumí pracovat s více než X záznamy – Nejde o počet záznamů, ale o paměť – Pokud se vejdou data do paměti, máme vyhráno – Pokud alespoň indexy, tak je to pořád dobré – Když ani ty ne, tak máme I/O workload – Množství dostupné paměti ovlivňuje konfigurace – V MySQL 5.1 lze navíc použít rozdělení tabulky 5
  • 6. Výkonnost MySQL 100 90 80 70 60 50 40 30 20 10 0 Data v Indexy v Vše na disku paměti paměti 6
  • 7. Mýty o MySQL • Komerční projekty musí mít placenou verzi – Pokud distribuuji program linkující MySQL, tak musí být pod GPL nebo musí použít placenou verzi – Nezáleží na tom, jestli je komerční nebo ne – Když program nedistribuuji, lze použít jakoukoliv verzi – Placená verze má další výhody (podpora, nástroje) 7
  • 8. Mýty o MySQL • MySQL je nekvalitní a špatně dokumentované – Nová verze vycházela jen pokud měla 0 známých chyb – Teď alespoň 0 závažných chyb – Všechny nové vlastnosti musí mít dokumentaci – Nedokumentované vlastnosti opravdu neexistují 8
  • 9. Příjemné vlastnosti • Vynikající podpora kódování a porovnávání – Kódování uložených dat – Kódování posílaných a vracených dat – Každému sloupci lze nastavit vlastní porovnávání 9
  • 10. Příjemné vlastnosti • Snadné vytvoření umělého primárního klíče – Sloupec s příznakem AUTO_INCREMENT – Není potřeba pracovat se sekvencemi – Sekvence se ale dají emulovat 10
  • 11. Příjemné vlastnosti • Automatický čas modifikace záznamu – Výborně se hodí pro HTTP cachování – Sloupec typu timestamp – Aktualizace ze závislých tabulek pomocí triggeru 11
  • 12. Příjemné vlastnosti • Změna záznamu při konfliktu unikátního klíče – INSERT INTO ... ON DUPLICATE KEY UPDATE – Hodí se např. na čtenost článků po dnech – Dá se použít i pro vložení do číselníku 12
  • 13. Příjemné vlastnosti • Agregační funkce GROUP_CONCAT – Spojí jednotlivé prvky skupiny do řetězce – Oddělovač a pořadí se dá nastavit – Dá se použít např. pro výpis článků s jejich tagy 13
  • 14. Příjemné vlastnosti • Fulltextové vyhledávání – Respektuje kódování dat – Umí vracet relevanci záznamu – Dovoluje používat základní operátory 14
  • 15. Příjemné vlastnosti • Replikace – Automatická asynchronní kopie databáze – Lze použít pro zálohování a rozkládání zátěže – Master-master replikace se dá použít i pro fail-over 15
  • 16. Nabídka Gopas školení • MySQL – jazyk SQL – 10. – 12. 6. 2009 – 1. – 3. 7. 2009 • MySQL2 – praktické využití a administrace – 20. – 22. 7. 2009 16
  • 17. Nabídka oficiálních školení • Kurzy pro vývojáře – MySQL pro začátečníky – MySQL pro vývojáře – MySQL a PHP – Nové vlastnosti MySQL 5 – Uložené procedury • Certifikace 17
  • 18. Nabídka oficiálních školení • Kurzy pro administrátory – MySQL pro začátečníky – MySQL pro správce databáze – Ladění výkonu MySQL – Vysoká dostupnost MySQL – MySQL Cluster • Certifikace 18