Конфигурационные параметры DuckDB

Для конфигурации сервиса используйте следующие параметры, доступные в ADCM.

ПРИМЕЧАНИЕ
  • Некоторые из перечисленных параметров становятся доступны в UI ADCM после установки флага Advanced.

  • Значения, установленные в Custom-параметрах, перепишут текущие значения параметров, даже если они read-only.

General
Параметр Описание Значение по умолчанию

home_directory

Домашняя директория DuckDB

 — 

Memory and temporary storage
Параметр Описание Значение по умолчанию

allocator_background_threads

Включает фоновый поток аллокатора (allocator thread)

false

allocator_bulk_deallocation_flush_threshold

Если при массовом высвобождении памяти (bulk deallocation) объем памяти превышает данное значение, система выполняет очистку ожидающих операций освобождения памяти

512.0 MiB

allocator_flush_threshold

Порог пикового выделения памяти для очистки аллокатора после выполнения задачи

128.0 MiB

block_allocator_memory

Объем физической памяти, доступный блочному аллокатору (эта память никогда не освобождается, и ее объем нельзя уменьшить)

0 bytes

external_threads

Количество внешних потоков, выполняющих задачи DuckDB

1

max_memory

Максимальный объем памяти, выделяемый системе

12.5 GiB

max_temp_directory_size

Максимальный объем данных в temp_directory (если параметр задан)

90% of available disk space

memory_limit

Алиас для max_memory

12.5 GiB

pin_threads

Определяет, следует ли привязывать потоки к ядрам (при наличии более 64 ядер значение по умолчанию — auto)

auto

streaming_buffer_size

Максимальный объем памяти для буферизации при получении потокового результата

976.5 KiB

temp_directory

Директория для временных файлов

.tmp

threads

Общее количество потоков, используемых системой

22

worker_threads

Алиас для threads

22

write_buffer_row_group_memory_limit

Максимальный объем данных в байтах, которые помещаются в буфер в группах строк (row groups) перед совместной записью. При достижении этого ограничения или значения write_buffer_row_group_count данные записываются на диск. По умолчанию используется 20% от выделенной памяти, разделенной на количество потоков

111.3 MiB

Security and external access
Параметр Описание Значение по умолчанию

allow_persistent_secrets

Разрешает создавать персистентные секреты, сохраняемые и загружаемые при перезапусках

true

allow_unredacted_secrets

Разрешает выводить секреты без маскирования

false

allowed_configs

Список конфигурационных параметров, которые всегда разрешено изменять, даже если lock_configuration=true

 — 

allowed_directories

Список директорий и префиксов, к которым всегда разрешено обращаться, даже если enable_external_access=false

 — 

allowed_paths

Список файлов, к которым всегда разрешено обращаться, даже если enable_external_access=false

 — 

default_secret_storage

Позволяет переключать хранилище секретов по умолчанию

local_file

disabled_filesystems

Отключает указанные файловые системы, запрещая доступ к ним (например, LocalFileSystem)

 — 

http_proxy_password

Пароль для HTTP-прокси

 — 

http_proxy_username

Имя пользователя для HTTP-прокси

 — 

lock_configuration

Определяет, можно ли изменять конфигурацию

false

password

Используемый пароль. Игнорируется для обратной совместимости

 — 

secret_directory

Директория для хранения постоянных секретов

/var/lib/duckdb/stored_secrets

temp_file_encryption

Включает шифрование всех временных файлов, если соответствующая база данных зашифрована

false

user

Имя пользователя. Игнорируется для обратной совместимости

 — 

username

Имя пользователя. Игнорируется для обратной совместимости

 — 

Network and proxy
Параметр Описание Значение по умолчанию

enable_http_logging

Устаревший параметр. Включает логирование HTTP

true

enable_http_metadata_cache

Определяет, использовать ли глобальные HTTP-метаданные для кеширования метаданных HTTP

false

http_proxy

