A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and...

19
A Guide for SaaS Vendors: Gaining Competitive Advantage with MySQL A MySQL ® White Paper

Transcript of A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and...

Page 1: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

A Guide for SaaS Vendors: Gaining Competitive Advantage with MySQL

A MySQL® White Paper

Page 2: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

Copyright © 2016 Oracle and/or its affiliates. All rights reserved

2

Table of Contents

SaaS is Big, and Challenging ........................................................................................3 SaaS is Big ................................................................................................................................... 3 Passing (on) the Biggest Challenge ............................................................................................... 4

Vendor Experience and Reliability ..............................................................................4 “What’s your track record?” ........................................................................................................ 5 “Will your database keep improving? Will it be around in 5, 10 years?” ....................................... 5 “Do you have the expertise and coverage to resolve my issues -- fast? ......................................... 5

Data Security ..............................................................................................................6 “What security and privacy protections does the database have?” .............................................. 7

Availability..................................................................................................................8 “In case of failure, will my SaaS (and customers) go down? .......................................................... 8

Data Protection ..........................................................................................................9 “In case of a failure, will I lose my customers’ data?” ................................................................... 9

Performance and Scalability ..................................................................................... 11 “Can your database keep up with my customers’ needs?” ......................................................... 11

Manageability ........................................................................................................... 13 “How much time and resources will I have to spend on your database?” ................................... 13

Flexibility .................................................................................................................. 15 “Will your database limit my options?” ..................................................................................... 15

Low Cost ................................................................................................................... 17 “How will your database impact my costs?” .............................................................................. 17

Why MySQL? ............................................................................................................ 18 “Why should I use your database for my SaaS?” ........................................................................ 18

MySQL Resources ..................................................................................................... 19

Page 3: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

Copyright © 2016 Oracle and/or its affiliates. All rights reserved

3

SaaS is Big, and Challenging

Photo Credit: Paul Kitchener

SaaS is Big SaaS was $49 bn in 2014 and is forecast to more than double within 5 years to $113

bn in 2019, with a CAGR of 18.3%.

SaaS is growing over ten times faster than traditional on-premise software.

Nearly 19% of the overall applications market was SaaS in 2014; By 2019, SaaS will be 29% of the application market.

23 of the top 25 ISVs are also among the top 100 SaaS vendors.

Salesforce.com, a SaaS pure-play, is one of the 10 largest software vendors. Source: IDC 20151

It’s clear that software vendors have recognized both the market opportunity in SaaS and its threat to on-premise-only software businesses. Established players offer an increasing percentage of their software as a service while new SaaS vendors multiply, many successfully reordering existing hierarchies. Ready or not, software vendors are engaged in a high-stakes battle with both old and completely new rivals.

How do existing vendors defend, and how do newcomers break-in, and compete to win and retain customers? Though new in relative terms, SaaS is like any market: the way to win and retain customers depends on customers’ criteria. Though industry experts offer lists with SaaS criteria that vary in number and name,

there’s general consensus around the following categories2 3 4: Vendor Experience and Reliability

Data and Service Level Protections

Performance and Scalability

1 IDC “Worldwide SaaS and Cloud Software 2015 – 2019 Forecast and 2014 Vendor Shares”, August 2015

2 Forrester “SaaS Vendor Evaluation: Criteria To Track For Business Outcomes”, January 2015

3 Gartner “‘How to Evaluate a Vendor's Commitment to the Cloud and SaaS”, 2013

4 SAManage, “Smart Questions for Your SaaS Vendor”, 2014

Page 4: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

Copyright © 2016 Oracle and/or its affiliates. All rights reserved

4

Manageability, Flexibility

Cost-effectiveness

Passing (on) the Biggest Challenge A benefit to customers, and burden for SaaS vendors, is that these criteria are applied to the software service. The service includes not only applications, but also software and hardware platforms, IT services and operations, security, databases, and more, which are well outside the software vendors core competencies. Nonetheless, customers hold SaaS vendors accountable for all of these elements, usually with lengthy service level agreements (SLAs).

SaaS vendors can best meet these challenges by passing them on and applying the same criteria and accountability metrics when assessing the other elements of their service. This is particularly important for SaaS databases because, just like any application, a SaaS service can really only perform as well as its database. Customers’ experience of SaaS performance, reliability availability, costs, support, security, and more depend to a very large extent on its database.

