В этом документе приведена подробная информация о параметрах MatrixGate.
Примечание! Параметры в данном разделе — это те, что находятся в конфигурационном файле, сгенерированном до запуска mxgate.
| Имя параметра | Значение по умолчанию | Описание |
|---|---|---|
| Категория [database] | ||
| --db-database | postgres | Имя базы данных YMatrix, к которой подключается MatrixGate |
| --db-master-host | Локальное имя хоста | Имя хоста YMatrix, к которому подключается MatrixGate |
| --db-master-port | 5432 | Номер порта хоста YMatrix, к которому подключается MatrixGate |
| --db-user | Текущее имя пользователя системы | Имя пользователя YMatrix для подключения MatrixGate Примечание! У пользователя должны быть права на создание внешних таблиц. Если используется не суперпользователь, выполните следующую команду для предоставления прав: alter user {username} CREATEEXTTABLE; |
| --db-password | Пусто | Пароль пользователя YMatrix для подключения MatrixGate |
| --db-max-conn | 10 | Максимальное количество соединений MatrixGate с YMatrix |
| Категория [job] | ||
| --allow-dynamic | false | При указании --allow-dynamic=true разрешает динамическое определение целевой таблицы для вставки на основе содержимого POST-данных (первая строка). Этот параметр следует использовать только тогда, когда имя целевой таблицы еще неизвестно при запуске MatrixGate. Если вы хотите вставить данные в известную целевую таблицу, рекомендуется явно указать имя таблицы с помощью --target |
| --delimiter | | | Определяет символ, используемый для разделения столбцов в каждой строке (строке) файла |
| --error-handling | accurate | Способ обработки строк с ошибками формата'accurate':Некорректные данные не записываются в базу данных, и регистрируется ошибка. Другие данные в этой пачке не затрагиваются.'legacy':Вся пачка считается неудачной. |
| --exclude-columns | Пусто | По умолчанию порядок и количество столбцов при загрузке данных должны соответствовать определению таблицы. Когда загружаемые данные содержат только часть столбцов, --exclude-columns используется для указания имен исключаемых столбцов. Порядок оставшихся столбцов должен соответствовать определению таблицы. Примечание: если включен --use-auto-increment для пропуска автоинкрементных полей, перечислять эти поля здесь не нужно. Этот параметр должен указывать только другие столбцы, которые необходимо исключить. |
| --format | text | Указывает формат исходных данных как text или csv. Формат text самый быстрый, но не поддерживает переносы строк в текстовых типах. Формат csv более универсален, столбцы текстового типа должны быть заключены в двойные кавычки |
| --null-as | пустая строка | Определяет строку, представляющую значение NULL. Значение по умолчанию — пустая строка без кавычек. Если ограничение столбца в таблице NOT NULL, а данные для этого столбца имеют значение null, возникнет ошибка загрузки. Примечание: если требуется использовать \N как значение NULL, необходимо экранировать обратный слэш, например: --null-as \N |
| --time-format | unix-second | Определяет единицу измерения временной метки: unix-second \| unix-ms\|unix-nano \| raw. По умолчанию MatrixGate интерпретирует первый столбец каждой строки как временную метку в формате Unix и автоматически преобразует её в формат времени базы данных. Если временная метка находится не в первом столбце или пользователь уже преобразовал её в формат базы данных, используйте raw, чтобы MatrixGate не выполнял преобразование времени. |
| --upsert-key | пусто | Ключ для операции UPSERT, может быть указан несколько раз.Таблицы, требующие UPSERT, должны иметь установленные UNIQUE ограничения, и все ключи ограничений должны быть указаны в параметрах. |
| --deduplicate-key | Пусто | Аналогично UPSERT, отличие в том, что обновляются только пустые значения. Если старое значение не пустое, новое значение отбрасывается.Параметр взаимоисключающий с --upsert-key; можно выбрать только один из них |
| --use-auto-increment | true | При наличии в целевой таблице автоинкрементного поля указывает, следует ли пропускать присвоение значений этому полю при загрузке данных и использовать системное значение автоинкремента |
| --target | schemaName.tableName | Указывает имя целевой таблицы. Имя схемы можно опустить, по умолчанию используется public. Несколько целевых таблиц можно указать в формате «--target table1 --target table2 …». Если этот параметр не задан, можно дополнительно указать --allow-dynamic для динамического определения имени таблицы |
| --dml-template | Путь к файлу шаблона сопоставления, который сопоставляет поля JSON с колонками кортежа | |
| Категория [misc] | ||
| --log-archive-hours | 72 | Файлы журналов MatrixGate в каталоге журнала, которые не изменялись в течение определённого времени, автоматически сжимаются |
| --log-compress | true | Глобальный переключатель для включения автоматического сжатия логов |
| --log-dir | /home/mxadmin/gpAdminLogs | Каталог журналов |
| --log-max-archive-files | 0 | Максимальное количество сжатых файлов журналов для хранения. При превышении этого числа самые старые файлы будут удалены. 0 означает отсутствие удаления |
| --log-remove-after-days | 0 | Количество дней, после которых сжатые файлы журналов автоматически удаляются. 0 означает отсутствие удаления |
| --log-rotate-size-mb | 100 | Когда текущий файл журнала превышает определённый размер, он автоматически заменяется новым, а старый немедленно сжимается |
| -v / --verbose | Вывод подробных информационных журналов | |
| -V / --debug | Вывод подробных журналов отладки (включая информационные и отладочные журналы) | |
| --pprof-port | Порт для доступа к информации Pprof. 0 означает отключение |
|
| --no-cleanup | Сохранять временные режимы даже при нормальном завершении работы | |
| --grpc-port | Порт для доступа к gRPC-информации; 0 означает отключение |
|
| Категория [metrics] | ||
| --metrics-enable | true | Включить сбор метрик |
| --metrics-sample-interval | 15 (с версии v5.3.2, ранее было 3) | Интервал выборки метрик (в секундах). Установите значение >0, чтобы включить сбор метрик (может снижать производительность) |
| Категория [source] | ||
| --source | http | Источник данных MatrixGate, поддерживает http / stdin / kafka / transfer / grpc |
| Категория [source] | [HTTP] | Примечание: Этот режим является режимом подключения источника данных по умолчанию в конфигурационном файле |
| --http-port | 8086 | HTTP-интерфейс MatrixGate для отправки пользовательских данных |
| --max-body-bytes | 4194304 | Максимальный размер тела каждого HTTP-пакета |
| --max-concurrency | 40000 | Максимальное количество одновременных HTTP-соединений |
| --request-timeout | 0 | Таймаут запроса, по умолчанию 0. При установке значения больше 0 произойдёт таймаут после ожидания указанного времени в миллисекундах и возвратится timeout(408) |
| --disable-keep-alive | false | MatrixGate принудительно закрывает соединение после каждого HTTP-запроса |
| --http-debug | false | Вывод дополнительной диагностической информации источника HTTP |
| Категория [source] | [Transfer] | Примечание: Режим миграции не является режимом по умолчанию. Если вы хотите использовать этот режим, настройте параметры в этом разделе вручную. |
| --src-host | IP-адрес мастера исходного репозитория | |
| --src-port | Порт мастера исходной базы данных | |
| --src-user | Имя пользователя для подключения к исходной базе данных (рекомендуется использовать Superuser) |
|
| --src-password | Пароль подключения | |
| --src-schema | Имя схемы исходной таблицы | |
| --src-table | Имя исходной таблицы | |
| --src-sql | SQL-запрос для фильтрации данных во время миграции | |
| --compress | Метод сжатия при передаче данных с сегмента исходной базы данных в эту базу: Пустая строка «», означает отсутствие сжатия и передачу в открытом виде. gzip: Для использования сжатия gzip команда gzip Linux должна быть установлена на хосте сегмента исходной базы данных.lz4: Для использования сжатия lz4 команда lz4 Linux должна быть установлена на хосте сегмента исходной базы данных.Рекомендуется: lz4 > gzip > Без сжатия |
|
| --port-base | 9129 | Во время передачи будет занят один порт |
| --local-ip | Необходимо использовать IP-адрес, к которому может подключиться исходный репозиторий с локальной машины | |
| Категория [transform] | ||
| --transform | plain | Преобразование формата или типа записываемых данных. Поддерживает plain / json / nil / tsbs / hanagdbc |
| Категория [writer] | ||
| --interval | 100 миллисекунд | Цикл пакетной загрузки данных MatrixGate |
| --writer | stream | MatrixGate записывает данные в YMatrix через Writer. Поддерживает stream / nil |
--stream-prepared |
10 | Вызов нескольких процессов slot одновременно в одной задаче |
| --stream-host | mdw | Имя хоста мастера YMatrix, к которому подключается MatrixGate. Предназначено для систем с несколькими сетевыми интерфейсами |
| --use-gzip | auto | При отправке данных в Segment можно настроить использование сжатия с помощью параметров auto/yes/no:auto — предпочтительно использовать алгоритм сжатия zstd;Установка --use-gzip=yes означает использование алгоритма сжатия gzip.Установка --use-gzip=no отключит сжатие при передаче. Хотя это сэкономит небольшое количество CPU, значительно увеличит объём передаваемых сетевых данных. Мы рекомендуем использовать значение по умолчанию auto, за исключением случаев, когда база данных развернута на одном компьютере, и mxgate, и база данных находятся на одном хосте. |
| --max-seg-conn | 128 | Количество сегментов, запускаемых при получении данных из MatrixGate внешней таблицей. Увеличение этого параметра повышает потребление сетевых ресурсов. |
| --timing | false | После установки этого параметра в true MatrixGate будет добавлять информацию о времени в каждый INSERT при записи в журнал. |
| --insert-timeout | 600000 | Таймаут оператора INSERT MatrixGate.Установка значения больше 0 вызовет таймаут после ожидания указанного времени в миллисекундах. |
| -I / --instrumentation | disable | Включить детектирование slot(s), поддерживает варианты disable / single / all:disable означает отключение этой функции;single означает включение детектирования только для slot[0].all означает включение детектирования для всех слотов |
--bytes-limit |
Ограничение размера пакетной загрузки данных. Обеспечивает равномерное потребление данных при неравномерном потоке данных в MatrixGate. Эта функция отключена по умолчанию. Если включена, размер должен быть задан вручную, значения в диапазоне 0~INT_MAX |
|
--auto-tune |
false | После установки этого параметра в true MatrixGate может регулировать количество слотов для задач записи. |
--abort-by-pause-timeout |
10000 | После приостановки задачи, если достигнуто указанное время ожидания в этом параметре, данные, накопленные в памяти и готовые к записи в базу данных, будут автоматически отброшены. Допустимый диапазон этого параметра — 0~INT_MAX; рекомендуемый диапазон — 1000~10000, единица измерения — миллисекунды (мс); если установлено значение 0, эта функция отключается. Рекомендуется настраивать это значение значительно ниже, чем --request-timeout, чтобы гарантировать, что когда задача не приостановлена, для таймаута используется --request-timeout. Как только задача приостановлена, mxgate автоматически сравнивает два вышеуказанных параметра таймаута и вызывает ошибку таймаута по меньшему значению. Этот параметр настраивается только при условии writer=“stream” |
Примечание!
Параметры в этом разделе можно запускать в командной строке после запуска mxgate.
Примечание!
Обзор основных функций MatrixGate см. в разделе Основные функции MatrixGate.