Адрес HTTP-прокси (если не указан, используется значение переменной окружения HTTP_PROXY)

 — 

Extension settings
Параметр Описание Значение по умолчанию

allow_extensions_metadata_mismatch

Разрешает загружать расширения с несовместимыми метаданными

false

allow_parser_override_extension

Разрешает расширениям переопределять текущий парсер

DEFAULT

allow_unsigned_extensions

Разрешает загружать расширения с недействительными или отсутствующими подписями

true

autoinstall_extension_repository

Переопределяет пользовательский эндпойнт установки расширений при автоматической загрузке

 — 

autoinstall_known_extensions

Разрешает автоматическую установку расширений, если они необходимы для выполнения запроса

true

autoload_known_extensions

Разрешает автоматическую загрузку расширений, если они необходимы для выполнения запроса

true

custom_extension_repository

Переопределяет пользовательский эндпойнт удаленной установки расширений

 — 

extension_directories

Директории для хранения расширений

 — 

extension_directory

Директория для хранения расширений

/usr/lib/duckdb/extensions

File formats and interoperability
Параметр Описание Значение по умолчанию

arrow_large_buffer_size

Определяет, следует ли экспортировать буферы Arrow для типов STRING, BLOB, UUID и BIT с использованием больших буферов

false

arrow_lossless_conversion

Если у типа DuckDB нет однозначного эквивалента расширения в Arrow, система экспортирует такие типы с расширением duckdb.type_name

false

arrow_output_list_view

Определяет, следует ли при экспорте в Arrow использовать ListView как физическое представление столбцов LIST

false

arrow_output_version

Определяет, следует ли DuckDB создавать тип STRING в формате Utf8View вместо Utf8

1.0

binary_as_string

Интерпретирует двоичные данные в файлах Parquet как строки

false

disable_parquet_prefetching

Отключает механизм предварительной загрузки (prefetching) в Parquet

false

disabled_compression_methods

Отключает указанный набор методов сжатия (методы указываются через запятую)

 — 

enable_external_file_cache

Разрешает базе данных кешировать внешние файлы (например, Parquet) в памяти

true

enable_fsst_vectors

При сканировании сегментов, сжатых с помощью FSST, позволяет выдавать сжатые векторы для использования поздней распаковки

false

enable_geoparquet_conversion

При наличии пространственного расширения (spatial extension) система пытается декодировать или кодировать геометрические данные как файлы GeoParquet

true

file_search_path

Разделенный запятыми список директорий для поиска входных файлов

 — 

ignore_unknown_crs

Игнорирует неизвестные системы координат (CRS) при создании геометрических типов или импорте геопространственных данных

false

parquet_metadata_cache

Разрешает кешировать метаданные Parquet, что полезно при многократном чтении одних и тех же файлов

false

prefetch_all_parquet_files

Использует механизм упреждающего чтения для всех типов файлов Parquet

false

produce_arrow_string_view

Определяет, следует ли DuckDB создавать тип Arrow STRING в формате Utf8View вместо Utf8

false

validate_external_file_cache

Устанавливает режим проверки кеша. Допустимые значения:

  • VALIDATE_ALL — проверяет все записи кеша;

  • VALIDATE_REMOTE — проверяет только удаленные записи кеша;

  • NO_VALIDATION — отключает проверку кеша.

VALIDATE_ALL

zstd_min_string_length

Средний размер, при котором включается сжатие ZSTD

4096

Storage and IO
Параметр Описание Значение по умолчанию

auto_checkpoint_skip_wal_threshold

При достижении указанного количества записей WAL DuckDB пропускает запись в WAL и создает только контрольную точку (checkpoint). Пропуск записи в WAL означает, что параллельные коммиты блокируются при создании контрольных точек

100000

checkpoint_threshold

Порог размера WAL, при котором автоматически создается контрольная точка

16.0 MiB

default_block_size

Размер блока по умолчанию для новых файлов баз данных DuckDB

262144

max_vacuum_tasks