This paper uses a Q&A format to examine how MySQL Enterprise performs against these common SaaS criteria, with the goal of addressing the question of, “Why should I use your database for my SaaS?” See if using MySQL in your SaaS environment would make you more competitive, or if you might be at a disadvantaged without it. Even if you rely on third-party IaaS, PaaS or DBaaS solutions as your SaaS platform, this guide will be of interest. Often, the SLAs and support services these cloud platform vendors provide are less stringent and comprehensive than those you’re contractually obligated to provide your customers. You may also find you lack the tools and advanced features you need meet your SLAs. MySQL Enterprise Edition and Support can be used on any IaaS or Paas platform, and even many DBaaS platforms to provide the assurances your customers want.

Vendor Experience and Reliability

Page 5: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

Copyright © 2016 Oracle and/or its affiliates. All rights reserved

5

“What’s your track record?” Even if you’re a newcomer to SaaS and the Cloud, MySQL isn’t. MySQL is the number one open source database in the Cloud, and the database of choice for leading SaaS vendors such as AppDynamics, Box, DropBox, Intuit, Oracle, Workday, Zendesk, and many more. Top IaaS and PaaS vendors such as Amazon, Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture. MySQL’s Cloud popularity is a natural extension of its long established position as the leading open source database for the Web. The same qualities that have made MySQL an outstanding Web database – performance, scalability, reliability, ease of use, flexibility, and cost-efficiency are also critical attributes for a Cloud database. Facebook (and its 1.5 billion active users), Twitter, YouTube, LinkedIn, Baidu.com, Yahoo!, EBay, and many thousands of other Web properties all rely on MySQL. In addition, Oracle is one of the world’s leading Cloud and SaaS vendors, and it is the largest database vendor in the world. Oracle holds 46.2% of the RDBMS market, equal to its next 6 closest competitors combined 5. According to DB Engines ranking, Oracle Database and MySQL are the #1 and #2 most popular databases in the world.6

“Will your database keep improving? Will it be around in 5, 10 years?”

Oracle is among the largest companies in the world and it has been continuously investing in MySQL since its acquisition of Sun Microsystems (and with it, MySQL) in 2010. MySQL’s Engineering and Support teams have grown by 200%, and its QA team by 300%. Oracle MySQL releases have been widely acknowledged as the best in MySQL’s history. And each new Oracle MySQL release has been better than the one before, with even greater scope and scale of improvements. As evident in the MySQL 5.7 release, Oracle has MySQL on a path of accelerating improvement, with no sign of slowing.

“Do you have the expertise and coverage to resolve my issues -- fast? A “down” or slow database will be experienced by SaaS customers as a down or slow SaaS application. Repeated tries for a fix don’t equate to a real solution. Relying on Oracle MySQL Support, vendors have access to The Largest Team of MySQL support experts, with the deepest expertise across all MySQL technologies. Oracle MySQL Support is Premier, the highest level available.

Wherever, whenever you need help, you’re covered: 24x7x365, with support in 29 languages. If you’ve got a complex knot of a problem, MySQL Support Engineers will get back-line help from the engineers who develop the underlying technology. You will always have access to the most up to date technologies, security patches and fixes. If you would like expert, personalized advice on, for example, performance tuning, or developing for highest security, or replication setup, use MySQL Consultative Support --– it’s included.

5 IDC, “Worldwide RDBMS 2014 Vendor Analysis: Top 10 Vendor License Revenue”, December 2015.

6 http://db-engines.com/en/ranking

Page 6: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

Copyright © 2016 Oracle and/or its affiliates. All rights reserved

6

According to MySQL Customers, Oracle MySQL Support is “excellent”. After every MySQL Support Service engagement, customers are provided an Oracle Technical Support Satisfaction Survey:

Over 95% of respondents are Satisfied

Over 90% are Highly Satisfied

9 of 10 consider their service request Fully Resolved

8 of 10 nominate their assigned support engineer for Exceptional Service

MySQL Support provide assurance and expert assistance that save SaaS vendors’ and customers’ time,

