Closed
Description
Hi guys,
At first congratulations for this amazing project 👍
As I can see on backup project : https://github.com/AlexAkulov/clickhouse-backup it don't support default database engine Atomic.
So, my question: What is the concret difference between Atomic and Ordinary database ? I can see a really different way to organize data on disk and don't find more informations about this on documentation.
It's for performance ? For specifics features ? An Ordinary database can be converted later on Atomic database when Backup support it ?
Before put my project on production I need to decide :
- launch with Atomic and start backup when the project support it
- launch with Ordinary database, Backup and convert database to Atomic later...
Thanks you !
Activity
den-crane commentedon Dec 8, 2020
In short:
Atomic:
non-blocking drop table / rename table
tables delete (&detach) async (wait for selects finish but invisible for new selects)
atomic drop table (all files / folders removed)
atomic table swap (table swap by "EXCHANGE TABLES t1 AND t2;")
rename dictionary / rename database
unique automatic UUID paths in FS and ZK for Replicated
Steuf commentedon Dec 8, 2020
Ok I see, thanks. It's more flexible for some actions on cluster.
Last question, it's possible to convert a Ordinary database to Atomic ? If not it will ne possible later ?
den-crane commentedon Dec 8, 2020
AFAIK you already can move tables to atomic database using rename table. But later will be implemented a special method to convert database;
Steuf commentedon Dec 8, 2020
Ho nice ! Thanks.
So in this case I can start the project with Ordinary and migrate later when backup will support it.
Thank you it's clear.
techkuz commentedon May 12, 2023
@den-crane is ALTER TABLE non-blocking in Atomic engine?
alexey-milovidov commentedon May 12, 2023
Yes, ALTER TABLE is non-blocking in Atomic databases, while in Ordinary databases it blocks DROP and RENAME queries.