SlideShare una empresa de Scribd logo
1 de 63
Descargar para leer sin conexión
ORACLE MySQL Enterprise 
Tutorial 
Manuel Contreras 
Rico 
manuel.contreras@oracle.com 
Principal SW Consultant 
ORACLE MySQL 
Noviembre, 2014 
Copyright © 2014 Oracle and/or its affiliates. All rights reservOerda.c l|e Confidential – Internal/Restricted/Highly Restricted
5 años de innovación Oracle 
Mayor inversión e innovación al ecosistema 
Jan 2010 Sept 2014 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
2 
2x Engineering Staff 
3x QA Staff 
2x Support Staff
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
MySQL ~ Big Data 
3
Oracle Confidential – Internal/Restricted/Highly Restricted 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Arquitectura MySQL 
4 
MySQL Server
Oracle Confidential – Internal/Restricted/Highly Restricted 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
MySQL Storage Engines 
Motores de Almacenamiento 
5 
MySQL Server
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
MySQL Storage Engines 
• Pluggable architecture 
6 
InnoDB MyISAM NDBCluster 
ACID 
Propósito General 
Not ACID 
Bulk operations / Catálogo 
consultas 
ACID in-Memory DB 
real time OLTP 
Archive 
Data Compression 
Memory 
Volatile Data 
High Performance 
3rd Party 
Community
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 7 
MySQL Replication 
sharding & high availability 
App 
Writes & Reads 
MySQL Master Server 
Writes 
Index & Binary 
Log Rotation 
MySQL Slave Server 
Writes 
Reads 
Replication 
Relay Log
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 8 
Oracle database & MySQL 
** Oracle eBusiness Suite 
* Custom Ad-Hoc ERP / CRM CRM / ERP
Caracterísiticas 
Herramientas de 
Avanzadas administración 
Soporte Técnico 
• Scalability 
• High Availability 
• Security 
• Audit 
• Monitoring 
• Backup 
• Development 
• Administration 
• Migration 
• Technical Support 
• Consultative Support 
• Oracle Certifications 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
MySQL Enterprise Edition 
12
MySQL Scalability Thread Pool ( Performance ) 
Mejor escalabilidad en MySQL Enterprise 
MySQL 5.5.16 
Oracle Linux 6.1, Unbreakable Kernel 2.6.32 
2 sockets, 24 cores, 2 X 12-core 
Intel(R) Xeon(R) X5670 2.93GHz CPUs 
72GB DDR3 RAM 
2 X LSI SCSI Disk (MR9261-8i) (597GB) 
mysql.com/products/enterprise/scalability.html 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 10
• Visión consolidada en todo el entorno de 
MySQL, en las instalaciones y en la nube 
• Automatizado, monitoring emite alertas 
basado en normas (SMTP, SNMP) 
• Query Analyzer, seguimiento, análisis y 
puesta a punto, en correlación con los 
gráficos del monitor 
• Identifica los servidores problemáticos 
• Monitor de replicación en tiempo real con 
auto-descubrimiento de topologías 
maestro-esclavo 
MySQL Enterprise Monitor 3.0 
Ahorra tiempo. Soluciona 
problemas de manera proactiva. 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
MySQL Enterprise Edition : Monitor
MySQL Enterprise Backup 
• Online, non-locking backup & recovery 
– Complete MySQL instance backup (datos & 
Config ) 
– Partial backup & restore 
• Direct Cloud storage backups (S3, etc.) 
• Incremental backups 
• Point-in-time recovery 
• Compressed & encryption 
• Backup to tape (SBT) 
• Backup validation 
• Online backup MySQL (Windows, Linux, 
Unix) 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
21
MySQL Workbench EE + Backup 
• Programar & administrar 
backup jobs 
– Create new backup jobs 
– Schedule backup jobs para 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
ejecución automática 
– Visualiza backup jobs actuales 
– Visualiza actividad backup 
• Restore backups 
– Full, partial, incremental … 
13
MySQL Enterprise Monitor + Backup 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
14 
• Monitor backup performance 
• Asegurar que los backups 
programados han sido 
exitosos y están al día.
▪ Diagnostica problemas de desempeño código SQL 
problemático. 
▪ Correlación gráfica de código SQL 
▪ Encuentra y optimiza cuellos de botella 
▪ Identifica la fuente de problemas en desempeño 
▪ Estadísticas detallas de ejecución de queries SQL 
▪ Query Response Time index (QRTi) 
Con el analizador de consultas MySQL, hemos sido 
capaces de identificar y analizar el código SQL problemático 
y triplicar nuestro rendimiento de base de datos. Más 
importante aún, hemos sido capaces de lograr esto en tres 
días, en lugar de tomar semanas 
Keith Souhrada 
Ingeniero de Desarrollo Software 
Big Fish Games 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 15 
MySQL Query Analyzer 
mysql.com/products/enterprise/query.html
MySQL Enterprise Security 
• SSL enabled 
• Access control 
– Enterprise authentication (PAM, Windows, LDAP, etc.) 
– Proxy users 
• Auditing & monitoring 
– MySQL security advisors 
–Oracle Audit Vault 
• Oracle Database Firewall 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
16
MySQL Enterprise Encryption 
• Librerías MySQL encryption 
– Symmetric encryption AES256 
– Public-key / asymmetric cryptography 
• Administración de Keys PKI 
–Generate public and private keys 
– Key exchange methods: RSA, DSA, DH 
• Sign & verify data 
– Cryptographic hashing for digital signing, verification, & validation 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
17
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
MySQL Cluster CGE 
18 
SQL & NoSQL Flexibility 
In-Memory 
Database
MySQL: Sakila & El Chavo del 8 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
19 
playfulplay.com/lavecindaddeelchavo/index.php 
Caso de estudio: 
MySQL Cluster CGE habilita un Sharding 
transparente para la aplicación ( NDBCluster ) 
Facebook Game #1 Categoría Familiar 
- Cloud Elástico bajo demanda 
- In-memory database 
- Arquitectura Non-Shared Disk 
>10 MILLONES de suscriptores 
>80 MIL jugadores concurrentes
La vecindad de El Chavo del 8 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
20
MySQL en la Nube The #1 RDBMS in the Cloud 
SaaS 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
21 
Hosting IaaS, PaaS
MySQL Enterprise Replication Monitor 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
22 
• Auto-discover de topología de 
replicación 
• Monitor de replicación Master/Slave 
( Replication advisor ) 
• Mejores prácticas en configuración de 
Grupos de Replicación ( Async, Semi-sync 
) 
"I use the MySQL Enterprise Monitor 
every day to monitor and keep tabs 
on our MySQL databases. Quick one 
stop shopping for keeping tabs on 
them.” 
-Wes Homer, 
Sr System and Network 
Administrator 
mysql.com/products/enterprise/monitor.html
ORACLE — MySQL Integration 
Oracle Enterprise Manager 12c 
Oracle Linux 
Oracle VM 
Oracle Clusterware 
Oracle Secure Backup 
Oracle Fusion Middleware 
Oracle Golden Gate 
Oracle Audit Vault 
Oracle Database Firewall 
MyOracle Support 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 23
ORACLE Enterprise Manager 12c GA 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
24 
Performance 
Security 
Availability 
• Availability monitoring 
• Performance monitoring 
• Configuration monitoring 
• Permite crear custom 
threshold basados en 
reportes de incidencia 
• MySQL auto-detection
Soporte MySQL Enterprise 
Technical support & Consultative Support 
• El equipo más grande de ingenieros MySQL 
• Apoyado por MySQL developers 
• World-class support, en 29 languages ( Español ) 
• Hot fixes & maintenance releases 
• 24x7 x 365 
• Incidentes ilimitados 
• Soporte Consultivo 
• Global scale and reach 
Ayuda inmediata para cualquier 
problema de MySQL, además de 
asesoría de expertos 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
41
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Información Adicional 
26 
MySQL Products 
http://www.mysql.com/products/ 
MySQL Enterprise 
http://www.mysql.com/products/enterprise/ 
MySQL FAQ 
http://dev.mysql.com/doc/refman/5.6/en/faqs-general.html
MySQL Enterprise Server 
Arq. Referencia 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
27
Custom OLTP App 
Load balancer: 
Fabric-Aware Connectors: Java, PHP, .NET, ( C Labs ); otros Load Balancers 
MySQL Fabric Controller 
MySQL Enterprise Monitor 
VLAN1 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 28 
Arquitectura MySQL Enterprise Edition 
Drools (Business Rule Management System) 
Red para sincronización 
de datos entre nodos MySQL 
MySQL Enterprise 
Primario 
DAS LUN (1) 
VLAN2 ( Privada ) 
MySQL Enterprise 
Secundario 
DAS LUN (2) 
Red de servicio 
Application Server & MySQL 
OLAP 
BI Reporting Analítica
Arquitectura MySQL Enterprise Edition — Detalle Técnico 
PRODUCCION — MySQL Enterprise (2 Servidores virtuales / físicos) 
CPU: 16 Cores CPU x86 64 bits; RAM: 16G ( o según tamaño de Base de datos / volumen de transacciones ) 
Storage: 1 Logic Unit asociada a un punto de montaje para datos $DATADIR, para cada unos de los nodos ( Primario & 
Secundario), como disco no compartido que permita un alto performance de lectura / escritura ( p.e. RAID 10 ) 
OS: Linux varias distribuciones, Solaris, Mac OSX, MS Windows 2012 Server 
Red: 2 puertos de Gigabit ethernet configurados con VLAN1 red de servicio & VLAN2 red privada de sincronización de datos 
entre nodos 
MySQL Fabric Controller / MySQL Enterprise Monitor ( 1 servidor virtual / físico ) 
CPU: 8 Cores CPU x86 64 bits; RAM: 8G; HDD Disco Interno 
PRE-PRODUCCION ( QA ) — MySQL Enterprise 
1 Servidores virtual / físico con: 
CPU: 16 Cores CPU x86 64 bits; RAM: 16G ( o según tamaño de Base de datos / volumen de transacciones ) 
Storage: 1 Logic Unit asociada a un punto de montaje para datos $DATADIR de MySQL Enterprise Monitor & Fabric Controller 
OS: Linux varias distribuciones, Solaris, Mac OSX, MS Windows 2012 Server 
Red: VLAN1: red de servicio 
Total 4 Servidores MySQL Enterprise Edition ( ambiente QA & PROD ) 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 29
MySQL & High Availability 
Oracle Confidential – Internal/Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Oracle MySQL HA & Scaling Solutions 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
MySQL 
Replication 
MySQL 
Fabric 
Oracle VM 
Template 
Oracle 
Clusterware 
Solaris 
Cluster 
Windows 
Cluster DRBD MySQL 
Cluster 
App Auto-Failover ✖ ✔ ✔ ✔ ✔ ✔ ✔ ✔ 
Data Layer Auto-Failover ✖ ✔ ✔ ✔ ✔ ✔ ✔ ✔ 
Zero Data Loss MySQL 5.7 MySQL 5.7 ✔ ✔ ✔ ✔ ✔ ✔ 
Platform Support All All Linux Linux Solaris Windows Linux All 
Clustering Mode Master + 
Slaves 
Master + 
Slaves 
Active/ 
Passive 
Active/ 
Passive 
Active/ 
Passive 
Active/ 
Passive 
Active/ 
Passive 
Multi- 
Master 
Failover Time N/A Secs Secs + Secs + Secs + Secs + Secs + < 1 Sec 
Scale-out Reads ✔ ✖ ✖ ✖ ✖ ✖ ✔ 
Cross-shard operations N/A ✖ N/A N/A N/A N/A N/A ✔ 
Transparent routing ✖ For HA ✔ ✔ ✔ ✔ ✔ ✔ 
Shared Nothing ✔ ✔ ✖ ✖ ✖ ✖ ✔ ✔ 
Storage Engine InnoDB+ InnoDB+ InnoDB+ InnoDB+ InnoDB+ InnoDB+ InnoDB+ NDB 
Single Vendor Support ✔ ✔ ✔ ✔ ✔ ✖ ✔ ✔ 
31
MySQL Enterprise HA : Shared Storage 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
32 
• Stricter data durability, integrity 
constraints 
– Shared storage persists commits across 
instances 
– Clustering software manages data access 
– Auto-failover of applications and database 
– Deploy with MySQL Fabric for scale-out 
• MySQL certified & supported solutions 
– Oracle Clusterware 
– Windows Failover Clustering 
– Oracle Solaris Cluster 
Virtual IP 
Clients
MySQL Enterprise HA : Shared Nothing 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
33 
• DRBD + Clustering 
– Based on distributed storage, not a SAN 
– Synchronous replication eliminates risk 
of data loss 
• Open source, mature, & proven 
• Certified and fully supported by 
Oracle 
– DRBD integrated into Oracle Linux 
Unbreakable Enterprise Kernel R2 
– Pacemaker and Corosync for clustering / 
failover 
– Updates to stack via ULN channel
MySQL Enterprise HA : Oracle VM Templates 
• Oracle Linux 
• Oracle VM 
• Oracle VM Manager 
• Oracle Cluster File System 2 (OCFS2) 
• MySQL Database (Enterprise Edition) 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
34 
• Pre-installed & pre-configured 
• Full integration & QA testing 
• Single point of support 
Oracle VM Server Pool 
Oracle VM Servers 
ocfs2 
Oracle VM 
Manager 
SAN / iSCSI 
Oracle VM 
Secure Live 
Migration (SSL) 
Oracle VM 
Automatic Fault 
Detection & 
Recovery
MySQL Cluster CGE: NDBCluster 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
35 
• Automatic Sharding 
• In-memory engine 
• Sync replication 
• Real-time OLTP 
• 99.999 % 
• Requires MySQL Cluster CGE 
binaries / suscription 
• NoSQL / SQL supported 
• Minimum 3 physical servers, 4 
production environments 
MySQL Cluster Data Nodes 
Clients 
Application Layer 
Management 
Data Layer
MySQL Fabric 1.5.2 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
36
http://www.mysql.com/products/enterprise/fabric.html 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
MySQL Fabric 
MySQL Fabric es un framework extensible & fácil de utilizar, para administrar ambientes 
de clustering con MySQL. El framework implementa 3 funcionalidades: Tolerancia a 
Fallas, Distribución de carga Sharding, & aprovisionamiento de entornos de manera 
automática. 
MySQL Fabric, gestiona también grupos de servidores con MySQL Replication y permite 
un failover automático gestionado por el nodo MySQL Fabric Controller en combinación 
a los Drivers Fabric-Aware: Java, PHP, Python & .NET y próximamente Lenguaje C. 
El Fabric connector, puede en rutar transacciones en base a un criterio definido por el 
desarrollador, permitiendo también escalar de manera horizontal en activo - activo en 
múltiples grupos de data shards. 
Por otro lado, la extensión Sharding de MySQL Fabric, permite que el desarrollador pueda 
distribuir bases de datos, sobre un conjunto de servidores físicos gestionados por MySQL 
Fabric, esto con el fin de poder escalar elásticamente agregando o reduciendo el número 
de nodos en el grupo de servidores. 
37
High Availability + Sharding-Based Scale-out 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
MySQL Fabric 1.5 
• High Availability 
• Auto-promotion failover & transparente 
para la application failover 
• Opcionalmente scale-out a través de 
data sharding 
– Application provee shard key 
– Range ó Hash 
• Conectores Fabric-aware: Python, 
Java, PHP, .NET, C (labs) 
– Lower latency, bottleneck-free 
• Server provisioning a través de 
OpenStack 
MySQL Fabric 
Connector 
• Application 
Read-slaves 
mappings 
SQL 
HA group 
Read-slaves 
HA group 
Connector 
• Application 
38
MySQL Fabric Framework (HA) 
All Data 
Primary Secondary 
Extra Read 
Replicas 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
MySQL Fabric 
Controller 
SQL Queries 
State & 
Routing Info 
HA Group 
Coordination 
and Control 
39
MySQL Replication & MySQL Fabric HA 
• MySQL Replication is the initial implementation used in HA Groups 
– PRIMARY = Replication Master & receives all writes 
– SECONDARY = Replication Slave & receives share of reads 
• Failover 
– MySQL Fabric detects failure of PRIMARY/Master 
– Selects a SECONDARY/Slave and promotes it 
– Updates State Store 
– Updated state fetched by Fabric-aware connectors 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
How this effects failover 
40
High-Availability Group Concept 
• Abstract Concept 
– Set of servers 
– Server attributes 
• Connector Attributes 
– Connection information 
– Mode: read-only, read-write, ... 
–Weight: distribute load 
• Management Attributes 
– State: state/role of the server 
State: Primary 
Mode: Read-Write 
Host: server-1.example.com 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
41
Create HA Groups and add Servers 
• Definiendo el grupo 
mysqlfabric group create my_group 
• Agregando servidores al grupo 
mysqlfabric group add my_group server1.example.com 
mysqlfabric group add my_group server2.example.com 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
42
Create HA Groups and add Servers 
• Promoviendo un servidor a Primario Master 
mysqlfabric group promote my_group 
• Activación del FailOver detector 
mysqlfabric group activate my_group 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
43
Demostración MySQL 
Fabric 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
44
MySQL Fabric ( Sharding ) 
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
45
Benefits of Sharding 
• Write scalability 
– Can handle more writes 
• Large data set 
– Database too large 
– Does not fit on single server 
• Improved performance 
– Smaller index size 
– Smaller working set 
– Improve performance (reads and 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
writes) 
UID 10000-20000 UID 20001-40000 
46
MySQL Fabric Sharding & Provisioning Features 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
• Connector API Extensions 
– Support Transactions 
– Support full SQL 
• Decision logic in connector 
– Reducing network load 
• Shard Multiple Tables 
– Using same key 
• Global Updates 
–Global tables 
– Schema updates 
• Sharding Functions 
– Range ( Integer, String, datetime ) 
– Hash (Consistent) 
• Shard Operations 
– Shard move 
– Shard split 
• Server Provisioning 
– Integrated with OpenStack & other 
frameworks 
47
MySQL Fabric Node 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
Sharding Architecture 
Shards 
Application 
Global 
Group 
Global Updates 
Shard 
Updates 
Replication 
48 
Connector 
Connector 
Connector
MySQL Fabric (HA + Sharding) 
Global Data 
Primary Secondary 
Shard 1 
Primary Secondary 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
Shard 2 
Primary Secondary 
MySQL Fabric 
Controller 
SQL Queries 
Server/Shard State & 
Mapping 
Global Group HA Group 
Coordination and 
Control 
HA Group 
Extra Read Replicas Extra Read Replicas 
49
Shard #1 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
Routing Transactions 
Shard #2 
Shard #3 
Executor 
App Server 
Connector 
Cache 
State Store 
App Server 
Connector 
Cache 
50
MySQL Fabric: Sharding Setup 
• Set up some groups 
– my_global – for global updates 
– my_group.N – for the shards 
– Add servers to the groups 
• Create a shard mapping 
– A “distributed database” 
– Mapping keys to shards 
– Give information on what tables are sharded 
• Add shards 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
51
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
MySQL Fabric: 
Moving and Splitting Shards 
• Moving a shard (id=5) from existing group to another (my_group.8) 
mysqlfabric sharding move 5 my_group.8 
• Splitting a shard (id=5) into two parts with new half stored in group 
my_group.6 
mysqlfabric sharding split 5 my_group.6 
52
Connector API: Shard Specific Query 
• Indicate tables to be used in query 
– Property: tables 
– Fabric will compute map 
• Indicate read-only queries 
– Property: mode 
• Provide sharding key 
– Property: key 
– Fabric will compute shard 
• Joins within the shard (or with 
global tables) supported 
conn.set_property(tables=["test.subscribers"], key=sub_no, mode=fabric.MODE_READONLY) 
cur = conn.cursor() 
cur.execute( 
"SELECT first_name, last_name FROM subscribers WHERE sub_no = %s", (sub_no) 
) 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
for row in cur: 
print row 
53
Connector API: Global Update 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
• Set global scope 
– Property: scope 
– Query goes to global group 
conn.set_property(tables=[], scope='GLOBAL') 
cur = conn.cursor() 
cur.execute("ALTER TABLE test.subscribers ADD nickname VARCHAR(64)") 
54
> mysqlfabric provider register 
my_stack  
my_user my_password  
http://8.21.28.222:5000/v2.0/  
--tenant=my_user_role  
--provider_type=OPENSTACK 
> mysqlfabric machine create 
my_stack  
--image id=8c92f0d9-79f1-4d95- 
b398-86bda7342a2d  
--flavor name=m1.small 
> mysqlfabric machine list my_stack 
• Fabric creates new machines, 
& MySQL Servers 
– Initially using OpenStack Nova 
– Other frameworks on the way 
(OpenStack Trove, AWS,…) 
• Server setup 
– Clones slave 
– Sets up replication 
– Performs custom operations 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
55 
Server Provisioning – OpenStack Nova Integration
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
MySQL Fabric executor 
• Event driven 
– Events will trigger execution of 
procedures 
– Procedures can trigger events themselves 
– Each step of a procedure is called a job 
• Procedures 
– Written in Python 
– Interacts with servers 
– Write state changes into backing store 
– Lock manager for conflict resolution 
• Conservative two-phase locking strategy 
• Avoid deadlocks 
Backing 
Store 
Queue 
Events
Example of User-Defined Executor Script: 
Automatically replacing a server in a group on failure 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
• Register procedure for event 
– @on_event decorator 
– Accept event to register for 
• Fetch the group the server 
belonged to 
• Fetch a new server from the 
provider 
• Add the server to the group 
@on_event(SERVER_LOST) 
def _add_server(group_id, server_uuid): 
group = Group.fetch(group_id) 
machines = PROVIDER.create_machines( 
parameters 
) 
server = MySQLServer( server_uuid, 
address 
) 
MySQLServer.add(server) 
group.add(server) 
_configure_as_slave(server)
AMQP? MySQL XML-RPC 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
MySQL Fabric Node 
Extensible Architecture 
Connector 
Connector 
Connector 
MySQL Fabric 
Framework 
Executor State Store 
(persister) 
Shard 
HA 
Prov 
??? 
MySQL 
Backing 
Store 
SQL 
58
MySQL Fabric: Goals & Features 
• Connector API Extensions 
– Support Transactions 
– Support full SQL 
• Fabric-Aware Connectors at GA: 
– PHP + Doctrine, Python, Java + Hibernate, 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
.NET, C (pre-GA) 
• Decision logic in connector 
– Reducing latency &network load 
• Load Balancing 
– Read-Write Split 
– Distribute transactions 
• Global Updates 
– Global data 
– Schema updates 
• Sharding Functions 
– Range 
– (Consistent) Hash 
• Shard Operations 
– Shard move 
– Shard split 
• Server Provisioning 
– OpenStack Integration (& other 
frameworks) 
59
MySQL Fabric – Current Limitations 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
• Routing is dependent on Fabric-aware 
connectors 
– Currently Java (+ Hibernate), PHP (+ 
Doctrine), Python, .NET & C (labs) 
• MySQL Fabric node is a single (non-redundant 
process) 
– HA Maintained as connectors continue to 
route using local caches 
• Establishes asynchronous replication 
– Manual steps to switch to semisynchronous 
• Sharding not completely transparent 
to application (must provide shard 
key – column from application 
schema) 
• No cross-shard joins or other queries 
• Management is through CLI, MySQL 
protocol or XML/RPC API 
– No GUI 
60
Oracle MySQL HA & Scaling Solutions 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
MySQL 
Replicatio 
n 
MySQL 
Fabric 
Oracle VM 
Template 
Oracle 
Clusterwar 
e 
Solaris 
Cluster 
Windows 
Cluster DRBD MySQL 
Cluster 
App Auto-Failover ✖ ✔ ✔ ✔ ✔ ✔ ✔ ✔ 
Data Layer Auto- 
✖ ✔ ✔ ✔ ✔ ✔ ✔ ✔ 
Failover 
Zero Data Loss MySQL 5.7 MySQL 5.7 ✔ ✔ ✔ ✔ ✔ ✔ 
Platform Support All All Linux Linux Solaris Windows Linux All 
Clustering Mode Master + 
Slaves 
Master + 
Slaves 
Active/ 
Passive 
Active/ 
Passive 
Active/ 
Passive 
Active/ 
Passive 
Active/ 
Passive 
Multi- 
Master 
Failover Time N/A Secs Secs + Secs + Secs + Secs + Secs + < 1 Sec 
Scale-out Reads ✔ ✖ ✖ ✖ ✖ ✖ ✔ 
Cross-shard operations N/A ✖ N/A N/A N/A N/A N/A ✔ 
Transparent routing ✖ For HA ✔ ✔ ✔ ✔ ✔ ✔ 
Shared Nothing ✔ ✔ ✖ ✖ ✖ ✖ ✔ ✔ 
Storage Engine InnoDB+ InnoDB+ InnoDB+ InnoDB+ InnoDB+ InnoDB+ InnoDB+ NDB 
Single Vendor Support ✔ ✔ ✔ ✔ ✔ ✖ ✔ ✔ 
61
MySQL Fabric Resources 
• Download and try 
http://dev.mysql.com/downloads/fabric/ 
• Documentation 
http://dev.mysql.com/doc/mysql-utilities/en/fabric.html 
• MySQL Fabric on the web 
http://www.mysql.com/products/enterprise/fabric.html 
• Forum (MySQL Fabric, Sharding, HA, Utilities) 
http://forums.mysql.com/list.php?144 
• Tutorial: MySQL Fabric - adding High Availability and Scaling to MySQL 
http://www.clusterdb.com/mysql-fabric/mysql-fabric-adding-high-availability-and-scaling-to-mysql 
• White Paper: MySQL Fabric - A Guide to Managing MySQL High Availability and Scaling Out 
http://www.mysql.com/why-mysql/white-papers/mysql-fabric-product-guide 
• Webinar Replays 
http://www.mysql.com/news-and-events/on-demand-webinars/#en-20-41 
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 
62
ORACLE MySQL Enterprise 
Manuel Contreras Rico 
manuel.contreras@oracle.com 
Principal Software Consultant 
Latinoamérica & El Caribe ORACLE MySQL 
Noviembre, 2014 
Copyright © 2014 Oracle and/or its affiliates. All rights reservOerda.c l|e Confidential – Internal/Restricted/Highly Restricted

