Showing entries 1 to 10 of 1278
10 Older Entries »
Displaying posts with tag: Open Source (reset)
ProxySQL Query Rules: Notes From Production

After spending four years working with ProxySQL in production, I’ve learned a few interesting lessons about interpreting and processing query rules. I hope to save you some time (and avoid wrong turns) with this summary of ProxySQL query rules.

ProxySQL query engine is very powerful and supports the building of complex rule sets. These can be used to route traffic to backend MySQL instances, rewrite queries, and for traffic mirroring, among other use cases.

When the rule set is short and simple, you can easily understand what the outcome for a certain query would be. However, for complex sets or combined scenarios, you need a deeper understanding of the engine logic.

Note 1: Rules are processed in rule_id order

It might seem like a trivial start, but during testing or implementation, …

[Read more]
ProxySQL Binary Search Solution for Rules

We sometimes receive challenging requests… this is a story about one of those times.

The customer has implemented a sharding solution and would like us to review alternatives or improvements. We analyzed the possibility of using ProxySQL as it looked to be a simple implementation. However, as we had 200 shards we had to implement 200 rules — the first shard didn’t have much overload, but the latest one had to go through 200 rules and took longer.

My first idea was to use FLAGIN and FLAGOUT creating a B-Tree, but the performance was the same. Reviewing the code, I realized that the rules were implemented as a list, which means that, in the end, all the rules were going to be processed until hit with the right one and FLAGIN is used just to filter out.

At that point, I asked, what could I do? Is it possible to implement it differently? What is the performance impact?

One Problem, Two Solutions

I …

[Read more]
Adding Your RDS Fleet to PMM2 Using the API

PMM (Percona Monitoring and Management) is a great community tool for monitoring your OSDB (MySQL, PostgreSQL, MongoDB) fleet. It’s feature rich, and it’s built and distributed as open-source based on several de-facto industry standard tools such as Grafana and Prometheus. In the second half of last year, major version 2 was released and whereas the major components remained mostly the same, some significant architectural changes were made, but this is out-of-scope for this post.

Upgrading to PMM2 is basically the same as starting from scratch with a fresh install; it requires re-adding all your servers, which can be a painful process if you have a large fleet of instances. For servers where you have OS level access, you can just install the PMM2 agent, but for RDS there is no access to the OS so another approach is required. In this blog, I will focus on getting a large number of RDS instances added.

Adding RDS instances …

[Read more]
Integrating MySQL tools with Systemd Service

In my day to day tasks as a DB Engineer at Mydbops we have been using multiple MySQL tools for multiple use cases to ensure an optimal performance and availability for servers managed by our Remote DBA Team.

A tool like pt-online-schema can be used for any DDL changes ( Overview to DDL algorithm ), if any tool which needs to scheduled for longer period we tend to use screen or cron.

Some of the problems we face when we demonise the process or use screen for running processes.

  • The daemon process gets killed when the server reboot happens. …
[Read more]
A Simple MySQL Plugin to Retrieve System Metrics

Ever wanted to extend MySQL and add some feature you think it is missing?  With MySQL plugins, you can do exactly that.  One thing that has bothered me for several years is that you cannot easily retrieve system metrics from within MySQL.  Whether I am connecting via a remote connection or looking to add features to monitoring without the need for another interface with the server, I have wanted to retrieve system metrics without leaving the MySQL interface.

So, I started a Proof of Concept for this.  My goal was to get metrics such as RAM (total, used, free), system load, CPU utilization, disk utilization for the file system containing the datadir, and more.  My objective was to do this as efficiently within MySQL as possible.  For this, I chose to utilize standard C libraries in as few lines of code as possible without having to scrape system files or run commands to get the data.  The …

[Read more]
The WARP storage engine beta: columnar storage for MySQL 8 with automatic bitmap indexing

Oracle MySQL is in need of a columnar storage engine for analytics workloads.  A columnar engine (or column store) stores data vertically, that is, it stores all the data associated with a column together, instead of the traditional RDBMS storage method of storing entire rows together, either in a index organized manner, like InnoDB, or in a heap, like MyISAM.  

Columnar storage has the benefit of reducing IO when only a subset of the row is accessed in a query, because only the data for the accessed rows must be read from disk (or cache) instead of having to read entire rows.  Most columnar stores do not support indexes, but WARP does.

WARP is open source

You can find the WARP source code release on GitHub.  Binaries can be provided upon request.  Simply open an issue for your desired Linux distribution, and I will make them available as soon as I can.

[Read more]
Webinar July 9 – Modern Solutions for Modern Database Load: MySQL 8.0 and Percona

Join Sveta Smirnova, MySQL Engineer at Percona, as she discusses modern solutions for modern database loads.

MySQL is famous for working well in high performing environments. This is the reason why it is the most popular backend for web applications. But our view of what to call high-performance changes over the cycles. Every year we get faster data transfer speed; more devices, connected to the Internet; more users and, as a result, more data.

The challenges MySQL developers have to solve are getting harder over time.

In this session, Sveta will show how use-case scenarios are changing over 25 years of MySQL history. She will show what did MySQL engineers do to keep the product up to date and cover topics such as handling a large number of active connections and high volumes of data as well as how the latest MySQL versions handle increased load better.

After attending this …

[Read more]
Webinar July 30: Database Challenges – Open Source Vs. Open Core

Join Peter Zaitsev, CEO at Percona, as he discusses database challenges and the concepts of open source and open core. Over the years, open source companies have tried to bring products to market and maximize their revenue streams.  To date, the most popular open source business model remains “Open Core”.  But is open core software still open source?  Or is it a freemium model designed to separate you from your money?  Not all companies follow the same processes, ethics, and rules when building and launching open source products.  Let’s talk about how the open core bait and switch works for many companies in the open source space.

Join this webinar to learn more about:

– Open Source and Open core distinction
– Free enterprise-class community versions alternatives
– Use-cases that successfully moved away from vendor lock-in

Please join Peter …

[Read more]
MySQL Training and Education Is Here for You!

Percona Training Is Here for You!

Percona’s Training and Education Department wants you! For the past three years, Percona has quietly been delivering world-class training all over the globe, to companies large and small. We are in full force and ready to spread our knowledge directly to your organization to make your staff the absolute best they can become.

As you probably know, Percona has been one of the top leaders in the open source database space for over ten years. Our experts are exactly that: experts. Our MySQL and open source database training programs leverage the cumulative knowledge and best practices gained from our years of experience working on real-world issues and solving problems for our customers. When you enroll in our courses, we transfer our knowledge and experience to you and your team.

Why Should My Company Invest in Training?

[Read more]
Webinar 5/11: Percona & PlanetScale Present: Introduction to Vitess on Kubernetes for MySQL

During this joint webinar our speakers, Alkin Tezuysal, Technical Expert at Percona and Sugu Sougoumarane, Co-Founder and CTO at PlanetScale, will provide attendees with hands-on experience using Vitess using Kubernetes. They will start by providing a quick overview of Vitess – including key concepts and terminology, and then describe the deployment options for both in Kubernetes.

The hands-on exercises will cover many of the key workflows with running a sharded system:

– Moving from an unsharded system to a vertical split one (moving some tables to a different host)
– Sharding large tables across several instances
– Backups, Recoveries, and failovers (both planned and unplanned).

Attendees are not expected to have any prior experience with Vitess but will find it useful if they have prior experience completing these tasks in a MySQL environment and general know-how …

[Read more]
Showing entries 1 to 10 of 1278
10 Older Entries »