MySQL variants and alternatives

1. Branches and variants of MySQL

There are several MySQL variants, mainly three tried and tested mainstream variants: Percona Server, MariaDB and Drizzle. Both have active user communities and some commercial support, and are supported by independent service providers. At the same time, there are several excellent open source relational databases, which are worth knowing about.

1.1.Drizzle

Drizzle is a true fork of MySQL, and a fully open source product, not just a variant or enhanced version. It is not compatible with MySQL and cannot simply replace the MySQL backend with Drizzle.

Drizzle is very different from MySQL, with some breaking changes, even the SQL syntax has changed quite a lot, one of the design goals is to provide an elegant solution to high availability problems. In terms of implementation, Drizzle removed some underperforming and unnecessary functions, rewritten a lot of code, optimized them, and even changed the language from C to C++.

In addition, another design goal of Drizzle is to adapt well to multi-core servers with large amounts of content, 64-bit machines running Linux, servers used in cloud computing, servers hosting websites and servers receiving tens of thousands of hits per minute And significantly reduce server costs.

1.2.MariaDB

After Sun acquired MySQL, Monty Widenius, the creator of MySQL, left Sun because he did not agree with the MySQL development process. He founded Monty Programs and founded MariaDB. The goal of MariaDB is community development, bug fixes and many new features. In fact, MariaDB can be regarded as an extension set of MySQL, which not only provides all the functions provided by MySQL, but also provides other functions. MariaDB is a superset of the original MySQL, so existing systems can run without any modification.

MariaDB is used by companies or websites such as Google, Facebook, and Wikipedia. But Monty's is not for-profit, it's product-driven, which can be problematic because a non-profitable company doesn't necessarily last long.

1.3.Percona Server

Released by the leading MySQL consulting company Percona, Percona's slogan is "The Database Performance Experts", the founder of Percona is also the author of the book "High Performance MySQL".

Percona Server is a backwards-compatible replacement for MySQL that changes as little as possible the SQL syntax, client/server protocol, and on-disk file format. Anything that runs on MySQL can run on Percona Server without modification. Switching to Percona Server only needs to close MySQL and start PerconaServer, without exporting and re-importing data.

Percona Server has three main goals: Transparency, adding methods that allow users to more closely view the internal information and behavior of the server. For example, the detailed information in the slow query log is particularly increased; performance, Percona Server contains many improvements in performance and scalability, and also enhances the predictability and stability of performance. The main focus is on InnoDB; operational flexibility, Percona Server makes it easy for operators and system administrators to make MySQL run reliably and stably as part of the architecture.

Generally speaking, many features in Percona Server will appear in later standard MySQL.

The domestic company Ali runs thousands of instances of Percona Server internally.

2.MySQL alternative

2.1.Postgre SQL

PostgreSQL claims to be the most advanced open source database in the world, and it is also a full-stack database with multiple expertise. Originally developed at the University of California, Berkeley in 1985.

The stability of PostgreSQL is extremely strong, and the correctness of data can still be guaranteed in disaster scenarios such as crashes and power outages; under high concurrent reading and writing, and loads approaching the limit, PostgreSQL's performance indicators can still maintain hyperbolic or even logarithmic curves. After reaching the peak, it will no longer decline, and the performance is very stable, while MySQL obviously has a peak and then declines;

PostgreSQL has been in an advantageous position in the field of GIS (geographic information) for many years, because it has a wealth of geometric types, in fact more than geometric types, PostgreSQL has a large number of data types such as dictionaries, arrays, and bitmaps, compared to mysql, which is much worse. So in general, PostgreSQL is more academic, and PostgreSQL is a better choice when reliability and data integrity are absolutely required. But in terms of commercial support, documentation, ease of use, and third-party support, MySQL is undoubtedly better.

2.2.SQLite

SQLite is the most widely deployed database engine in the world, the first choice for databases under the Internet of Things (IoT), and the first choice under mobile phones, PDAs, and even MP3 players. SQLite has a small code footprint and requires no database administrator maintenance. SQLite does not have a separate server process, and the transactions provided are basically ACID compliant. Of course, simplicity also means limited functionality and performance.

Guess you like

Origin blog.csdn.net/m0_70299172/article/details/130517207