Más contenido relacionado

La actualidad más candente

MySQL Day Paris 2018 - MySQL InnoDB Cluster; A complete High Availability sol...
MySQL Day Paris 2018 - MySQL InnoDB Cluster; A complete High Availability sol...MySQL Day Paris 2018 - MySQL InnoDB Cluster; A complete High Availability sol...
MySQL Day Paris 2018 - MySQL InnoDB Cluster; A complete High Availability sol...Olivier DASINI
 
MySQL 5.7: What's New, Nov. 2015
MySQL 5.7: What's New, Nov. 2015MySQL 5.7: What's New, Nov. 2015
MySQL 5.7: What's New, Nov. 2015Mario Beck
 
1 my sql20151219-kaji_ivan
1 my sql20151219-kaji_ivan1 my sql20151219-kaji_ivan
1 my sql20151219-kaji_ivanIvan Tu
 
MySQL Enterprise Edition Overview
MySQL Enterprise Edition OverviewMySQL Enterprise Edition Overview
MySQL Enterprise Edition OverviewMario Beck
 
Conference slides: MySQL Cluster Performance Tuning
Conference slides: MySQL Cluster Performance TuningConference slides: MySQL Cluster Performance Tuning
Conference slides: MySQL Cluster Performance TuningSeveralnines
 
