• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Ora mysql bothGetting the best of both worlds with Oracle 11g and MySQL Enterprise
 

Ora mysql bothGetting the best of both worlds with Oracle 11g and MySQL Enterprise

on

  • 5,376 views

 

Statistics

Views

Total Views
5,376
Views on SlideShare
5,332
Embed Views
44

Actions

Likes
2
Downloads
106
Comments
0

2 Embeds 44

http://dinamicas.emvideos.com.br 22
http://dinamicas.emvideos.com.br 22

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Ora mysql bothGetting the best of both worlds with Oracle 11g and MySQL Enterprise Ora mysql bothGetting the best of both worlds with Oracle 11g and MySQL Enterprise Presentation Transcript

    • 1 Tuesday, 21 September 2010
    • <Insert Picture Here> Getting the Best of Both Worlds with Oracle Database 11g and MySQL Enterprise Ivan Zoratti Sales Consulting Manager EMEA - Oracle MySQL Tuesday, 21 September 2010
    • 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 Tuesday, 21 September 2010
    • Pluggable Storage Engine Architecture Tuesday, 21 September 2010
    • Agenda • Intro to MySQL <Insert Picture Here> • MySQL Architecture • MySQL Enterprise • MySQL for Online Applications • When It Makes Sense to Use MySQL • Oracle 11g and MySQL integration 5 Tuesday, 21 September 2010
    • Intro to MySQL 6 Tuesday, 21 September 2010
    • Oracle’s Strategy: Complete. Open. Integrated. • Built together • Tested together • Managed together • Serviced together • Based on open standards • Lower cost • Lower risk • More reliable Tuesday, 21 September 2010
    • Industry’s most complete LAMP Stack Application s Eclipse, N e tbeans Apache, G la ssfish MySQL Oracle En t. Linux & VM Tuesday, 21 September 2010
    • MySQL Today • In Development/Production since 1995 • Acquired with Sun Microsystems • Leading Open Source Database for online apps • 12M+ server installations worldwide • 70,000 downloads each day • Dramatically reduces Database TCO • Performance, Reliability, Ease of Use Tuesday, 21 September 2010
    • MySQL’s Industry Leading Customers Web OEM / ISV’s SaaS, Hosting Telecommunications Enterprise 2.0 MySQL is Powering the Web Tuesday, 21 September 2010
    • The Top 20 most popular Websites 1.Google 11.QQ.com 2.Facebook 12.Yahoo! JP 3.YouTube 13.Google IN 4.Yahoo! 14.Taobao 5.Windows Live 15.Amazon.com 6.Baidu 16.Sina 7.Wikipedia 17.Google DE 8.Blogger 18.Google HK 9.Twitter 19.Wordpress 10.MSN 20.Google UK Source: Alexa Top Sites - 1 September 2010 ...and many more: Flickr, Second Life, Craigslist, Slashdot, LiveJournal, Digg, Del.icio.us, Pricegrabber.com, Weather.com etc. Tuesday, 21 September 2010
    • MySQL Server Offering and Licensing Community Server Embedded Server Community Commercial Enterprise GPL Licence GPL • Available under GPL • For OEMs and ISVs • Enterprise Tools • Software tested by the • Frees from applying • Services to ensure the maximum Community GPL rules to source quality, uptime, and performance of • No Maintenance SLA code and IP MySQL Enterprise systems • No Support • Deeply embedded or • 24x7 support • No ISV Certification bundled • Consultative services • Self-help knowledge aids • Extended Lifecycle Support • Optional Custom builds and service patches Tuesday, 21 September 2010
    • MySQL Architecture Tuesday, 21 September 2010
    • Pluggable Storage Engine Architecture Tuesday, 21 September 2010
    • MySQL Replication • Typical Master/Slave replication environment • Multiple replication topologies are supported • 1 Master : many Slaves, Circular, Master/Master etc. • Available for all platforms • Enabled for all storage engines • Asynchronous or Semi-Synchronous with Heartbeat • Statement Based (SBR), Row Based (RBR) or mixed-format (MIXED) • Replicate data from one MySQL server/storage engine combination to a different MySQL Server/storage engine combination • Perform backups using a slave server and continue to process updates on the master while the backup is being made on the slave • 1-minute configuration Application Master Slave Tuesday, 21 September 2010
    • MySQL Replication • Data written on the master is also written into the binary log • The I/O thread on the slave collects logs from the master binary log and writes a relay log on the slave • The SQL thread on the slave reads the relay log and apply the writes on the slave • Slave writes are optionally added to the binary log on the slave • If the semi-sync plugin is installed and enabled, the master waits until the I/O thread on one of the semi-sync slave has written the transaction to disk, or until it receives a timeout, then it returns the ACK to the application. Tuesday, 21 September 2010
    • MySQL Cluster/NDB Storage Engine • Cost • Use commodity hardware to accommodate the growth of users, traffic, and data Applications • Fault Tolerance • No single point of failure • High Availability • Data is replicated across nodes and always available • Automatic fail-over MySQL Server Nodes • Scalability • Distributes large workloads Data • Replicas for Read, Partitions for Write Nodes • Supports “Scale Out” • High Performance • Load balanced • Memory or Disk based storage engine Management Server & Client • Designed high volume/small transactions • Simplified Management • Cluster management utilities • Commodity components Tuesday, 21 September 2010
    • MySQL Cluster /NDB Storage Engine Clients MySQL Cluster Application Nodes MySQL MySQL Cluster Cluster Mgmt Mgmt MySQL Cluster Data Nodes Tuesday, 21 September 2010
    • MySQL Server 5/MySQL Cluster 7 Reliability Performance Ease of Use • SQL Mode • Stored Procedures • Instance Manager • Triggers & Views • Cluster query push down • Information Schema . 50 • Precision Math • Query optimisations • Cursors • Increased object support • Archive Engine • Enterprise Backup & Recovery • Enteprise Monitoring Tool • InnoDB storage improvements Manager • Row-Based Replication • Table/Index Partitioning • XML/XPath Support . 51 • Disk-based Cluster • Full-Text Index Improvements • Task Scheduler • Cluster Replication with • Faster ALTER TABLE • Storage Engine Plug-in API Conflict Resolution • Faster ADD/DROP Index • CSV Storage Engine • Enterprise Query Analyser • Parallel Data Import RC • Default InnoDB (Barracuda) • Multiple Buffer Pool and • SIGNAL/RESIGNAL 5.5 • Semi-Sync Replication Rollback Segment • NDB_INFO Schema • Enterprise Connectors • Eliminated Lock bottlenecks • MySQL Custer Manager • Enterprise Support • Extended Change Buffering & • MySQL Workbench 5.2 Diagnostics Purge Scheduling • MySQL Cluster Connectors • MySQL Cluster on Windows • PERFORMANCE_SCHEMA • MySQL Enterprise Backup • Fast InnoDB Recovery • Multithreaded Cluster Tuesday, 21 September 2010
    • MySQL and DRBD Distributed Replicated Block Device • Asynchronous, Semi-Synchronous or Synchronous Applications • Runs over standard IP networks • Distributed storage • Similar to network RAID • Characteristics Active Node Virtual IP Passive Node • No special networking components • Excellent performance (blocks vs. rows of data) • Manages inconsistencies of data during a failure DRBD/AVS • Hides the complexity of many recovery actions • Linux heartbeat manages fail over and virtual IPs Tuesday, 21 September 2010
    • MySQL and Shared Storage Clusters • Active/Passive server or process configuration • Links servers with 3rd party software and virtual IP Applications • Reliability • Commonly used solution • Fault Tolerance • No single point of failure with MySQL Server Nodes appropriate hardware • High Availability • Data handled by a SAN or NAS and always available • Automatic fail-over Shared Storage • Simplified Management • Cluster management utilities Tuesday, 21 September 2010
    • Distributed Caching Memcache • Memcache is a high-performance, distributed memory object caching system, generic in nature, but intended for use in speeding up dynamic web applications by alleviating database load. • Created by Danga Interactive for LiveJournal • Available on Linux, FreeBSD, Solaris, Windows, OS X • Simple UDP protocol, Libevent based • Integration with all the major RDBMSs, Web & App Servers and Languages • Used (amongst many) by LiveJournal, Fotolog, Facebook, Amazon, Yahoo, YouTube, Wikipedia etc. Tuesday, 21 September 2010
    • MySQL Enterprise Tuesday, 21 September 2010
    • MySQL Enterprise: Commercial Offering • MySQL Enterprise Server • Monthly Rapid Updates Database • Quarterly Service Packs • Hot Fix Program • Subscription: • Extended End-of-Life • MySQL Enterprise • License (OEM): • Global Monitoring of All Servers • Embedded Server • Web-Based Central Console Monitoring • Built-in Advisors, Expert Advice • MySQL Query Analyzer • Support • Specialised Scale-Out Help Cluster Carrier- • MySQL Grade • Training • 24 x 7 x 365 Problem Resolution • Consulting • Online Self help Knowledge Base Support • Consultative Help• NRE • Bug Escalation Program http://www.mysql.com/products/enterprise/ Tuesday, 21 September 2010
    • MySQL Enterprise Monitor • Single, consolidated view into entire MySQL environment • Monitor MySQL Sessions, Connections, Replication Latency • Improve Application Performance • Gain Immediate Visibility into Your Replication Topologies • Customisable rules-based monitoring and alerts • Identifies problems before they occur • Makes it easier to scale out without requiring more DBAs A Virtual MySQL DBA Assistant! http://www.mysql.com/products/enterprise/monitor.html Tuesday, 21 September 2010
    • MySQL Enterprise Monitor Architecture Individual Servers w/Agent Configuration Advisor Scheduling Alerts/Notifications Service Agent written in C and Visual Monitoring supports all MySQL Enterprise Query Analysis Service platforms Manager Service Manager written in Java Collects MySQL and OS servlets exposed as web services. specific metrics, Query Supports Linux, Solaris, Mac OSX content/stats and Microsoft Windows Enterprise Dashboard Enterprise Dashboard Web- based, written in JSP Advisor Monitoring Event based Alerts Advice/Corrective Actions Repository holds historical performance data for analysis Repository Holds historical MySQL and OS data, Query Statistics Master-Slave Replication Tuesday, 21 September 2010
    • MySQL Enterprise Monitor Dashboard Tuesday, 21 September 2010
    • MySQL Query Analyzer • Centralised monitoring of Queries across all servers • No reliance on Slow Query Logs, SHOW PROCESSLIST;, vmstat, etc. • Aggregated view of query execution counts, time, and rows • Saves time parsing atomic executions for total query expense Tuesday, 21 September 2010
    • Monitoring Queries with MySQL Enterprise Proxy Server MySQL Database Application Server 3306 (SQL statements & result sets)‫‏‬ 2. Proxy Server 6446 & MySQL Agent ** (MySQL, OS monitoring data, SQL performance data: statements, examples, EXPLAINs, aggregated stats)‫‏‬ 18080 1. MySQL Enterprise Monitor (Service Manager, Dashboard) List of components to download & configure: 1. MySQL Enterprise Monitor & Query Analyzer ** MySQL Proxy is optionally deployed and 2. MySQL Proxy & Agent configured as a plugin with the MySQL Agent Tuesday, 21 September 2010
    • Monitoring Queries with Connector/J, .NET Application Server MySQL Database (SQL statements & result sets)‫‏‬ 3. Connector/J, NET 3306 4. Plugin for Connector/J, NET 2. MySQL Agent (SQL performance data: statements, examples, EXPLAINs, aggregated stats)‫‏‬ (MySQL & OS monitoring data)‫‏‬ 18080 1. MySQL Enterprise Monitor (Service Manager, Dashboard)‫‏‬ List of components to download & configure: 1. MySQL Enterprise Monitor & Query Analyzer 2. MySQL Agent 3. Connector/J v5.1 or newer/ Connector/NET v6.2 or newer 4. MySQL Enterprise Plugin for Connector/J, NET Tuesday, 21 September 2010
    • MySQL Query Analyzer Tuesday, 21 September 2010
    • MySQL for Online Applications Tuesday, 21 September 2010
    • Vertical vs Horizontal Scalability Vertical Scale-Up Horizontal Scale-Out • Expensive SMP hardware • Commodity Intel / AMD • Closed source software • Open source software • Platform lock-in • Platform freedom • “Fork Lift” to increase capacity • Add commodity servers to increase capacity Tuesday, 21 September 2010
    • Read-intensive Application Scalability Replication Applications Master Slaves Replication Tuesday, 21 September 2010
    • Read-intensive Application Scalability Application Servers Read Write Relay Servers Slave Servers Tuesday, 21 September 2010
    • Write-intensive Applications Scalability Handle multiple connections for: > Authentication –Low Persistency > Session Management – Baskets and temporary selections > Logging/Click Stream – Queues, such as orders, > Management and documents that change status etc. Administration – Short Messages > Application Data > Separate low persistency and –High Persistency high persistency data – Catalogues – Wish Lists – Recommendations – Forums, Messages, Posts, Comments etc. Tuesday, 21 September 2010
    • Sharding Application Servers Read Write 0 1 2 3 4 Master Servers 0 4 1 3 2 Slave Servers Tuesday, 21 September 2010
    • Front End Database Infrastructure Tuesday, 21 September 2010
    • Front End Database Infrastructure Authorization & Profile NDB UID/PWD/Security Account Settings Personalization Tuesday, 21 September 2010
    • Front End Database Infrastructure Session Management Authorization & Profile NDB NDB Session Basket/Trolley/Cart Current Configuration Tuesday, 21 September 2010
    • Front End Database Infrastructure Transactional Application Data Session Management InnoDB Authorization & Profile NDB NDB Orders, Invoices Wish Lists Forum Posts Messages Tuesday, 21 September 2010
    • Front End Database Infrastructure Transactional Application Data Session Management InnoDB Non-Transactional Data Authorization & Profile NDB MyISAM NDB Catalogues Recommendations Reviews Comments Tuesday, 21 September 2010
    • Front End Database Infrastructure Transactional Application Data Session Management InnoDB Non-Transactional Data Authorization & Profile NDB MyISAM Logging NDB Archive Click Stream Users’ Activity Tuesday, 21 September 2010
    • Front End Database Infrastructure Transactional Application Data Session Management InnoDB Non-Transactional Data Authorization & Profile NDB MyISAM Logging NDB Archive Generic, Distributed Caching Tuesday, 21 September 2010
    • When It Makes Sense to Use MySQL Tuesday, 21 September 2010
    • Assuming you know Oracle DB... • Clients • 99% of the operating and development environments have a MySQL connector, a MySQL module or plug-in • Security • No external authentication at the moment • Connections • MySQL handles connect/disconnect easily • Permanent connections are great but not required Tuesday, 21 September 2010
    • Assuming you know Oracle DB... • Data Definition Language (DDL) • Standard SQL is available • Online ALTERs are not available in the standard MySQL server • MySQL Replication is often used to manage changes and scheduled downtime • Basic Operations (standard DML) • Standard SQL is available • High performance with multiple INSERTs and REPLACE • “Hints” are “Rules” • USE INDEX • FORCE INDEX • IGNORE INDEX Tuesday, 21 September 2010
    • Assuming you know Oracle DB... • Stored Procedures and Routines • Basic language, used primarily to avoid network hops • UDFs are more efficient • Referential Integrity • Available with InnoDB • Do you always need it? • Storage Engines • Multiple options • Select the best engine for the job Tuesday, 21 September 2010
    • Assuming you know Oracle DB... • High Availability • Multiple options depending on complexity, required HA and budget • Mixed technologies • Disaster Recovery and Geographical Replication • MySQL Replication is the recommended solution • Extended Features • Usually they are not the primary reason to choose MySQL • “Basic” XML, Text, Spatial features • Are they good enough for you? Tuesday, 21 September 2010
    • Myths • No Referential Integrity • Lack of Performance • Lack of Scalability • Lack of High Availability Tuesday, 21 September 2010
    • Reality • Basic SQL features • Limited Procedural Language • Limited extensions • “Standard” indexing • BTree and Hash • No RAC-like architecture Tuesday, 21 September 2010
    • You should use MySQL for... • Online Applications • The “M” in the LAMP stack • The most common database on the Internet • The most used and default backend for online environments, solutions and frameworks • Data Marts • Easy and quick to install. • Create - Use - Remove • High performance data load and queries • Compatibility with Open Source and Commercial BI and Reporting Tools • Embedded Database • Lightweight with small footprint • Wide range of utilization • Simple to bundle or to deeply embed Tuesday, 21 September 2010
    • You should not use MySQL for... • ERP Solutions • No certification or compatibility • Missing extended features • Not scalable for a typical SMP environment • Data Warehouse and Business Intelligence Solutions • The optimizer works fine on relatively simple queries • Subquery optimization... well, it’s not optimal :( • Missing some of the advanced indexing and partitioning features • Missing parallel queries Tuesday, 21 September 2010
    • Oracle 11g and MySQL Integration Tuesday, 21 September 2010
    • Integration Aspects • Application Integration • Information and services exchanging • Information and services sharing • Systems Integration • Systems co-location and co-existence • Systems Administration • Systems Monitoring • Data Integration • Batch Data Transfer and Exchange • Real Time Data Replication • Real Time Data Sharing Tuesday, 21 September 2010
    • Application Integration • Information Exchange • Messaging systems • Internal component in C/C++, Perl/PhP/Python, Java & .NET • Integration through caching distributed systems • Memcache is the standard distributed caching mechanism in the online world, also useful for information exchange • Memcache is available on almost all the client environments and as plug-in as database functions Tuesday, 21 September 2010
    • Application Integration • Information Exchange • Messaging systems • Internal component in C/C++, Perl/PhP/Python, Java & .NET • Integration through caching distributed systems • Memcache is the standard distributed caching mechanism in the online world, also useful for information exchange mysql> select memc_set( '2', 'BCD'); +-----------------------+ | memc_set( '2', 'BCD') is available on almost all the client environments and • Memcache | | as plug-in as database functions +-----------------------+ 0 | +-----------------------+ 1 row in set (0.00 sec) mysql> select memc_get( '1' ); +-----------------+ | memc_get( '1' ) | +-----------------+ | ABC | mysql> select memc_set( md5('MYSQLselect * from t1 limit 10'),'...'); +-----------------+ ... 1 row in set (0.00 sec) mysql> select memc_get( md5('ORACLEselect * from t1 limit 10'))G ... Tuesday, 21 September 2010
    • Distributed Caching Memcached Cluster Tuesday, 21 September 2010
    • Systems Integration • Instances co-location • File Exchange • Text, Fixed length, CSV, XML • Oracle Commitment • Oracle Enterprise Manager (CY 2011) • Oracle Audit Vault (CY 2011) • Oracle Secure Backup (CY 2011) • Pythian MySQL Management Plug-in for OEM • http://www.pythian.com/documents/pythian-mysql-plug-in-datasheet.pdf Tuesday, 21 September 2010
    • Data Integration Batch Transfer • Oracle Data Integrator • SQL*PLUS/SQL*LOADER - mysqldump/mysqlimport • CSV files/tables access • Informatica Products Suite Tuesday, 21 September 2010
    • Data Integration Real Time Replication Oracle GoldenGate 11g • Real Time (CDC - Change Data Capture) Oracle ➜ MySQL • ETL - Extraction Transformation & Loading MySQL ➜ Oracle Oracle ↔ MySQL • Platforms: • Linux, Windows, Solaris Tuesday, 21 September 2010
    • Data Integration Real Time Replication HIT Software DBMoto 7 • Real Time (CDC - Change Data Capture) Oracle ➜ MySQL MySQL ➜ Oracle Oracle ↔ MySQL • Refresh, Mirroring and Synchronization • Based on Oracle and MySQL Logs • Windows Only http://www.hitsw.com/products_services/dbmoto/DBMoto_Factsheet.pdf Tuesday, 21 September 2010
    • Data Integration Real Time Data Connection • Fast, Real Time, Difficult to scale • Oracle Heterogenous Services • MySQL User Defined Functions • Set of MySQL Functions executable at instance level to access an Oracle DB • Memcached Sharing • Application Level • Database Level • Memcached Access from the DB / DB Functions & Triggers Tuesday, 21 September 2010
    • 64 Tuesday, 21 September 2010
    • 65 Tuesday, 21 September 2010