Максимальное количество задач очистки (vacuum tasks), планируемых при создании контрольной точки

100

partitioned_write_flush_threshold

Максимальное количество строк, после которого DuckDB сбросит состояние потока при записи с использованием PARTITION_BY

524288

partitioned_write_max_open_files

Максимальное количество файлов, которые система может держать открытыми перед записью на диск при использовании PARTITION_BY

100

storage_block_prefetch

Определяет, когда следует выполнять предварительную загрузку блоков хранилища. Допустимые значения:

  • REMOTE_ONLY — предварительная загрузка выполняется, если база данных находится в удаленном хранилище.

  • ALWAYS_PREFETCH — предварительная загрузка блоков хранилища как из локального, так и из удалённого хранилища.

  • DEBUG_FORCE_ALWAYS — принудительная предзагрузка блоков в целях тестирования и отладки, в том числе в случаях, когда обычно она не нужна.

  • NEVER — отключает предварительную загрузку блоков хранилища.

REMOTE_ONLY

wal_autocheckpoint

Порог размера WAL для автоматического создания контрольной точки

16.0 MiB

wal_autocheckpoint_entries

Количество записей WAL, при котором запускается автоматическое создание контрольной точки (значение 0 отключает механизм)

0

write_buffer_row_group_count

Количество групп строк (row groups), которые помещаются в буфер при массовой загрузке перед совместной записью. Уменьшение значения может снизить потребление памяти

5

SQL compatibility
Параметр Описание Значение по умолчанию

Calendar

Текущий календарь

gregorian

current_transaction_invalidation_policy

Указывает, какие типы исключений инвалидируют базу данных для текущей транзакции. Допустимые значения:

  • STANDARD_POLICY — только определенный набор исключений может прервать транзакцию (ошибки соединения, доступа, ошибки в SQL, некорректные имена сущностей). Другие исключения не прерывают транзакцию.

  • ALL_ERRORS_INVALIDATE_TRANSACTION — любое исключение прерывает транзакцию.

STANDARD_POLICY

default_collation

Используемое правило сортировки по умолчанию

 — 

default_null_order

Порядок сортировки NULL (NULLS_FIRST или NULLS_LAST)

NULLS_LAST

default_order

Порядок сортировки по умолчанию (ASCENDING или DESCENDING)

ASCENDING

deprecated_using_key_syntax

Определяет использование устаревшего синтаксиса объединения для CTE USING KEY

DEFAULT

disable_timestamptz_casts

Отключает преобразование значений timestamp в timestamptz (с часовым поясом)

false

enable_macro_dependencies

Разрешает макросам (macro) создавать зависимости от объектов, на которые они ссылаются (например, таблиц)

false

enable_view_dependencies

Разрешает представлениям (view) создавать зависимости от объектов, на которые они ссылаются (например, таблиц)

false

ieee_floating_point_ops

Обеспечивает выполнение операций с плавающей точкой по стандарту IEEE 754 (возвращает NaN, а не ошибку или NULL)

true

immediate_transaction_mode

Определяет, следует ли запускать транзакции "лениво" по мере необходимости или сразу при вызове BEGIN TRANSACTION

false

integer_division

Определяет, выполняет ли оператор / по умолчанию целочисленное деление или деление с плавающей точкой

false

lambda_syntax

Настраивает использование устаревшего оператора с одной стрелкой (->) для лямбда-функций

DEFAULT

max_expression_depth

Максимальная глубина выражения в парсере. Увеличение параметра и использование очень глубоких выражений может привести к переполнению стека

1000

null_order

Порядок сортировки NULL (NULLS_FIRST или NULLS_LAST)

NULLS_LAST

old_implicit_casting

Разрешает неявное преобразование в VARCHAR и из него

false

order_by_non_integer_literal

Включает сортировку по нецелочисленным литералам

false

preserve_identifier_case

Определяет, сохранять ли регистр идентификаторов вместо приведения всех незаключенных в кавычки идентификаторов к нижнему регистру