MySQL Cloud Service
MySQL Cloud ServiceMySQL Cloud Service
MySQL Cloud ServiceMario Beck
 
Oracle Enterprise Manager for MySQL
Oracle Enterprise Manager for MySQLOracle Enterprise Manager for MySQL
Oracle Enterprise Manager for MySQLMario Beck
 
MySQL Security
MySQL SecurityMySQL Security
MySQL SecurityMario Beck
 
MySQL Enterprise Monitor
MySQL Enterprise MonitorMySQL Enterprise Monitor
MySQL Enterprise MonitorTed Wennmark
 
What's new in my sql smug
What's new in my sql smugWhat's new in my sql smug
What's new in my sql smugTed Wennmark
 
What's New in MySQL 5.6
What's New in MySQL 5.6What's New in MySQL 5.6
What's New in MySQL 5.6Santo Leto
 
MySQL 5.7: Focus on Replication
MySQL 5.7: Focus on ReplicationMySQL 5.7: Focus on Replication
MySQL 5.7: Focus on ReplicationMario Beck
 
Santo Leto - MySQL Connect 2012 - Getting Started with Mysql Cluster
Santo Leto - MySQL Connect 2012 - Getting Started with Mysql ClusterSanto Leto - MySQL Connect 2012 - Getting Started with Mysql Cluster
Santo Leto - MySQL Connect 2012 - Getting Started with Mysql ClusterSanto Leto
 
