The MySQL InnoDB Storage engine uses LRU cache but it suffers from a notorious problem. In this article, we find how by using Midpoint Insertion Strategy and changing one aspect of LRU, MySQL becomes scan resistant and super performant.
Many of our users, developers and database administrators, keep asking our team about EverSQL's indexing recommendations algorithm. So, we decided to write about it.
The first option is to use EverSQL to automatically find indexes that are best for your database.
The second option is to read our detailed tutorial below and learn more about indexing best practices.
This tutorial won't detail all the internals of the algorithm,
but rather try to lay out the basic and important aspects of
indexing, in simple terms.
Also, and most importantly, we'll present practical examples for
properly indexing your tables and queries by relying on a set of …
Queries per second (QPS) measures database throughput, but it does not reflect how hard MySQL is working. The latter is measured by Threads_running, expressed as a gauge (whereas QPS is a rate). Before discussing Threads_running, let’s consider an analogy: The image above is a digital instrument cluster from a car. The big circle on the left is the speedometer, and the big circle on the right is the tachometer. Speedometers are familiar to most: they show how fast the car is going.
Queries per second (QPS) measures database throughput, but it does not reflect how hard MySQL is working. The latter is measured by Threads_running, expressed as a gauge (whereas QPS is a rate). Before discussing Threads_running, let’s consider an analogy:
Queries per second (QPS) measures database throughput, but it does not reflect how hard MySQL is working. The latter is measured by Threads_running, expressed as a gauge (whereas QPS is a rate). Before discussing Threads_running, let’s consider an analogy:
Queries per second (QPS) measures database throughput, but it does not reflect how hard MySQL is working. The latter is measured by Threads_running, expressed as a gauge (whereas QPS is a rate). Before discussing Threads_running, let’s consider an analogy:
How to build a multi-region, multi-master MySQL cloud database back-end capable of serving a global high volume cloud contact center
This global SaaS provider is a Cloud Contact Center solution provider (the leading Salesforce telephony solution), who needed to deliver up-to-date data to clients as quickly as possible. Its cloud-based call center software frees users to make every conversation personal; it supports the creation of exceptional customer experiences that help serve better and sell more. Its technology is 100% cloud-based and device-agnostic for telephony infrastructure.
What is the Challenge?
Active/Active (multi-master) MySQL clustering is needed when there is significant update load on geographically distributed applications. These require fast response times both for updates and reads, and they also need to share data on a global scale.
- Regional distribution of data
- Deliver …
How to build a multi-region, multi-master MySQL cloud database back- end capable of serving a global, high-volume cloud contact center: this global SaaS provider is a Cloud Contact Center solution provider, who needs to deliver up-to-date data to clients as quickly as possible.
Tags: AWS Cloud Disaster Recovery Multi Master MySQL use case
Oups, my previous post had a forbidden word and did not show-up on Planet MySQL, so retry...
As written in a previous post, the state of Planet MySQL is unhealthy ! I am still aggregated there for now as, before leaving what was the best news-feed for the MySQL Community, we need a replacement. This post aims at starting a discussion on this replacement.
Update
A couple of weeks ago, one of our customers reached us asking about the WARNING messages in their MySQL error log. After a while, there were a few more requests from some other customers asking whether to worry about these messages or not. In this post, I am going to write about the condition at which this WARNING message is written into the log and will explain some of the fundamentals behind the scene.
Look at the warningmber message which appears in the MySQL error log. It says it’s difficult to find a free block in the buffer pool and searched through the pool in a loop for 336 times. This is something weird to imagine; why would it have to go in a loop so many times? Let’s try to understand this.
[Warning] InnoDB: Difficult to find free blocks in the buffer pool (336 search iterations)! 0 failed attempts to flush a page! Consider increasing the buffer pool size. It is also possible that in your Unix version …
[Read more]