money, and reputations, and help ensure SLAs will be met.

Data Security

Photo Credit: David Goehring

“IDC research shows that, by far, the greatest inhibitors to SaaS adoption are

security/privacy concerns and availability concerns.”7

47% of companies and government agencies have been breached in last two years.” 8

50% of all American adults have been hacked in the past 12 months.9

7 IDC “Worldwide SaaS and Cloud Software 2015 – 2019 Forecast and 2014 Vendor Shares”, August 2015

8 http://internetidentity.com/press-release/survey-finds-47-of-companies-and-government-agencies-have-

been-breached-in-last-two-years/ 9 http://money.cnn.com/2014/05/28/technology/security/hack-data-breach/

Page 7: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

Copyright © 2016 Oracle and/or its affiliates. All rights reserved

7

“What security and privacy protections does the database have?” Nothing eliminates a SaaS vendor from consideration like a security or privacy breach, or inability to comply with a required security or privacy regulation. SaaS database security is critical because SaaS cannot be secure unless its database is. MySQL’s security and privacy features help keep you and your customers protected and in compliance with common security regulations like HiPAA, Sarbanes-Oxley (SOX), PCI-DSS, FISMA, and more.

User Authentication MySQL Enterprise Authentication integrates easily with your, or your customers’, existing centralized user account management (LDAP) systems, whether Linux (using Pluggable Authentication Modules or PAM), or Windows (Active Directory). Users’ existing SSO credentials, role and group-based privileges, and more will work seamlessly with MySQL. Users can be centrally and quickly provisioned and de-provisioned, a big time saver as compared with creating a script for each one. MySQL Enterprise Authentication also provides password management including identifying weak passwords and managing password expiration, thereby eliminating one of the biggest time-drains for administrators. By leveraging your existing infrastructure, you and your customers save costs, and the hassle of maintaining a separate, and inherently less secure system.

Data Encryption Data Encryption is a common requirement for the handling of many types of data. MySQL Enterprise Encryption provides industry standard functionality for asymmetric encryption (Public Key Cryptography), key generation, digital signatures and many other features designed to keep data safe -- even MySQL Binlog, Redo Log, and MySQL Enterprise Backup data. It interoperates with other cryptographic systems and appliances without any change to existing applications. And, DBAs can handle MySQL’s encrypted data, which protects against unnecessary exposure. MySQL Enterprise Encryption helps protect your customers’ sensitive data from both external and internal risk.

Firewall SaaS vendors often hold their many different customers data in separate VMs running on shared hardware. For your customers, placing their data, their most-valuable-asset, in the Cloud on shared resources can be troubling. MySQL Enterprise Firewall can help quell their fears. It adds a layer of protection, including in front of VMs, by blocking any query that is not on a “whitelist” of authorized queries. You can quickly and easily create the whitelist by setting MySQL Enterprise Firewall to “record”, and sending it all authorized queries. It doesn’t require any changes to your application, and, because it runs within each MySQL instance, won’t affect MySQL performance. All queries, whether blocked or allowed, are logged for reporting / forensic analysis. MySQL Enterprise Firewall also prevents “SQL Injection Attacks” that exploit vulnerabilities in SQL code. It can be used with MySQL Enterprise Monitor to provide real-time alerts in case of unauthorized queries. In addition, it integrates with Oracle Database Firewall.

Audit A record of who, did what, to which piece of data is necessary for forensic analysis after a breach. With MySQL Enterprise Audit, vulnerabilities can be identified and fixed, exposed or stolen data can be identified, and intruders – whether malicious or benign, can be identified and stopped. MySQL Enterprise Audit is an easy to use policy-based system that tracks and records log-ons and log-offs, each time data is accessed or changed, any changes to database schema, and much more. With it with, you and your customers can comply with regular or ad hoc audit reporting requests, and avoid high penalties for non-compliance. It integrates with MySQL Enterprise Monitor to provide real-time alerts in case of any unauthorized or suspicious activity, and also with Oracle Audit Vault.

Page 8: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

Copyright © 2016 Oracle and/or its affiliates. All rights reserved

8

Availability

Photo Credit: David Lofink

“In case of failure, will my SaaS (and customers) go down?

Humans make errors, natural disasters strike, hardware and software fail. Your customers’ concern is