MySQL 5.6 Updates
MySQL 5.6 UpdatesMySQL 5.6 Updates
MySQL 5.6 UpdatesDave Stokes
 
MySQL Day Paris 2018 - Introduction & The State of the Dolphin
MySQL Day Paris 2018 - Introduction & The State of the DolphinMySQL Day Paris 2018 - Introduction & The State of the Dolphin
MySQL Day Paris 2018 - Introduction & The State of the DolphinOlivier DASINI
 
MySQL Enterprise Backup apr 2016
MySQL Enterprise Backup apr 2016MySQL Enterprise Backup apr 2016
MySQL Enterprise Backup apr 2016Ted Wennmark
 

La actualidad más candente (20)

MySQL Day Paris 2018 - MySQL InnoDB Cluster; A complete High Availability sol...
MySQL Day Paris 2018 - MySQL InnoDB Cluster; A complete High Availability sol...MySQL Day Paris 2018 - MySQL InnoDB Cluster; A complete High Availability sol...
MySQL Day Paris 2018 - MySQL InnoDB Cluster; A complete High Availability sol...
 
MySQL 5.7: What's New, Nov. 2015
MySQL 5.7: What's New, Nov. 2015MySQL 5.7: What's New, Nov. 2015
MySQL 5.7: What's New, Nov. 2015
 
MySQL Cluster
MySQL ClusterMySQL Cluster
MySQL Cluster
 
1 my sql20151219-kaji_ivan
1 my sql20151219-kaji_ivan1 my sql20151219-kaji_ivan
1 my sql20151219-kaji_ivan
 
MySQL Enterprise Edition Overview
MySQL Enterprise Edition OverviewMySQL Enterprise Edition Overview
MySQL Enterprise Edition Overview
 
Conference slides: MySQL Cluster Performance Tuning
Conference slides: MySQL Cluster Performance TuningConference slides: MySQL Cluster Performance Tuning
Conference slides: MySQL Cluster Performance Tuning
 
MySQL Cloud Service
MySQL Cloud ServiceMySQL Cloud Service
MySQL Cloud Service
 
MySQL Cluster Basics
MySQL Cluster BasicsMySQL Cluster Basics
MySQL Cluster Basics
 
Oracle Enterprise Manager for MySQL
Oracle Enterprise Manager for MySQLOracle Enterprise Manager for MySQL
Oracle Enterprise Manager for MySQL
 
MySQL Security
MySQL SecurityMySQL Security
MySQL Security
 
MySQL cluster 7.4
MySQL cluster 7.4 MySQL cluster 7.4
MySQL cluster 7.4
 
MySQL overview
MySQL overviewMySQL overview
MySQL overview
 
MySQL Enterprise Monitor
MySQL Enterprise MonitorMySQL Enterprise Monitor
MySQL Enterprise Monitor
 
What's new in my sql smug
What's new in my sql smugWhat's new in my sql smug
What's new in my sql smug
 
What's New in MySQL 5.6
What's New in MySQL 5.6What's New in MySQL 5.6
What's New in MySQL 5.6
 
MySQL 5.7: Focus on Replication
MySQL 5.7: Focus on ReplicationMySQL 5.7: Focus on Replication
MySQL 5.7: Focus on Replication
 
Santo Leto - MySQL Connect 2012 - Getting Started with Mysql Cluster
Santo Leto - MySQL Connect 2012 - Getting Started with Mysql ClusterSanto Leto - MySQL Connect 2012 - Getting Started with Mysql Cluster
Santo Leto - MySQL Connect 2012 - Getting Started with Mysql Cluster
 
MySQL 5.6 Updates
MySQL 5.6 UpdatesMySQL 5.6 Updates
MySQL 5.6 Updates
 
MySQL Day Paris 2018 - Introduction & The State of the Dolphin
MySQL Day Paris 2018 - Introduction & The State of the DolphinMySQL Day Paris 2018 - Introduction & The State of the Dolphin
MySQL Day Paris 2018 - Introduction & The State of the Dolphin
 
MySQL Enterprise Backup apr 2016
MySQL Enterprise Backup apr 2016MySQL Enterprise Backup apr 2016
MySQL Enterprise Backup apr 2016
 

Destacado

GAME 3400 Level Design - Experience Architecture
GAME 3400 Level Design - Experience ArchitectureGAME 3400 Level Design - Experience Architecture
GAME 3400 Level Design - Experience ArchitectureSeth Sivak
 
Apache Zookeeper Explained: Tutorial, Use Cases and Zookeeper Java API Examples
Apache Zookeeper Explained: Tutorial, Use Cases and Zookeeper Java API ExamplesApache Zookeeper Explained: Tutorial, Use Cases and Zookeeper Java API Examples
Apache Zookeeper Explained: Tutorial, Use Cases and Zookeeper Java API ExamplesBinu George
 
Building a REST Job Server for interactive Spark as a service by Romain Rigau...
Building a REST Job Server for interactive Spark as a service by Romain Rigau...Building a REST Job Server for interactive Spark as a service by Romain Rigau...
Building a REST Job Server for interactive Spark as a service by Romain Rigau...Spark Summit
 
Agile data warehouse
Agile data warehouseAgile data warehouse
Agile data warehouseDao Vo
 
Core Competences of Architects
Core Competences of ArchitectsCore Competences of Architects
Core Competences of ArchitectsDanny Greefhorst
 
Hadoop Interacting with HDFS
Hadoop Interacting with HDFSHadoop Interacting with HDFS
Hadoop Interacting with HDFSApache Apex
 
Deep Dive into Apache Apex App Development
Deep Dive into Apache Apex App DevelopmentDeep Dive into Apache Apex App Development
Deep Dive into Apache Apex App DevelopmentApache Apex
 
Competencies of an architect
Competencies of an architectCompetencies of an architect
Competencies of an architectMiha Kralj
 
My life as social media manager kbc
My life as social media manager kbcMy life as social media manager kbc
My life as social media manager kbcHatti Knuts
 
THE UK Stars OF 2015’s Christmas Advertising - Infographic
THE UK Stars OF 2015’s Christmas Advertising - InfographicTHE UK Stars OF 2015’s Christmas Advertising - Infographic
THE UK Stars OF 2015’s Christmas Advertising - InfographicKantar
 
Tan tat tan ve email marketing 2.0 (lite)
Tan tat tan ve email marketing 2.0 (lite)Tan tat tan ve email marketing 2.0 (lite)
Tan tat tan ve email marketing 2.0 (lite)phucnh
 
E texbooks for student’s e-resources
E texbooks for student’s e-resourcesE texbooks for student’s e-resources
E texbooks for student’s e-resourcesDimas Prasetyo
 
