Community journal

The latest from the MySQL community

Ideas, releases, practical guides, and perspectives from the people building with MySQL.

Follow the feed
Showing entries 1381 to 1390 of 5700 « Previous | Next »
Searching For: gp update (reset)
Sharding with ProxySQL

Recently a colleague of mine ask me to provide a simple example on how ProxySQL can perform sharding.
ProxySQL is a very powerful platform that allow us to manipulate and manage our connections and query in a simple but effective way.
In this article I will show you how.

{autotoc enabled=yes}

 

Before starting is better to clarify some basic concepts.

ProxySQL organize its internal set of servers in Host Groups (HG), each HG can be associate to users and to Query Rules (QR).

Each QR can be final (apply = 1) or can let ProxySQL continue to parse other QR.

A QR can be a rewrite action, or can be a simple match, it can have a specific target HG, or be generic, finally QR are defined using regex.

You can see QR as a sequence of filters and transformation that you can arrange as you like.

 

These simple basic rules give us enormous flexibility, …

[Read more]
Sharding with ProxySQL

Recently a colleague of mine ask me to provide a simple example on how ProxySQL can perform sharding.
ProxySQL is a very powerful platform that allow us to manipulate and manage our connections and query in a simple but effective way.
In this article I will show you how.

{autotoc enabled=yes}

 

Before starting is better to clarify some basic concepts.

ProxySQL organize its internal set of servers in Host Groups (HG), each HG can be associate to users and to Query Rules (QR).

Each QR can be final (apply = 1) or can let ProxySQL continue to parse other QR.

A QR can be a rewrite action, or can be a simple match, it can have a specific target HG, or be generic, finally QR are defined using regex.

You can see QR as a sequence of filters and transformation that you can arrange as you like.

 

These simple basic rules give us enormous flexibility, …

[Read more]
Top Most Overlooked MySQL Performance Optimizations: Q & A

Thank you for attending my 22nd July 2016 webinar titled “Top Most Overlooked MySQL Performance Optimizations“. In this blog, I will provide answers to the Q & A for that webinar.

For hardware, which disk raid level do you suggest? Is raid5 suggested performance-wise and data-integrity-wise?
RAID 5 comes with high overhead, as each write turns into a sequence of four physical I/O operations, two reads and two writes. We know that RAID 5s have some write penalty, and it could affect the performance on spindle disks. In most cases, we advise using alternative RAID levels. Use RAID 5 when disk capacity is more important than performance (e.g., archive databases that …

[Read more]
SQLyog MySQL GUI 12.2.5 Released

With SQLyog MySQL GUI 12.2.5, JSON comes to SQLyog. This is a new and major thing.  Also, Foreign Key management with NDB tables was added and the user- filter was improved in the User Manager. Additionally, some non-critical GUI bugs were fixed.

Changes as compared to MySQL GUI 12.2.4 include:

Features:

* Added basic support for the JSON datatype as of MySQL 5.7.8+ and MySQL Cluster 7.5.2+. The datatype is now available in the CREATE/ALTER TABLE dialog and JSON data will open in the BLOB-viewer. In the BLOB-viewer we have added validation that content is valid JSON. Also JSON-related keywords and functions are recognized in syntax highlighting and autocomplete. Also please see note at the bottom.
* SQLyog GUI now supports Foreign Key constraints between NDB tables for MySQL Cluster 7.3+.
* It is now possible to filter the users based on a string in the …

[Read more]
SQLyog MySQL GUI 12.2.5 Released

With SQLyog MySQL GUI 12.2.5, JSON comes to SQLyog. This is a new and major thing.  Also, Foreign Key management with NDB tables was added and the user- filter was improved in the User Manager. Additionally, some non-critical GUI bugs were fixed.

Changes as compared to MySQL GUI 12.2.4 include:

Features:

* Added basic support for the JSON datatype as of MySQL 5.7.8+ and MySQL Cluster 7.5.2+. The datatype is now available in the CREATE/ALTER TABLE dialog and JSON data will open in the BLOB-viewer. In the BLOB-viewer we have added validation that content is valid JSON. Also JSON-related keywords and functions are recognized in syntax highlighting and autocomplete. Also please see note at the bottom.
* SQLyog GUI now supports Foreign Key constraints between NDB tables for MySQL Cluster 7.3+.
* It is now possible to filter the users based on a string in the …

[Read more]
MySQL Document Store: unstructured data, unstructured search

Storing documents is convenient: no need to define a schema up-front, no downtime for schema changes, no normalization, no slow joins – true or not, you name it. But what about search if you do not know how your data is structured? For example, the famous SFW-construct requires listing the columns to search: SELECT … FROM … WHERE some_column = ‘Jippie’ . Given that JSON data can have no schema how to write a query without knowing any field names, where is SELECT … FROM … WHERE * = ‘Jippie’? JSON_SEARCH() gets you started but there are gaps if you think about it for a minute.

There are many reasons why you may not know the structure of the data you operate on. Maybe, you have gathered documents using different “schema versions” over time, maybe, there is simply no common structure because the data comes from …

[Read more]
Context aware MySQL pools via HAProxy

At GitHub we use MySQL as our main datastore. While repository data lies in git, metadata is stored in MySQL. This includes Issues, Pull Requests, Comments etc. We also auth against MySQL via a custom git proxy (babeld). To be able to serve under the high load GitHub operates at, we use MySQL replication to scale out read load.

We have different clusters to provide with different types of services, but the single-writer-multiple-readers design applies to them all. Depending on growth of traffic, on application demand, on operational tasks or other constraints, we take replicas in or out of our pools. Depending on workloads some replicas may lag more than others.

Displaying up-to-date data is important. We have tooling that helps us ensure we keep replication lag at a minimum, and typically it doesn’t exceed 1 …

[Read more]
Context aware MySQL pools via HAProxy

At GitHub we use MySQL as our main datastore. While repository data lies in git, metadata is stored in MySQL. This includes Issues, Pull Requests, Comments etc. We also auth against MySQL via a custom git proxy (babeld). To be able to serve under the high load GitHub operates at, we use MySQL replication to scale out read load.

We have different clusters to provide with different types of services, but the single-writer-multiple-readers design applies to them all. Depending on growth of traffic, on application demand, on operational tasks or other constraints, we take replicas in or out of our pools. Depending on workloads some replicas may lag more than others.

Displaying up-to-date data is important. We have tooling that helps us ensure we keep replication lag at a minimum, and typically it doesn’t exceed 1 …

[Read more]
Percona XtraDB Cluster 5.7.12 RC1 is now available

Percona announces the first release candidate (RC1) in the Percona XtraDB Cluster 5.7 series on August 9, 2016. Binaries are available from the downloads area or our software repositories.

Percona XtraDB Cluster 5.7.12-5rc1-26.16 is based on the following:

[Read more]
Why Uber migrated its databases from Postgres to MySQL?

Uber has been in the news for numerous reasons in the past few days. Be it expansion to new countries or selling its China operations to Didi chuxing, Uber is growing exponentially and expanding into newer markets. Recently, Uber also announced a major change – Changing their databases from Postgres to MySQL. While enterprises are constantly checking and trying to find the right fit for their databases, it takes immense research and analysis to decide on THE one.

Each enterprise has their own requirements and it is imperative for the company to decide on the database that suits their needs. This is exactly what Uber did. Uber recently shared a …

[Read more]