whether a failure will cause their critical application or data to be unavailable. A “down” SaaS application or

database results in lost productivity at best; lost revenue and reputation, and the imposition of fines at

worst. It’s no surprise that availability is the most common SLA metric. MySQL and MySQL Cluster include

HA capabilities that can help vendors meet SLAs – up to 99.999%, avoid penalties, and minimize costs.

Fail-Over with MySQL Replication Replication is MySQL’s most commonly deployed solution for high availability (as well as performance and

scalability), relied on by EBay, Facebook, Twitter and literally millions more. MySQL Replication enables

database operations to manually fail-over to another mirrored server (slave) if the Master fails. In addition,

MySQL Replication utilities can automate failure detection and operations fail-over.

Better Fail-over with Replication GTIDs, and more MySQL 5.6 added support for GTIDs (Global Transaction Identifiers), unique ids for each transaction that can

be used across a replication topology. They make failover simpler and more reliable even when a slave is

out of sync, or the master hasn’t completed all writes. Other replication enhancements include support for

Semi-sync Replication, Dynamic Reconfiguration Support, and more.

Automated HA with MySQL Fabric and Router MySQL Fabric is an extensible framework for sharding-based scale-out and HA. It transparently promotes a

slave to master if the master fails in a replication group, and MySQL Router (or Fabric-aware connectors)

direct writes to the new master, and load-balance reads across the slaves. All steps are automated and no

changes to the application are required.

MySQL Group, “Multi-Master” Replication MySQL Group Replication is a MySQL plugin based on MySQL 5.7.10 that brings multi-master updates

everywhere, creating a seamlessly distributed and replicated database over a set of MySQL servers that

cooperate to keep the replicated state strongly consistent. It’s available from MySQL Labs before its 1.0 GA.

Page 9: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

Copyright © 2016 Oracle and/or its affiliates. All rights reserved

9

Five 9s with MySQL Cluster MySQL is a shared-nothing, distributed database with no single point of failure, designed to deliver up to

five 9s (99.999%) availability for the most demanding applications. It has support for multi-site clusters for

geographical replication, and the ability to add nodes to a running cluster with zero downtime. It provides

automatic data partitioning with load balancing. SQL and NoSQL APIs, allow for the use of relational and/or

NoSQL technologies in a single solution.

MySQL Cluster is relied on by many of the world’s leading telecommunications and network equipment

providers, including Alcatel-Lucent, AT&T, BT, and Ericsson as well as leading Web providers such as Paypal

and Zynga, and other organization ranging from Shopatron to the US Navy.

Data Protection

Photo Credit: Bs0u10e0

“In case of a failure, will I lose my customers’ data?”

Despite protections, errors, accidents and failures can still occur for variety of reasons. Customers often worry that one of these will cause their data to disappear (bad) forever (disastrous). MySQL’s has strong safeguards that help prevent irrevocable data loss.

MySQL is Transaction-Safe MySQL’s default InnoDB storage engine is transaction-safe and ACID-compliant. It protects your customers’ data from loss or corruption by, in effect, assuring that changes in or to data are fully completed or never started; accurate; and safe once stored. In addition, Replication Slaves and Binlogs are transaction-safe: the data and replication positioning information are both updated as part of the same transaction. Unlike NoSQL-only solutions, none of InnoDB’s ACID properties is ever “relaxed” or compromised, and neither are your customers’ data – even if you use MySQL’s memcached NoSQL access.

Page 10: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

Copyright © 2016 Oracle and/or its affiliates. All rights reserved

10

Data Backups MySQL Enterprise Backup is a sophisticated tool that performs online “hot”, non-blocking backups of MySQL databases automatically and quickly. You have the option performing Full Backups, or Incremental Backups on only the data that has changed, or Partial Backups on specific tables or tablespaces.. MySQL Enterprise Backup is 49 times faster than MySQL Dump. Important for SaaS vendors, MySQL Enterprise Back up also supports:

Direct Cloud Storage data Backups and Restorations via S3 and Swift APIs to/from Amazon S3,

Oracle Cloud Storage Cloud, and any other standard-based Cloud Strorage.

Built in 256-bit AES encryption to secure all the backup data

