Your SlideShare is downloading. ×
Novidades do Universo MySQL Maio 2014
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Novidades do Universo MySQL Maio 2014

858
views

Published on

Investimentos da Oracle no MySQL está elevando o nível do produto a um novo patamar. Baseada na apresentação do VP de Engenharia MySQL, Tomas Ulin, esta apresentação cobre as principais novidades do …

Investimentos da Oracle no MySQL está elevando o nível do produto a um novo patamar. Baseada na apresentação do VP de Engenharia MySQL, Tomas Ulin, esta apresentação cobre as principais novidades do MySQL 5.7, MySQL Cluster 7.4, MySQL Fabric etc.

Published in: Technology

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
858
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
19
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.1 Novidades do universo MySQL Maio 2014 Airton Lastori airton.lastori@oracle.com
  • 2. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.2 The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
  • 3. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.3 Tomas Ulin no Percona Live 2014  [video] youtube.com/watch?v=8stNlpJm_nA  [slides] mysql.com/why- mysql/presentations/raising-the- mysql-bar VP de Engenharia do MySQL na Oracle
  • 4. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.4 Elevando o nível Novamente, um melhor MySQL para vocês
  • 5. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.5 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.5 COMPONENTES da pilha MySQL: Aplicações Web da próxima geração On-Premises, na Nuvem, Aplicações Distribuídas
  • 6. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.6 s
  • 7. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.7 MySQL Enterprise Monitor 2.2 MySQL Cluster 7.1 MySQL Cluster Manager 1.0 MySQL Workbench 5.2 MySQL Database 5.5 MySQL Enterprise Backup 3.5 MySQL Enterprise Monitor 2.3 MySQL Cluster Manager 1.1 MySQL Enterprise Backup 3.7 All GA! Oracle VM Template for MySQL Oracle Products Certifications MySQL Windows Installer MySQL Enterprise Security MySQL Enterprise Scalability MySQL Cluster 7.2 MySQL Cluster Manager 1.3 MySQL Utilities 1.0.6 MySQL Workbench 6.0 All GA! MySQL Enterprise Backup 3.10 MySQL Enterprise Audit MySQL Windows Tools MySQL Database 5.6 MySQL Cluster 7.3 MySQL Workbench 6.1 MySQL Fabric 1.4 RC MySQL Database 5.7 DMR *Development Milestone Release All GA! Available Now! Breve histórico: 2010 - 2014
  • 8. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.8 MySQL 5.6: GA há 15 meses •Performance: +234% para Leituras e +151% para Escritas, SSD •Escalabilidade: 48 cores •Flexibilidade: Memcached API, Full Text •Disponibilidade: mudanças online no schema, export/import tablespaces InnoDB •Performance: até centenas de vezes mais rápido em alguns cenários, estatísticas persistentes •Instrumentação: EXPLAINS com traces e para UPDATES e DELETES Otimizador •Performance: ganhos de 2x a 5x com paralelismo e group commit •Flexibilidade: novas topologias e rastreabilidade com GTIDs •Disponibilidade: automatização de failover e recovery Replicação •PERFORMANCE_SCHEMA mais completaInstrumentação •Segurança •Facilidade de uso •Flexibilidade •...E MAIS... Outras melhorias dev.mysql.com/tech-resources/articles/mysql-5.6-rc.html
  • 9. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.9 Trabalho com a comunidade Ajudando a contruir um MySQL melhor bugs.mysql.com forums.mysql.com lists.mysql.com
  • 10. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.10 @MySQLBR meetup.com/MySQL-BR facebook.com/MySQLBR MySQLBR
  • 11. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.11 Bem-vindo, WebScaleSQL!  Branch do MySQL 5.6, com patches para uso em Escala Web  Investimentos de gigantes da Web para melhorar o MySQL  Ótima notícia para a comunidade e novos desenvolvedores  Ainda mais fácil a cooperação entre Oracle e as gigantes da Web Facebook, Google, LinkedIn & Twitter!
  • 12. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.12 5.7 DMR 1 Abril 2013 DMR 2 Set 2013 DMR 3 Dez 2013 DMR 4 Novas funcionalidades labs.mysql.com Disponível Agora! ... 5.6 GA Fev 2013 Anunciado o MySQL 5.7 DMR 4
  • 13. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.13 MySQL 5.7: DMR 4  InnoDB: melhor throughput transacional, disponibilidade, IO  Replication: melhor escalabilidade e disponibilidade  Utilities: facilidades para automação e DevOps  Performance Schema: melhores métricas e diagnósticos  Optimizer: melhores tempos nas queries, EXPLAINs, buffering e particionamento  Connections: taxas mais altas, sessões mais eficientes O MySQL 5.7 é o MySQL 5.6 + melhorias! Disponível agora! dev.mysql.com/downloads/mysql
  • 14. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.14 Repositórios YUM para MySQL  Maneira simples e conveniente de instalar e atualizar produtos MySQL  Suporta as distribuições Enterprise Linux – RedHat Enterprise/Oracle Linux – Fedora – Em breve: Debian/Ubuntu  Inclui os pacotes mais atuais – MySQL Database – MySQL Workbench – MySQL Connector/ ODBC – MySQL Connector/Python – MySQL Utilities Benefícios para Usuários Finais e Distribuições Linux Também disponível via NuGet para desenvolvedores .NET Mais de 50% dos downloads para Fedora/RedHat já são feitos do repositório nuget.org/profiles/MySQL www.alastori.com.br/2014/05/tutorial-de- instalacao-do-mysql-56-e.html
  • 15. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.15 MySQL 5.7 Sysbench Benchmark Sysbench Point Select Intel(R) Xeon(R) CPU X7560 x86_64 5 sockets x 8 cores-HT (80 CPU threads) 2.27GHz, 256G RAM Oracle Linux 6.5 2X mais rápido que o MySQL 5.6 Mais de 3X mais rápido que o MySQL 5.5 630,000 QPS
  • 16. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.16 MySQL 5.7: InnoDB Memcached Contribuição do Facebook Intel(R) Xeon(R) CPU X7560 x86_64 8 sockets x 6 cores-HT (96 CPU threads) 2000Mhz, 256G RAM Oracle Linux 6.2 6x mais rápido que o MySQL 5.6 1,150,000 QPS 0 200000 400000 600000 800000 1000000 1200000 1400000 8 16 32 64 128 256 512 1024 QueriesperSecond Concurrent User Sessions 5.7.3 5.6
  • 17. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.17 MySQL 5.7: Optimizer  Problema: Uma query em uma sessão está rodando há um longo tempo  Nova opção: EXPLAIN FOR CONNECTION de outra sessão – Descubra a causa-raíz do atraso – Otimize a query EXPLAIN de queries em execução EXPLAIN [FORMAT=(JSON|TRADITIONAL)] FOR CONNECTION <id>;
  • 18. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.18 MySQL 5.7: Optimizer "query_block": { "select_id": 1, "cost_info": { "query_cost": "1.00" }, "table": { "table_name": "actor", "access_type": "const", "possible_keys": [ "PRIMARY" ], "key": "PRIMARY", "used_key_parts": [ "actor_id" ], "key_length": "2", "ref": [ "const" ], "rows_examined_per_scan": 1, "rows_produced_per_join": 1, "filtered": 100, "cost_info": { "read_cost": "0.00", "eval_cost": "0.20", "prefix_cost": "0.00", "data_read_per_join": "280" }, "used_columns": [ "actor_id", "first_name", "last_name", "last_update" ] } }  JSON EXPLAIN Expandido – Agora inclui toda informação de custo – Usado no Visual Explain do Workbench 6.1
  • 19. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.19 MySQL 5.7: Modelo de Custo do Optimizer  Nova API para modelo de custo  Permite que Storage Engines forneçam estimativas de custo mais precisas e dinâmicas para key lookups, table & range scans, etc. ‒ Permitirá suporte a fatores adicionais, considerando ondo o dado está (RAM, SSD ou HDD)  Trabalho de base para fazer custos configuráveis e adaptáveis ‒ Baseado nas características e performance do seu hardware  Melhora granularidade das estimativas (per key)  Valores de custo acessíveis via JSON Explain
  • 20. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.20 MySQL 5.7: Refactoring no Parser  Melhora confiabilidade, manutenção e estabilidade – Separa claramente os papéis de parsing, otimização e execução – Permite adição de funcionalidades mais facilmente, com menor risco  Transforma o SQL Parser em num verdadeiro bottom-up parser – Melhor suporte para regras de sintaxe maiores – Menos nós intermediários na árvore de parse  Menor alocação  Gramática mais rápida labs.mysql.com
  • 21. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.21 MySQL 5.7: InnoDB  Online Alter Table melhorado – Renomear índice online, mudar varchar  Melhor integração com FusionIO – Quando DirectFS for detectado, Doublewrite buffer desabilitado automaticamente – “Dirty Page” Flushing paralelizado – Maior throughput, performance e escalabilidade  Partições – suporte ao recurso Transportable Tablespaces (TTS) – TTS para partições individuais Diversas Melhorias
  • 22. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.22 MySQL 5.7: InnoDB Compression  Compressão transparente no nível de página – Ocorre transparentemente nas threads em background – Gerenciado completamente na camada de IO – Usa arquivos esparsos e "hole punching" nos kernels dos SOs e File Systems  Reduz IO – Melhora performance – Reduz ciclos de escrita, aumentando tempo de vida do SSD  Aplicável a todas tabelas, includindo system tablespace e UNDO logs Parceria com Fusion-IO labs.mysql.com
  • 23. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.23 MySQL 5.7: InnoDB Temp Tables  Novo tablespace dedicado e separado para temporary tables – Melhor performance para CREATE/DROP  Mudanças DDL são transientes – Elimina algumas operações de IO no disco  Otimiza operações DML – Sem REDO logging, sem change buffering, menor locking
  • 24. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.24 MySQL 5.7: Server-side Statement Timeouts  Server Side statement timeouts – Global para o server, por sessão, ou individual por SELECT  Baseado na contribuição do Davi Arnaut – Expandido para Windows and Solaris, removida opção USER Contribuição do Davi Arnaut, nosso colega brasileiro no LinkedIn SELECT MAX_STATEMENT_TIME = 109 * FROM my_table;
  • 25. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.25 MySQL 5.7: MDL locking melhorado  Remove gargalos em DML acessando uma única tabela – 10% maior throughput em OLTP_RO/POINT_SELECT (com mais cores) – Otimizado para cargas de dados com DMLs pesados  Implementado fast-path para DML locks  Implementado lock-free DML lock acquisition  Implementados hash lock-free – Agora usa biblioteca MurmurHash
  • 26. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.26 MySQL 5.7: Segurança  Criptografia AES 256 – Default no MySQL 5.7  Políticas de Expiração de Senhas – Podem ser definidas globalmente e no nível do usuário  Deployment: Permite instalação silenciosa segura – Senha aleatória gerada na instalação – Remove contas anônimas – Deployment sem contas ou esquemas de teste e arquivos de exemplo
  • 27. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.27 MySQL GIS  InnoDB Spatial Index – Suporte a índices R-tree otimizados  Integração com Boost.Geometry – Melhor precisão – Suporte a tipos e funções adicionais – Performance melhorada – Open Geospatial Consortium compliance – Colaboração com melhorias no Boost.Geometry labs.mysql.com
  • 28. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.28 MySQL 5.7: Performance Schema  Instrumentação ampliada de statements – Stored Procedures e Stored Functions – Prepared Statements – Transações Instrumentação de Statements  Instrumentos para Memória – Adicionados mais de 200 Memory Types  Agregação de estatísticas – Tipo de memória (cache, interna buffer, …) – Thread/usuário/host gerando operações indiretas na memória  Atributos incluem – Memória usada (bytes), Operações (counts), máximo/mínimo histórico Uso da Memória  Métricas e instrumentações adicionais – Status dos Slaves – MDL lock Outros Dados adicionais
  • 29. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.29 MySQL SYS Schema  Ajuda a simplificar tarefas do DBA – Monitora a saúde, taxas de crescimento entre outras métricas chave – Encontre problemas de performance, faça o diagnóstico e aplique o tuning  Mostra informações fáceis de entender acerca de: – Regiões quentes de IO – SQL statements mais custosos – Tabelas, índices e estatísticas – Análise de wait time – Locking – Estatísticas do InnoDB Views simplificadas na Performance Schema & Information Schema
  • 30. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.30 MySQL SYS Schema  Desenvolvimento guiado pelo feedback positivo no ps_helper – Mais de 80 views, versionadas, auto-atualizáveis e de acordo com a versão do server – Suporta MySQL 5.5, 5.6, and 5.7  SYS é similar a: – Oracle V$ catalog views – Microsoft SQL Server DMVs (Dynamic Management Views) – IBM DB2 SYSIBM catalog  Disponível no Workbench 6.1 ou via GitHub – Workbench inclui “one click” reports
  • 31. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.31 MySQL Workbench 6.1  Performance Dashboard – Veja a performance do servidor com estatísticas e gráficos em tempo real – “SYS” Schema: Performance Schema Reports  Visual Explain 2.0 – Nova saída gráfica melhorada, com layout mais simples e limpo  Suporte ao Enterprise Backup melhorado – Configuração automática para backups já existentes – Gerenciamento melhorado para contas de backup novas e já existentes
  • 32. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.32 MySQL Workbench 6.1 Dashboards: Performance & Status Analyze hotspots, costly SQL statements, wait times, locks, InnoDB stats, and more Network, Server, InnoDB
  • 33. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.33 MySQL 5.7.4: Replication  Maior throughput – Slave: aplica transações em paralelo, mesmo pertencentes ao mesmo database/schema – Master: melhor sincronização entre sessões dos usuários de replicaçãobetter synchronization between replication-user sessions  DMR4 melhora performance no master para Semi-synchronous Replication  Replicação sem perda com Semi-sync  Diagnóstico e monitoramento dos slaves via Performance Schema  Filtros dinâmicos de replicação: mude filtros sem reiniciar o servidor Melhor Performance, Usabilidade e Disponibilidade
  • 34. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.34 Multi-Source Replication  Consolida updates de múltiplos Masters em um Slave – Visão consolidada – Novas topologias – Ponto centralizado de backup – Relatórios mais fáceis  Compatível com Semi-Synchronous Replication & Multi-Thread Slaves  Master-specific slave filters  Aplicação continua responsável por manter data sets não-conflitantes entre as diversas fontes Binlog Master 1 Binlog Master 2 … … Binlog Master N IO 1 Relay 1 Coordinator W1 W2 … WX IO 2 Relay 2 Coordinator W1 W2 … WX … … Coordinator W1 W2 … WX IO N Relay N Coordinator W1 W2 … WX Slave labs.mysql.com
  • 35. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.35 MySQL Multi-Threaded Slave  A evolução… – 2010: Inter-schema MTS (labs) – 2013: Inter-schema MTS (5.6 GA) – 2013: Intra-schema MTS (5.7.2 DMR) – Hoje: tamanho configurável de group commit buckets – balanço de latência de commits no master (labs)  Ganho de 6X throughput no slave Slave no mesmo passo que o Master labs.mysql.com 0 500 1000 1500 2000 2500 3000 3500 4000 4500 0 4 8 12 16 22 24 28 32 36 40 44 48 Transaconspersecond Slave Worker Threads Slave Throughput Larger BGC bucket No Master Impact Baseline
  • 36. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.36 MySQL Utilities 1.4 RC  Automatiza tarefas comuns de DevOps – Replication: provisionamento, teste, monitoramento e failover – Comparação de Databases: verificação de consistência – Manutenção: users, connections, tables – Auditoria  Scripts em Python – Pacote standalone ou via MySQL Workbench – Extensíveis para incluir scripts customizados (usa Python library)  Novo: Round-Robin Multi-Source Replication & slave synchronization check Útil para DevOps e gerenciamento automatizado do MySQL
  • 37. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.37 MySQL Fabric 1.4 RC (MySQL Utilities 1.4.2)  Alta disponibilidade: – Monitoramento do Server com failover automático e transparente para aplicação  Conectores devem ser “Fabric-aware”: – Java, PHP, Python  Sem Proxy, sem latencia extra e SPoF  Escalabilidade de escrita com sharding: – Aplicação define a shard key (Range ou Hash) – Ferramentas para re-sharding – Tabelas globais & global updates Alta-disponibilidade + escalabilidade de escrita com sharding MySQL Fabric Connector Application Read-slaves SQL Master group Read-slaves Master group
  • 38. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.38 MySQL Cluster 7.4  Ganho de Performance sobre v7.3 – 47% (Read-Only) – 38% (Read-Write) Melhor performance e simplicidade operacional labs.mysql.com  Restarts mais rápidos dos nós – Recovering nodes rejoin the cluster faster
  • 39. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.39 Soluções de HA homologadas pela Oracle MySQL Replication MySQL Fabric Oracle VM Template Solaris Cluster Windows Cluster DRBD MySQL Cluster Clustering Mode Master + Slaves Master + Slaves Active/Pass ive Active/Pass ive Active/Passi ve Active/Pa ssive Multi- Master App Auto-Failover ✖ ✔ ✔ ✔ ✔ ✔ ✔ Data Layer Auto-Failover ✖ ✔ ✔ ✔ ✔ ✔ ✔ Zero Data Loss MySQL 5.7 ✔ ✔ ✔ ✔ ✔ ✔ Failover Time N/A Secs Secs + Secs + Secs + Secs + < 1 Sec Scale-out Reads ✔ ✖ ✖ ✖ ✖ ✔ Cross-shard operations N/A ✖ N/A N/A N/A N/A ✔ Transparent routing ✖ For HA ✔ ✔ ✔ ✔ ✔ Shared Nothing ✔ ✔ ✖ ✖ ✖ ✔ ✔ Storage Engine InnoDB InnoDB InnoDB InnoDB InnoDB InnoDB NDB Single Vendor Support ✔ ✔ ✔ ✔ ✖ ✔ ✔ Platform Support All All Linux Solaris Windows Linux All
  • 40. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.40 MySQL Enterprise Backup 3.10  Novas opções de compressão  Mais seguro: Advanced Encryption Standard (AES) – Compressão e/ou aplicação de seguranção em 1 único passo  Sem área de staging para backup e restore – No 3.9 completo e incrementas – No 3.10 melhorado para nível de tabelas  Novas filtragens para backups parciais Velocidade, compressão, flexibilidade, eficiência e segurança
  • 41. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.41 Sumário  A Oracle aumenta o nível do MySQL entregando para a comunidade com mais velocidade e qualidade: – GA: MySQL Cluster 7.3, MySQL Workbench 6.1, MySQL Utilities, MySQL Connectors e muito mais! – DMRs & Labs: MySQL 5.7, MySQL Fabric, Multi-source Replication, Hadoop Applier for MySQL, GIS, MySQL Cluster 7.4...  A Oracle investe no MySQL como solução para Aplicações Web, Cloud e Big Data (distribuídas) da próxima geração  Teste as novidades e nos dê Feedback!
  • 42. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.42

×