VISITA AL AULA ARQUEOLÓGICA DEL NEOLÍTICO Y EL MEGALITISMO. Morales del Rey (...
VISITA AL AULA ARQUEOLÓGICA DEL NEOLÍTICO Y EL MEGALITISMO. Morales del Rey (...VISITA AL AULA ARQUEOLÓGICA DEL NEOLÍTICO Y EL MEGALITISMO. Morales del Rey (...
VISITA AL AULA ARQUEOLÓGICA DEL NEOLÍTICO Y EL MEGALITISMO. Morales del Rey (...Manuela Romera Salas
 
МагIарулазул маргьу
МагIарулазул маргьуМагIарулазул маргьу
МагIарулазул маргьуŞamil Tzva
 
Liberating Research: A Manifesto for Change
Liberating Research: A Manifesto for ChangeLiberating Research: A Manifesto for Change
Liberating Research: A Manifesto for ChangeKantar
 

Destacado (20)

GAME 3400 Level Design - Experience Architecture
GAME 3400 Level Design - Experience ArchitectureGAME 3400 Level Design - Experience Architecture
GAME 3400 Level Design - Experience Architecture
 
Apache Zookeeper Explained: Tutorial, Use Cases and Zookeeper Java API Examples
Apache Zookeeper Explained: Tutorial, Use Cases and Zookeeper Java API ExamplesApache Zookeeper Explained: Tutorial, Use Cases and Zookeeper Java API Examples
Apache Zookeeper Explained: Tutorial, Use Cases and Zookeeper Java API Examples
 
Building a REST Job Server for interactive Spark as a service by Romain Rigau...
Building a REST Job Server for interactive Spark as a service by Romain Rigau...Building a REST Job Server for interactive Spark as a service by Romain Rigau...
Building a REST Job Server for interactive Spark as a service by Romain Rigau...
 
Agile data warehouse
Agile data warehouseAgile data warehouse
Agile data warehouse
 
Core Competences of Architects
Core Competences of ArchitectsCore Competences of Architects
Core Competences of Architects
 
Hadoop Interacting with HDFS
Hadoop Interacting with HDFSHadoop Interacting with HDFS
Hadoop Interacting with HDFS
 
Deep Dive into Apache Apex App Development
Deep Dive into Apache Apex App DevelopmentDeep Dive into Apache Apex App Development
Deep Dive into Apache Apex App Development
 
Competencies of an architect
Competencies of an architectCompetencies of an architect
Competencies of an architect
 
Ogrody wertykalne
Ogrody wertykalneOgrody wertykalne
Ogrody wertykalne
 
My life as social media manager kbc
My life as social media manager kbcMy life as social media manager kbc
My life as social media manager kbc
 
THE UK Stars OF 2015’s Christmas Advertising - Infographic
THE UK Stars OF 2015’s Christmas Advertising - InfographicTHE UK Stars OF 2015’s Christmas Advertising - Infographic
THE UK Stars OF 2015’s Christmas Advertising - Infographic
 
Humor alentejano !
Humor alentejano !Humor alentejano !
Humor alentejano !
 
Tan tat tan ve email marketing 2.0 (lite)
Tan tat tan ve email marketing 2.0 (lite)Tan tat tan ve email marketing 2.0 (lite)
Tan tat tan ve email marketing 2.0 (lite)
 
E texbooks for student’s e-resources
E texbooks for student’s e-resourcesE texbooks for student’s e-resources
E texbooks for student’s e-resources
 
VISITA AL AULA ARQUEOLÓGICA DEL NEOLÍTICO Y EL MEGALITISMO. Morales del Rey (...
VISITA AL AULA ARQUEOLÓGICA DEL NEOLÍTICO Y EL MEGALITISMO. Morales del Rey (...VISITA AL AULA ARQUEOLÓGICA DEL NEOLÍTICO Y EL MEGALITISMO. Morales del Rey (...
VISITA AL AULA ARQUEOLÓGICA DEL NEOLÍTICO Y EL MEGALITISMO. Morales del Rey (...
 
МагIарулазул маргьу
МагIарулазул маргьуМагIарулазул маргьу
МагIарулазул маргьу
 
A Terra vista do céu !
A Terra vista do céu !A Terra vista do céu !
A Terra vista do céu !
 
PPL Local roots-global reach 0711
PPL Local roots-global reach 0711PPL Local roots-global reach 0711
PPL Local roots-global reach 0711
 
Liberating Research: A Manifesto for Change
Liberating Research: A Manifesto for ChangeLiberating Research: A Manifesto for Change
Liberating Research: A Manifesto for Change
 
Fpk present 2013
Fpk present 2013Fpk present 2013
Fpk present 2013
 

Similar a Oracle MySQL Tutorial -- MySQL NoSQL Cloud Buenos Aires Nov, 13 2014

MySQL InnoDB Cluster and NDB Cluster
MySQL InnoDB Cluster and NDB ClusterMySQL InnoDB Cluster and NDB Cluster
MySQL InnoDB Cluster and NDB ClusterMario Beck
 
MySQL Enterprise Portfolio
MySQL Enterprise PortfolioMySQL Enterprise Portfolio
MySQL Enterprise PortfolioAbel Flórez
 
MySQL enterprise edition
MySQL enterprise edition MySQL enterprise edition
MySQL enterprise edition Mark Swarbrick
 
MySQL London Tech Tour March 2015 - Embedded Database of Choice
MySQL London Tech Tour March 2015 - Embedded Database of ChoiceMySQL London Tech Tour March 2015 - Embedded Database of Choice
MySQL London Tech Tour March 2015 - Embedded Database of ChoiceMark Swarbrick
 
20140722 Taiwan MySQL User Group Meeting Tech Updates
20140722 Taiwan MySQL User Group Meeting Tech Updates20140722 Taiwan MySQL User Group Meeting Tech Updates
20140722 Taiwan MySQL User Group Meeting Tech UpdatesRyusuke Kajiyama
 
MySQL Day Paris 2016 - MySQL HA: InnoDB Cluster and NDB Cluster
MySQL Day Paris 2016 - MySQL HA: InnoDB Cluster and NDB ClusterMySQL Day Paris 2016 - MySQL HA: InnoDB Cluster and NDB Cluster
MySQL Day Paris 2016 - MySQL HA: InnoDB Cluster and NDB ClusterOlivier DASINI
 
Mysql User Camp : 20th June - Mysql New Features
Mysql User Camp : 20th June - Mysql New FeaturesMysql User Camp : 20th June - Mysql New Features
Mysql User Camp : 20th June - Mysql New FeaturesTarique Saleem
 
Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
 Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
Mysql User Camp : 20-June-14 : Mysql New features and NoSQL SupportMysql User Camp
 
MySQL 8: Ready for Prime Time
MySQL 8: Ready for Prime TimeMySQL 8: Ready for Prime Time
MySQL 8: Ready for Prime TimeArnab Ray
 
Modern Data Security with MySQL
Modern Data Security with MySQLModern Data Security with MySQL
Modern Data Security with MySQLVittorio Cioe
 
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...GeneXus
 
MySQL Cluster - Latest Developments (up to and including MySQL Cluster 7.4)
MySQL Cluster - Latest Developments (up to and including MySQL Cluster 7.4)MySQL Cluster - Latest Developments (up to and including MySQL Cluster 7.4)
MySQL Cluster - Latest Developments (up to and including MySQL Cluster 7.4)Andrew Morgan
 
MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15
MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15
MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15Dave Stokes
 
20141011 my sql clusterv01pptx
20141011 my sql clusterv01pptx20141011 my sql clusterv01pptx
20141011 my sql clusterv01pptxIvan Ma
 
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud Service
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud ServiceMySQL Day Paris 2016 - Introducing Oracle MySQL Cloud Service
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud ServiceOlivier DASINI
 
MySQL & Oracle Linux Keynote at Open Source India 2014
MySQL & Oracle Linux Keynote at Open Source India 2014MySQL & Oracle Linux Keynote at Open Source India 2014
MySQL & Oracle Linux Keynote at Open Source India 2014Sanjay Manwani
 
Tutorial MySQL com Java
Tutorial MySQL com JavaTutorial MySQL com Java
Tutorial MySQL com JavaMySQL Brasil
 
My sql en la nube conoce las mejores prácticas en administración y operación_...
My sql en la nube conoce las mejores prácticas en administración y operación_...My sql en la nube conoce las mejores prácticas en administración y operación_...
My sql en la nube conoce las mejores prácticas en administración y operación_...GeneXus
 
MySQL InnoDB Cluster - Meetup Oracle MySQL / AFUP Paris
MySQL InnoDB Cluster - Meetup Oracle MySQL / AFUP ParisMySQL InnoDB Cluster - Meetup Oracle MySQL / AFUP Paris
MySQL InnoDB Cluster - Meetup Oracle MySQL / AFUP ParisOlivier DASINI
 

Similar a Oracle MySQL Tutorial -- MySQL NoSQL Cloud Buenos Aires Nov, 13 2014 (20)

MySQL InnoDB Cluster and NDB Cluster
MySQL InnoDB Cluster and NDB ClusterMySQL InnoDB Cluster and NDB Cluster
MySQL InnoDB Cluster and NDB Cluster
 
MySQL Enterprise Portfolio
MySQL Enterprise PortfolioMySQL Enterprise Portfolio
MySQL Enterprise Portfolio
 
MySQL enterprise edition
MySQL enterprise edition MySQL enterprise edition
MySQL enterprise edition
 
MySQL London Tech Tour March 2015 - Embedded Database of Choice
MySQL London Tech Tour March 2015 - Embedded Database of ChoiceMySQL London Tech Tour March 2015 - Embedded Database of Choice
MySQL London Tech Tour March 2015 - Embedded Database of Choice
 
20140722 Taiwan MySQL User Group Meeting Tech Updates
20140722 Taiwan MySQL User Group Meeting Tech Updates20140722 Taiwan MySQL User Group Meeting Tech Updates
20140722 Taiwan MySQL User Group Meeting Tech Updates
 
MySQL Day Paris 2016 - MySQL HA: InnoDB Cluster and NDB Cluster
MySQL Day Paris 2016 - MySQL HA: InnoDB Cluster and NDB ClusterMySQL Day Paris 2016 - MySQL HA: InnoDB Cluster and NDB Cluster
MySQL Day Paris 2016 - MySQL HA: InnoDB Cluster and NDB Cluster
 
Mysql User Camp : 20th June - Mysql New Features
Mysql User Camp : 20th June - Mysql New FeaturesMysql User Camp : 20th June - Mysql New Features
Mysql User Camp : 20th June - Mysql New Features
 
Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
 Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
Mysql User Camp : 20-June-14 : Mysql New features and NoSQL Support
 
MySQL 8: Ready for Prime Time
MySQL 8: Ready for Prime TimeMySQL 8: Ready for Prime Time
MySQL 8: Ready for Prime Time
 
Modern Data Security with MySQL
Modern Data Security with MySQLModern Data Security with MySQL
Modern Data Security with MySQL
 
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
 
MySQL Cluster - Latest Developments (up to and including MySQL Cluster 7.4)
MySQL Cluster - Latest Developments (up to and including MySQL Cluster 7.4)MySQL Cluster - Latest Developments (up to and including MySQL Cluster 7.4)
MySQL Cluster - Latest Developments (up to and including MySQL Cluster 7.4)
 
MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15
MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15
MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15
 
MySQL HA
MySQL HAMySQL HA
MySQL HA
 
20141011 my sql clusterv01pptx
20141011 my sql clusterv01pptx20141011 my sql clusterv01pptx
20141011 my sql clusterv01pptx
 
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud Service
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud ServiceMySQL Day Paris 2016 - Introducing Oracle MySQL Cloud Service
MySQL Day Paris 2016 - Introducing Oracle MySQL Cloud Service
 
MySQL & Oracle Linux Keynote at Open Source India 2014
MySQL & Oracle Linux Keynote at Open Source India 2014MySQL & Oracle Linux Keynote at Open Source India 2014
MySQL & Oracle Linux Keynote at Open Source India 2014
 
Tutorial MySQL com Java
Tutorial MySQL com JavaTutorial MySQL com Java
Tutorial MySQL com Java
 
My sql en la nube conoce las mejores prácticas en administración y operación_...
My sql en la nube conoce las mejores prácticas en administración y operación_...My sql en la nube conoce las mejores prácticas en administración y operación_...
My sql en la nube conoce las mejores prácticas en administración y operación_...
 
MySQL InnoDB Cluster - Meetup Oracle MySQL / AFUP Paris
MySQL InnoDB Cluster - Meetup Oracle MySQL / AFUP ParisMySQL InnoDB Cluster - Meetup Oracle MySQL / AFUP Paris
MySQL InnoDB Cluster - Meetup Oracle MySQL / AFUP Paris
 

Último

WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...Jittipong Loespradit
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in sowetomasabamasaba
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburgmasabamasaba
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfonteinmasabamasaba
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationJuha-Pekka Tolvanen
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...masabamasaba
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park masabamasaba
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 

Último (20)

WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - Keynote
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 

Oracle MySQL Tutorial -- MySQL NoSQL Cloud Buenos Aires Nov, 13 2014

  • 1. ORACLE MySQL Enterprise Tutorial Manuel Contreras Rico manuel.contreras@oracle.com Principal SW Consultant ORACLE MySQL Noviembre, 2014 Copyright © 2014 Oracle and/or its affiliates. All rights reservOerda.c l|e Confidential – Internal/Restricted/Highly Restricted
  • 2. 5 años de innovación Oracle Mayor inversión e innovación al ecosistema Jan 2010 Sept 2014 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 2 2x Engineering Staff 3x QA Staff 2x Support Staff
  • 3. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | MySQL ~ Big Data 3
  • 4. Oracle Confidential – Internal/Restricted/Highly Restricted Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Arquitectura MySQL 4 MySQL Server
  • 5. Oracle Confidential – Internal/Restricted/Highly Restricted Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | MySQL Storage Engines Motores de Almacenamiento 5 MySQL Server
  • 6. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | MySQL Storage Engines • Pluggable architecture 6 InnoDB MyISAM NDBCluster ACID Propósito General Not ACID Bulk operations / Catálogo consultas ACID in-Memory DB real time OLTP Archive Data Compression Memory Volatile Data High Performance 3rd Party Community
  • 7. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 7 MySQL Replication sharding & high availability App Writes & Reads MySQL Master Server Writes Index & Binary Log Rotation MySQL Slave Server Writes Reads Replication Relay Log
  • 8. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 8 Oracle database & MySQL ** Oracle eBusiness Suite * Custom Ad-Hoc ERP / CRM CRM / ERP
  • 9. Caracterísiticas Herramientas de Avanzadas administración Soporte Técnico • Scalability • High Availability • Security • Audit • Monitoring • Backup • Development • Administration • Migration • Technical Support • Consultative Support • Oracle Certifications Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | MySQL Enterprise Edition 12
  • 10. MySQL Scalability Thread Pool ( Performance ) Mejor escalabilidad en MySQL Enterprise MySQL 5.5.16 Oracle Linux 6.1, Unbreakable Kernel 2.6.32 2 sockets, 24 cores, 2 X 12-core Intel(R) Xeon(R) X5670 2.93GHz CPUs 72GB DDR3 RAM 2 X LSI SCSI Disk (MR9261-8i) (597GB) mysql.com/products/enterprise/scalability.html Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 10
  • 11. • Visión consolidada en todo el entorno de MySQL, en las instalaciones y en la nube • Automatizado, monitoring emite alertas basado en normas (SMTP, SNMP) • Query Analyzer, seguimiento, análisis y puesta a punto, en correlación con los gráficos del monitor • Identifica los servidores problemáticos • Monitor de replicación en tiempo real con auto-descubrimiento de topologías maestro-esclavo MySQL Enterprise Monitor 3.0 Ahorra tiempo. Soluciona problemas de manera proactiva. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | MySQL Enterprise Edition : Monitor
  • 12. MySQL Enterprise Backup • Online, non-locking backup & recovery – Complete MySQL instance backup (datos & Config ) – Partial backup & restore • Direct Cloud storage backups (S3, etc.) • Incremental backups • Point-in-time recovery • Compressed & encryption • Backup to tape (SBT) • Backup validation • Online backup MySQL (Windows, Linux, Unix) Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 21
  • 13. MySQL Workbench EE + Backup • Programar & administrar backup jobs – Create new backup jobs – Schedule backup jobs para Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | ejecución automática – Visualiza backup jobs actuales – Visualiza actividad backup • Restore backups – Full, partial, incremental … 13
  • 14. MySQL Enterprise Monitor + Backup Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 14 • Monitor backup performance • Asegurar que los backups programados han sido exitosos y están al día.
  • 15. ▪ Diagnostica problemas de desempeño código SQL problemático. ▪ Correlación gráfica de código SQL ▪ Encuentra y optimiza cuellos de botella ▪ Identifica la fuente de problemas en desempeño ▪ Estadísticas detallas de ejecución de queries SQL ▪ Query Response Time index (QRTi) Con el analizador de consultas MySQL, hemos sido capaces de identificar y analizar el código SQL problemático y triplicar nuestro rendimiento de base de datos. Más importante aún, hemos sido capaces de lograr esto en tres días, en lugar de tomar semanas Keith Souhrada Ingeniero de Desarrollo Software Big Fish Games Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 15 MySQL Query Analyzer mysql.com/products/enterprise/query.html
  • 16. MySQL Enterprise Security • SSL enabled • Access control – Enterprise authentication (PAM, Windows, LDAP, etc.) – Proxy users • Auditing & monitoring – MySQL security advisors –Oracle Audit Vault • Oracle Database Firewall Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 16
  • 17. MySQL Enterprise Encryption • Librerías MySQL encryption – Symmetric encryption AES256 – Public-key / asymmetric cryptography • Administración de Keys PKI –Generate public and private keys – Key exchange methods: RSA, DSA, DH • Sign & verify data – Cryptographic hashing for digital signing, verification, & validation Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 17
  • 18. Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | MySQL Cluster CGE 18 SQL & NoSQL Flexibility In-Memory Database
  • 19. MySQL: Sakila & El Chavo del 8 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 19 playfulplay.com/lavecindaddeelchavo/index.php Caso de estudio: MySQL Cluster CGE habilita un Sharding transparente para la aplicación ( NDBCluster ) Facebook Game #1 Categoría Familiar - Cloud Elástico bajo demanda - In-memory database - Arquitectura Non-Shared Disk >10 MILLONES de suscriptores >80 MIL jugadores concurrentes
  • 20. La vecindad de El Chavo del 8 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 20
  • 21. MySQL en la Nube The #1 RDBMS in the Cloud SaaS Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 21 Hosting IaaS, PaaS
  • 22. MySQL Enterprise Replication Monitor Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 22 • Auto-discover de topología de replicación • Monitor de replicación Master/Slave ( Replication advisor ) • Mejores prácticas en configuración de Grupos de Replicación ( Async, Semi-sync ) "I use the MySQL Enterprise Monitor every day to monitor and keep tabs on our MySQL databases. Quick one stop shopping for keeping tabs on them.” -Wes Homer, Sr System and Network Administrator mysql.com/products/enterprise/monitor.html
  • 23. ORACLE — MySQL Integration Oracle Enterprise Manager 12c Oracle Linux Oracle VM Oracle Clusterware Oracle Secure Backup Oracle Fusion Middleware Oracle Golden Gate Oracle Audit Vault Oracle Database Firewall MyOracle Support Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 23
  • 24. ORACLE Enterprise Manager 12c GA Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 24 Performance Security Availability • Availability monitoring • Performance monitoring • Configuration monitoring • Permite crear custom threshold basados en reportes de incidencia • MySQL auto-detection
  • 25. Soporte MySQL Enterprise Technical support & Consultative Support • El equipo más grande de ingenieros MySQL • Apoyado por MySQL developers • World-class support, en 29 languages ( Español ) • Hot fixes & maintenance releases • 24x7 x 365 • Incidentes ilimitados • Soporte Consultivo • Global scale and reach Ayuda inmediata para cualquier problema de MySQL, además de asesoría de expertos Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 41
  • 26. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Información Adicional 26 MySQL Products http://www.mysql.com/products/ MySQL Enterprise http://www.mysql.com/products/enterprise/ MySQL FAQ http://dev.mysql.com/doc/refman/5.6/en/faqs-general.html
  • 27. MySQL Enterprise Server Arq. Referencia Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 27
  • 28. Custom OLTP App Load balancer: Fabric-Aware Connectors: Java, PHP, .NET, ( C Labs ); otros Load Balancers MySQL Fabric Controller MySQL Enterprise Monitor VLAN1 Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 28 Arquitectura MySQL Enterprise Edition Drools (Business Rule Management System) Red para sincronización de datos entre nodos MySQL MySQL Enterprise Primario DAS LUN (1) VLAN2 ( Privada ) MySQL Enterprise Secundario DAS LUN (2) Red de servicio Application Server & MySQL OLAP BI Reporting Analítica
  • 29. Arquitectura MySQL Enterprise Edition — Detalle Técnico PRODUCCION — MySQL Enterprise (2 Servidores virtuales / físicos) CPU: 16 Cores CPU x86 64 bits; RAM: 16G ( o según tamaño de Base de datos / volumen de transacciones ) Storage: 1 Logic Unit asociada a un punto de montaje para datos $DATADIR, para cada unos de los nodos ( Primario & Secundario), como disco no compartido que permita un alto performance de lectura / escritura ( p.e. RAID 10 ) OS: Linux varias distribuciones, Solaris, Mac OSX, MS Windows 2012 Server Red: 2 puertos de Gigabit ethernet configurados con VLAN1 red de servicio & VLAN2 red privada de sincronización de datos entre nodos MySQL Fabric Controller / MySQL Enterprise Monitor ( 1 servidor virtual / físico ) CPU: 8 Cores CPU x86 64 bits; RAM: 8G; HDD Disco Interno PRE-PRODUCCION ( QA ) — MySQL Enterprise 1 Servidores virtual / físico con: CPU: 16 Cores CPU x86 64 bits; RAM: 16G ( o según tamaño de Base de datos / volumen de transacciones ) Storage: 1 Logic Unit asociada a un punto de montaje para datos $DATADIR de MySQL Enterprise Monitor & Fabric Controller OS: Linux varias distribuciones, Solaris, Mac OSX, MS Windows 2012 Server Red: VLAN1: red de servicio Total 4 Servidores MySQL Enterprise Edition ( ambiente QA & PROD ) Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 29
  • 30. MySQL & High Availability Oracle Confidential – Internal/Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
  • 31. Oracle MySQL HA & Scaling Solutions Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | MySQL Replication MySQL Fabric Oracle VM Template Oracle Clusterware Solaris Cluster Windows Cluster DRBD MySQL Cluster App Auto-Failover ✖ ✔ ✔ ✔ ✔ ✔ ✔ ✔ Data Layer Auto-Failover ✖ ✔ ✔ ✔ ✔ ✔ ✔ ✔ Zero Data Loss MySQL 5.7 MySQL 5.7 ✔ ✔ ✔ ✔ ✔ ✔ Platform Support All All Linux Linux Solaris Windows Linux All Clustering Mode Master + Slaves Master + Slaves Active/ Passive Active/ Passive Active/ Passive Active/ Passive Active/ Passive Multi- Master Failover Time N/A Secs Secs + Secs + Secs + Secs + Secs + < 1 Sec Scale-out Reads ✔ ✖ ✖ ✖ ✖ ✖ ✔ Cross-shard operations N/A ✖ N/A N/A N/A N/A N/A ✔ Transparent routing ✖ For HA ✔ ✔ ✔ ✔ ✔ ✔ Shared Nothing ✔ ✔ ✖ ✖ ✖ ✖ ✔ ✔ Storage Engine InnoDB+ InnoDB+ InnoDB+ InnoDB+ InnoDB+ InnoDB+ InnoDB+ NDB Single Vendor Support ✔ ✔ ✔ ✔ ✔ ✖ ✔ ✔ 31
  • 32. MySQL Enterprise HA : Shared Storage Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 32 • Stricter data durability, integrity constraints – Shared storage persists commits across instances – Clustering software manages data access – Auto-failover of applications and database – Deploy with MySQL Fabric for scale-out • MySQL certified & supported solutions – Oracle Clusterware – Windows Failover Clustering – Oracle Solaris Cluster Virtual IP Clients
  • 33. MySQL Enterprise HA : Shared Nothing Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 33 • DRBD + Clustering – Based on distributed storage, not a SAN – Synchronous replication eliminates risk of data loss • Open source, mature, & proven • Certified and fully supported by Oracle – DRBD integrated into Oracle Linux Unbreakable Enterprise Kernel R2 – Pacemaker and Corosync for clustering / failover – Updates to stack via ULN channel
  • 34. MySQL Enterprise HA : Oracle VM Templates • Oracle Linux • Oracle VM • Oracle VM Manager • Oracle Cluster File System 2 (OCFS2) • MySQL Database (Enterprise Edition) Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 34 • Pre-installed & pre-configured • Full integration & QA testing • Single point of support Oracle VM Server Pool Oracle VM Servers ocfs2 Oracle VM Manager SAN / iSCSI Oracle VM Secure Live Migration (SSL) Oracle VM Automatic Fault Detection & Recovery
  • 35. MySQL Cluster CGE: NDBCluster Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 35 • Automatic Sharding • In-memory engine • Sync replication • Real-time OLTP • 99.999 % • Requires MySQL Cluster CGE binaries / suscription • NoSQL / SQL supported • Minimum 3 physical servers, 4 production environments MySQL Cluster Data Nodes Clients Application Layer Management Data Layer
  • 36. MySQL Fabric 1.5.2 Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 36
  • 37. http://www.mysql.com/products/enterprise/fabric.html Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | MySQL Fabric MySQL Fabric es un framework extensible & fácil de utilizar, para administrar ambientes de clustering con MySQL. El framework implementa 3 funcionalidades: Tolerancia a Fallas, Distribución de carga Sharding, & aprovisionamiento de entornos de manera automática. MySQL Fabric, gestiona también grupos de servidores con MySQL Replication y permite un failover automático gestionado por el nodo MySQL Fabric Controller en combinación a los Drivers Fabric-Aware: Java, PHP, Python & .NET y próximamente Lenguaje C. El Fabric connector, puede en rutar transacciones en base a un criterio definido por el desarrollador, permitiendo también escalar de manera horizontal en activo - activo en múltiples grupos de data shards. Por otro lado, la extensión Sharding de MySQL Fabric, permite que el desarrollador pueda distribuir bases de datos, sobre un conjunto de servidores físicos gestionados por MySQL Fabric, esto con el fin de poder escalar elásticamente agregando o reduciendo el número de nodos en el grupo de servidores. 37
  • 38. High Availability + Sharding-Based Scale-out Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | MySQL Fabric 1.5 • High Availability • Auto-promotion failover & transparente para la application failover • Opcionalmente scale-out a través de data sharding – Application provee shard key – Range ó Hash • Conectores Fabric-aware: Python, Java, PHP, .NET, C (labs) – Lower latency, bottleneck-free • Server provisioning a través de OpenStack MySQL Fabric Connector • Application Read-slaves mappings SQL HA group Read-slaves HA group Connector • Application 38
  • 39. MySQL Fabric Framework (HA) All Data Primary Secondary Extra Read Replicas Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | MySQL Fabric Controller SQL Queries State & Routing Info HA Group Coordination and Control 39
  • 40. MySQL Replication & MySQL Fabric HA • MySQL Replication is the initial implementation used in HA Groups – PRIMARY = Replication Master & receives all writes – SECONDARY = Replication Slave & receives share of reads • Failover – MySQL Fabric detects failure of PRIMARY/Master – Selects a SECONDARY/Slave and promotes it – Updates State Store – Updated state fetched by Fabric-aware connectors Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | How this effects failover 40
  • 41. High-Availability Group Concept • Abstract Concept – Set of servers – Server attributes • Connector Attributes – Connection information – Mode: read-only, read-write, ... –Weight: distribute load • Management Attributes – State: state/role of the server State: Primary Mode: Read-Write Host: server-1.example.com Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 41
  • 42. Create HA Groups and add Servers • Definiendo el grupo mysqlfabric group create my_group • Agregando servidores al grupo mysqlfabric group add my_group server1.example.com mysqlfabric group add my_group server2.example.com Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 42
  • 43. Create HA Groups and add Servers • Promoviendo un servidor a Primario Master mysqlfabric group promote my_group • Activación del FailOver detector mysqlfabric group activate my_group Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 43
  • 44. Demostración MySQL Fabric Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 44
  • 45. MySQL Fabric ( Sharding ) Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 45
  • 46. Benefits of Sharding • Write scalability – Can handle more writes • Large data set – Database too large – Does not fit on single server • Improved performance – Smaller index size – Smaller working set – Improve performance (reads and Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | writes) UID 10000-20000 UID 20001-40000 46
  • 47. MySQL Fabric Sharding & Provisioning Features Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | • Connector API Extensions – Support Transactions – Support full SQL • Decision logic in connector – Reducing network load • Shard Multiple Tables – Using same key • Global Updates –Global tables – Schema updates • Sharding Functions – Range ( Integer, String, datetime ) – Hash (Consistent) • Shard Operations – Shard move – Shard split • Server Provisioning – Integrated with OpenStack & other frameworks 47
  • 48. MySQL Fabric Node Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Sharding Architecture Shards Application Global Group Global Updates Shard Updates Replication 48 Connector Connector Connector
  • 49. MySQL Fabric (HA + Sharding) Global Data Primary Secondary Shard 1 Primary Secondary Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Shard 2 Primary Secondary MySQL Fabric Controller SQL Queries Server/Shard State & Mapping Global Group HA Group Coordination and Control HA Group Extra Read Replicas Extra Read Replicas 49
  • 50. Shard #1 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Routing Transactions Shard #2 Shard #3 Executor App Server Connector Cache State Store App Server Connector Cache 50
  • 51. MySQL Fabric: Sharding Setup • Set up some groups – my_global – for global updates – my_group.N – for the shards – Add servers to the groups • Create a shard mapping – A “distributed database” – Mapping keys to shards – Give information on what tables are sharded • Add shards Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 51
  • 52. Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | MySQL Fabric: Moving and Splitting Shards • Moving a shard (id=5) from existing group to another (my_group.8) mysqlfabric sharding move 5 my_group.8 • Splitting a shard (id=5) into two parts with new half stored in group my_group.6 mysqlfabric sharding split 5 my_group.6 52
  • 53. Connector API: Shard Specific Query • Indicate tables to be used in query – Property: tables – Fabric will compute map • Indicate read-only queries – Property: mode • Provide sharding key – Property: key – Fabric will compute shard • Joins within the shard (or with global tables) supported conn.set_property(tables=["test.subscribers"], key=sub_no, mode=fabric.MODE_READONLY) cur = conn.cursor() cur.execute( "SELECT first_name, last_name FROM subscribers WHERE sub_no = %s", (sub_no) ) Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | for row in cur: print row 53
  • 54. Connector API: Global Update Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | • Set global scope – Property: scope – Query goes to global group conn.set_property(tables=[], scope='GLOBAL') cur = conn.cursor() cur.execute("ALTER TABLE test.subscribers ADD nickname VARCHAR(64)") 54
  • 55. > mysqlfabric provider register my_stack my_user my_password http://8.21.28.222:5000/v2.0/ --tenant=my_user_role --provider_type=OPENSTACK > mysqlfabric machine create my_stack --image id=8c92f0d9-79f1-4d95- b398-86bda7342a2d --flavor name=m1.small > mysqlfabric machine list my_stack • Fabric creates new machines, & MySQL Servers – Initially using OpenStack Nova – Other frameworks on the way (OpenStack Trove, AWS,…) • Server setup – Clones slave – Sets up replication – Performs custom operations Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 55 Server Provisioning – OpenStack Nova Integration
  • 56. Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | MySQL Fabric executor • Event driven – Events will trigger execution of procedures – Procedures can trigger events themselves – Each step of a procedure is called a job • Procedures – Written in Python – Interacts with servers – Write state changes into backing store – Lock manager for conflict resolution • Conservative two-phase locking strategy • Avoid deadlocks Backing Store Queue Events
  • 57. Example of User-Defined Executor Script: Automatically replacing a server in a group on failure Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | • Register procedure for event – @on_event decorator – Accept event to register for • Fetch the group the server belonged to • Fetch a new server from the provider • Add the server to the group @on_event(SERVER_LOST) def _add_server(group_id, server_uuid): group = Group.fetch(group_id) machines = PROVIDER.create_machines( parameters ) server = MySQLServer( server_uuid, address ) MySQLServer.add(server) group.add(server) _configure_as_slave(server)
  • 58. AMQP? MySQL XML-RPC Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | MySQL Fabric Node Extensible Architecture Connector Connector Connector MySQL Fabric Framework Executor State Store (persister) Shard HA Prov ??? MySQL Backing Store SQL 58
  • 59. MySQL Fabric: Goals & Features • Connector API Extensions – Support Transactions – Support full SQL • Fabric-Aware Connectors at GA: – PHP + Doctrine, Python, Java + Hibernate, Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | .NET, C (pre-GA) • Decision logic in connector – Reducing latency &network load • Load Balancing – Read-Write Split – Distribute transactions • Global Updates – Global data – Schema updates • Sharding Functions – Range – (Consistent) Hash • Shard Operations – Shard move – Shard split • Server Provisioning – OpenStack Integration (& other frameworks) 59
  • 60. MySQL Fabric – Current Limitations Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | • Routing is dependent on Fabric-aware connectors – Currently Java (+ Hibernate), PHP (+ Doctrine), Python, .NET & C (labs) • MySQL Fabric node is a single (non-redundant process) – HA Maintained as connectors continue to route using local caches • Establishes asynchronous replication – Manual steps to switch to semisynchronous • Sharding not completely transparent to application (must provide shard key – column from application schema) • No cross-shard joins or other queries • Management is through CLI, MySQL protocol or XML/RPC API – No GUI 60
  • 61. Oracle MySQL HA & Scaling Solutions Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | MySQL Replicatio n MySQL Fabric Oracle VM Template Oracle Clusterwar e Solaris Cluster Windows Cluster DRBD MySQL Cluster App Auto-Failover ✖ ✔ ✔ ✔ ✔ ✔ ✔ ✔ Data Layer Auto- ✖ ✔ ✔ ✔ ✔ ✔ ✔ ✔ Failover Zero Data Loss MySQL 5.7 MySQL 5.7 ✔ ✔ ✔ ✔ ✔ ✔ Platform Support All All Linux Linux Solaris Windows Linux All Clustering Mode Master + Slaves Master + Slaves Active/ Passive Active/ Passive Active/ Passive Active/ Passive Active/ Passive Multi- Master Failover Time N/A Secs Secs + Secs + Secs + Secs + Secs + < 1 Sec Scale-out Reads ✔ ✖ ✖ ✖ ✖ ✖ ✔ Cross-shard operations N/A ✖ N/A N/A N/A N/A N/A ✔ Transparent routing ✖ For HA ✔ ✔ ✔ ✔ ✔ ✔ Shared Nothing ✔ ✔ ✖ ✖ ✖ ✖ ✔ ✔ Storage Engine InnoDB+ InnoDB+ InnoDB+ InnoDB+ InnoDB+ InnoDB+ InnoDB+ NDB Single Vendor Support ✔ ✔ ✔ ✔ ✔ ✖ ✔ ✔ 61
  • 62. MySQL Fabric Resources • Download and try http://dev.mysql.com/downloads/fabric/ • Documentation http://dev.mysql.com/doc/mysql-utilities/en/fabric.html • MySQL Fabric on the web http://www.mysql.com/products/enterprise/fabric.html • Forum (MySQL Fabric, Sharding, HA, Utilities) http://forums.mysql.com/list.php?144 • Tutorial: MySQL Fabric - adding High Availability and Scaling to MySQL http://www.clusterdb.com/mysql-fabric/mysql-fabric-adding-high-availability-and-scaling-to-mysql • White Paper: MySQL Fabric - A Guide to Managing MySQL High Availability and Scaling Out http://www.mysql.com/why-mysql/white-papers/mysql-fabric-product-guide • Webinar Replays http://www.mysql.com/news-and-events/on-demand-webinars/#en-20-41 Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 62
  • 63. ORACLE MySQL Enterprise Manuel Contreras Rico manuel.contreras@oracle.com Principal Software Consultant Latinoamérica & El Caribe ORACLE MySQL Noviembre, 2014 Copyright © 2014 Oracle and/or its affiliates. All rights reservOerda.c l|e Confidential – Internal/Restricted/Highly Restricted