Backup Validation to ensure backup data integrity by confirming that internal pages are valid

and file checksums match.

Restoring Data From Backup MySQL Enterprise Backup Restores data easily and with support for:

Full or Partial Backups Point in Time Recovery (PITR), which enables you to restore data from a specific date and time. Roll-Forward Recovery to a specific transaction using MySQL backups and binlogs, Specific Table and Table Space Recovery using Partial Restores.

Backups can be used to create clones for fast MySQL Replication set up and administration, and/or used to restore a backup to a different location. Restoration from MySQL Enterprise Backup is 80 times faster than with MySQL Dump.

Data Compression MySQL Enterprise Backup can also create compressed backup files, typically reducing backup size from 70% to over 90%, which can result in dramatic storage cost savings -- of 70% to over 90%.

Page 11: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

Copyright © 2016 Oracle and/or its affiliates. All rights reserved

11

Performance and Scalability

Photo Credit: rickbucich

“Can your database keep up with my customers’ needs?” SaaS customers lose productivity and possibly revenue when things slow down. A challenge for SaaS vendors is unpredictable demand caused by users’ different fiscal cycles, busy seasons and growth rates, as well as micro- and macro-economic forces. Unpredictability’s twin challenge is keeping up cost-efficiently. Spare capacity can handle spikes in demand, but also spike up your costs.

Accelerating Performance, Horizontal and Vertical Scalability MySQL has always been known for its high performance and, under Oracle, MySQL’s performance has been accelerating:

MySQL 5.5 was 360% faster than MySQL 5.1.

MySQL 5.6 was 230% faster than MySQL 5.5.

MySQL 5.7 is 300% faster than MySQL 5.6, benchmarked at over 1.6M QPS

Relatedly, MySQL’s renowned scalability keeps getting better by similar orders of magnitude. Well-known for its ability to scale horizontally across multiple 2-CPU machines, starting with MySQL 5.6, MySQL gained vertically scalability to make full use of the new high-end, multi-core servers. MySQL 5.7 is able to scale to over 72 cores for both read-only and read-write loads.

Better Replication = Better Performance and Scalability In addition to HA, MySQL Replication enables efficient scale-out across server farms, data centers, and geographies. It gives vendors the flexibility to elastically add or remove MySQL instances to dynamically adjust capacity. In MySQL 5.6 and 5.7, MySQL Replication advanced significantly. Following are some of the improvements:

Multi-Threaded Slaves - Increase the performance of replication on the slave; different threads handle applying events to different databases.

Bin-Log Group Commit - Improves replication performance on the master.

Optimized Row-based Replication - Reduces the amount of data that needs to be replicated.

Page 12: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

Copyright © 2016 Oracle and/or its affiliates. All rights reserved

12

Table Partitioning MySQL Partitioning effectively splices data in very large tables horizontally, into smaller, logical partitions. A query is then directed the appropriate partition where it scans a much smaller data set. The result is often dramatic performance improvements. MySQL 5.7 added support for Native Partitioning for an even greater performance boost. MySQL offers multiple partitioning methods including: Range, List, Column, Hash (and Linear Hash), Key, Sub-Partitioning, and Partition Pruning.

Data-Safe Read- and Write-Scalability MySQL Fabric improves MySQL performance in much the same way as MySQL Partitioning. MySQL Fabric splits or “shards” data across multiple MySQL Servers. When an application sends new data, Fabric-aware MySQL Connectors, or MySQL Router automatically route the data to the appropriate server shard. MySQL Fabric provides high write-load scalability by enabling writes to be carried out independently on different server shards. Unlike other NoSQL solutions that provide high write- scalability through sharding, MySQL is transaction-safe and ACID compliant. Because MySQL Fabric is based on MySQL Replication, it can scale economically on low-cost hardware. Cloud Framework Integration and Server Provisioning With MySQL Fabric, you can elastically scale-out and scale-in a farm of managed MySQL Server shards using Cloud frameworks such as OpenStack. MySQL Fabric transparently secures machines from the Cloud before setting up MySQL Replication and including the new servers.

Handling Concurrent Users MySQL Thread Pool reduces the overhead of managing client connections and statement execution threads so MySQL’s high performance is consistently maintained even with thousands of concurrent users. MySQL 5.7 with threadpool was benchmarked at 500,000 QPS with 1024 concurrent users.

