MySQL is an open-source relational database system that works on many Operating Systems, including Windows, Linux, macOS, and FreeBSD. It is probably the most popular OpenSource RDBMS and a central component of the LAMP and LEMP Stacks.
In MySQL Cluster 8.0.20 we added one more query type that can be pushed
down to NDB data nodes. These queries are outer join queries and semi-join
queries using the FirstMatch strategy.
These queries can be pushed if conditions can be pushed on those parts of
the query that involve the outer join using a concept in the MySQL Server
called join nests.
Pushed queries means that the join execution is pushed down to the NDB
data nodes. This means that the rows to process for the second table in
the join is sent directly from the LDM threads to the join processor
that will start the select on the second table. The join can contain
up to 32 tables. Many filters can be pushed as well. It is also possible
to push parts of a join query. We are actively working on supporting
more and more query variants …
[Read more]CPU spinning is something that has been around in NDB for a long time. This CPU
spinning has been static which means that each time a thread wakes up it will spin
waiting for incoming signals. Thus if spin time is set to e.g. 500 microsecond we will
spin 5% of the time even when there is no activity since each thread wakes up each
10 ms to perform timer based activities.
In the new spinning approach we wanted to achieve the following.
- Power efficient CPU spinning
NDB Cluster data nodes can execute queries very efficiently, this leads to efficient
power usage. However CPU spinning requires careful control to ensure that one
doesn't waste power while spinning.
- No spinning unless there is something to gain from it
Static spinning will always spin independent …
[Read more]In MySQL Cluster 8.0.20 we made it possible to write to disk data columns
at considerably higher write rates than before. In MySQL Cluster 7.6 we
introduced adaptive checkpointing of in-memory rows to ensure that restarts
can be faster.
In order to handle very high write rates (up to more than 1 GByte per second)
on disk data columns in NDB it is necessary to control write rates more
efficiently.
To get the most efficient use of disk bandwidth it is important to ensure that
write rates are kept fairly constant such that we constantly make use of the
disk bandwidth. If the load on the disks goes up and down too fast we will not
be able to make use of all the available bandwidth in the disks.
With modern NVMe devices found in e.g. the Oracle Cloud one can achieve 10-20
GByte …
[Read more]Schema changes are the big challenges in Galera replication. So, it is recommended to understand the schema changes operation for everyone who uses the Percona XtraDB Cluster (PXB)/Galera clusters. In this blog, I am going to explain the operation and impact of the various schema changes methods used in the PXB/Galera cluster.
- Schema changes with “wsrep_OSU_method = TOI”
- Schema changes with “wsrep_OSU_method = RSU”
- Schema changes with “ONLINE ALGORITHMS”
- Schema changes with “pt-osc”
- Schema changes with “gh-ost”
For testing:
- I have configured the 3-node Percona Xtradb Cluster (8.0.19).
- Executing read/write load using the sysbench.
mysql> select @@wsrep_cluster_address\G *************************** 1. row …[Read more]
In MySQL Cluster 8.0.20 a new feature was added that enables higher write rates
in NDB Cluster. In previous releases the communication between nodes in the same
node group was handled by one socket. This single socket was able to handle about
200-300 MBytes of write traffic between the replicas inside one node group. Thus
in clusters with many node groups the write rates can be much higher.
For most applications this doesn't represent any problem at all. However there are
certain applications that require wast amount of writes.
One such application is when NDB is used to store file data. File writes can easily
go beyond 200-300 MBytes per second. Another application is when NDB is used to
store data from measurements, stock data or other applications that require millions of
writes per second.
…
MySQL 8.0 Performance Benchmarking on Amazon EC2 The scope of performance benchmarking
The core objective of this benchmarking exercise is to measure MySQL 8.0 performance, This include INSERTs , SELECTs and complex transaction processing (both INSERTs and SELECTs) without any tuning of MySQL 8 instance’s my.cnf. We agree tuning my.cnf will greatly improve performance but in this activity we wanted to benchmark MySQL 8 transaction processing capabilities and technically in MinervaDB we measure performance by Response Time and believe you can build high performance MySQL applications by writing optimal SQL. We have used Sysbench (https://github.com/MinervaDB/MinervaDB-Sysbench release 1.0.20) for this benchmarking activity. This is not a paid / sponsored benchmarking effort by any of the software or hardware vendors, We will remain …
[Read more]MySQL 8.0 has been with us already for quite some time and many MySQL users have already upgraded to this version. For those who are still using older MySQL versions, we would like to present this blog where we will share some tips and information that help in the upgrade process for MySQL 8.0.
Mind Your Version
Software versions are quite important in the upgrade process. For starters, only one major version difference is supported. You have to be running MySQL 5.7 before you can upgrade to MySQL 8.0. This is quite important to keep …
[Read more]Watch our MySQL Database Service racing car compete in Forza Horizon 4, the racing car video game developed by Playground Games and published by Microsoft Studios.
Special thanks go to Shumber Rivera from Mazatlan in Mexico. Shumber is a MySQL fan and an avid car racer on Forza Horizon 4. So, when he approached us with his idea of reproducing our real McLaren MySQL Database Service racing car for a video game racing car, we immediately thought that it was a cool idea.
Shumber made it happen. He is now racing the Oracle MySQL Database Service car and is our official driver on FH4….as long as he wins of course.
By the way, we really like how he kicks the competition to get ahead. That’s the spirit!
Go Shumber! Go MySQL Database Service!
Watch our MySQL Database Service racing car compete in Forza Horizon 4, the racing car video game developed by Playground Games and published by Microsoft Studios. Special thanks go to Shumber Rivera from Mazatlan in Mexico. Shumber is a MySQL fan and an avid car racer on Forza Horizon 4. So, when h...