MySQL vs ClickHouse
When comparing MySQL vs ClickHouse, the Slant community recommends MySQL for most people. In the question“What are the best analytics databases? ” MySQL is ranked 2nd while ClickHouse is ranked 3rd. The most important reason people chose MySQL is:
MySQL is made to handle a lot of data and to be used in large applications. This makes it extremely scalable and fast, even under a lot of workload.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Scalable
MySQL is made to handle a lot of data and to be used in large applications. This makes it extremely scalable and fast, even under a lot of workload.
Pro Multiple third-party tools that help working with MySQL
Since MySQL is one of the most popular relational databases, maybe the most popular, there exist many third-party tools and applications that help developers to use MySQL in their development.
Pro Easy to start working with
Because of it's popularity there are a lot of tutorials and guides out there that help developers install and work with MySQL. The installation process itself is not very hard and there are multiple powerful GUI tools that make it extremely easy to work with MySQL for a beginner.
Pro SQL support
Pro Detailed documentation
Pro Vectorized query execution
Pro True column-oriented storage
Pro Fault-tolerant
ClickHouse supports multi-master asynchronous replication and can be deployed across multiple datacenters. Downtime of a single node or the whole datacenter won't affect the system's availability for both reads and writes.
Pro Linearly-scalable
ClickHouse scales well both vertically and horizontally. ClickHouse is easily adaptable to perform either on cluster with hundreds of nodes, or on a single server or even on a tiny virtual machine.
Pro Blazing-fast
ClickHouse uses all available hardware to its full potential to process each query as fast as possible. It processes hundreds of millions to more than a billion rows and tens of gigabytes of data per single server per second.
Cons
Con Error messages usually are not very detailed
When you are trying to do something in MySQL and something goes wrong it will simply give you an error message with an error code. Which does not say much about what went wrong unless you look it up online. This can be a little cumbersome during development.