NoSQL Performance without Risk of Data Loss Using MySQL’s memcached plug-in provides direct access to the InnoDB storage engine without transformations to SQL (i.e., “NoSQL. The SQL layer is effectively bypassed so operations such as SQL parsing are eliminated and more of the server's hardware resources (CPU, memory and I/O) are dedicated to servicing the query within the storage engine itself). A benefit to MySQL’s Not-Only-SQL option is that MySQL remains transactional and ACID-Compliant, offering the benefit of extreme speed without the risk of data loss posed by NoSQL-only solutions. You can opt to use SQL and/or NoSQL in the same MySQL Server.

Query Performance Optimization MySQL Optimizer and Parser have undergone considerable refactoring in recent releases, using a more efficient query cost-model that, in effect, determines the cost/benefit of various query execution paths and executes the one that will result in the highest possible performance. Just a few of the additions and improvements are:

Query Re-write Plug-in

More efficient Sub-Query processing

Use of EXPLAIN to analyze and improve long-running queries

Support for Optimizer “Hints”

Real-Time Performance

MySQL Cluster’s real-time design delivers consistent millisecond response latency with the ability to service

Page 13: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

Copyright © 2016 Oracle and/or its affiliates. All rights reserved

13

over 200 million queries per second. MySQL Cluster has support for:

Auto-sharding for transparent write-scalability

In-memory and disk-based data

Automatic data partitioning with load balancing,

SQL and NoSQL APIs, which allow for the use of relational and/or NoSQL technologies in a

single solution.

Manageability

“How much time and resources will I have to spend on your database?” Ease of Use by Design Popularity Familiarity Cost-savings Ease of use has been a design goal for MySQL since its inception and it’s one of the leading reasons for MySQL’s broad adoption. You can go from software download to installation completion in under 15 minutes. Because of MySQL’s ease of use and popularity, there are few developers or DBAs who are not already familiar with MySQL. In addition, there are widely available on-line resources from MySQL and its huge, highly active user community, as well as training courses from Oracle. The abundance of MySQL skills and the relative ease with which they can be learned can significantly decrease SaaS vendors’ staffing and training costs and speed time to market. Unified Development and Administration Tool MySQL Workbench is a unified visual tool for developers, and DBAs with data modeling, SQL development, and comprehensive administration tools for server configuration, user administration, backup, and more.

- Design -Create and validate schema for new MySQL databases, and optimize existing physical

MySQL databases with reverse/forward engineering, change management functions, and

Page 14: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

Copyright © 2016 Oracle and/or its affiliates. All rights reserved

14

documentation.

- Development – Visual tools help you create, execute, and optimize SQL queries. The SQL Editor

delivers color syntax highlighting, auto-complete, reuse of SQL snippets, and execution history of SQL.

With a click, developers can see where to optimize their query with the easy to use Visual Explain

Plan.

- Administration - View key performance indicators using the Performance Dashboard. Performance Reports provide easy identification and access to IO hotspots, high cost SQL statements, and more.

Sophisticated Monitoring and Management – in the Cloud MySQL Enterprise Monitor is a monitoring and management tool that provides a single, consolidated view into the health, security, performance and availability of MySQL databases. With it, SaaS vendors can streamline and automate the management of a few to several hundred MySQL servers, improving their performance and availability. MySQL Enterprise Monitor can be used during development and in production to optimize, monitor, and troubleshoot problems. You can start monitoring MySQL within 10 minutes with zero configuration. MySQL Enterprise Monitor is Cloud and VM friendly, allowing you to remotely monitor your MySQL Servers without remote agents.

- Security Monitoring and Management - MySQL Enterprise Monitor Advisors provide a set of rules that enforce MySQL security best practices, or you can create your own to enforce specific security regulations. You are alerted to potential vulnerabilities before they impact your SLAs, or compliance with security regulations. MySQL Enterprise Monitor also includes

Access Control Lists (ACLs) – Help simplify role- and group-based management in multi-tenant cloud environments.

MySQL Enterprise Firewall Monitoring MySQL Enterprise Audit Monitoring

- Performance & Availability Monitoring and Alerts for SLA Assurance - MySQL Enterprise Monitor continuously monitors MySQL performance-related server metrics, and generates alerts when they deviate from usual ranges, or SLA thresholds.

InnoDB - Receive alerts on inefficient index usage, locking issues and InnoDB buffer pool usage. Get tips on how to improve your InnoDB configuration.

Disk Monitoring – Analyze trends to forecast future capacity requirements. Receive alerts on user-defined thresholds.

Operating System Monitoring – Monitor and set thresholds on CPU usage, RAM usage, Swap usage, Filesystem usage, and Disk IO in real time.

- Easier Replication Set-Up and Management MySQL Enterprise Monitor auto-discovers MySQL Replication topologies and gives you visibility into the performance, availability and health of all MySQL Masters and Slaves. MySQL best practice Advisors help keep your replicated servers in synch and provide advice on things like how to address as slave-lag and avoid outages. - Better Backup Management MySQL Advisors also help ensure your online backups are running as needed and provide answers to questions such as "Is the last full backup too old?”, "Are Incremental backups running?", "Was my last backup job successful?" and "Are backup locks being held too long?" - Better, Faster Queries MySQL Query Analyzer monitors real-time query performance, check execution statistics, and, using visual query analysis, it allows you to filter and pinpoint the specific SQL code that is

Page 15: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

Copyright © 2016 Oracle and/or its affiliates. All rights reserved

15

causing a slow-down. Performance Schema provides insight into low-level performance data that is gathered directly from the MySQL server, without any additional software or configuration.

Cluster Manageability MySQL Cluster Manager simplifies the creation and management of MySQL Cluster by automating common management tasks including on-line scaling, upgrades, backups, reconfiguration, and tuning.

Auto-installer lets you to get MySQL Cluster up and running in minutes. It graphically configures and provisions a production-grade cluster automatically tuned for your workload and environment.

Auto tuning - Tune MySQL Cluster automatically by simply specifying a write load of low, medium, or high combined with a usage type of Web, realtime, or test.

Automated Management - Control the entire cluster as a single entity, and gain granular control of individual processes within the cluster.

Automated Monitoring - Monitor the cluster health at both an Operating System and per-process level by automatically polling each node in the cluster.

Recovery- MySQL Cluster can self-heal from failures by automatically restarting failed Data Nodes. MySQL Cluster Manager extends this functionality by monitoring and automatically recovering SQL and Management Nodes.

Flexibility

Photo Credit: Jim Pennucci

“Will your database limit my options?” In a word, “no”. MySQL has always provided its users an array of options, and in recent years MySQL has added a capabilities more commonly found in Document / NoSQL-only databases, or in separate modules.

Document Store and RDBMS Document databases are attractive: they can accommodate a variety of data types; they’re fast and scalable; and, because they don’t require pre-defined schema, development can be easier and more agile. However, because they’re not SQL, complex and ad hoc queries are difficult; and, because their transactions aren’t fully ACID-compliant, there’s a risk of catastrophic data loss.

Page 16: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

Copyright © 2016 Oracle and/or its affiliates. All rights reserved

16

MySQL 5.7 added Native JSON Support, which means it can operate as a transaction-safe document store and/or an RDBMS. You don’t have to choose between RDBMS or Document Store, or run two different databases, or risk data loss to get document store benefits. MySQL supports a Native JSON data type that enables: Automatic Validation of JSON documents, an Optimized Storage Format and More Efficient Access.

GIS Support for Location-Based Services Oracle has hired a dedicated team of GIS (Geographic information Systems) expert who have added a highly sophisticated set of GIS capabilities to InnoD, including support for: Boost Geometry, native GEOMETRY data type, SPATIAL INDEX (using Rtree), Geohash and GeoJSON. MySQL’s GIS capabilities can be used for: location-based services - Where is XX? How do I get there? What’s of interest nearby?; Insight into and management of physical resources - for example, crops and natural resource management, real estate planning and development, and much more. With it, MySQL enables you to provide your customers richer, and “stickier” applications.

And More Options

- SQL or NoSQL – As noted earlier, with MySQL you have a choice of using either or both SQL and NoSQL

access to the same database.

- SaaS and/or On-Premise – MySQL is the #1 open source database in the Cloud and Web, and a leading

product-embedded database, relied on by 8 of the top 10 software vendors. You can use the same MySQL

database in your on-premise application or appliance and in your SaaS application. Using the same database

can save you a lot time, money, and even headcount.

- Start out and Stay with MySQL - MySQL offers the cost-efficiency and ease-of-use to meet the needs to

smaller vendors. It also offers the performance, scalability and rich features to keep up with vendors’ needs

as their customers’ and / or applications’ demands increase. By starting out and staying with MySQL you avoid

the expense, hassle, and risk of database migrations. And, there’s no need to acquire new expertise.

- MySQL’s Multi-Language Support assures you can use whatever development is best suited for your

application and development team. Multi-Platform Support means MySQL will never lock you in. Though

MySQL is best known as the “M” in LAMP, Oracle has invested heavily in MySQL’s Windows capabilities. It’s

resulted in tremendous MySQL performance gains on Window as well as rich tools and capabilities.

Page 17: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

Copyright © 2016 Oracle and/or its affiliates. All rights reserved

17

Low Cost

Photo Credit: Owen Moore

“How will your database impact my costs?” Lower cost is the leading reason users choose SaaS over on-premise apps. Your choice of SaaS database can greatly impact whether you can offer competitive prices to your customers and remain sufficiently profitable to satisfy your shareholders or VCs. An IDC study identified the five main components that contribute to a database’s costs over time, and their relative impact. They are:

Software: 15%; Hardware 17%; Training: 19%; Staffing: 27%; Downtime: 28%

As with SaaS, lower total cost is consistently identified as the number one reason why users choose MySQL. That’s in large part due to MySQL’s ability to minimize the cost of each of the five database cost components, as discussed in earlier sections of this paper, and summarized, below:

Affordable Software and Support Subscriptions (Software) - Over 90% less than Microsoft SQL

Server over a 3-year period.

Ability to Perform and Scale on Commodity Hardware (Hardware)

Ease of Use by Design - from development to admin and maintenance; Timesaving Tools;

Broad Availability of MySQL Skills and Resources. (Staffing and Training)

Up to Five Nines Availability (Downtime)

Page 18: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

Copyright © 2016 Oracle and/or its affiliates. All rights reserved

18

Why MySQL?

“Why should I use your database for my SaaS?” Because MySQL can 1) deliver the database functionality you need to deliver a high performing, compelling SaaS product, while also 2) lowering risk, and 3) lowering costs. It is unique in its ability to address each of these three fundamental, interdependent components of profitability.