true

scalar_subquery_error_on_multiple_rows

Если скалярный подзапрос возвращает несколько строк, DuckDB возвращает случайную строку вместо ошибки

true

schema

Указывает схему поиска по умолчанию. Эквивалентно установке одного значения search_path

main

search_path

Путь поиска по каталогам по умолчанию в виде списка значений, разделенных запятыми

 — 

TimeZone

Текущий часовой пояс

Europe/Moscow

Execution and optimizer
Параметр Описание Значение по умолчанию

asof_loop_join_threshold

Максимальное количество строк, необходимое в левой части соединения ASOF (join) для использования соединения с вложенными циклами

64

dynamic_or_filter_threshold

Максимальное количество фильтров OR, динамически создаваемых из хеш-соединения

50

enable_caching_operators

Включает операторы кеширования промежуточных результатов

true

enable_object_cache

Устаревший параметр. Не влияет на поведение

false

index_scan_max_count

Устанавливает пороговое значение для количества сканирований индекса. Если количество найденных строк меньше значения max(index_scan_max_count, index_scan_percentage * total_row_count), вместо сканирования таблицы выполняется индексное сканирование

2048

index_scan_percentage

Если количество совпавших строк меньше max(index_scan_max_count, index_scan_percentage * total_row_count), вместо сканирования таблицы выполняется индексное сканирование

0.001

late_materialization_max_rows

Максимальное количество строк в LIMIT/SAMPLE для запуска поздней материализации

50

merge_join_threshold

Максимальное количество строк в любой из таблиц для выбора соединения слиянием

1000

nested_loop_join_threshold

Максимальное количество строк в любой из таблиц для выбора соединения вложенными циклами

5

ordered_aggregate_threshold

Количество строк, накапливаемых перед сортировкой

262144

perfect_ht_threshold

Порог в байтах для использования идеальной хеш-таблицы

12

pivot_filter_threshold

Пороговое значение для перехода от использования отфильтрованных агрегатов к LIST с использованием специального pivot-оператора

20

pivot_limit

Максимальное количество столбцов в pivot-операторе

100000

prefer_range_joins

Принудительно использует диапазонные соединения со смешанными предикатами

false

preserve_insertion_order

Определяет, сохранять ли порядок вставки. При значении false система может изменять порядок выдачи результатов, если не указан ORDER BY

true

scheduler_process_partial

Включает частичную обработку задач перед повторным планированием. Это обеспечивает более справедливое распределение ресурсов планировщика между запросами

false

Logging and profiling
Параметр Описание Значение по умолчанию

catalog_error_max_schemas

Максимальное количество схем, проверяемых системой для подсказок "did you mean…​" при ошибках каталога

100

custom_profiling_settings

Принимает JSON, включающий пользовательские метрики

{"ATTACH_LOAD_STORAGE_LATENCY": "true", "ATTACH_REPLAY_WAL_LATENCY": "true", "BLOCKED_THREAD_TIME": "true", "CHECKPOINT_LATENCY": "true", "COMMIT_LOCAL_STORAGE_LATENCY": "true", "CPU_TIME": "true", "CUMULATIVE_CARDINALITY": "true", "CUMULATIVE_ROWS_SCANNED": "true", "EXTRA_INFO": "true", "LATENCY": "true", "OPERATOR_CARDINALITY": "true", "OPERATOR_NAME": "true", "OPERATOR_ROWS_SCANNED": "true", "OPERATOR_TIMING": "true", "OPERATOR_TYPE": "true", "QUERY_NAME": "true", "RESULT_SET_SIZE": "true", "ROWS_RETURNED": "true", "SYSTEM_PEAK_BUFFER_MEMORY": "true", "SYSTEM_PEAK_TEMP_DIR_SIZE": "true", "TOTAL_BYTES_READ": "true", "TOTAL_BYTES_WRITTEN": "true", "TOTAL_MEMORY_ALLOCATED": "true", "WAITING_TO_ATTACH_LATENCY": "true", "WAL_REPLAY_ENTRY_COUNT": "true", "WRITE_TO_WAL_LATENCY": "true"}

