Many things in the MySQL 8.0 Series has evolved. I’ve discussed many of those things in prior blogs such as items like the MySQL-Router w/InnoDB Cluster, plus a Series on Enterprise Backup with InnoDB Cluster Backup & Restore Use Cases. But now its time to update everyone on the evolution of the Yum Repo packaging in MySQL 8.0.18!… Read More »
In an earlier post, I discussed the Shared Responsibility Model in the cloud and how it relates to databases. With either IaaS or DBaaS deployments, much of the operational and security burden is shifted away from the DBA to the cloud provider. I also noted that regardless of the deployment method, there is always a need for a DBA. In both cloud deployment models, notice the top user responsibility: customer data.
Let’s review the major tasks of a DBA in the cloud and how that role differs between and IaaS and DBaaS deployment.
DBA Responsibility in the Cloud Application/Database
With the burden of hardware, OS, and physical security in the cloud, the focus is shifted to the application data and performance. From the application perspective, here are the top areas of focus: …
[Read more]As the world’s most popular open-source database, MySQL has been around the block more than a few times. Traditionally installed in on-premise data centers, recent years have shown a major trend for MySQL in the cloud, and near the top of this list is Amazon RDS.
Amazon RDS allows you to deploy scalable MySQL servers within minutes in a cost-efficient manner with easily resizable hardware capacity. This frees you up to focus on application development and leaves many of the traditional database administration tasks such as backups, patching, and monitoring in the hands of AWS.
In this post I’d like to go over six important benefits of Amazon RDS, and why a move into RDS may be the right move for you.
Easy Deployment
Amazon RDS allows you to use either the AWS Management Console or a set of APIs to create, delete, and modify your database instances. You have full control of access and security …
[Read more]When we think about the cloud, often we consider many of the benefits: scalability, elasticity, agility, and flexible pricing. As great as these features are, security also remains a business-critical concern. In an on-premise environment, every aspect of security is owned by you. Looking at the database layer specifically, these include (but are not limited to):
- Data encryption
- Database access control
- Network security
- OS security (both host and guest if in VM environment)
- Physical security
When done properly, that entails a significant amount of work and generally cost. In the cloud, those aspects are all still relevant and necessary for proper security. However, under the shared responsibility model, some of that work is offloaded from you and shifted to the cloud provider. Let’s look at what that model entails and how it is realized …
[Read more]In a MySQL 5.7 master-slave setup that uses the default semisynchronous replication setting for rpl_semi_sync_master_wait_point, a crash of the master and failover to the slave is considered to be lossless. However, when the crashed master comes back, you may find that it has transactions that are not present in the current master (which was previously a slave). This behavior may be puzzling, given that semisynchronous replication is supposed to be lossless, but this is actually an expected behavior in MySQL. Why exactly this happens is explained in full detail in the …
[Read more]Geo-scale MySQL – or how to build a global, multi-region MySQL cloud back-end capable of serving several hundred million player accounts
This blog introduces a series of blogs we’ll be publishing over the next few months that discuss a number of different customer use cases that our solutions support and that centre around achieving continuous MySQL operations with commercial-grade high availability (HA), geographically redundant disaster recovery (DR) and global scaling.
This first use case looks at a customer of ours who are a global gaming company with several hundred million world-wide player accounts.
What is the challenge?
How to reliably, and fast, cater to hundreds of millions of game players around the world? The challenge here is to serve a game application for a geographically-distributed audience; in other words, a pretty unique challenge.
It requires fast, local response times …
[Read more]Making backups over the network can be done in two ways: either save on disk and transfer or just transfer without saving. Both ways have their strong and weak points. The second way, particularly, is highly dependent on the upload speed, which would either reduce or increase the backup time. Other factors that influence it are chunk size and the number of upload threads.
Percona XtraBackup 2.4.14 has gained S3 streaming, which is the capability to upload backups directly to s3-compatible storage without saving locally first. This feature was developed because we wanted to improve the upload speeds of backups in Percona Operator for XtraDB Cluster.
There are many implementations of S3 Compatible Storage: …
[Read more]By having appropriate indexes on your MySQL tables, you can greatly enhance the performance of SELECT queries. But, did you know that adding indexes to your tables in itself is an expensive operation, and may take a long time to complete depending on the size of your tables? During this time, you are also likely to experience a degraded performance of queries as your system resources are busy in index-creation work as well. In this blog post, we discuss an approach to optimize the MySQL index creation process in such a way that your regular workload is not impacted.
MySQL Rolling Index Creation
We call this approach a ‘Rolling Index Creation’ - if you have a MySQL master-slave replica set, you can create the index one node at a time in a rolling fashion. You should create the index only on the slave nodes so the master’s …
[Read more]
Recently I was doing some small testing by using EC2 instances on
AWS and I noticed the execution time and performance highly
depend on which time of the day I am running my scripts. I was
using t3.xlarge
instance type as I didn’t need many
CPUs and memory for my tests, but from time to time I planned to
use all the resources for a short time (few minutes), and this is
when I noticed the difference.
First, let’s see what AWS says about T3
instances:
T3 instances start in Unlimited mode by default, giving users the ability to sustain high CPU performance over any desired time frame while keeping cost as low as possible.
In theory, I should not have any issues or performance differences. I have also monitored the CPU credit balance and there was no correlation between the balance and the performance at all, and because these were unlimited instances the balance should not have any impact.
…[Read more]AWS is the #1 cloud provider for open-source database hosting, and the go-to cloud for MySQL deployments. As organizations continue to migrate to the cloud, it’s important to get in front of performance issues, such as high latency, low throughput, and replication lag with higher distances between your users and cloud infrastructure. While many AWS users default to their managed database solution, Amazon RDS, there are alternatives available that can improve your MySQL performance on AWS through advanced customization options and unlimited EC2 instance type support. ScaleGrid offers a compelling alternative to hosting MySQL on AWS that offers better performance, more control, and no cloud vendor lock-in and the same price as Amazon RDS. In this post, we compare the performance of MySQL Amazon RDS …
[Read more]