RemoteCopy
Операция RemoteCopy копирует таблицы одного кластера на другой. Джобы операции Remote Copy запускаются на кластере назначения и копируют чанки с исходного кластера (pull схема). Данная операция копирует чанки в исходном виде, не разжимая их и не меняя erasure
схему. В случае, если входная таблица одна и является сортированной, то выходная таблица тоже будет отсортирована.
Общие параметры для всех типов операций описаны в разделе Настройки операций.
У операции RemoteCopy поддерживаются следующие дополнительные параметры (в скобках указаны значения по умолчанию, если заданы):
cluster_name
— имя кластера, с которого необходимо скопировать данные. Описание доступных кластеров доступно в узле//sys/clusters
;network_name
— имя сети в терминах YTsaurus, которую необходимо использовать при копировании. На всех узлах удаленного кластера указанная сеть должна быть сконфигурирована. Например:fastbone
илиbackbone
;networks
— набор сетей в порядке приоритета, которые будут использоваться для копирования данных; важно: не указывайте эту и предыдущую опцию без согласования с администратором системы;input_table_paths
— список таблиц, которые необходимо скопировать;output_table_path
— имя таблицы, в которую необходимо скопировать данные;schema_inference_mode
(auto) — режим определения схемы. Доступные значения: auto, from_input, from_output. Подробности в разделе Схема данных;cluster_connection
— конфигурация для подключения к кластеру источнику. Настраивается администратором системы YTsaurus при настройке кластера;copy_attributes
(false) — копировать атрибуты входной таблицы. Доступно только в случае, когда входная таблица одна). Копируются только пользовательские атрибуты (не системные);attribute_keys
— при указании данной опции и включении опцииcopy_attributes
будут копироваться только атрибуты из приведенного списка.
Важно: на production кластерах действует специальное ограничение и remote copy операции можно запускать только в пулах, у которых в одном из предков стоит ограничение на количество одновременно запущенных джобов (то есть указан атрибут resource_limits
со значением user_slots
не выше определенного порога).
Пример спецификации
{
pool = "my_cool_pool";
network_name = "fastbone";
input_table_paths = [ "//tmp/input_table" ];
output_table_paths = "//tmp/output_table";
copy_attributes = %true;
}