disabled_log_types

Список отключенных логгеров

 — 

enable_logging

Включает логгер

true

enable_profiling

Включает профилирование и задает формат вывода (JSON, QUERY_TREE, QUERY_TREE_OPTIMIZER, NO_OUTPUT, HTML или GRAPHVIZ)

 — 

enable_progress_bar

Включает индикатор выполнения для длительных запросов в терминале

true

enable_progress_bar_print

Управляет выводом индикатора выполнения (если enable_progress_bar=true)

true

enabled_log_types

Список включенных логгеров

 — 

errors_as_json

Выводит сообщения об ошибках в виде структурированного JSON вместо обычного текста

false

explain_output

Задает вывод оператора EXPLAIN (ALL, OPTIMIZED_ONLY, PHYSICAL_ONLY)

PHYSICAL_ONLY

log_query_path

Указывает путь, по которому должны логироваться запросы. По умолчанию запросы не логируются

 — 

logging_level

Минимальный уровень событий, записываемых в лог

WARNING

logging_mode

Определяет типы сообщений, записываемых в лог

LEVEL_ONLY

logging_storage

Указывает хранилище логов

shell_log_storage

profile_output

Файл для сохранения результатов профилирования. Если не указан, результаты выводятся в терминал

 — 

profiling_coverage

Область профилирования (SELECT или ALL)

SELECT

profiling_mode

Режим профилирования (STANDARD или DETAILED)

 — 

profiling_output

Файл, в который следует сохранить вывод профилирования, или пустое значение для вывода в терминал

 — 

progress_bar_time

Минимальное время выполнения запроса (в миллисекундах), после которого DuckDB начинает показывать индикатор выполнения

2000

warnings_as_errors

Преобразует все предупреждения в ошибки

false

Debug and experimental
Параметр Описание Значение по умолчанию

debug_asof_iejoin

Принудительно использует IEJoin для соединений типа ASOF

false

debug_checkpoint_abort

Инициирует аварийное завершение при создании контрольной точки для тестирования

NONE

debug_checkpoint_sleep_ms

Время ожидания перед созданием контрольной точки

0

debug_eviction_queue_sleep_micro_seconds

Время ожидания в очереди на вытеснение перед получением совместного доступа к блоку памяти

0

debug_force_external

Принудительно включает внешние вычисления для поддерживающих их операторов; используется для тестирования

false

debug_force_no_cross_product

Отключает создание декартова произведения для несвязного гиперграфа; используется для тестирования

false

debug_physical_table_scan_execution_strategy

Принудительно использует заданную стратегию физического сканирования таблиц

DEFAULT

debug_skip_checkpoint_on_commit

Пропускает создание контрольных точек при коммитах

false

debug_verify_blocks

Проверяет метаданные блоков при создании контрольных точек

false

debug_verify_vector

Включает проверку векторов

NONE

debug_window_mode

Указывает используемый оконный режим

WINDOW

disabled_optimizers

Отключает указанный набор оптимизаторов (через запятую)

 — 

experimental_metadata_reuse

Повторно использует метаданные групп строк и таблиц при создании контрольных точек

true

force_bitpacking_mode

Принудительно задает режим упаковки битов

AUTO

force_compression

Принудительно задает метод сжатия

auto

force_mbedtls_unsafe

Включает mbedtls для шифрования (небезопасно)

false

geometry_minimum_shredding_size

Минимальный размер группы строк, при котором включается фрагментация по параметру GEOMETRY. Для полного отключения установите значение -1. По умолчанию используется 25% от размера группы строк

30000

variant_minimum_shredding_size

Минимальный размер группы строк, при котором включается фрагментация VARIANT. Для полного отключения установите значение -1. По умолчанию используется 25% от размера группы строк

30000