– Meet Needs (Make Money) • #1, with Capabilities to Meet and Exceed Needs • Steady Product Investment and Innovation

– Lower Risk • #1 Product, Vendor Reliability • “Excellent” Support • Security, Regulatory Compliance • Service Continuity, Data Safety

– Lowers Costs • More Affordable - Subscriptions, DevOps/DBAs, Hardware and Storage • Efficiency - Ease of Development, Admin, Management, Support • Flexibility – 1 Database for Changing / Growing needs

Other databases may be strong in one area, or two, but at the expense of the other(s); for example, very low price but high risk. SaaS customers have effectively turned their IT department over to you. they want assurances that you can provide the functionality to meet their needs, cost effectively, and that you don’t pose a risk to their ability to run profitable businesses. MySQL can help provide you, and them, the assurance you need.

Page 19: A Guide for SaaS Vendors: Gaining Competitive Advantage with … · Microsoft, Google, Oracle and Rackspace all use MySQL, as well as OpenStack Trove, the open source DBaaS architecture.

Copyright © 2016 Oracle and/or its affiliates. All rights reserved

19

MySQL Resources

MySQL Enterprise Edition http://www.mysql.com/products/enterprise/ White Papers http://www.mysql.com/why-mysql/white-papers/ MySQL Customers and Case Studies http://www.mysql.com/why-mysql/case-studies/ Live Webinars http://www.mysql.com/news-and-events/web-seminars/ Webinars on Demand http://www.mysql.com/news-and-events/on-demand-webinars/ TCO Calculator http://www.mysql.com/tcosavings/ Contact MySQL Online http://www.mysql.com/about/contact/