Создает каталог данных с метаданными для указанной таблицы ClickHouse. Эти метаданные можно использовать для создания таблицы ClickHouse на другом сервере с набором данных в режиме только для чтения на основе диска web.
Не используйте этот инструмент для миграции данных. Вместо этого используйте команды BACKUP и RESTORE.
Использование
$ clickhouse static-files-disk-uploader [args]Команды
| Команда | Описание |
|---|---|
-h, --help |
Выводит справочную информацию |
--metadata-path [path] |
Путь к метаданным указанной таблицы |
--test-mode |
Включает режим test, в котором на указанный URL отправляется PUT-запрос с метаданными таблицы |
--link |
Создаёт символические ссылки вместо копирования файлов в выходной каталог |
--url [url] |
URL веб-сервера для режима test |
--output-dir [dir] |
Каталог, в который выводятся файлы в режиме non-test |
Получение пути к метаданным для указанной таблицы
При использовании clickhouse-static-files-disk-uploader необходимо получить путь к метаданным нужной таблицы.
- Выполните следующий запрос, указав целевую таблицу и базу данных:
SELECT data_paths
FROM system.tables
WHERE name = 'mytable' AND database = 'default';- В результате должен вернуться путь к каталогу данных указанной таблицы:
┌─data_paths────────────────────────────────────────────┐
│ ['./store/bcc/bccc1cfd-d43d-43cf-a5b6-1cda8178f1ee/'] │
└───────────────────────────────────────────────────────┘Вывод каталога метаданных таблицы в локальную файловую систему
Указав целевой каталог вывода output и путь к метаданным, выполните следующую команду:
$ clickhouse static-files-disk-uploader --output-dir output --metadata-path ./store/bcc/bccc1cfd-d43d-43cf-a5b6-1cda8178f1ee/Если всё прошло успешно, вы увидите следующее сообщение, а в каталоге output будут содержаться метаданные указанной таблицы:
Data path: "/Users/john/store/bcc/bccc1cfd-d43d-43cf-a5b6-1cda8178f1ee", destination path: "output"Вывод каталога метаданных таблицы на внешний URL
Этот шаг аналогичен выводу каталога данных в локальную файловую систему, но с добавлением флага --test-mode. Вместо указания выходного каталога нужно указать целевой URL с помощью флага --url.
Когда включен режим test, каталог метаданных таблицы отправляется на указанный URL через PUT-запрос.
$ clickhouse static-files-disk-uploader --test-mode --url http://nginx:80/test1 --metadata-path ./store/bcc/bccc1cfd-d43d-43cf-a5b6-1cda8178f1ee/Использование каталога метаданных таблицы для создания таблицы ClickHouse
Получив каталог метаданных таблицы, вы можете использовать его для создания таблицы ClickHouse на другом сервере.
См. этот репозиторий на GitHub с демонстрационным примером. В этом примере мы создаем таблицу с использованием диска web, что позволяет подключить таблицу к набору данных на другом сервере.