Startup settings
Параметр Описание Значение по умолчанию

access_mode

Задает режим доступа к базе данных (AUTOMATIC, READ_ONLY или READ_WRITE)

AUTOMATIC

enable_external_access

Разрешает базе данных обращаться к внешним ресурсам (например, загружать и устанавливать модули, использовать COPY TO/FROM, средства чтения CSV и сканирование pandas с заменой)

true

storage_compatibility_version

Выполняет сериализацию контрольной точки с обеспечением совместимости с заданной версией DuckDB

v0.10.2

disable_database_invalidation

Отключает очистку экземпляра базы данных при возникновении фатальной ошибки. Следует использовать с осторожностью, так как DuckDB не может гарантировать корректное поведение после фатальной ошибки

false

duckdb_api

Интерфейс API DuckDB

cli

custom_user_agent

Метаданные вызывающих компонентов DuckDB

 — 

allow_community_extensions

Разрешает загружать community-расширения

true

vacuum_rebuild_indexes

Позволяет операции VACUUM уплотнять группы строк в таблицах с привязанными индексами ART, после чего происходит перестроение индексов. Таблицы, количество строк в которых превышает указанный порог, пропускаются. Используйте 0, чтобы отключить эту функцию

0

ADO extensions
Параметр Описание Значение по умолчанию

Vault/OpenBao secret storage

Разрешает хранить постоянные секреты DuckDB в Vault/OpenBao

 — 

HDFS/Ozone/Hive Metastore

Включает расширение ADO HDFS и входящую в его состав среду выполнения Hadoop

 — 

Additional extensions

Дополнительные расширения для установки и загрузки при инициализации DuckDB

 — 

duckdb-env.sh
Параметр Описание Значение по умолчанию

DUCKDB_HOME

Домашняя директория DuckDB

/usr/lib/duckdb

GLOBAL_CONFIG

Файл глобальной конфигурации DuckDB

/etc/duckdb/conf/duckdb-conf.sql

DUCKDB_EXTENSION_DIRECTORY

Директория расширений DuckDB

/usr/lib/duckdb/extensions

DUCKDB_HDFS_RUNTIME

Среда выполнения HDFS для DuckDB

/usr/lib/duckdb/extensions/v1.5.3/linux_amd64/hdfs-runtime

JAVA_HOME

Директория JAVA_HOME, используемая DuckDB

/usr/lib/duckdb/extensions/v1.5.3/linux_amd64/hdfs-runtime/jre

HADOOP_CONF_DIR

Директория конфигурации Hadoop

/usr/lib/duckdb/extensions/v1.5.3/linux_amd64/hdfs-runtime/conf

CLASSPATH

DuckDB classpath

/usr/lib/duckdb/extensions/v1.5.3/linux_amd64/hdfs-runtime/conf:/usr/lib/duckdb/extensions/v1.5.3/linux_amd64/hdfs-runtime/jars/*

LD_LIBRARY_PATH

Путь к библиотекам загрузчика

/usr/lib/duckdb/extensions/v1.5.3/linux_amd64/hdfs-runtime/lib:/usr/lib/duckdb/extensions/v1.5.3/linux_amd64/hdfs-runtime/jre/lib:/usr/lib/duckdb/extensions/v1.5.3/linux_amd64/hdfs-runtime/jre/lib/server

Custom duckdb-env.sh

Используйте данный раздел, чтобы установить параметры конфигурации для DuckDB. Настройки, указанные в этом разделе, имеют более высокий приоритет, чем параметры, установленные в duckdb-env.sh.

Advanced
Параметр Описание Значение по умолчанию

Additional key-value settings

Дополнительные параметры DuckDB в формате key=value, которые ADO преобразует в конфигурацию

 — 

Custom SQL configuration

Дополнительные SQL-выражения DuckDB, которые необходимо выполнить при инициализации DuckDB CLI

 — 

Нашли ошибку? Выделите текст и нажмите Ctrl+Enter чтобы сообщить о ней