From 682d218f79ed9026cb1f92162e42cd86895b0474 Mon Sep 17 00:00:00 2001 From: DanRoscigno Date: Tue, 24 Feb 2026 13:20:27 -0500 Subject: [PATCH 1/4] trigger Signed-off-by: DanRoscigno --- .../management/FE_configuration.md | 4380 +++++++++++++++++ 1 file changed, 4380 insertions(+) create mode 100644 docs/en/administration/management/FE_configuration.md diff --git a/docs/en/administration/management/FE_configuration.md b/docs/en/administration/management/FE_configuration.md new file mode 100644 index 0000000..e0f43ae --- /dev/null +++ b/docs/en/administration/management/FE_configuration.md @@ -0,0 +1,4380 @@ +--- +displayed_sidebar: docs +--- + +import FEConfigMethod from '../../_assets/commonMarkdown/FE_config_method.mdx' + +import AdminSetFrontendNote from '../../_assets/commonMarkdown/FE_config_note.mdx' + +import StaticFEConfigNote from '../../_assets/commonMarkdown/StaticFE_config_note.mdx' + +import EditionSpecificFEItem from '../../_assets/commonMarkdown/Edition_Specific_FE_Item.mdx' + +# FE Configuration + + + +## View FE configuration items + +After your FE is started, you can run the ADMIN SHOW FRONTEND CONFIG command on your MySQL client to check the parameter configurations. If you want to query the configuration of a specific parameter, run the following command: + +```SQL +ADMIN SHOW FRONTEND CONFIG [LIKE "pattern"]; +``` + +For detailed description of the returned fields, see [`ADMIN SHOW CONFIG`](../../sql-reference/sql-statements/cluster-management/config_vars/ADMIN_SHOW_CONFIG.md). + +:::note +You must have administrator privileges to run cluster administration-related commands. +::: + +## Configure FE parameters + +### Configure FE dynamic parameters + +You can configure or modify the settings of FE dynamic parameters using [`ADMIN SET FRONTEND CONFIG`](../../sql-reference/sql-statements/cluster-management/config_vars/ADMIN_SET_CONFIG.md). + +```SQL +ADMIN SET FRONTEND CONFIG ("key" = "value"); +``` + + + +### Configure FE static parameters + + + +## Understand FE parameters + +### Logging + +##### `audit_log_delete_age` + +- Default: 30d +- Type: String +- Unit: - +- Is mutable: No +- Description: The retention period of audit log files. The default value `30d` specifies that each audit log file can be retained for 30 days. StarRocks checks each audit log file and deletes those that were generated 30 days ago. +- Introduced in: - + +##### `audit_log_dir` + +- Default: `StarRocksFE.STARROCKS_HOME_DIR` + "/log" +- Type: String +- Unit: - +- Is mutable: No +- Description: The directory that stores audit log files. +- Introduced in: - + +##### `audit_log_enable_compress` + +- Default: false +- Type: Boolean +- Unit: N/A +- Is mutable: No +- Description: When true, the generated Log4j2 configuration appends a ".gz" postfix to rotated audit log filenames (fe.audit.log.*) so that Log4j2 will produce compressed (.gz) archived audit log files on rollover. The setting is read during FE startup in Log4jConfig.initLogging and is applied to the RollingFile appender for audit logs; it only affects rotated/archived files, not the active audit log. Because the value is initialized at startup, changing it requires restarting the FE to take effect. Use alongside audit log rotation settings (`audit_log_dir`, `audit_log_roll_interval`, `audit_roll_maxsize`, `audit_log_roll_num`). +- Introduced in: 3.2.12 + +##### `audit_log_json_format` + +- Default: false +- Type: Boolean +- Unit: N/A +- Is mutable: Yes +- Description: When true, FE audit events are emitted as structured JSON (Jackson ObjectMapper serializing a Map of annotated AuditEvent fields) instead of the default pipe-separated "key=value" string. The setting affects all built-in audit sinks handled by AuditLogBuilder: connection audit, query audit, big-query audit (big-query threshold fields are added to the JSON when the event qualifies), and slow-audit output. Fields annotated for big-query thresholds and the "features" field are treated specially (excluded from normal audit entries; included in big-query or feature logs as applicable). Enable this to make logs machine-parsable for log collectors or SIEMs; note it changes the log format and may require updating any existing parsers that expect the legacy pipe-separated format. +- Introduced in: 3.2.7 + +##### `audit_log_modules` + +- Default: `slow_query`, query +- Type: String[] +- Unit: - +- Is mutable: No +- Description: The modules for which StarRocks generates audit log entries. By default, StarRocks generates audit logs for the `slow_query` module and the `query` module. The `connection` module is supported from v3.0. Separate the module names with a comma (,) and a space. +- Introduced in: - + +##### `audit_log_roll_interval` + +- Default: DAY +- Type: String +- Unit: - +- Is mutable: No +- Description: The time interval at which StarRocks rotates audit log entries. Valid values: `DAY` and `HOUR`. + - If this parameter is set to `DAY`, a suffix in the `yyyyMMdd` format is added to the names of audit log files. + - If this parameter is set to `HOUR`, a suffix in the `yyyyMMddHH` format is added to the names of audit log files. +- Introduced in: - + +##### `audit_log_roll_num` + +- Default: 90 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The maximum number of audit log files that can be retained within each retention period specified by the `audit_log_roll_interval` parameter. +- Introduced in: - + +##### `bdbje_log_level` + +- Default: INFO +- Type: String +- Unit: - +- Is mutable: No +- Description: Controls the logging level used by Berkeley DB Java Edition (BDB JE) in StarRocks. During BDB environment initialization BDBEnvironment.initConfigs() applies this value to the Java logger for the `com.sleepycat.je` package and to the BDB JE environment file logging level (`EnvironmentConfig.FILE_LOGGING_LEVEL`). Accepts standard java.util.logging.Level names such as SEVERE, WARNING, INFO, CONFIG, FINE, FINER, FINEST, ALL, OFF. Setting to ALL enables all log messages. Increasing verbosity will raise log volume and may impact disk I/O and performance; the value is read when the BDB environment is initialized, so it takes effect only after environment (re)initialization. +- Introduced in: v3.2.0 + +##### `big_query_log_delete_age` + +- Default: 7d +- Type: String +- Unit: - +- Is mutable: No +- Description: Controls how long FE big query log files (`fe.big_query.log.*`) are retained before automatic deletion. The value is passed to Log4j's deletion policy as the IfLastModified age — any rotated big query log whose last-modified time is older than this value will be removed. Supports suffixes include `d` (day), `h` (hour), `m` (minute), and `s` (second). Example: `7d` (7 days), `10h` (10 hours), `60m` (60 minutes), and `120s` (120 seconds). This item works together with `big_query_log_roll_interval` and `big_query_log_roll_num` to determine which files are kept or purged. +- Introduced in: v3.2.0 + +##### `big_query_log_dir` + +- Default: `Config.STARROCKS_HOME_DIR + "/log"` +- Type: String +- Unit: - +- Is mutable: No +- Description: Directory where the FE writes big query dump logs (`fe.big_query.log.*`). The Log4j configuration uses this path to create a RollingFile appender for `fe.big_query.log` and its rotated files. Rotation and retention are governed by `big_query_log_roll_interval` (time-based suffix), `log_roll_size_mb` (size trigger), `big_query_log_roll_num` (max files), and `big_query_log_delete_age` (age-based deletion). Big query records are logged for queries that exceed user-defined thresholds such as `big_query_log_cpu_second_threshold`, `big_query_log_scan_rows_threshold`, or `big_query_log_scan_bytes_threshold`. Use `big_query_log_modules` to control which modules log to this file. +- Introduced in: v3.2.0 + +##### `big_query_log_modules` + +- Default: `{"query"}` +- Type: String[] +- Unit: - +- Is mutable: No +- Description: List of module name suffixes that enable per-module big query logging. Typical values are logical component names. For example, the default `query` produces `big_query.query`. +- Introduced in: v3.2.0 + +##### `big_query_log_roll_interval` + +- Default: `"DAY"` +- Type: String +- Unit: - +- Is mutable: No +- Description: Specifies the time interval used to construct the date component of the rolling file name for the `big_query` log appender. Valid values (case-insensitive) are `DAY` (default) and `HOUR`. `DAY` produces a daily pattern (`"%d{yyyyMMdd}"`) and `HOUR` produces an hourly pattern (`"%d{yyyyMMddHH}"`). The value is combined with size-based rollover (`big_query_roll_maxsize`) and index-based rollover (`big_query_log_roll_num`) to form the RollingFile filePattern. An invalid value causes log configuration generation to fail (IOException) and may prevent log initialization or reconfiguration. Use alongside `big_query_log_dir`, `big_query_roll_maxsize`, `big_query_log_roll_num`, and `big_query_log_delete_age`. +- Introduced in: v3.2.0 + +##### `big_query_log_roll_num` + +- Default: 10 +- Type: Int +- Unit: - +- Is mutable: No +- Description: Maximum number of rotated FE big query log files to retain per `big_query_log_roll_interval`. This value is bound to the RollingFile appender's DefaultRolloverStrategy `max` attribute for `fe.big_query.log`; when logs roll (by time or by `log_roll_size_mb`), StarRocks keeps up to `big_query_log_roll_num` indexed files (filePattern uses a time suffix plus index). Files older than this count may be removed by rollover, and `big_query_log_delete_age` can additionally delete files by last-modified age. +- Introduced in: v3.2.0 + +##### `dump_log_delete_age` + +- Default: 7d +- Type: String +- Unit: - +- Is mutable: No +- Description: The retention period of dump log files. The default value `7d` specifies that each dump log file can be retained for 7 days. StarRocks checks each dump log file and deletes those that were generated 7 days ago. +- Introduced in: - + +##### `dump_log_dir` + +- Default: `StarRocksFE.STARROCKS_HOME_DIR` + "/log" +- Type: String +- Unit: - +- Is mutable: No +- Description: The directory that stores dump log files. +- Introduced in: - + +##### `dump_log_modules` + +- Default: query +- Type: String[] +- Unit: - +- Is mutable: No +- Description: The modules for which StarRocks generates dump log entries. By default, StarRocks generates dump logs for the query module. Separate the module names with a comma (,) and a space. +- Introduced in: - + +##### `dump_log_roll_interval` + +- Default: DAY +- Type: String +- Unit: - +- Is mutable: No +- Description: The time interval at which StarRocks rotates dump log entries. Valid values: `DAY` and `HOUR`. + - If this parameter is set to `DAY`, a suffix in the `yyyyMMdd` format is added to the names of dump log files. + - If this parameter is set to `HOUR`, a suffix in the `yyyyMMddHH` format is added to the names of dump log files. +- Introduced in: - + +##### `dump_log_roll_num` + +- Default: 10 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The maximum number of dump log files that can be retained within each retention period specified by the `dump_log_roll_interval` parameter. +- Introduced in: - + +##### `edit_log_write_slow_log_threshold_ms` + +- Default: 2000 +- Type: Int +- Unit: Milliseconds +- Is mutable: Yes +- Description: Threshold (in ms) used by JournalWriter to detect and log slow edit-log batch writes. After a batch commit, if the batch duration exceeds this value, JournalWriter emits a WARN with batch size, duration and current journal queue size (rate-limited to once every ~2s). This setting only controls logging/alerts for potential IO or replication latency on the FE leader; it does not change commit or roll behavior (see `edit_log_roll_num` and commit-related settings). Metric updates still occur regardless of this threshold. +- Introduced in: v3.2.3 + +##### `enable_audit_sql` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: No +- Description: When this item is set to `true`, the FE audit subsystem records the SQL text of statements into FE audit logs (`fe.audit.log`) processed by ConnectProcessor. The stored statement respects other controls: encrypted statements are redacted (`AuditEncryptionChecker`), sensitive credentials may be redacted or desensitized if `enable_sql_desensitize_in_log` is set, and digest recording is controlled by `enable_sql_digest`. When it is set to `false`, ConnectProcessor replaces the statement text with "?" in audit events — other audit fields (user, host, duration, status, slow-query detection via `qe_slow_log_ms`, and metrics) are still recorded. Enabling SQL audit increases forensic and troubleshooting visibility but may expose sensitive SQL content and increase log volume and I/O; disabling it improves privacy at the cost of losing full-statement visibility in audit logs. +- Introduced in: - + +##### `enable_profile_log` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: No +- Description: Whether to enable profile logging. When this feature is enabled, the FE writes per-query profile logs (the serialized `queryDetail` JSON produced by `ProfileManager`) to the profile log sink. This logging is performed only if `enable_collect_query_detail_info` is also enabled; when `enable_profile_log_compress` is enabled, the JSON may be gzipped before logging. Profile log files are managed by `profile_log_dir`, `profile_log_roll_num`, `profile_log_roll_interval` and rotated/deleted according to `profile_log_delete_age` (supports formats like `7d`, `10h`, `60m`, `120s`). Disabling this feature stops writing profile logs (reducing disk I/O, compression CPU and storage usage). +- Introduced in: v3.2.5 + +##### `enable_qe_slow_log` + +- Default: true +- Type: Boolean +- Unit: N/A +- Is mutable: Yes +- Description: When enabled, the FE builtin audit plugin (AuditLogBuilder) will write query events whose measured execution time ("Time" field) exceeds the threshold configured by `qe_slow_log_ms` into the slow-query audit log (AuditLog.getSlowAudit). If disabled, those slow-query entries are suppressed (regular query and connection audit logs are unaffected). The slow-audit entries follow the global `audit_log_json_format` setting (JSON vs. plain string). Use this flag to control generation of slow-query audit volume independently of regular audit logging; turning it off may reduce log I/O when `qe_slow_log_ms` is low or workloads produce many long-running queries. +- Introduced in: 3.2.11 + +##### `enable_sql_desensitize_in_log` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: No +- Description: When this item is set to `true`, the system replaces or hides sensitive SQL content before it is written to logs and query-detail records. Code paths that honor this configuration include ConnectProcessor.formatStmt (audit logs), StmtExecutor.addRunningQueryDetail (query details), and SimpleExecutor.formatSQL (internal executor logs). With the feature enabled, invalid SQLs may be replaced with a fixed desensitized message, credentials (user/password) are hidden, and the SQL formatter is required to produce a sanitized representation (it can also enable digest-style output). This reduces leakage of sensitive literals and credentials in audit/internal logs but also means logs and query details no longer contain the original full SQL text (which can affect replay or debugging). +- Introduced in: - + +##### `internal_log_delete_age` + +- Default: 7d +- Type: String +- Unit: - +- Is mutable: No +- Description: Specifies the retention period for FE internal log files (written to `internal_log_dir`). The value is a duration string. Supported suffixes: `d` (day), `h` (hour), `m` (minute), `s` (second). Examples: `7d` (7 days), `10h` (10 hours), `60m` (60 minutes), `120s` (120 seconds). This item is substituted into the log4j configuration as the `` predicate used by the RollingFile Delete policy. Files whose last-modified time is earlier than this duration will be removed during log rollover. Increase this value to free disk space sooner, or decrease it to retain internal materialized view or statistics logs longer. +- Introduced in: v3.2.4 + +##### `internal_log_dir` + +- Default: `Config.STARROCKS_HOME_DIR` + "/log" +- Type: String +- Unit: - +- Is mutable: No +- Description: Directory used by the FE logging subsystem for storing internal logs (`fe.internal.log`). This configuration is substituted into the Log4j configuration and determines where the InternalFile appender writes internal/materialized view/statistics logs and where per-module loggers under `internal.` place their files. Ensure the directory exists, is writable, and has sufficient disk space. Log rotation and retention for files in this directory are controlled by `log_roll_size_mb`, `internal_log_roll_num`, `internal_log_delete_age`, and `internal_log_roll_interval`. If `sys_log_to_console` is enabled, internal logs may be written to console instead of this directory. +- Introduced in: v3.2.4 + +##### `internal_log_json_format` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: When this item is set to `true`, internal statistic/audit entries are written as compact JSON objects to the statistic audit logger. The JSON contains keys "executeType" (InternalType: QUERY or DML), "queryId", "sql", and "time" (elapsed milliseconds). When it is set to `false`, the same information is logged as a single formatted text line ("statistic execute: ... | QueryId: [...] | SQL: ..."). Enabling JSON improves machine parsing and integration with log processors but also causes raw SQL text to be included in logs, which may expose sensitive information and increase log size. +- Introduced in: - + +##### `internal_log_modules` + +- Default: `{"base", "statistic"}` +- Type: String[] +- Unit: - +- Is mutable: No +- Description: A list of module identifiers that will receive dedicated internal logging. For each entry X, Log4j creates a logger named `internal.` with level INFO and additivity="false". Those loggers are routed to the internal appender (written to `fe.internal.log`) or to console when `sys_log_to_console` is enabled. Use short names or package fragments as needed — the exact logger name becomes `internal.` + the configured string. Internal log file rotation and retention follow `internal_log_dir`, `internal_log_roll_num`, `internal_log_delete_age`, `internal_log_roll_interval`, and `log_roll_size_mb`. Adding a module causes its runtime messages to be separated into the internal logger stream for easier debugging and audit. +- Introduced in: v3.2.4 + +##### `internal_log_roll_interval` + +- Default: DAY +- Type: String +- Unit: - +- Is mutable: No +- Description: Controls the time-based roll interval for the FE internal log appender. Accepted values (case-insensitive) are `HOUR` and `DAY`. `HOUR` produces an hourly file pattern (`"%d{yyyyMMddHH}"`) and `DAY` produces a daily file pattern (`"%d{yyyyMMdd}"`), which are used by the RollingFile TimeBasedTriggeringPolicy to name rotated `fe.internal.log` files. An invalid value causes initialization to fail (an IOException is thrown when building the active Log4j configuration). Roll behavior also depends on related settings such as `internal_log_dir`, `internal_roll_maxsize`, `internal_log_roll_num`, and `internal_log_delete_age`. +- Introduced in: v3.2.4 + +##### `internal_log_roll_num` + +- Default: 90 +- Type: Int +- Unit: - +- Is mutable: No +- Description: Maximum number of rolled internal FE log files to retain for the internal appender (`fe.internal.log`). This value is used as the Log4j DefaultRolloverStrategy `max` attribute; when rollovers occur, StarRocks keeps up to `internal_log_roll_num` archived files and removes older ones (also governed by `internal_log_delete_age`). A lower value reduces disk usage but shortens log history; a higher value preserves more historical internal logs. This item works together with `internal_log_dir`, `internal_log_roll_interval`, and `internal_roll_maxsize`. +- Introduced in: v3.2.4 + +##### `log_cleaner_audit_log_min_retention_days` + +- Default: 3 +- Type: Int +- Unit: Days +- Is mutable: Yes +- Description: Minimum retention days for audit log files. Audit log files newer than this will not be deleted even if disk usage is high. This ensures that audit logs are preserved for compliance and troubleshooting purposes. +- Introduced in: - + +##### `log_cleaner_check_interval_second` + +- Default: 300 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: Interval in seconds to check disk usage and clean logs. The cleaner periodically checks each log directory's disk usage and triggers cleaning when necessary. Default is 300 seconds (5 minutes). +- Introduced in: - + +##### `log_cleaner_disk_usage_target` + +- Default: 60 +- Type: Int +- Unit: Percentage +- Is mutable: Yes +- Description: Target disk usage (percentage) after log cleaning. Log cleaning will continue until disk usage drops below this threshold. The cleaner deletes the oldest log files one by one until the target is reached. +- Introduced in: - + +##### `log_cleaner_disk_usage_threshold` + +- Default: 80 +- Type: Int +- Unit: Percentage +- Is mutable: Yes +- Description: Disk usage threshold (percentage) to trigger log cleaning. When disk usage exceeds this threshold, log cleaning will start. The cleaner checks each configured log directory independently and processes directories that exceed this threshold. +- Introduced in: - + +##### `log_cleaner_disk_util_based_enable` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Enable automatic log cleaning based on disk usage. When enabled, logs will be cleaned when disk usage exceeds the threshold. The log cleaner runs as a background daemon on the FE node and helps prevent disk space exhaustion from log file accumulation. +- Introduced in: - + +##### `log_plan_cancelled_by_crash_be` + +- Default: true +- Type: boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable the query execution plan logging when a query is cancelled due to BE crash or an RPC exception. When this feature is enabled, StarRocks logs the query execution plan (at `TExplainLevel.COSTS`) as a WARN entry when a query is cancelled due to BE crash or an `RpcException`. The log entry includes QueryId, SQL and the COSTS plan; in the ExecuteExceptionHandler path, the exception stacktrace is also logged. The logging is skipped when `enable_collect_query_detail_info` is enabled (the plan is then stored in the query detail) — in code paths, the check is performed by verifying the query detail is null. Note that, in ExecuteExceptionHandler, the plan is logged only on the first retry (`retryTime == 0`). Enabling this may increase log volume because full COSTS plans can be large. +- Introduced in: v3.2.0 + +##### `log_register_and_unregister_query_id` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to allow FE to log query registration and deregistration messages (e.g., `"register query id = {}"` and `"deregister query id = {}"`) from QeProcessorImpl. The log is emitted only when the query has a non-null ConnectContext and either the command is not `COM_STMT_EXECUTE` or the session variable `isAuditExecuteStmt()` is true. Because these messages are written for every query lifecycle event, enabling this feature can produce high log volume and become a throughput bottleneck in high concurrency environments. Enable it for debugging or auditing; and disable it to reduce logging overhead and improve performance. +- Introduced in: v3.3.0, v3.4.0, v3.5.0 + +##### `log_roll_size_mb` + +- Default: 1024 +- Type: Int +- Unit: MB +- Is mutable: No +- Description: The maximum size of a system log file or an audit log file. +- Introduced in: - + +##### `proc_profile_file_retained_days` + +- Default: 1 +- Type: Int +- Unit: Days +- Is mutable: Yes +- Description: Number of days to retain process profiling files (CPU and memory) generated under `sys_log_dir/proc_profile`. The ProcProfileCollector computes a cutoff by subtracting `proc_profile_file_retained_days` days from the current time (formatted as yyyyMMdd-HHmmss) and deletes profile files whose timestamp portion is lexicographically earlier than that cutoff (that is, `timePart.compareTo(timeToDelete) < 0`). File deletion also respects the size-based cutoff controlled by `proc_profile_file_retained_size_bytes`. Profile files use the prefixes `cpu-profile-` and `mem-profile-` and are compressed after collection. +- Introduced in: v3.2.12 + +##### `proc_profile_file_retained_size_bytes` + +- Default: 2L * 1024 * 1024 * 1024 (2147483648) +- Type: Long +- Unit: Bytes +- Is mutable: Yes +- Description: Maximum total bytes of collected CPU and memory profile files (files named with prefixes `cpu-profile-` and `mem-profile-`) to keep under the profile directory. When the sum of valid profile files exceeds `proc_profile_file_retained_size_bytes`, the collector deletes the oldest profile files until the remaining total size is less than or equal to `proc_profile_file_retained_size_bytes`. Files older than `proc_profile_file_retained_days` are also removed regardless of size. This setting controls disk usage for profile archives and interacts with `proc_profile_file_retained_days` to determine deletion order and retention. +- Introduced in: v3.2.12 + +##### `profile_log_delete_age` + +- Default: 1d +- Type: String +- Unit: - +- Is mutable: No +- Description: Controls how long FE profile log files are retained before they are eligible for deletion. The value is injected into Log4j's `` policy (via `Log4jConfig`) and is applied together with rotation settings such as `profile_log_roll_interval` and `profile_log_roll_num`. Supported suffixes: `d` (day), `h` (hour), `m` (minute), `s` (second). For example: `7d` (7 days), `10h` (10 hours), `60m` (60 minutes), `120s` (120 seconds). +- Introduced in: v3.2.5 + +##### `profile_log_dir` + +- Default: `Config.STARROCKS_HOME_DIR` + "/log" +- Type: String +- Unit: - +- Is mutable: No +- Description: Directory where FE profile logs are written. Log4jConfig uses this value to place profile-related appenders (creates files like `fe.profile.log` and `fe.features.log` under this directory). Rotation and retention for these files are governed by `profile_log_roll_size_mb`, `profile_log_roll_num` and `profile_log_delete_age`; the timestamp suffix format is controlled by `profile_log_roll_interval` (supports DAY or HOUR). Because the default directory is under `STARROCKS_HOME_DIR`, ensure the FE process has write and rotation/delete permissions on this directory. +- Introduced in: v3.2.5 + +##### `profile_log_roll_interval` + +- Default: DAY +- Type: String +- Unit: - +- Is mutable: No +- Description: Controls the time granularity used to generate the date part of profile log filenames. Valid values (case-insensitive) are `HOUR` and `DAY`. `HOUR` produces a pattern of `"%d{yyyyMMddHH}"` (hourly time bucket) and `DAY` produces `"%d{yyyyMMdd}"` (daily time bucket). This value is used when computing `profile_file_pattern` in the Log4j configuration and only affects the time-based component of rollover file names; size-based rollover is still controlled by `profile_log_roll_size_mb` and retention by `profile_log_roll_num` / `profile_log_delete_age`. Invalid values cause an IOException during logging initialization (error message: `"profile_log_roll_interval config error: "`). Choose `HOUR` for high-volume profiling to limit per-file size per hour, or `DAY` for daily aggregation. +- Introduced in: v3.2.5 + +##### `profile_log_roll_num` + +- Default: 5 +- Type: Int +- Unit: - +- Is mutable: No +- Description: Specifies the maximum number of rotated profile log files retained by Log4j's DefaultRolloverStrategy for the profile logger. This value is injected into the logging XML as `${profile_log_roll_num}` (e.g. ``). Rotations are triggered by `profile_log_roll_size_mb` or `profile_log_roll_interval`; when rotation occurs, Log4j keeps at most these indexed files and older index files become eligible for removal. Actual retention on disk is also affected by `profile_log_delete_age` and the `profile_log_dir` location. Lower values reduce disk usage but limit retained history; higher values preserve more historical profile logs. +- Introduced in: v3.2.5 + +##### `profile_log_roll_size_mb` + +- Default: 1024 +- Type: Int +- Unit: MB +- Is mutable: No +- Description: Sets the size threshold (in megabytes) that triggers a size-based rollover of the FE profile log file. This value is used by the Log4j RollingFile SizeBasedTriggeringPolicy for the `ProfileFile` appender; when a profile log exceeds `profile_log_roll_size_mb` it will be rotated. Rotation can also occur by time when `profile_log_roll_interval` is reached — either condition will trigger rollover. Combined with `profile_log_roll_num` and `profile_log_delete_age`, this item controls how many historical profile files are retained and when old files are deleted. Compression of rotated files is controlled by `enable_profile_log_compress`. +- Introduced in: v3.2.5 + +##### `qe_slow_log_ms` + +- Default: 5000 +- Type: Long +- Unit: Milliseconds +- Is mutable: Yes +- Description: The threshold used to determine whether a query is a slow query. If the response time of a query exceeds this threshold, it is recorded as a slow query in **fe.audit.log**. +- Introduced in: - + +##### `slow_lock_log_every_ms` + +- Default: 3000L +- Type: Long +- Unit: Milliseconds +- Is mutable: Yes +- Description: Minimum interval (in ms) to wait before emitting another "slow lock" warning for the same SlowLockLogStats instance. LockUtils checks this value after a lock wait exceeds `slow_lock_threshold_ms` and will suppress additional warnings until `slow_lock_log_every_ms` milliseconds have passed since the last logged slow-lock event. Use a larger value to reduce log volume during prolonged contention or a smaller value to get more frequent diagnostics. Changes take effect at runtime for subsequent checks. +- Introduced in: v3.2.0 + +##### `slow_lock_print_stack` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to allow LockManager to include the owning thread's full stack trace in the JSON payload of slow-lock warnings emitted by `logSlowLockTrace` (the "stack" array is populated via `LogUtil.getStackTraceToJsonArray` with `start=0` and `max=Short.MAX_VALUE`). This configuration controls only the extra stack information for lock owners shown when a lock acquisition exceeds the threshold configured by `slow_lock_threshold_ms`. Enabling this feature helps debugging by giving precise thread stacks that hold the lock; disabling it reduces log volume and CPU/memory overhead caused by capturing and serializing stack traces in high concurrency environments. +- Introduced in: v3.3.16, v3.4.5, v3.5.1 + +##### `slow_lock_threshold_ms` + +- Default: 3000L +- Type: long +- Unit: Milliseconds +- Is mutable: Yes +- Description: Threshold (in ms) used to classify a lock operation or a held lock as "slow". When the elapsed wait or hold time for a lock exceeds this value, StarRocks will (depending on context) emit diagnostic logs, include stack traces or waiter/owner info, and—in LockManager—start deadlock detection after this delay. It's used by LockUtils (slow-lock logging), QueryableReentrantReadWriteLock (filtering slow readers), LockManager (deadlock-detection delay and slow-lock trace), LockChecker (periodic slow-lock detection), and other callers (e.g., DiskAndTabletLoadReBalancer logging). Lowering the value increases sensitivity and logging/diagnostic overhead; setting it to 0 or negative disables the initial wait-based deadlock-detection delay behavior. Tune together with `slow_lock_log_every_ms`, `slow_lock_print_stack`, and `slow_lock_stack_trace_reserve_levels`. +- Introduced in: 3.2.0 + +##### `sys_log_delete_age` + +- Default: 7d +- Type: String +- Unit: - +- Is mutable: No +- Description: The retention period of system log files. The default value `7d` specifies that each system log file can be retained for 7 days. StarRocks checks each system log file and deletes those that were generated 7 days ago. +- Introduced in: - + +##### `sys_log_dir` + +- Default: `StarRocksFE.STARROCKS_HOME_DIR` + "/log" +- Type: String +- Unit: - +- Is mutable: No +- Description: The directory that stores system log files. +- Introduced in: - + +##### `sys_log_enable_compress` + +- Default: false +- Type: boolean +- Unit: - +- Is mutable: No +- Description: When this item is set to `true`, the system appends a ".gz" postfix to rotated system log filenames so Log4j will produce gzip-compressed rotated FE system logs (for example, fe.log.*). This value is read during Log4j configuration generation (Log4jConfig.initLogging / generateActiveLog4jXmlConfig) and controls the `sys_file_postfix` property used in the RollingFile filePattern. Enabling this feature reduces disk usage for retained logs but increases CPU and I/O during rollovers and changes log filenames, so that tools or scripts that read logs must be able to handle .gz files. Note that audit logs use a separate configuration for compression, that is, `audit_log_enable_compress`. +- Introduced in: v3.2.12 + +##### `sys_log_format` + +- Default: "plaintext" +- Type: String +- Unit: - +- Is mutable: No +- Description: Selects the Log4j layout used for FE logs. Valid values: `"plaintext"` (Default) and `"json"`. The values are case-insensitive. `"plaintext"` configures PatternLayout with human-readable timestamps, level, thread, class.method:line and stack traces for WARN/ERROR. `"json"` configures JsonTemplateLayout and emits structured JSON events (UTC timestamps, level, thread id/name, source file/method/line, message, exception stackTrace) suitable for log aggregators (ELK, Splunk). JSON output abides by `sys_log_json_max_string_length` and `sys_log_json_profile_max_string_length` for maximum string lengths. +- Introduced in: v3.2.10 + +##### `sys_log_json_max_string_length` + +- Default: 1048576 +- Type: Int +- Unit: Bytes +- Is mutable: No +- Description: Sets the JsonTemplateLayout "maxStringLength" value used for the JSON-formatted system logs. When `sys_log_format` is set to `"json"`, string-valued fields (for example "message" and stringified exception stack traces) are truncated if their length exceeds this limit. The value is injected into the generated Log4j XML in `Log4jConfig.generateActiveLog4jXmlConfig()`, and is applied to default, warning, audit, dump and bigquery layouts. The profile layout uses a separate configuration (`sys_log_json_profile_max_string_length`). Lowering this value reduces log size but can truncate useful information. +- Introduced in: 3.2.11 + +##### `sys_log_json_profile_max_string_length` + +- Default: 104857600 (100 MB) +- Type: Int +- Unit: Bytes +- Is mutable: No +- Description: Sets the maxStringLength of JsonTemplateLayout for profile (and related feature) log appenders when `sys_log_format` is "json". String field values in JSON-formatted profile logs will be truncated to this byte length; non-string fields are unaffected. This item is applied in Log4jConfig `JsonTemplateLayout maxStringLength` and is ignored when `plaintext` logging is used. Keep the value large enough for full messages you need, but note larger values increase log size and I/O. +- Introduced in: v3.2.11 + +##### `sys_log_level` + +- Default: INFO +- Type: String +- Unit: - +- Is mutable: No +- Description: The severity levels into which system log entries are classified. Valid values: `INFO`, `WARN`, `ERROR`, and `FATAL`. +- Introduced in: - + +##### `sys_log_roll_interval` + +- Default: DAY +- Type: String +- Unit: - +- Is mutable: No +- Description: The time interval at which StarRocks rotates system log entries. Valid values: `DAY` and `HOUR`. + - If this parameter is set to `DAY`, a suffix in the `yyyyMMdd` format is added to the names of system log files. + - If this parameter is set to `HOUR`, a suffix in the `yyyyMMddHH` format is added to the names of system log files. +- Introduced in: - + +##### `sys_log_roll_num` + +- Default: 10 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The maximum number of system log files that can be retained within each retention period specified by the `sys_log_roll_interval` parameter. +- Introduced in: - + +##### `sys_log_to_console` + +- Default: false (unless the environment variable `SYS_LOG_TO_CONSOLE` is set to "1") +- Type: Boolean +- Unit: - +- Is mutable: No +- Description: When this item is set to `true`, the system configures Log4j to send all logs to the console (ConsoleErr appender) instead of the file-based appenders. This value is read when generating the active Log4j XML configuration (which affects the root logger and per-module logger appender selection). Its value is captured from the `SYS_LOG_TO_CONSOLE` environment variable at process startup. Changing it at runtime has no effect. This configuration is commonly used in containerized or CI environments where stdout/stderr log collection is preferred over writing log files. +- Introduced in: v3.2.0 + +##### `sys_log_verbose_modules` + +- Default: Empty string +- Type: String[] +- Unit: - +- Is mutable: No +- Description: The modules for which StarRocks generates system logs. If this parameter is set to `org.apache.starrocks.catalog`, StarRocks generates system logs only for the catalog module. Separate the module names with a comma (,) and a space. +- Introduced in: - + +##### `sys_log_warn_modules` + +- Default: {} +- Type: String[] +- Unit: - +- Is mutable: No +- Description: A list of logger names or package prefixes that the system will configure at startup as WARN-level loggers and route to the warning appender (SysWF) — the `fe.warn.log` file. Entries are inserted into the generated Log4j configuration (alongside builtin warn modules such as org.apache.kafka, org.apache.hudi, and org.apache.hadoop.io.compress) and produce logger elements like ``. Fully-qualified package and class prefixes (for example, "com.example.lib") are recommended to suppress noisy INFO/DEBUG output into the regular log and to allow warnings to be captured separately. +- Introduced in: v3.2.13 + +### Server + +##### `brpc_idle_wait_max_time` + +- Default: 10000 +- Type: Int +- Unit: ms +- Is mutable: No +- Description: The maximum length of time for which bRPC clients wait as in the idle state. +- Introduced in: - + +##### `brpc_inner_reuse_pool` + +- Default: true +- Type: boolean +- Unit: - +- Is mutable: No +- Description: Controls whether the underlying BRPC client uses an internal shared reuse pool for connections/channels. StarRocks reads `brpc_inner_reuse_pool` in BrpcProxy when constructing RpcClientOptions (via `rpcOptions.setInnerResuePool(...)`). When enabled (true) the RPC client reuses internal pools to reduce per-call connection creation, lowering connection churn, memory and file-descriptor usage for FE-to-BE / LakeService RPCs. When disabled (false) the client may create more isolated pools (increasing concurrency isolation at the cost of higher resource usage). Changing this value requires restarting the process to take effect. +- Introduced in: v3.3.11, v3.4.1, v3.5.0 + +##### `brpc_min_evictable_idle_time_ms` + +- Default: 120000 +- Type: Int +- Unit: Milliseconds +- Is mutable: No +- Description: Time in milliseconds that an idle BRPC connection must remain in the connection pool before it becomes eligible for eviction. Applied to the RpcClientOptions used by `BrpcProxy` (via RpcClientOptions.setMinEvictableIdleTime). Raise this value to keep idle connections longer (reducing reconnect churn); lower it to free unused sockets faster (reducing resource usage). Tune together with `brpc_connection_pool_size` and `brpc_idle_wait_max_time` to balance connection reuse, pool growth, and eviction behavior. +- Introduced in: v3.3.11, v3.4.1, v3.5.0 + +##### `brpc_reuse_addr` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: No +- Description: When true, StarRocks sets the socket option to allow local address reuse for client sockets created by the brpc RpcClient (via RpcClientOptions.setReuseAddress). Enabling this reduces bind failures and allows faster rebinding of local ports after sockets are closed, which is helpful for high-rate connection churn or rapid restarts. When false, address/port reuse is disabled, which can reduce the chance of unintended port sharing but may increase transient bind errors. This option interacts with connection behavior configured by `brpc_connection_pool_size` and `brpc_short_connection` because it affects how rapidly client sockets can be rebound and reused. +- Introduced in: v3.3.11, v3.4.1, v3.5.0 + +##### `cluster_name` + +- Default: StarRocks Cluster +- Type: String +- Unit: - +- Is mutable: No +- Description: The name of the StarRocks cluster to which the FE belongs. The cluster name is displayed for `Title` on the web page. +- Introduced in: - + +##### `dns_cache_ttl_seconds` + +- Default: 60 +- Type: Int +- Unit: Seconds +- Is mutable: No +- Description: DNS cache TTL (Time-To-Live) in seconds for successful DNS lookups. This sets the Java security property `networkaddress.cache.ttl` which controls how long the JVM caches successful DNS lookups. Set this item to `-1` to allow the system to always cache the infomration, or `0` to disable caching. This is particularly useful in environments where IP addresses change frequently, such as Kubernetes deployments or when dynamic DNS is used. +- Introduced in: v3.5.11, v4.0.4 + +##### `enable_http_async_handler` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to allow the system to process HTTP requests asynchronously. If this feature is enabled, an HTTP request received by Netty worker threads will then be submitted to a separate thread pool for service logic handling to avoid blocking the HTTP server. If disabled, Netty workers will handle the service logic. +- Introduced in: 4.0.0 + +##### `enable_http_validate_headers` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: No +- Description: Controls whether Netty's HttpServerCodec performs strict HTTP header validation. The value is passed to HttpServerCodec when the HTTP pipeline is initialized in `HttpServer` (see UseLocations). Default is false for backward compatibility because newer netty versions enforce stricter header rules (https://github.com/netty/netty/pull/12760). Set to true to enforce RFC-compliant header checks; doing so may cause malformed or nonconforming requests from legacy clients or proxies to be rejected. Change requires a restart of the HTTP server to take effect. +- Introduced in: v3.3.0, v3.4.0, v3.5.0 + +##### `frontend_address` + +- Default: 0.0.0.0 +- Type: String +- Unit: - +- Is mutable: No +- Description: The IP address of the FE node. +- Introduced in: - + +##### `http_async_threads_num` + +- Default: 4096 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: Size of the thread pool for asynchronous HTTP request processing. The alias is `max_http_sql_service_task_threads_num`. +- Introduced in: 4.0.0 + +##### `http_backlog_num` + +- Default: 1024 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The length of the backlog queue held by the HTTP server in the FE node. +- Introduced in: - + +##### `http_max_chunk_size` + +- Default: 8192 +- Type: Int +- Unit: Bytes +- Is mutable: No +- Description: Sets the maximum allowed size (in bytes) of a single HTTP chunk handled by Netty's HttpServerCodec in the FE HTTP server. It is passed as the third argument to HttpServerCodec and limits the length of chunks during chunked transfer or streaming requests/responses. If an incoming chunk exceeds this value, Netty will raise a frame-too-large error (e.g., TooLongFrameException) and the request may be rejected. Increase this for legitimate large chunked uploads; keep it small to reduce memory pressure and surface area for DoS attacks. This setting is used alongside `http_max_initial_line_length`, `http_max_header_size`, and `enable_http_validate_headers`. +- Introduced in: v3.2.0 + +##### `http_max_header_size` + +- Default: 32768 +- Type: Int +- Unit: Bytes +- Is mutable: No +- Description: Maximum allowed size in bytes for the HTTP request header block parsed by Netty's `HttpServerCodec`. StarRocks passes this value to `HttpServerCodec` (as `Config.http_max_header_size`); if an incoming request's headers (names and values combined) exceed this limit, the codec will reject the request (decoder exception) and the connection/request will fail. Increase only when clients legitimately send very large headers (large cookies or many custom headers); larger values increase per-connection memory use. Tune in conjunction with `http_max_initial_line_length` and `http_max_chunk_size`. Changes require FE restart. +- Introduced in: v3.2.0 + +##### `http_max_initial_line_length` + +- Default: 4096 +- Type: Int +- Unit: Bytes +- Is mutable: No +- Description: Sets the maximum allowed length (in bytes) of the HTTP initial request line (method + request-target + HTTP version) accepted by the Netty `HttpServerCodec` used in HttpServer. The value is passed to Netty's decoder and requests with an initial line longer than this will be rejected (TooLongFrameException). Increase this only when you must support very long request URIs; larger values increase memory use and may raise exposure to malformed/request-abuse. Tune together with `http_max_header_size` and `http_max_chunk_size`. +- Introduced in: v3.2.0 + +##### `http_port` + +- Default: 8030 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The port on which the HTTP server in the FE node listens. +- Introduced in: - + +##### `http_web_page_display_hardware` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: When true, the HTTP index page (/index) will include a hardware information section populated via the oshi library (CPU, memory, processes, disks, filesystems, network, etc.). oshi may invoke system utilities or read system files indirectly (for example, it can execute commands such as `getent passwd`), which can surface sensitive system data. If you require stricter security or want to avoid executing those indirect commands on the host, set this configuration to false to disable collection and display of hardware details on the web UI. +- Introduced in: v3.2.0 + +##### `http_worker_threads_num` + +- Default: 0 +- Type: Int +- Unit: - +- Is mutable: No +- Description: Number of worker threads for http server to deal with http requests. For a negative or 0 value, the number of threads will be twice the number of cpu cores. +- Introduced in: v2.5.18, v3.0.10, v3.1.7, v3.2.2 + +##### `max_mysql_service_task_threads_num` + +- Default: 4096 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The maximum number of threads that can be run by the MySQL server in the FE node to process tasks. +- Introduced in: - + +##### `max_task_runs_threads_num` + +- Default: 512 +- Type: Int +- Unit: Threads +- Is mutable: No +- Description: Controls the maximum number of threads in the task-run executor thread pool. This value is the upper bound of concurrent task-run executions; increasing it raises parallelism but also increases CPU, memory, and network usage, while reducing it can cause task-run backlog and higher latency. Tune this value according to expected concurrent scheduled jobs and available system resources. +- Introduced in: v3.2.0 + +##### `memory_tracker_enable` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Enables the FE memory tracker subsystem. When `memory_tracker_enable` is set to `true`, `MemoryUsageTracker` periodically scans registered metadata modules, updates the in-memory `MemoryUsageTracker.MEMORY_USAGE` map, logs totals, and causes `MetricRepo` to expose memory usage and object-count gauges in metrics output. Use `memory_tracker_interval_seconds` to control the sampling interval. Enabling this feature helps monitoring and debugging memory consumption but introduces CPU and I/O overhead and additional metric cardinality. +- Introduced in: v3.2.4 + +##### `memory_tracker_interval_seconds` + +- Default: 60 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: Interval in seconds for the FE `MemoryUsageTracker` daemon to poll and record memory usage of the FE process and registered `MemoryTrackable` modules. When `memory_tracker_enable` is set to `true`, the tracker runs on this cadence, updates `MEMORY_USAGE`, and logs aggregated JVM and tracked-module usage. +- Introduced in: v3.2.4 + +##### `mysql_nio_backlog_num` + +- Default: 1024 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The length of the backlog queue held by the MySQL server in the FE node. +- Introduced in: - + +##### `mysql_server_version` + +- Default: 8.0.33 +- Type: String +- Unit: - +- Is mutable: Yes +- Description: The MySQL server version returned to the client. Modifying this parameter will affect the version information in the following situations: + 1. `select version();` + 2. Handshake packet version + 3. Value of the global variable `version` (`show variables like 'version';`) +- Introduced in: - + +##### `mysql_service_io_threads_num` + +- Default: 4 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The maximum number of threads that can be run by the MySQL server in the FE node to process I/O events. +- Introduced in: - + +##### `mysql_service_kill_after_disconnect` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: No +- Description: Controls how the server handles the session when the MySQL TCP connection is detected closed (EOF on read). If it is set to `true`, the server immediately kills any running query for that connection and performs immediate cleanup. If it is `false`, the server does not kill running queries on disconnection and only performs cleanup when there are no pending request tasks, allowing long-running queries to continue after client disconnects. Note: despite a brief comment suggesting TCP keep‑alive, this parameter specifically governs post-disconnection killing behavior and should be set according to whether you want orphaned queries terminated (recommended behind unreliable/load‑balanced clients) or allowed to finish. +- Introduced in: - + +##### `mysql_service_nio_enable_keep_alive` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: No +- Description: Enable TCP Keep-Alive for MySQL connections. Useful for long-idled connections behind load balancers. +- Introduced in: - + +##### `net_use_ipv6_when_priority_networks_empty` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: No +- Description: A boolean value to control whether to use IPv6 addresses preferentially when `priority_networks` is not specified. `true` indicates to allow the system to use an IPv6 address preferentially when the server that hosts the node has both IPv4 and IPv6 addresses and `priority_networks` is not specified. +- Introduced in: v3.3.0 + +##### `priority_networks` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: Declares a selection strategy for servers that have multiple IP addresses. Note that at most one IP address must match the list specified by this parameter. The value of this parameter is a list that consists of entries, which are separated with semicolons (;) in CIDR notation, such as 10.10.10.0/24. If no IP address matches the entries in this list, an available IP address of the server will be randomly selected. From v3.3.0, StarRocks supports deployment based on IPv6. If the server has both IPv4 and IPv6 addresses, and this parameter is not specified, the system uses an IPv4 address by default. You can change this behavior by setting `net_use_ipv6_when_priority_networks_empty` to `true`. +- Introduced in: - + +##### `proc_profile_cpu_enable` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: When this item is set to `true`, the background `ProcProfileCollector` will collect CPU profiles using `AsyncProfiler` and write HTML reports under `sys_log_dir/proc_profile`. Each collection run records CPU stacks for the duration configured by `proc_profile_collect_time_s` and uses `proc_profile_jstack_depth` for Java stack depth. Generated profiles are compressed and old files are pruned according to `proc_profile_file_retained_days` and `proc_profile_file_retained_size_bytes`. `AsyncProfiler` requires the native library (`libasyncProfiler.so`); `one.profiler.extractPath` is set to `STARROCKS_HOME_DIR/bin` to avoid noexec issues on `/tmp`. +- Introduced in: v3.2.12 + +##### `qe_max_connection` + +- Default: 4096 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The maximum number of connections that can be established by all users to the FE node. From v3.1.12 and v3.2.7 onwards, the default value has been changed from `1024` to `4096`. +- Introduced in: - + +##### `query_port` + +- Default: 9030 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The port on which the MySQL server in the FE node listens. +- Introduced in: - + +##### `rpc_port` + +- Default: 9020 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The port on which the Thrift server in the FE node listens. +- Introduced in: - + +##### `slow_lock_stack_trace_reserve_levels` + +- Default: 15 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: Controls how many stack-trace frames are captured and emitted when StarRocks dumps lock debug information for slow or held locks. This value is passed to `LogUtil.getStackTraceToJsonArray` by `QueryableReentrantReadWriteLock` when producing JSON for the exclusive lock owner, current thread, and oldest/shared readers. Increasing this value provides more context for diagnosing slow-lock or deadlock issues at the cost of larger JSON payloads and slightly higher CPU/memory for stack capture; decreasing it reduces overhead. Note: reader entries can be filtered by `slow_lock_threshold_ms` when only logging slow locks. +- Introduced in: v3.4.0, v3.5.0 + +##### `task_runs_concurrency` + +- Default: 4 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: Global limit of concurrently running TaskRun instances. `TaskRunScheduler` stops scheduling new runs when current running count is greater than or equal to `task_runs_concurrency`, so this value caps parallel TaskRun execution across the scheduler. It is also used by `MVPCTRefreshPartitioner` to compute per-TaskRun partition refresh granularity. Increasing the value raises parallelism and resource usage; decreasing it reduces concurrency and makes partition refreshes larger per run. Do not set to 0 or negative unless intentionally disabling scheduling: 0 (or negative) will effectively prevent new TaskRuns from being scheduled by `TaskRunScheduler`. +- Introduced in: v3.2.0 + +##### `task_runs_queue_length` + +- Default: 500 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: Limits the maximum number of pending TaskRun items kept in the pending queue. `TaskRunManager` checks the current pending count and rejects new submissions when valid pending TaskRun count is greater than or equal to `task_runs_queue_length`. The same limit is rechecked before merged/accepted TaskRuns are added. Tune this value to balance memory and scheduling backlog: set higher for large bursty workloads to avoid rejects, or lower to bound memory and reduce pending backlog. +- Introduced in: v3.2.0 + +##### `thrift_backlog_num` + +- Default: 1024 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The length of the backlog queue held by the Thrift server in the FE node. +- Introduced in: - + +##### `thrift_client_timeout_ms` + +- Default: 5000 +- Type: Int +- Unit: Milliseconds +- Is mutable: No +- Description: The length of time after which idle client connections time out. +- Introduced in: - + +##### `thrift_rpc_max_body_size` + +- Default: -1 +- Type: Int +- Unit: Bytes +- Is mutable: No +- Description: Controls the maximum allowed Thrift RPC message body size (in bytes) used when constructing the server's Thrift protocol (passed to TBinaryProtocol.Factory in `ThriftServer`). A value of `-1` disables the limit (unbounded). Setting a positive value enforces an upper bound so that messages larger than this are rejected by the Thrift layer, which helps limit memory usage and mitigate oversized-request or DoS risks. Set this to a size large enough for expected payloads (large structs or batched data) to avoid rejecting legitimate requests. +- Introduced in: v3.2.0 + +##### `thrift_server_max_worker_threads` + +- Default: 4096 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of worker threads that are supported by the Thrift server in the FE node. +- Introduced in: - + +##### `thrift_server_queue_size` + +- Default: 4096 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The length of queue where requests are pending. If the number of threads that are being processed in the thrift server exceeds the value specified in `thrift_server_max_worker_threads`, new requests are added to the pending queue. +- Introduced in: - + +### Metadata and cluster management + +##### `alter_max_worker_queue_size` + +- Default: 4096 +- Type: Int +- Unit: Tasks +- Is mutable: No +- Description: Controls the capacity of the internal worker thread pool queue used by the alter subsystem. It is passed to `ThreadPoolManager.newDaemonCacheThreadPool` in `AlterHandler` together with `alter_max_worker_threads`. When the number of pending alter tasks exceeds `alter_max_worker_queue_size`, new submissions will be rejected and a `RejectedExecutionException` can be thrown (see `AlterHandler.handleFinishAlterTask`). Tune this value to balance memory usage and the amount of backlog you permit for concurrent alter tasks. +- Introduced in: v3.2.0 + +##### `alter_max_worker_threads` + +- Default: 4 +- Type: Int +- Unit: Threads +- Is mutable: No +- Description: Sets the maximum number of worker threads in the AlterHandler's thread pool. The AlterHandler constructs the executor with this value to run and finalize alter-related tasks (e.g., submitting `AlterReplicaTask` via handleFinishAlterTask). This value bounds concurrent execution of alter operations; raising it increases parallelism and resource usage, lowering it limits concurrent alters and may become a bottleneck. The executor is created together with `alter_max_worker_queue_size`, and the handler scheduling uses `alter_scheduler_interval_millisecond`. +- Introduced in: v3.2.0 + +##### `automated_cluster_snapshot_interval_seconds` + +- Default: 600 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The interval at which the Automated Cluster Snapshot tasks are triggered. +- Introduced in: v3.4.2 + +##### `background_refresh_metadata_interval_millis` + +- Default: 600000 +- Type: Int +- Unit: Milliseconds +- Is mutable: Yes +- Description: The interval between two consecutive Hive metadata cache refreshes. +- Introduced in: v2.5.5 + +##### `background_refresh_metadata_time_secs_since_last_access_secs` + +- Default: 3600 * 24 +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: The expiration time of a Hive metadata cache refresh task. For the Hive catalog that has been accessed, if it has not been accessed for more than the specified time, StarRocks stops refreshing its cached metadata. For the Hive catalog that has not been accessed, StarRocks will not refresh its cached metadata. +- Introduced in: v2.5.5 + +##### `bdbje_cleaner_threads` + +- Default: 1 +- Type: Int +- Unit: - +- Is mutable: No +- Description: Number of background cleaner threads for the Berkeley DB Java Edition (JE) environment used by StarRocks journal. This value is read during environment initialization in `BDBEnvironment.initConfigs` and applied to `EnvironmentConfig.CLEANER_THREADS` using `Config.bdbje_cleaner_threads`. It controls parallelism for JE log cleaning and space reclamation; increasing it can speed up cleaning at the cost of additional CPU and I/O interference with foreground operations. Changes take effect only when the BDB environment is (re)initialized, so a frontend restart is required to apply a new value. +- Introduced in: v3.2.0 + +##### `bdbje_heartbeat_timeout_second` + +- Default: 30 +- Type: Int +- Unit: Seconds +- Is mutable: No +- Description: The amount of time after which the heartbeats among the leader, follower, and observer FEs in the StarRocks cluster time out. +- Introduced in: - + +##### `bdbje_lock_timeout_second` + +- Default: 1 +- Type: Int +- Unit: Seconds +- Is mutable: No +- Description: The amount of time after which a lock in the BDB JE-based FE times out. +- Introduced in: - + +##### `bdbje_replay_cost_percent` + +- Default: 150 +- Type: Int +- Unit: Percent +- Is mutable: No +- Description: Sets the relative cost (as a percentage) of replaying transactions from a BDB JE log versus obtaining the same data via a network restore. The value is supplied to the underlying JE replication parameter `REPLAY_COST_PERCENT` and is typically `>100` to indicate that replay is usually more expensive than a network restore. When deciding whether to retain cleaned log files for potential replay, the system compares replay cost multiplied by log size against the cost of a network restore; files will be removed if network restore is judged more efficient. A value of 0 disables retention based on this cost comparison. Log files required for replicas within `REP_STREAM_TIMEOUT` or for any active replication are always retained. +- Introduced in: v3.2.0 + +##### `bdbje_replica_ack_timeout_second` + +- Default: 10 +- Type: Int +- Unit: Seconds +- Is mutable: No +- Description: The maximum amount of time for which the leader FE can wait for ACK messages from a specified number of follower FEs when metadata is written from the leader FE to the follower FEs. Unit: second. If a large amount of metadata is being written, the follower FEs require a long time before they can return ACK messages to the leader FE, causing ACK timeout. In this situation, metadata writes fail, and the FE process exits. We recommend that you increase the value of this parameter to prevent this situation. +- Introduced in: - + +##### `bdbje_reserved_disk_size` + +- Default: 512 * 1024 * 1024 (536870912) +- Type: Long +- Unit: Bytes +- Is mutable: No +- Description: Limits the number of bytes Berkeley DB JE will reserve as "unprotected" (deletable) log/data files. StarRocks passes this value to JE via `EnvironmentConfig.RESERVED_DISK` in BDBEnvironment; JE's built-in default is 0 (unlimited). The StarRocks default (512 MiB) prevents JE from reserving excessive disk space for unprotected files while allowing safe cleanup of obsolete files. Tune this value on disk-constrained systems: decreasing it lets JE free more files sooner, increasing it lets JE retain more reserved space. Changes require restarting the process to take effect. +- Introduced in: v3.2.0 + +##### `bdbje_reset_election_group` + +- Default: false +- Type: String +- Unit: - +- Is mutable: No +- Description: Whether to reset the BDBJE replication group. If this parameter is set to `TRUE`, the FE will reset the BDBJE replication group (that is, remove the information of all electable FE nodes) and start as the leader FE. After the reset, this FE will be the only member in the cluster, and other FEs can rejoin this cluster by using `ALTER SYSTEM ADD/DROP FOLLOWER/OBSERVER 'xxx'`. Use this setting only when no leader FE can be elected because the data of most follower FEs have been damaged. `reset_election_group` is used to replace `metadata_failure_recovery`. +- Introduced in: - + +##### `black_host_connect_failures_within_time` + +- Default: 5 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The threshold of connection failures allowed for a blacklisted BE node. If a BE node is added to the BE Blacklist automatically, StarRocks will assess its connectivity and judge whether it can be removed from the BE Blacklist. Within `black_host_history_sec`, only if a blacklisted BE node has fewer connection failures than the threshold set in `black_host_connect_failures_within_time`, it can be removed from the BE Blacklist. +- Introduced in: v3.3.0 + +##### `black_host_history_sec` + +- Default: 2 * 60 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The time duration for retaining historical connection failures of BE nodes in the BE Blacklist. If a BE node is added to the BE Blacklist automatically, StarRocks will assess its connectivity and judge whether it can be removed from the BE Blacklist. Within `black_host_history_sec`, only if a blacklisted BE node has fewer connection failures than the threshold set in `black_host_connect_failures_within_time`, it can be removed from the BE Blacklist. +- Introduced in: v3.3.0 + +##### `brpc_connection_pool_size` + +- Default: 16 +- Type: Int +- Unit: Connections +- Is mutable: No +- Description: The maximum number of pooled BRPC connections per endpoint used by the FE's BrpcProxy. This value is applied to RpcClientOptions via `setMaxTotoal` and `setMaxIdleSize`, so it directly limits concurrent outgoing BRPC requests because each request must borrow a connection from the pool. In high concurrency scenarios increase this to avoid request queuing; increasing it raises socket and memory usage and may increase remote server load. When tuning, consider related settings such as `brpc_idle_wait_max_time`, `brpc_short_connection`, `brpc_inner_reuse_pool`, `brpc_reuse_addr`, and `brpc_min_evictable_idle_time_ms`. Changing this value is not hot-reloadable and requires a restart. +- Introduced in: v3.2.0 + +##### `brpc_short_connection` + +- Default: false +- Type: boolean +- Unit: - +- Is mutable: No +- Description: Controls whether the underlying brpc RpcClient uses short-lived connections. When enabled (`true`), RpcClientOptions.setShortConnection is set and connections are closed after a request completes, reducing the number of long-lived sockets at the cost of higher connection setup overhead and increased latency. When disabled (`false`, the default) persistent connections and connection pooling are used. Enabling this option affects connection-pool behavior and should be considered together with `brpc_connection_pool_size`, `brpc_idle_wait_max_time`, `brpc_min_evictable_idle_time_ms`, `brpc_reuse_addr`, and `brpc_inner_reuse_pool`. Keep it disabled for typical high-throughput deployments; enable only to limit socket lifetime or when short connections are required by network policy. +- Introduced in: v3.3.11, v3.4.1, v3.5.0 + +##### `catalog_try_lock_timeout_ms` + +- Default: 5000 +- Type: Long +- Unit: Milliseconds +- Is mutable: Yes +- Description: The timeout duration to obtain the global lock. +- Introduced in: - + +##### `checkpoint_only_on_leader` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: When `true`, the CheckpointController will only select the leader FE as the checkpoint worker; when `false`, the controller may pick any frontend and prefers nodes with lower heap usage. With `false`, workers are sorted by recent failure time and `heapUsedPercent` (the leader is treated as having infinite usage to avoid selecting it). For operations that require cluster snapshot metadata, the controller already forces leader selection regardless of this flag. Enabling `true` centralizes checkpoint work on the leader (simpler but increases leader CPU/memory and network load); keeping it `false` distributes checkpoint load to less-loaded FEs. This setting affects worker selection and interaction with timeouts such as `checkpoint_timeout_seconds` and RPC settings like `thrift_rpc_timeout_ms`. +- Introduced in: v3.4.0, v3.5.0 + +##### `checkpoint_timeout_seconds` + +- Default: 24 * 3600 +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: Maximum time (in seconds) the leader's CheckpointController will wait for a checkpoint worker to complete a checkpoint. The controller converts this value to nanoseconds and polls the worker result queue; if no successful completion is received within this timeout the checkpoint is treated as failed and createImage returns failure. Increasing this value accommodates longer-running checkpoints but delays failure detection and subsequent image propagation; decreasing it causes faster failover/retries but can produce false timeouts for slow workers. This setting only controls the waiting period in `CheckpointController` during checkpoint creation and does not change the worker's internal checkpointing behavior. +- Introduced in: v3.4.0, v3.5.0 + +##### `db_used_data_quota_update_interval_secs` + +- Default: 300 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The interval at which the database used data quota is updated. StarRocks periodically updates the used data quota for all databases to track storage consumption. This value is used for quota enforcement and metrics collection. The minimum allowed interval is 30 seconds to prevent excessive system load. A value less than 30 will be rejected. +- Introduced in: - + +##### `drop_backend_after_decommission` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to delete a BE after the BE is decommissioned. `TRUE` indicates that the BE is deleted immediately after it is decommissioned. `FALSE` indicates that the BE is not deleted after it is decommissioned. +- Introduced in: - + +##### `edit_log_port` + +- Default: 9010 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The port that is used for communication among the Leader, Follower, and Observer FEs in the cluster. +- Introduced in: - + +##### `edit_log_roll_num` + +- Default: 50000 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of metadata log entries that can be written before a log file is created for these log entries. This parameter is used to control the size of log files. The new log file is written to the BDBJE database. +- Introduced in: - + +##### `edit_log_type` + +- Default: BDB +- Type: String +- Unit: - +- Is mutable: No +- Description: The type of edit log that can be generated. Set the value to `BDB`. +- Introduced in: - + +##### `enable_background_refresh_connector_metadata` + +- Default: true in v3.0 and later and false in v2.5 +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable the periodic Hive metadata cache refresh. After it is enabled, StarRocks polls the metastore (Hive Metastore or AWS Glue) of your Hive cluster, and refreshes the cached metadata of the frequently accessed Hive catalogs to perceive data changes. `true` indicates to enable the Hive metadata cache refresh, and `false` indicates to disable it. +- Introduced in: v2.5.5 + +##### `enable_collect_query_detail_info` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to collect the profile of a query. If this parameter is set to `TRUE`, the system collects the profile of the query. If this parameter is set to `FALSE`, the system does not collect the profile of the query. +- Introduced in: - + +##### `enable_create_partial_partition_in_batch` + +- Default: false +- Type: boolean +- Unit: - +- Is mutable: Yes +- Description: When this item is set to `false` (default), StarRocks enforces that batch-created range partitions align to the standard time unit boundaries. It will reject non‑aligned ranges to avoid creating holes. Setting this item to `true` disables that alignment check and allows creating partial (non‑standard) partitions in batch, which can produce gaps or misaligned partition ranges. You should only set it to `true` when you intentionally need partial batch partitions and accept the associated risks. +- Introduced in: v3.2.0 + +##### `enable_internal_sql` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: No +- Description: When this item is set to `true`, internal SQL statements executed by internal components (for example, SimpleExecutor) are preserved and written into internal audit or log messages (and can be further desensitized if `enable_sql_desensitize_in_log` is set). When it is set to `false`, internal SQL text is suppressed: formatting code (SimpleExecutor.formatSQL) returns "?" and the actual statement is not emitted to internal audit or log messages. This configuration does not change execution semantics of internal statements — it only controls logging and visibility of internal SQL for privacy or security. +- Introduced in: - + +##### `enable_legacy_compatibility_for_replication` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable the Legacy Compatibility for Replication. StarRocks may behave differently between the old and new versions, causing problems during cross-cluster data migration. Therefore, you must enable Legacy Compatibility for the target cluster before data migration and disable it after data migration is completed. `true` indicates enabling this mode. +- Introduced in: v3.1.10, v3.2.6 + +##### `enable_show_materialized_views_include_all_task_runs` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Controls how TaskRuns are returned to the SHOW MATERIALIZED VIEWS command. When this item is set to `false`, StarRocks returns only the newest TaskRun per task (legacy behavior for compatibility). When it is set to `true` (default), `TaskManager` may include additional TaskRuns for the same task only when they share the same start TaskRun ID (for example, belong to the same job), preventing unrelated duplicate runs from appearing while allowing multiple statuses tied to one job to be shown. Set this item to `false` to restore single-run output or to surface multi-run job history for debugging and monitoring. +- Introduced in: v3.3.0, v3.4.0, v3.5.0 + +##### `enable_statistics_collect_profile` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to generate profiles for statistics queries. You can set this item to `true` to allow StarRocks to generate query profiles for queries on system statistics. +- Introduced in: v3.1.5 + +##### `enable_task_history_archive` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: When enabled, finished task-run records are archived to the persistent task-run history table and recorded to the edit log so lookups (e.g., `lookupHistory`, `lookupHistoryByTaskNames`, `lookupLastJobOfTasks`) include archived results. Archiving is performed by the FE leader and is skipped during unit tests (`FeConstants.runningUnitTest`). When enabled, in-memory expiration and forced-GC paths are bypassed (the code returns early from `removeExpiredRuns` and `forceGC`), so retention/eviction is handled by the persistent archive instead of `task_runs_ttl_second` and `task_runs_max_history_number`. When disabled, history stays in memory and is pruned by those configurations. +- Introduced in: v3.3.1, v3.4.0, v3.5.0 + +##### `enable_task_run_fe_evaluation` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: When enabled, the FE will perform local evaluation for the system table `task_runs` in `TaskRunsSystemTable.supportFeEvaluation`. FE-side evaluation is only allowed for conjunctive equality predicates comparing a column to a constant and is limited to the columns `QUERY_ID` and `TASK_NAME`. Enabling this improves performance for targeted lookups by avoiding broader scans or additional remote processing; disabling it forces the planner to skip FE evaluation for `task_runs`, which may reduce predicate pruning and affect query latency for those filters. +- Introduced in: v3.3.13, v3.4.3, v3.5.0 + +##### `heartbeat_mgr_blocking_queue_size` + +- Default: 1024 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The size of the blocking queue that stores heartbeat tasks run by the Heartbeat Manager. +- Introduced in: - + +##### `heartbeat_mgr_threads_num` + +- Default: 8 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The number of threads that can be run by the Heartbeat Manager to run heartbeat tasks. +- Introduced in: - + +##### `ignore_materialized_view_error` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether FE ignores the metadata exception caused by materialized view errors. If FE fails to start due to the metadata exception caused by materialized view errors, you can set this parameter to `true` to allow FE to ignore the exception. +- Introduced in: v2.5.10 + +##### `ignore_meta_check` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether non-Leader FEs ignore the metadata gap from the Leader FE. If the value is TRUE, non-Leader FEs ignore the metadata gap from the Leader FE and continue providing data reading services. This parameter ensures continuous data reading services even when you stop the Leader FE for a long period of time. If the value is FALSE, non-Leader FEs do not ignore the metadata gap from the Leader FE and stop providing data reading services. +- Introduced in: - + +##### `ignore_task_run_history_replay_error` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: When StarRocks deserializes TaskRun history rows for `information_schema.task_runs`, a corrupted or invalid JSON row will normally cause deserialization to log a warning and throw a RuntimeException. If this item is set to `true`, the system will catch deserialization errors, skip the malformed record, and continue processing remaining rows instead of failing the query. This will make `information_schema.task_runs` queries tolerant of bad entries in the `_statistics_.task_run_history` table. Note that enabling it will silently drop corrupted history records (potential data loss) instead of surfacing an explicit error. +- Introduced in: v3.3.3, v3.4.0, v3.5.0 + +##### `lock_checker_interval_second` + +- Default: 30 +- Type: long +- Unit: Seconds +- Is mutable: Yes +- Description: Interval, in seconds, between executions of the LockChecker frontend daemon (named "deadlock-checker"). The daemon performs deadlock detection and slow-lock scanning; the configured value is multiplied by 1000 to set the timer in milliseconds. Decreasing this value reduces detection latency but increases scheduling and CPU overhead; increasing it reduces overhead but delays detection and slow-lock reporting. Changes take effect at runtime because the daemon resets its interval each run. This setting interacts with `lock_checker_enable_deadlock_check` (enables deadlock checks) and `slow_lock_threshold_ms` (defines what constitutes a slow lock). +- Introduced in: v3.2.0 + +##### `master_sync_policy` + +- Default: SYNC +- Type: String +- Unit: - +- Is mutable: No +- Description: The policy based on which the leader FE flushes logs to disk. This parameter is valid only when the current FE is a leader FE. Valid values: + - `SYNC`: When a transaction is committed, a log entry is generated and flushed to disk simultaneously. + - `NO_SYNC`: The generation and flushing of a log entry do not occur at the same time when a transaction is committed. + - `WRITE_NO_SYNC`: When a transaction is committed, a log entry is generated simultaneously but is not flushed to disk. + + If you have deployed only one follower FE, we recommend that you set this parameter to `SYNC`. If you have deployed three or more follower FEs, we recommend that you set this parameter and the `replica_sync_policy` both to `WRITE_NO_SYNC`. + +- Introduced in: - + +##### `max_bdbje_clock_delta_ms` + +- Default: 5000 +- Type: Long +- Unit: Milliseconds +- Is mutable: No +- Description: The maximum clock offset that is allowed between the leader FE and the follower or observer FEs in the StarRocks cluster. +- Introduced in: - + +##### `meta_delay_toleration_second` + +- Default: 300 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The maximum duration by which the metadata on the follower and observer FEs can lag behind that on the leader FE. Unit: seconds. If this duration is exceeded, the non-leader FEs stops providing services. +- Introduced in: - + +##### `meta_dir` + +- Default: `StarRocksFE.STARROCKS_HOME_DIR` + "/meta" +- Type: String +- Unit: - +- Is mutable: No +- Description: The directory that stores metadata. +- Introduced in: - + +##### `metadata_ignore_unknown_operation_type` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to ignore an unknown log ID. When an FE is rolled back, the FEs of the earlier version may be unable to recognize some log IDs. If the value is `TRUE`, the FE ignores unknown log IDs. If the value is `FALSE`, the FE exits. +- Introduced in: - + +##### `profile_info_format` + +- Default: default +- Type: String +- Unit: - +- Is mutable: Yes +- Description: The format of the Profile output by the system. Valid values: `default` and `json`. When set to `default`, Profile is of the default format. When set to `json`, the system outputs Profile in JSON format. +- Introduced in: v2.5 + +##### `replica_ack_policy` + +- Default: `SIMPLE_MAJORITY` +- Type: String +- Unit: - +- Is mutable: No +- Description: The policy based on which a log entry is considered valid. The default value `SIMPLE_MAJORITY` specifies that a log entry is considered valid if a majority of follower FEs return ACK messages. +- Introduced in: - + +##### `replica_sync_policy` + +- Default: SYNC +- Type: String +- Unit: - +- Is mutable: No +- Description: The policy based on which the follower FE flushes logs to disk. This parameter is valid only when the current FE is a follower FE. Valid values: + - `SYNC`: When a transaction is committed, a log entry is generated and flushed to disk simultaneously. + - `NO_SYNC`: The generation and flushing of a log entry do not occur at the same time when a transaction is committed. + - `WRITE_NO_SYNC`: When a transaction is committed, a log entry is generated simultaneously but is not flushed to disk. +- Introduced in: - + +##### `start_with_incomplete_meta` + +- Default: false +- Type: boolean +- Unit: - +- Is mutable: No +- Description: When true, the FE will allow startup when image data exists but Berkeley DB JE (BDB) log files are missing or corrupted. `MetaHelper.checkMetaDir()` uses this flag to bypass the safety check that otherwise prevents starting from an image without corresponding BDB logs; starting this way can produce stale or inconsistent metadata and should only be used for emergency recovery. `RestoreClusterSnapshotMgr` temporarily sets this flag to true while restoring a cluster snapshot and then rolls it back; that component also toggles `bdbje_reset_election_group` during restore. Do not enable in normal operation — enable only when recovering from corrupted BDB data or when explicitly restoring an image-based snapshot. +- Introduced in: v3.2.0 + +##### `table_keeper_interval_second` + +- Default: 30 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: Interval, in seconds, between executions of the TableKeeper daemon. The TableKeeperDaemon uses this value (multiplied by 1000) to set its internal timer and periodically runs keeper tasks that ensure history tables exist, correct table properties (replication number) and update partition TTLs. The daemon only performs work on the leader node and updates its runtime interval via setInterval when `table_keeper_interval_second` changes. Increase to reduce scheduling frequency and load; decrease for faster reaction to missing or stale history tables. +- Introduced in: v3.3.1, v3.4.0, v3.5.0 + +##### `task_runs_ttl_second` + +- Default: 7 * 24 * 3600 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: Controls the time-to-live (TTL) for task run history. Lowering this value shortens history retention and reduces memory/disk usage; raising it keeps histories longer but increases resource usage. Adjust together with `task_runs_max_history_number` and `enable_task_history_archive` for predictable retention and storage behavior. +- Introduced in: v3.2.0 + +##### `task_ttl_second` + +- Default: 24 * 3600 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: Time-to-live (TTL) for tasks. For manual tasks (when no schedule is set), TaskBuilder uses this value to compute the task's `expireTime` (`expireTime = now + task_ttl_second * 1000L`). TaskRun also uses this value as an upper bound when computing a run's execute timeout — the effective execute timeout is `min(task_runs_timeout_second, task_runs_ttl_second, task_ttl_second)`. Adjusting this value changes how long manually created tasks remain valid and can indirectly limit the maximum allowed execution time of task runs. +- Introduced in: v3.2.0 + +##### `thrift_rpc_retry_times` + +- Default: 3 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: Controls the total number of attempts a Thrift RPC call will make. This value is used by `ThriftRPCRequestExecutor` (and callers such as `NodeMgr` and `VariableMgr`) as the loop count for retries — i.e., a value of 3 allows up to three attempts including the initial try. On `TTransportException` the executor will try to reopen the connection and retry up to this count; it will not retry when the cause is a `SocketTimeoutException` or when reopen fails. Each attempt is subject to the per-attempt timeout configured by `thrift_rpc_timeout_ms`. Increasing this value improves resilience to transient connection failures but can increase overall RPC latency and resource usage. +- Introduced in: v3.2.0 + +##### `thrift_rpc_strict_mode` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: No +- Description: Controls the TBinaryProtocol "strict read" mode used by the Thrift server. This value is passed as the first argument to org.apache.thrift.protocol.TBinaryProtocol.Factory in the Thrift server stack and affects how incoming Thrift messages are parsed and validated. When `true` (default), the server enforces strict Thrift encoding/version checks and honors the configured `thrift_rpc_max_body_size` limit; when `false`, the server accepts non-strict (legacy/lenient) message formats, which can improve compatibility with older clients but may bypass some protocol validations. Use caution changing this on a running cluster because it is not mutable and affects interoperability and parsing safety. +- Introduced in: v3.2.0 + +##### `thrift_rpc_timeout_ms` + +- Default: 10000 +- Type: Int +- Unit: Milliseconds +- Is mutable: Yes +- Description: Timeout (in milliseconds) used as the default network/socket timeout for Thrift RPC calls. It is passed to TSocket when creating Thrift clients in `ThriftConnectionPool` (used by the frontend and backend pools) and is also added to an operation's execution timeout (e.g., ExecTimeout*1000 + `thrift_rpc_timeout_ms`) when computing RPC call timeouts in places such as `ConfigBase`, `LeaderOpExecutor`, `GlobalStateMgr`, `NodeMgr`, `VariableMgr`, and `CheckpointWorker`. Increasing this value makes RPC calls tolerate longer network or remote processing delays; decreasing it causes faster failover on slow networks. Changing this value affects connection creation and request deadlines across the FE code paths that perform Thrift RPCs. +- Introduced in: v3.2.0 + +##### `txn_rollback_limit` + +- Default: 100 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The maximum number of transactions that can be rolled back. +- Introduced in: - + +### User, role, and privilege + +##### `enable_task_info_mask_credential` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: When true, StarRocks redacts credentials from task SQL definitions before returning them in `information_schema.tasks` and `information_schema.task_runs` by applying SqlCredentialRedactor.redact to the DEFINITION column. In `information_schema.task_runs` the same redaction is applied whether the definition comes from the task run status or, when empty, from the task definition lookup. When false, raw task definitions are returned (may expose credentials). Masking is CPU/string-processing work and can be time-consuming when the number of tasks or `task_runs` is large; disable only if you need unredacted definitions and accept the security risk. +- Introduced in: v3.5.6 + +##### `privilege_max_role_depth` + +- Default: 16 +- Type: Int +- Unit: +- Is mutable: Yes +- Description: The maximum role depth (level of inheritance) of a role. +- Introduced in: v3.0.0 + +##### `privilege_max_total_roles_per_user` + +- Default: 64 +- Type: Int +- Unit: +- Is mutable: Yes +- Description: The maximum number of roles a user can have. +- Introduced in: v3.0.0 + +### Query engine + +##### `brpc_send_plan_fragment_timeout_ms` + +- Default: 60000 +- Type: Int +- Unit: Milliseconds +- Is mutable: Yes +- Description: Timeout in milliseconds applied to the BRPC TalkTimeoutController before sending a plan fragment. `BackendServiceClient.sendPlanFragmentAsync` sets this value prior to calling the backend `execPlanFragmentAsync`. It governs how long BRPC will wait when borrowing an idle connection from the connection pool and while performing the send; if exceeded, the RPC will fail and may trigger the method's retry logic. Set this lower to fail fast under contention, or raise it to tolerate transient pool exhaustion or slow networks. Be cautious: very large values can delay failure detection and block request threads. +- Introduced in: v3.3.11, v3.4.1, v3.5.0 + +##### `connector_table_query_trigger_analyze_large_table_interval` + +- Default: 12 * 3600 +- Type: Int +- Unit: Second +- Is mutable: Yes +- Description: The interval for query-trigger ANALYZE tasks of large tables. +- Introduced in: v3.4.0 + +##### `connector_table_query_trigger_analyze_max_pending_task_num` + +- Default: 100 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: Maximum number of query-trigger ANALYZE tasks that are in Pending state on the FE. +- Introduced in: v3.4.0 + +##### `connector_table_query_trigger_analyze_max_running_task_num` + +- Default: 2 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: Maximum number of query-trigger ANALYZE tasks that are in Running state on the FE. +- Introduced in: v3.4.0 + +##### `connector_table_query_trigger_analyze_small_table_interval` + +- Default: 2 * 3600 +- Type: Int +- Unit: Second +- Is mutable: Yes +- Description: The interval for query-trigger ANALYZE tasks of small tables. +- Introduced in: v3.4.0 + +##### `connector_table_query_trigger_analyze_small_table_rows` + +- Default: 10000000 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The threshold for determining whether a table is a small table for query-trigger ANALYZE tasks. +- Introduced in: v3.4.0 + +##### `connector_table_query_trigger_task_schedule_interval` + +- Default: 30 +- Type: Int +- Unit: Second +- Is mutable: Yes +- Description: The interval at which the Scheduler thread schedules the query-trigger background tasks. This item is to replace `connector_table_query_trigger_analyze_schedule_interval` introduced in v3.4.0. Here, the background tasks refer `ANALYZE` tasks in v3.4,and the collection task of low-cardinality columns' dictionary in versions later than v3.4. +- Introduced in: v3.4.2 + +##### `create_table_max_serial_replicas` + +- Default: 128 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of replicas to create serially. If actual replica count exceeds this value, replicas will be created concurrently. Try to reduce this value if table creation is taking a long time to complete. +- Introduced in: - + +##### `default_mv_partition_refresh_number` + +- Default: 1 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: When a materialized view refresh involves multiple partitions, this parameter controls how many partitions are refreshed in a single batch by default. +Starting from version 3.3.0, the system defaults to refreshing one partition at a time to avoid potential out-of-memory (OOM) issues. In earlier versions, all partitions were refreshed at once by default, which could lead to memory exhaustion and task failure. However, note that when a materialized view refresh involves a large number of partitions, refreshing only one partition at a time may lead to excessive scheduling overhead, longer overall refresh time, and a large number of refresh records. In such cases, it is recommended to adjust this parameter appropriately to improve refresh efficiency and reduce scheduling costs. +- Introduced in: v3.3.0 + +##### `default_mv_refresh_immediate` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to refresh an asynchronous materialized view immediately after creation. When this item is set to `true`, newly created materialized view will be refreshed immediately. +- Introduced in: v3.2.3 + +##### `dynamic_partition_check_interval_seconds` + +- Default: 600 +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: The interval at which new data is checked. If new data is detected, StarRocks automatically creates partitions for the data. +- Introduced in: - + +##### `dynamic_partition_enable` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable the dynamic partitioning feature. When this feature is enabled, StarRocks dynamically creates partitions for new data and automatically deletes expired partitions to ensure the freshness of data. +- Introduced in: - + +##### `enable_active_materialized_view_schema_strict_check` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to strictly check the length consistency of data types when activating an inactive materialized view. When this item is set to `false`, the activation of the materialized view is not affected if the length of the data types has changed in the base table. +- Introduced in: v3.3.4 + +##### `enable_backup_materialized_view` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable the BACKUP and RESTORE of asynchronous materialized views when backing up or restoring a specific database. If this item is set to `false`, StarRocks will skip backing up asynchronous materialized views. +- Introduced in: v3.2.0 + +##### `enable_collect_full_statistic` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable automatic full statistics collection. This feature is enabled by default. +- Introduced in: - + +##### `enable_colocate_mv_index` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to support colocating the synchronous materialized view index with the base table when creating a synchronous materialized view. If this item is set to `true`, tablet sink will speed up the write performance of synchronous materialized views. +- Introduced in: v3.2.0 + +##### `enable_decimal_v3` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to support the DECIMAL V3 data type. +- Introduced in: - + +##### `enable_experimental_mv` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable the asynchronous materialized view feature. TRUE indicates this feature is enabled. From v2.5.2 onwards, this feature is enabled by default. For versions earlier than v2.5.2, this feature is disabled by default. +- Introduced in: v2.4 + +##### `enable_local_replica_selection` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to select local replicas for queries. Local replicas reduce the network transmission cost. If this parameter is set to TRUE, the CBO preferentially selects tablet replicas on BEs that have the same IP address as the current FE. If this parameter is set to `FALSE`, both local replicas and non-local replicas can be selected. +- Introduced in: - + +##### `enable_materialized_view` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable the creation of materialized views. +- Introduced in: - + +##### `enable_materialized_view_external_table_precise_refresh` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Set this item to `true` to enable an internal optimization for materialized view refresh when a base table is an external (non-cloud-native) table. When enabled, the materialized view refresh processor computes candidate partitions and refreshes only the affected base-table partitions instead of all partitions, reducing I/O and refresh cost. Set it to `false` to force full-partition refresh of external tables. +- Introduced in: v3.2.9 + +##### `enable_materialized_view_metrics_collect` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to collect monitoring metrics for asynchronous materialized views by default. +- Introduced in: v3.1.11, v3.2.5 + +##### `enable_materialized_view_spill` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable Intermediate Result Spilling for materialized view refresh tasks. +- Introduced in: v3.1.1 + +##### `enable_materialized_view_text_based_rewrite` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable text-based query rewrite by default. If this item is set to `true`, the system builds the abstract syntax tree while creating an asynchronous materialized view. +- Introduced in: v3.2.5 + +##### `enable_mv_automatic_active_check` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable the system to automatically check and re-activate the asynchronous materialized views that are set inactive because their base tables (views) had undergone Schema Change or had been dropped and re-created. Please note that this feature will not re-activate the materialized views that are manually set inactive by users. +- Introduced in: v3.1.6 + +##### `enable_mv_automatic_repairing_for_broken_base_tables` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: When this item is set to `true`, StarRocks will attempt to automatically repair materialized view base-table metadata when a base external table is dropped and recreated or its table identifier changes. The repair flow can update the materialized view's base table information, collect partition-level repair information for external table partitions, and drive partition refresh decisions for async auto-refresh materialized views while honoring `autoRefreshPartitionsLimit`. Currently the automated repair supports Hive external tables; unsupported table types will cause the materialized view to be set inactive and a repair exception. Partition information collection is non-blocking and failures are logged. +- Introduced in: v3.3.19, v3.4.8, v3.5.6 + +##### `enable_predicate_columns_collection` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable predicate columns collection. If disabled, predicate columns will not be recorded during query optimization. +- Introduced in: - + +##### `enable_query_queue_v2` + +- Default: true +- Type: boolean +- Unit: - +- Is mutable: No +- Description: When true, switches the FE slot-based query scheduler to Query Queue V2. The flag is read by the slot manager and trackers (for example, `BaseSlotManager.isEnableQueryQueueV2` and `SlotTracker#createSlotSelectionStrategy`) to choose `SlotSelectionStrategyV2` instead of the legacy strategy. `query_queue_v2_xxx` configuration options and `QueryQueueOptions` take effect only when this flag is enabled. From v4.1 onwards, the default value is changed from `false` to `true`. +- Introduced in: v3.3.4, v3.4.0, v3.5.0 + +##### `enable_sql_blacklist` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable blacklist check for SQL queries. When this feature is enabled, queries in the blacklist cannot be executed. +- Introduced in: - + +##### `enable_statistic_collect` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to collect statistics for the CBO. This feature is enabled by default. +- Introduced in: - + +##### `enable_statistic_collect_on_first_load` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Controls automatic statistics collection and maintenance triggered by data loading operations. This includes: + - Statistics collection when data is first loaded into a partition (partition version equals 2). + - Statistics collection when data is loaded into empty partitions of multi-partition tables. + - Statistics copying and updating for INSERT OVERWRITE operations. + + **Decision Policy for Statistics Collection Type:** + + - For INSERT OVERWRITE: `deltaRatio = |targetRows - sourceRows| / (sourceRows + 1)` + - If `deltaRatio < statistic_sample_collect_ratio_threshold_of_first_load` (Default: 0.1), statistics collection will not be performed. Only the existing statistics will be copied. + - Else, if `targetRows > statistic_sample_collect_rows` (Default: 200000), SAMPLE statistics collection is used. + - Else, FULL statistics collection is used. + + - For First Load: `deltaRatio = loadRows / (totalRows + 1)` + - If `deltaRatio < statistic_sample_collect_ratio_threshold_of_first_load` (Default: 0.1), statistics collection will not be performed. + - Else, if `loadRows > statistic_sample_collect_rows` (Default: 200000), SAMPLE statistics collection is used. + - Else, FULL statistics collection is used. + + **Synchronization Behavior:** + + - For DML statements (INSERT INTO/INSERT OVERWRITE): Synchronous mode with table lock. The load operation waits for statistics collection to complete (up to `semi_sync_collect_statistic_await_seconds`). + - For Stream Load and Broker Load: Asynchronous mode without lock. Statistics collection runs in background without blocking the load operation. + + :::note + Disabling this configuration will prevent all loading-triggered statistics operations, including statistics maintenance for INSERT OVERWRITE, which may result in tables lacking statistics. If new tables are frequently created and data is frequently loaded, enabling this feature will increase memory and CPU overhead. + ::: + +- Introduced in: v3.1 + +##### `enable_statistic_collect_on_update` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Controls whether UPDATE statements can trigger automatic statistics collection. When enabled, UPDATE operations that modify table data may schedule statistics collection through the same ingestion-based statistics framework controlled by `enable_statistic_collect_on_first_load`. Disabling this configuration skips statistics collection for UPDATE statements while keeping load-triggered statistics collection behavior unchanged. +- Introduced in: v3.5.11, v4.0.4 + +##### `enable_udf` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: No +- Description: Whether to enable UDF. +- Introduced in: - + +##### `expr_children_limit` + +- Default: 10000 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of child expressions allowed in an expression. +- Introduced in: - + +##### `histogram_buckets_size` + +- Default: 64 +- Type: Long +- Unit: - +- Is mutable: Yes +- Description: The default bucket number for a histogram. +- Introduced in: - + +##### `histogram_max_sample_row_count` + +- Default: 10000000 +- Type: Long +- Unit: - +- Is mutable: Yes +- Description: The maximum number of rows to collect for a histogram. +- Introduced in: - + +##### `histogram_mcv_size` + +- Default: 100 +- Type: Long +- Unit: - +- Is mutable: Yes +- Description: The number of most common values (MCV) for a histogram. +- Introduced in: - + +##### `histogram_sample_ratio` + +- Default: 0.1 +- Type: Double +- Unit: - +- Is mutable: Yes +- Description: The sampling ratio for a histogram. +- Introduced in: - + +##### `http_slow_request_threshold_ms` + +- Default: 5000 +- Type: Int +- Unit: Milliseconds +- Is mutable: Yes +- Description: If the response time for an HTTP request exceeds the value specified by this parameter, a log is generated to track this request. +- Introduced in: v2.5.15, v3.1.5 + +##### `lock_checker_enable_deadlock_check` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: When enabled, the LockChecker thread performs JVM-level deadlock detection using ThreadMXBean.findDeadlockedThreads() and logs the offending threads' stack traces. The check runs inside the LockChecker daemon (whose frequency is controlled by `lock_checker_interval_second`) and writes detailed stack information to the log, which may be CPU- and I/O-intensive. Enable this option only for troubleshooting live or reproducible deadlock issues; leaving it enabled in normal operation can increase overhead and log volume. +- Introduced in: v3.2.0 + +##### `low_cardinality_threshold` + +- Default: 255 +- Type: Int +- Unit: - +- Is mutable: No +- Description: Threshold of low cardinality dictionary. +- Introduced in: v3.5.0 + +##### `materialized_view_min_refresh_interval` + +- Default: 60 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The minimum allowed refresh interval (in seconds) for ASYNC materialized view schedules. When a materialized view is created with a time-based interval, the interval is converted to seconds and must not be less tham this value; otherwise the CREATE/ALTER operation fails with a DDL error. If this value is greater than 0, the check is enforced; set it to 0 or a negative value to disable the limit, which prevents excessive TaskManager scheduling and high FE memory/CPU usage from overly frequent refreshes. This item does not apply to `EVENT_TRIGGERED` refreshes. +- Introduced in: v3.3.0, v3.4.0, v3.5.0 + +##### `materialized_view_refresh_ascending` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: When this item is set to `true`, materialized view partition refresh will iterate partitions in ascending partition-key order (oldest to newest). When it is set to `false` (default), the system iterates in descending order (newest to oldest). StarRocks uses this item in both list- and range-partitioned materialized view refresh logic to choose which partitions to process when partition refresh limits apply and to compute the next start/end partition boundaries for subsequent TaskRun executions. Changing this item alters which partitions are refreshed first and how the next partition range is derived; for range-partitioned materialized views, the scheduler validates new start/end and will raise an error if a change would create a repeated boundary (dead-loop), so set this item with care. +- Introduced in: v3.3.1, v3.4.0, v3.5.0 + +##### `max_allowed_in_element_num_of_delete` + +- Default: 10000 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of elements allowed for the IN predicate in a DELETE statement. +- Introduced in: - + +##### `max_create_table_timeout_second` + +- Default: 600 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The maximum timeout duration for creating a table. +- Introduced in: - + +##### `max_distribution_pruner_recursion_depth` + +- Default: 100 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description:: The maximum recursion depth allowed by the partition pruner. Increasing the recursion depth can prune more elements but also increases CPU consumption. +- Introduced in: - + +##### `max_partitions_in_one_batch` + +- Default: 4096 +- Type: Long +- Unit: - +- Is mutable: Yes +- Description: The maximum number of partitions that can be created when you bulk create partitions. +- Introduced in: - + +##### `max_planner_scalar_rewrite_num` + +- Default: 100000 +- Type: Long +- Unit: - +- Is mutable: Yes +- Description: The maximum number of times that the optimizer can rewrite a scalar operator. +- Introduced in: - + +##### `max_query_queue_history_slots_number` + +- Default: 0 +- Type: Int +- Unit: Slots +- Is mutable: Yes +- Description: Controls how many recently released (history) allocated slots are retained per query queue for monitoring and observability. When `max_query_queue_history_slots_number` is set to a value `> 0`, BaseSlotTracker keeps up to that many most-recently released LogicalSlot entries in an in-memory queue, evicting the oldest when the limit is exceeded. Enabling this causes getSlots() to include these history entries (newest first), allows BaseSlotTracker to attempt registering slots with the ConnectContext for richer ExtraMessage data, and lets LogicalSlot.ConnectContextListener attach query finish metadata to history slots. When `max_query_queue_history_slots_number` `<= 0` the history mechanism is disabled (no extra memory used). Use a reasonable value to balance observability and memory overhead. +- Introduced in: v3.5.0 + +##### `max_query_retry_time` + +- Default: 2 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of query retries on an FE. +- Introduced in: - + +##### `max_running_rollup_job_num_per_table` + +- Default: 1 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of rollup jobs can run in parallel for a table. +- Introduced in: - + +##### `max_scalar_operator_flat_children` + +- Default:10000 +- Type:Int +- Unit:- +- Is mutable: Yes +- Description:The maximum number of flat children for ScalarOperator. You can set this limit to prevent the optimizer from using too much memory. +- Introduced in: - + +##### `max_scalar_operator_optimize_depth` + +- Default:256 +- Type:Int +- Unit:- +- Is mutable: Yes +- Description: The maximum depth that ScalarOperator optimization can be applied. +- Introduced in: - + +##### `mv_active_checker_interval_seconds` + +- Default: 60 +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: When the background `active_checker` thread is enabled, the system will periodically detect and automatically reactivate materialized views that became Inactive due to schema changes or rebuilds of their base tables (or views). This parameter controls the scheduling interval of the checker thread, in seconds. The default value is system-defined. +- Introduced in: v3.1.6 + +##### `mv_rewrite_consider_data_layout_mode` + +- Default: `enable` +- Type: String +- Unit: - +- Is mutable: Yes +- Description: Controls whether materialized view rewrite should take the base table data layout into account when selecting the best materialized view. Valid values: + - `disable`: Never use data-layout criteria when choosing between candidate materialized views. + - `enable`: Use data-layout criteria only when the query is recognized as layout-sensitive. + - `force`: Always apply data-layout criteria when selecting the best materialized view. + Changing this item affects `BestMvSelector` behavior and can improve or broaden rewrite applicability depending on whether physical layout matters for plan correctness or performance. +- Introduced in: - + +##### `publish_version_interval_ms` + +- Default: 10 +- Type: Int +- Unit: Milliseconds +- Is mutable: No +- Description: The time interval at which release validation tasks are issued. +- Introduced in: - + +##### `query_queue_slots_estimator_strategy` + +- Default: MAX +- Type: String +- Unit: - +- Is mutable: Yes +- Description: Selects the slot estimation strategy used for queue-based queries when `enable_query_queue_v2` is true. Valid values: MBE (memory-based), PBE (parallelism-based), MAX (take max of MBE and PBE) and MIN (take min of MBE and PBE). MBE estimates slots from predicted memory or plan costs divided by the per-slot memory target and is capped by `totalSlots`. PBE derives slots from fragment parallelism (scan range counts or cardinality / rows-per-slot) and a CPU-cost based calculation (using CPU costs per slot), then bounds the result within [numSlots/2, numSlots]. MAX and MIN combine MBE and PBE by taking their maximum or minimum respectively. If the configured value is invalid, the default (`MAX`) is used. +- Introduced in: v3.5.0 + +##### `query_queue_v2_concurrency_level` + +- Default: 4 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: Controls how many logical concurrency "layers" are used when computing the system's total query slots. In shared-nothing mode the total slots = `query_queue_v2_concurrency_level` * number_of_BEs * cores_per_BE (derived from BackendResourceStat). In multi-warehouse mode the effective concurrency is scaled down to max(1, `query_queue_v2_concurrency_level` / 4). If the configured value is non-positive it is treated as `4`. Changing this value increases or decreases totalSlots (and therefore concurrent query capacity) and affects per-slot resources: memBytesPerSlot is derived by dividing per-worker memory by (cores_per_worker * concurrency), and CPU accounting uses `query_queue_v2_cpu_costs_per_slot`. Set it proportional to cluster size; very large values may reduce per-slot memory and cause resource fragmentation. +- Introduced in: v3.3.4, v3.4.0, v3.5.0 + +##### `query_queue_v2_cpu_costs_per_slot` + +- Default: 1000000000 +- Type: Long +- Unit: planner CPU cost units +- Is mutable: Yes +- Description: Per-slot CPU cost threshold used to estimate how many slots a query needs from its planner CPU cost. The scheduler computes slots as integer(`plan_cpu_costs` / `query_queue_v2_cpu_costs_per_slot`) and then clamps the result to the range [1, totalSlots] (totalSlots is derived from the query queue V2 `V2` parameters). The V2 code normalizes non-positive settings to 1 (Math.max(1, value)), so a non-positive value effectively becomes `1`. Increasing this value reduces slots allocated per query (favoring fewer, larger-slot queries); decreasing it increases slots per query. Tune together with `query_queue_v2_num_rows_per_slot` and concurrency settings to control parallelism vs. resource granularity. +- Introduced in: v3.3.4, v3.4.0, v3.5.0 + +##### `query_queue_v2_num_rows_per_slot` + +- Default: 4096 +- Type: Int +- Unit: Rows +- Is mutable: Yes +- Description: The target number of source-row records assigned to a single scheduling slot when estimating per-query slot count. StarRocks computes `estimated_slots` = (cardinality of the Source Node) / `query_queue_v2_num_rows_per_slot`, then clamps the result to the range [1, totalSlots] and enforces a minimum of 1 if the computed value is non-positive. totalSlots is derived from available resources (roughly DOP * `query_queue_v2_concurrency_level` * number_of_workers/BE) and therefore depends on cluster/core counts. Increase this value to reduce slot count (each slot handles more rows) and lower scheduling overhead; decrease it to increase parallelism (more, smaller slots), up to the resource limit. +- Introduced in: v3.3.4, v3.4.0, v3.5.0 + +##### `query_queue_v2_schedule_strategy` + +- Default: SWRR +- Type: String +- Unit: - +- Is mutable: Yes +- Description: Selects the scheduling policy used by Query Queue V2 to order pending queries. Supported values (case-insensitive) are `SWRR` (Smooth Weighted Round Robin) — the default, suitable for mixed/hybrid workloads that need fair weighted sharing — and `SJF` (Short Job First + Aging) — prioritizes short jobs while using aging to avoid starvation. The value is parsed with case-insensitive enum lookup; an unrecognized value is logged as an error and the default policy is used. This configuration only affects behavior when Query Queue V2 is enabled and interacts with V2 sizing settings such as `query_queue_v2_concurrency_level`. +- Introduced in: v3.3.12, v3.4.2, v3.5.0 + +##### `semi_sync_collect_statistic_await_seconds` + +- Default: 30 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: Maximum wait time for semi-synchronous statistics collection during DML operations (INSERT INTO and INSERT OVERWRITE statements). Stream Load and Broker Load use asynchronous mode and are not affected by this configuration. If statistics collection time exceeds this value, the load operation continues without waiting for collection to complete. This configuration works in conjunction with `enable_statistic_collect_on_first_load`. +- Introduced in: v3.1 + +##### `slow_query_analyze_threshold` + +- Default: 5 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description:: The execution time threshold for queries to trigger the analysis of Query Feedback. +- Introduced in: v3.4.0 + +##### `statistic_analyze_status_keep_second` + +- Default: 3 * 24 * 3600 +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: The duration to retain the history of collection tasks. The default value is 3 days. +- Introduced in: - + +##### `statistic_auto_analyze_end_time` + +- Default: 23:59:59 +- Type: String +- Unit: - +- Is mutable: Yes +- Description: The end time of automatic collection. Value range: `00:00:00` - `23:59:59`. +- Introduced in: - + +##### `statistic_auto_analyze_start_time` + +- Default: 00:00:00 +- Type: String +- Unit: - +- Is mutable: Yes +- Description: The start time of automatic collection. Value range: `00:00:00` - `23:59:59`. +- Introduced in: - + +##### `statistic_auto_collect_ratio` + +- Default: 0.8 +- Type: Double +- Unit: - +- Is mutable: Yes +- Description: The threshold for determining whether the statistics for automatic collection are healthy. If statistics health is below this threshold, automatic collection is triggered. +- Introduced in: - + +##### `statistic_auto_collect_small_table_rows` + +- Default: 10000000 +- Type: Long +- Unit: - +- Is mutable: Yes +- Description: Threshold to determine whether a table in an external data source (Hive, Iceberg, Hudi) is a small table during automatic collection. If the table has rows less than this value, the table is considered a small table. +- Introduced in: v3.2 + +##### `statistic_cache_columns` + +- Default: 100000 +- Type: Long +- Unit: - +- Is mutable: No +- Description: The number of rows that can be cached for the statistics table. +- Introduced in: - + +##### `statistic_cache_thread_pool_size` + +- Default: 10 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The size of the thread-pool which will be used to refresh statistic caches. +- Introduced in: - + +##### `statistic_collect_interval_sec` + +- Default: 5 * 60 +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: The interval for checking data updates during automatic collection. +- Introduced in: - + +##### `statistic_max_full_collect_data_size` + +- Default: 100 * 1024 * 1024 * 1024 +- Type: Long +- Unit: bytes +- Is mutable: Yes +- Description: The data size threshold for the automatic collection of statistics. If the total size exceeds this value, then sampled collection is performed instead of full. +- Introduced in: - + +##### `statistic_sample_collect_rows` + +- Default: 200000 +- Type: Long +- Unit: - +- Is mutable: Yes +- Description: The row count threshold for deciding between SAMPLE and FULL statistics collection during loading-triggered statistics operations. If the number of loaded or changed rows exceeds this threshold (default 200,000), SAMPLE statistics collection is used; otherwise, FULL statistics collection is used. This setting works in conjunction with `enable_statistic_collect_on_first_load` and `statistic_sample_collect_ratio_threshold_of_first_load`. +- Introduced in: - + +##### `statistic_update_interval_sec` + +- Default: 24 * 60 * 60 +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: The interval at which the cache of statistical information is updated. +- Introduced in: - + +##### `task_check_interval_second` + +- Default: 60 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: Interval between executions of task background jobs. GlobalStateMgr uses this value to schedule the TaskCleaner FrontendDaemon which invokes `doTaskBackgroundJob()`; the value is multiplied by 1000 to set the daemon interval in milliseconds. Decreasing the value makes background maintenance (task cleanup, checks) run more frequently and react faster but increases CPU/IO overhead; increasing it reduces overhead but delays cleanup and detection of stale tasks. Tune this value to balance maintenance responsiveness and resource usage. +- Introduced in: v3.2.0 + +##### `task_min_schedule_interval_s` + +- Default: 10 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: Minimum allowed schedule interval (in seconds) for task schedules checked by the SQL layer. When a task is submitted, TaskAnalyzer converts the schedule period to seconds and rejects the submission with `ERR_INVALID_PARAMETER` if the period is smaller than `task_min_schedule_interval_s`. This prevents creating tasks that run too frequently and protects the scheduler from high-frequency tasks. If a schedule has no explicit start time, TaskAnalyzer sets the start time to the current epoch seconds. +- Introduced in: v3.3.0, v3.4.0, v3.5.0 + +##### `task_runs_timeout_second` + +- Default: 4 * 3600 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: Default execution timeout (in seconds) for a TaskRun. This item is used by TaskRun execution as the baseline timeout. If the task run's properties include session variables `query_timeout` or `insert_timeout` with a positive integer value, the runtime uses the larger value between that session timeout and `task_runs_timeout_second`. The effective timeout is then bounded to not exceed the configured `task_runs_ttl_second` and `task_ttl_second`. Set this item to limit how long a task run may execute. Very large values may be clipped by the task/task-run TTL settings. +- Introduced in: - + +### Loading and unloading + +##### `broker_load_default_timeout_second` + +- Default: 14400 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The timeout duration for a Broker Load job. +- Introduced in: - + +##### `desired_max_waiting_jobs` + +- Default: 1024 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of pending jobs in an FE. The number refers to all jobs, such as table creation, loading, and schema change jobs. If the number of pending jobs in an FE reaches this value, the FE will reject new load requests. This parameter takes effect only for asynchronous loading. From v2.5 onwards, the default value is changed from 100 to 1024. +- Introduced in: - + +##### `disable_load_job` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to disable loading when the cluster encounters an error. This prevents any loss caused by cluster errors. The default value is `FALSE`, indicating that loading is not disabled. `TRUE` indicates loading is disabled and the cluster is in read-only state. +- Introduced in: - + +##### `empty_load_as_error` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to return an error message "all partitions have no load data" if no data is loaded. Valid values: + - `true`: If no data is loaded, the system displays a failure message and returns an error "all partitions have no load data". + - `false`: If no data is loaded, the system displays a success message and returns OK, instead of an error. +- Introduced in: - + +##### `enable_routine_load_lag_metrics` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to collect Routine Load Kafka partition offset lag metrics. Please note that set this item to `true` will call the Kafka API to get the partition's latest offset. +- Introduced in: - + +##### `enable_sync_publish` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to synchronously execute the apply task at the publish phase of a load transaction. This parameter is applicable only to Primary Key tables. Valid values: + - `TRUE` (default): The apply task is synchronously executed at the publish phase of a load transaction. It means that the load transaction is reported as successful only after the apply task is completed, and the loaded data can truly be queried. When a task loads a large volume of data at a time or loads data frequently, setting this parameter to `true` can improve query performance and stability, but may increase load latency. + - `FALSE`: The apply task is asynchronously executed at the publish phase of a load transaction. It means that the load transaction is reported as successful after the apply task is submitted, but the loaded data cannot be immediately queried. In this case, concurrent queries need to wait for the apply task to complete or time out before they can continue. When a task loads a large volume of data at a time or loads data frequently, setting this parameter to `false` may affect query performance and stability. +- Introduced in: v3.2.0 + +##### `export_checker_interval_second` + +- Default: 5 +- Type: Int +- Unit: Seconds +- Is mutable: No +- Description: The time interval at which load jobs are scheduled. +- Introduced in: - + +##### `export_max_bytes_per_be_per_task` + +- Default: 268435456 +- Type: Long +- Unit: Bytes +- Is mutable: Yes +- Description: The maximum amount of data that can be exported from a single BE by a single data unload task. +- Introduced in: - + +##### `export_running_job_num_limit` + +- Default: 5 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of data exporting tasks that can run in parallel. +- Introduced in: - + +##### `export_task_default_timeout_second` + +- Default: 2 * 3600 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The timeout duration for a data exporting task. +- Introduced in: - + +##### `export_task_pool_size` + +- Default: 5 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The size of the unload task thread pool. +- Introduced in: - + +##### `external_table_commit_timeout_ms` + +- Default: 10000 +- Type: Int +- Unit: Milliseconds +- Is mutable: Yes +- Description: The timeout duration for committing (publishing) a write transaction to a StarRocks external table. The default value `10000` indicates a 10-second timeout duration. +- Introduced in: - + +##### `finish_transaction_default_lock_timeout_ms` + +- Default: 1000 +- Type: Int +- Unit: MilliSeconds +- Is mutable: Yes +- Description: The default timeout for acquiring the db and table lock during finishing transaction. +- Introduced in: v4.0.0, v3.5.8 + +##### `history_job_keep_max_second` + +- Default: 7 * 24 * 3600 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The maximum duration a historical job can be retained, such as schema change jobs. +- Introduced in: - + +##### `insert_load_default_timeout_second` + +- Default: 3600 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The timeout duration for the INSERT INTO statement that is used to load data. +- Introduced in: - + +##### `label_clean_interval_second` + +- Default: 4 * 3600 +- Type: Int +- Unit: Seconds +- Is mutable: No +- Description: The time interval at which labels are cleaned up. Unit: second. We recommend that you specify a short time interval to ensure that historical labels can be cleaned up in a timely manner. +- Introduced in: - + +##### `label_keep_max_num` + +- Default: 1000 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of load jobs that can be retained within a period of time. If this number is exceeded, the information of historical jobs will be deleted. +- Introduced in: - + +##### `label_keep_max_second` + +- Default: 3 * 24 * 3600 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The maximum duration in seconds to keep the labels of load jobs that have been completed and are in the FINISHED or CANCELLED state. The default value is 3 days. After this duration expires, the labels will be deleted. This parameter applies to all types of load jobs. A value too large consumes a lot of memory. +- Introduced in: - + +##### `load_checker_interval_second` + +- Default: 5 +- Type: Int +- Unit: Seconds +- Is mutable: No +- Description: The time interval at which load jobs are processed on a rolling basis. +- Introduced in: - + +##### `load_parallel_instance_num` + +- Default: 1 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: Controls the number of parallel load fragment instances created on a single host for broker and stream loads. LoadPlanner uses this value as the per-host degree of parallelism unless the session enables adaptive sink DOP; if the session variable `enable_adaptive_sink_dop` is true, the session`s `sink_degree_of_parallelism` overrides this configuration. When shuffle is required, this value is applied to fragment parallel execution (scan fragment and sink fragment parallel exec instances). When no shuffle is needed, it is used as the sink pipeline DOP. Note: loads from local files are forced to a single instance (pipeline DOP = 1, parallel exec = 1) to avoid local disk contention. Increasing this number raises per-host concurrency and throughput but may increase CPU, memory and I/O contention. +- Introduced in: v3.2.0 + +##### `load_straggler_wait_second` + +- Default: 300 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The maximum loading lag that can be tolerated by a BE replica. If this value is exceeded, cloning is performed to clone data from other replicas. +- Introduced in: - + +##### `loads_history_retained_days` + +- Default: 30 +- Type: Int +- Unit: Days +- Is mutable: Yes +- Description: Number of days to retain load history in the internal `_statistics_.loads_history` table. This value is used for table creation to set the table property `partition_live_number` and is passed to `TableKeeper` (clamped to a minimum of 1) to determine how many daily partitions to keep. Increasing or decreasing this value adjusts how long completed load jobs are retained in daily partitions; it affects new table creation and the keeper's pruning behavior but does not automatically recreate past partitions. The `LoadsHistorySyncer` relies on this retention when managing the loads history lifecycle; its sync cadence is controlled by `loads_history_sync_interval_second`. +- Introduced in: v3.3.6, v3.4.0, v3.5.0 + +##### `loads_history_sync_interval_second` + +- Default: 60 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: Interval (in seconds) used by LoadsHistorySyncer to schedule periodic syncs of finished load jobs from `information_schema.loads` into the internal `_statistics_.loads_history` table. The value is multiplied by 1000 in the constructor to set the FrontendDaemon interval. The syncer skips the first run (to allow table creation) and only imports loads that finished more than one minute ago; small values increase DML and executor load, while larger values delay availability of historical load records. See `loads_history_retained_days` for retention/partitioning behavior of the target table. +- Introduced in: v3.3.6, v3.4.0, v3.5.0 + +##### `max_broker_load_job_concurrency` + +- Default: 5 +- Alias: `async_load_task_pool_size` +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of concurrent Broker Load jobs allowed within the StarRocks cluster. This parameter is valid only for Broker Load. The value of this parameter must be less than the value of `max_running_txn_num_per_db`. From v2.5 onwards, the default value is changed from `10` to `5`. +- Introduced in: - + +##### `max_load_timeout_second` + +- Default: 259200 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The maximum timeout duration allowed for a load job. The load job fails if this limit is exceeded. This limit applies to all types of load jobs. +- Introduced in: - + +##### `max_routine_load_batch_size` + +- Default: 4294967296 +- Type: Long +- Unit: Bytes +- Is mutable: Yes +- Description: The maximum amount of data that can be loaded by a Routine Load task. +- Introduced in: - + +##### `max_routine_load_task_concurrent_num` + +- Default: 5 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of concurrent tasks for each Routine Load job. +- Introduced in: - + +##### `max_routine_load_task_num_per_be` + +- Default: 16 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of concurrent Routine Load tasks on each BE. Since v3.1.0, the default value for this parameter is increased to 16 from 5, and no longer needs to be less than or equal to the value of BE static parameter `routine_load_thread_pool_size` (deprecated). +- Introduced in: - + +##### `max_running_txn_num_per_db` + +- Default: 1000 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of load transactions allowed to be running for each database within a StarRocks cluster. The default value is `1000`. From v3.1 onwards, the default value is changed to `1000` from `100`. When the actual number of load transactions running for a database exceeds the value of this parameter, new load requests will not be processed. New requests for synchronous load jobs will be denied, and new requests for asynchronous load jobs will be placed in queue. We do not recommend you increase the value of this parameter because this will increase system load. +- Introduced in: - + +##### `max_stream_load_timeout_second` + +- Default: 259200 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The maximum allowed timeout duration for a Stream Load job. +- Introduced in: - + +##### `max_tolerable_backend_down_num` + +- Default: 0 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of faulty BE nodes allowed. If this number is exceeded, Routine Load jobs cannot be automatically recovered. +- Introduced in: - + +##### `min_bytes_per_broker_scanner` + +- Default: 67108864 +- Type: Long +- Unit: Bytes +- Is mutable: Yes +- Description: The minimum allowed amount of data that can be processed by a Broker Load instance. +- Introduced in: - + +##### `min_load_timeout_second` + +- Default: 1 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The minimum timeout duration allowed for a load job. This limit applies to all types of load jobs. +- Introduced in: - + +##### `min_routine_load_lag_for_metrics` + +- Default: 10000 +- Type: INT +- Unit: - +- Is mutable: Yes +- Description: The minimum offset lag of Routine Load jobs to be shown in monitoring metrics. Routine Load jobs whose offset lags are greater than this value will be displayed in the metrics. +- Introduced in: - + +##### `period_of_auto_resume_min` + +- Default: 5 +- Type: Int +- Unit: Minutes +- Is mutable: Yes +- Description: The interval at which Routine Load jobs are automatically recovered. +- Introduced in: - + +##### `prepared_transaction_default_timeout_second` + +- Default: 86400 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The default timeout duration for a prepared transaction. +- Introduced in: - + +##### `routine_load_task_consume_second` + +- Default: 15 +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: The maximum time for each Routine Load task within the cluster to consume data. Since v3.1.0, Routine Load job supports a new parameter `task_consume_second` in [`job_properties`](../../sql-reference/sql-statements/loading_unloading/routine_load/CREATE_ROUTINE_LOAD.md#job_properties). This parameter applies to individual load tasks within a Routine Load job, which is more flexible. +- Introduced in: - + +##### `routine_load_task_timeout_second` + +- Default: 60 +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: The timeout duration for each Routine Load task within the cluster. Since v3.1.0, Routine Load job supports a new parameter `task_timeout_second` in [`job_properties`](../../sql-reference/sql-statements/loading_unloading/routine_load/CREATE_ROUTINE_LOAD.md#job_properties). This parameter applies to individual load tasks within a Routine Load job, which is more flexible. +- Introduced in: - + +##### `routine_load_unstable_threshold_second` + +- Default: 3600 +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: Routine Load job is set to the UNSTABLE state if any task within the Routine Load job lags. To be specific, the difference between the timestamp of the message being consumed and the current time exceeds this threshold, and unconsumed messages exist in the data source. +- Introduced in: - + +##### `spark_dpp_version` + +- Default: 1.0.0 +- Type: String +- Unit: - +- Is mutable: No +- Description: The version of Spark Dynamic Partition Pruning (DPP) used. +- Introduced in: - + +##### `spark_home_default_dir` + +- Default: `StarRocksFE.STARROCKS_HOME_DIR` + "/lib/spark2x" +- Type: String +- Unit: - +- Is mutable: No +- Description: The root directory of a Spark client. +- Introduced in: - + +##### `spark_launcher_log_dir` + +- Default: `sys_log_dir` + "/spark_launcher_log" +- Type: String +- Unit: - +- Is mutable: No +- Description: The directory that stores Spark log files. +- Introduced in: - + +##### `spark_load_default_timeout_second` + +- Default: 86400 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The timeout duration for each Spark Load job. +- Introduced in: - + +##### `spark_load_submit_timeout_second` + +- Default: 300 +- Type: long +- Unit: Seconds +- Is mutable: No +- Description: Maximum time in seconds to wait for a YARN response after submitting a Spark application. `SparkLauncherMonitor.LogMonitor` converts this value to milliseconds and will stop monitoring and forcibly kill the spark launcher process if the job remains in UNKNOWN/CONNECTED/SUBMITTED longer than this timeout. `SparkLoadJob` reads this configuration as the default and allows a per-load override via the `LoadStmt.SPARK_LOAD_SUBMIT_TIMEOUT` property. Set it high enough to accommodate YARN queueing delays; setting it too low may abort legitimately queued jobs, while setting it too high may delay failure handling and resource cleanup. +- Introduced in: v3.2.0 + +##### `spark_resource_path` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The root directory of the Spark dependency package. +- Introduced in: - + +##### `stream_load_default_timeout_second` + +- Default: 600 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The default timeout duration for each Stream Load job. +- Introduced in: - + +##### `stream_load_max_txn_num_per_be` + +- Default: -1 +- Type: Int +- Unit: Transactions +- Is mutable: Yes +- Description: Limits the number of concurrent stream-load transactions accepted from a single BE (backend) host. When set to a non-negative integer, FrontendServiceImpl checks the current transaction count for the BE (by client IP) and rejects new stream-load begin requests if the count `>=` this limit. A value of `< 0` disables the limit (unlimited). This check occurs during stream load begin and may cause a `streamload txn num per be exceeds limit` error when exceeded. Related runtime behavior uses `stream_load_default_timeout_second` for request timeout fallback. +- Introduced in: v3.3.0, v3.4.0, v3.5.0 + +##### `stream_load_task_keep_max_num` + +- Default: 1000 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: Maximum number of Stream Load tasks that StreamLoadMgr keeps in memory (global across all databases). When the number of tracked tasks (`idToStreamLoadTask`) exceeds this threshold, StreamLoadMgr first calls `cleanSyncStreamLoadTasks()` to remove completed synchronous stream-load tasks; if the size still remains greater than half of this threshold, it invokes `cleanOldStreamLoadTasks(true)` to force removal of older or finished tasks. Increase this value to retain more task history in memory; decrease it to reduce memory usage and make cleanup more aggressive. This value controls in-memory retention only and does not affect persisted/replayed tasks. +- Introduced in: v3.2.0 + +##### `stream_load_task_keep_max_second` + +- Default: 3 * 24 * 3600 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: Retention window for finished or cancelled Stream Load tasks. After a task reaches a final state and its end timestamp is ealier than this threshold (`currentMs - endTimeMs > stream_load_task_keep_max_second * 1000`), it becomes eligible for removal by `StreamLoadMgr.cleanOldStreamLoadTasks` and is discarded when loading persisted state. Applies to both `StreamLoadTask` and `StreamLoadMultiStmtTask`. If total task count exceeds `stream_load_task_keep_max_num`, cleanup may be triggered earlier (synchronous tasks are prioritized by `cleanSyncStreamLoadTasks`). Set this to balance history/debugability against memory usage. +- Introduced in: v3.2.0 + +##### `transaction_clean_interval_second` + +- Default: 30 +- Type: Int +- Unit: Seconds +- Is mutable: No +- Description: The time interval at which finished transactions are cleaned up. Unit: second. We recommend that you specify a short time interval to ensure that finished transactions can be cleaned up in a timely manner. +- Introduced in: - + +##### `transaction_stream_load_coordinator_cache_capacity` + +- Default: 4096 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The capacity of the cache that stores the mapping from transaction label to coordinator node. +- Introduced in: - + +##### `transaction_stream_load_coordinator_cache_expire_seconds` + +- Default: 900 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The time to keep the coordinator mapping in the cache before it's evicted(TTL). +- Introduced in: - + +##### `yarn_client_path` + +- Default: `StarRocksFE.STARROCKS_HOME_DIR` + "/lib/yarn-client/hadoop/bin/yarn" +- Type: String +- Unit: - +- Is mutable: No +- Description: The root directory of the Yarn client package. +- Introduced in: - + +##### `yarn_config_dir` + +- Default: `StarRocksFE.STARROCKS_HOME_DIR` + "/lib/yarn-config" +- Type: String +- Unit: - +- Is mutable: No +- Description: The directory that stores the Yarn configuration file. +- Introduced in: - + +### Statistic report + +##### `enable_collect_warehouse_metrics` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: When this item is set to `true`, the system will collect and export per-warehouse metrics. Enabling it adds warehouse-level metrics (slot/usage/availability) to the metric output and increases metric cardinality and collection overhead. Disable it to omit warehouse-specific metrics and reduce CPU/network and monitoring storage cost. +- Introduced in: v3.5.0 + +##### `enable_http_detail_metrics` + +- Default: false +- Type: boolean +- Unit: - +- Is mutable: Yes +- Description: When true, the HTTP server computes and exposes detailed HTTP worker metrics (notably the `HTTP_WORKER_PENDING_TASKS_NUM` gauge). Enabling this causes the server to iterate over Netty worker executors and call `pendingTasks()` on each `NioEventLoop` to sum pending task counts; when disabled the gauge returns 0 to avoid that cost. This extra collection can be CPU- and latency-sensitive — enable only for debugging or detailed investigation. +- Introduced in: v3.2.3 + +##### `proc_profile_collect_time_s` + +- Default: 120 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: Duration in seconds for a single process profile collection. When `proc_profile_cpu_enable` or `proc_profile_mem_enable` is set to `true`, AsyncProfiler is started, the collector thread sleeps for this duration, then the profiler is stopped and the profile is written. Larger values increase sample coverage and file size but prolong profiler runtime and delay subsequent collections; smaller values reduce overhead but may produce insufficient samples. Ensure this value aligns with retention settings such as `proc_profile_file_retained_days` and `proc_profile_file_retained_size_bytes`. +- Introduced in: v3.2.12 + +### Storage + +##### `alter_table_timeout_second` + +- Default: 86400 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The timeout duration for the schema change operation (ALTER TABLE). +- Introduced in: - + +##### `capacity_used_percent_high_water` + +- Default: 0.75 +- Type: double +- Unit: Fraction (0.0–1.0) +- Is mutable: Yes +- Description: The high-water threshold of disk capacity used percent (fraction of total capacity) used when computing backend load scores. `BackendLoadStatistic.calcSore` uses `capacity_used_percent_high_water` to set `LoadScore.capacityCoefficient`: if a backend's used percent less than 0.5 the coefficient equal to 0.5; if used percent `>` `capacity_used_percent_high_water` the coefficient = 1.0; otherwise the coefficient transitions linearly with used percent via (2 * usedPercent - 0.5). When the coefficient is 1.0, the load score is driven entirely by capacity proportion; lower values increase the weight of replica count. Adjusting this value changes how aggressively the balancer penalizes backends with high disk utilization. +- Introduced in: v3.2.0 + +##### `catalog_trash_expire_second` + +- Default: 86400 +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: The longest duration the metadata can be retained after a database, table, or partition is dropped. If this duration expires, the data will be deleted and cannot be recovered through the [RECOVER](../../sql-reference/sql-statements/backup_restore/RECOVER.md) command. +- Introduced in: - + +##### `check_consistency_default_timeout_second` + +- Default: 600 +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: The timeout duration for a replica consistency check. You can set this parameter based on the size of your tablet. +- Introduced in: - + +##### `consistency_check_cooldown_time_second` + +- Default: 24 * 3600 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: Controls the minimal interval (in seconds) required between consistency checks of the same tablet. During tablet selection, a tablet is considered eligible only if `tablet.getLastCheckTime()` is less than `(currentTimeMillis - consistency_check_cooldown_time_second * 1000)`. The default value (24 * 3600) enforces roughly one check per tablet per day to reduce backend disk I/O. Lowering this value increases check frequency and resource usage; raising it reduces I/O at the cost of slower detection of inconsistencies. The value is applied globally when filtering cooldowned tablets from an index's tablet list. +- Introduced in: v3.5.5 + +##### `consistency_check_end_time` + +- Default: "4" +- Type: String +- Unit: Hour of day (0-23) +- Is mutable: No +- Description: Specifies the end hour (hour-of-day) of the ConsistencyChecker work window. The value is parsed with SimpleDateFormat("HH") in the system time zone and accepted as 0–23 (single or two-digit). StarRocks uses it with `consistency_check_start_time` to decide when to schedule and add consistency-check jobs. When `consistency_check_start_time` is greater than `consistency_check_end_time`, the window spans midnight (for example, default is `consistency_check_start_time` = "23" to `consistency_check_end_time` = "4"). When `consistency_check_start_time` is equal to `consistency_check_end_time`, the checker never runs. Parsing failure will cause FE startup to log an error and exit, so provide a valid hour string. +- Introduced in: v3.2.0 + +##### `consistency_check_start_time` + +- Default: "23" +- Type: String +- Unit: Hour of day (00-23) +- Is mutable: No +- Description: Specifies the start hour (hour-of-day) of the ConsistencyChecker work window. The value is parsed with SimpleDateFormat("HH") in the system time zone and accepted as 0–23 (single or two-digit). StarRocks uses it with `consistency_check_end_time` to decide when to schedule and add consistency-check jobs. When `consistency_check_start_time` is greater than `consistency_check_end_time`, the window spans midnight (for example, default is `consistency_check_start_time` = "23" to `consistency_check_end_time` = "4"). When `consistency_check_start_time` is equal to `consistency_check_end_time`, the checker never runs. Parsing failure will cause FE startup to log an error and exit, so provide a valid hour string. +- Introduced in: v3.2.0 + +##### `consistency_tablet_meta_check_interval_ms` + +- Default: 2 * 3600 * 1000 +- Type: Int +- Unit: Milliseconds +- Is mutable: Yes +- Description: Interval used by the ConsistencyChecker to run a full tablet-meta consistency scan between `TabletInvertedIndex` and `LocalMetastore`. The daemon in `runAfterCatalogReady` triggers checkTabletMetaConsistency when `current time - lastTabletMetaCheckTime` exceeds this value. When an invalid tablet is first detected, its `toBeCleanedTime` is set to `now + (consistency_tablet_meta_check_interval_ms / 2)` so actual deletion is delayed until a subsequent scan. Increase this value to reduce scan frequency and load (slower cleanup); decrease it to detect and remove stale tablets faster (higher overhead). +- Introduced in: v3.2.0 + +##### `default_replication_num` + +- Default: 3 +- Type: Short +- Unit: - +- Is mutable: Yes +- Description: Sets the default number of replicas for each data partition when creating a table in StarRocks. This setting can be overridden when creating a table by specifying `replication_num=x` in the CREATE TABLE DDL. +- Introduced in: - + +##### `enable_auto_tablet_distribution` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to automatically set the number of buckets. + - If this parameter is set to `TRUE`, you don't need to specify the number of buckets when you create a table or add a partition. StarRocks automatically determines the number of buckets. + - If this parameter is set to `FALSE`, you need to manually specify the number of buckets when you create a table or add a partition. If you do not specify the bucket count when adding a new partition to a table, the new partition inherits the bucket count set at the creation of the table. However, you can also manually specify the number of buckets for the new partition. +- Introduced in: v2.5.7 + +##### `enable_experimental_rowstore` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable the [hybrid row-column storage](../../table_design/hybrid_table.md) feature. +- Introduced in: v3.2.3 + +##### `enable_fast_schema_evolution` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable fast schema evolution for all tables within the StarRocks cluster. Valid values are `TRUE` and `FALSE` (default). Enabling fast schema evolution can increase the speed of schema changes and reduce resource usage when columns are added or dropped. +- Introduced in: v3.2.0 + +> **NOTE** +> +> - StarRocks shared-data clusters supports this parameter from v3.3.0. +> - If you need to configure the fast schema evolution for a specific table, such as disabling fast schema evolution for a specific table, you can set the table property [`fast_schema_evolution`](../../sql-reference/sql-statements/table_bucket_part_index/CREATE_TABLE.md#set-fast-schema-evolution) at table creation. + +##### `enable_online_optimize_table` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Controls whether StarRocks will use the non-blocking online optimization path when creating an optimize job. When `enable_online_optimize_table` is true and the target table meets compatibility checks (no partition/keys/sort specification, distribution is not `RandomDistributionDesc`, storage type is not `COLUMN_WITH_ROW`, replicated storage enabled, and the table is not a cloud-native table or materialized view), the planner creates an `OnlineOptimizeJobV2` to perform optimization without blocking writes. If false or any compatibility condition fails, StarRocks falls back to `OptimizeJobV2`, which may block write operations during optimization. +- Introduced in: v3.3.3, v3.4.0, v3.5.0 + +##### `enable_strict_storage_medium_check` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether the FE strictly checks the storage medium of BEs when users create tables. If this parameter is set to `TRUE`, the FE checks the storage medium of BEs when users create tables and returns an error if the storage medium of the BE is different from the `storage_medium` parameter specified in the CREATE TABLE statement. For example, the storage medium specified in the CREATE TABLE statement is SSD but the actual storage medium of BEs is HDD. As a result, the table creation fails. If this parameter is `FALSE`, the FE does not check the storage medium of BEs when users create a table. +- Introduced in: - + +##### `max_bucket_number_per_partition` + +- Default: 1024 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of buckets can be created in a partition. +- Introduced in: v3.3.2 + +##### `max_column_number_per_table` + +- Default: 10000 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of columns can be created in a table. +- Introduced in: v3.3.2 + +##### `max_dynamic_partition_num` + +- Default: 500 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: Limits the maximum number of partitions that can be created at once when analyzing or creating a dynamic-partitioned table. During dynamic partition property validation, the `systemtask_runs_max_history_number` computes expected partitions (end offset + history partition number) and throws a DDL error if that total exceeds `max_dynamic_partition_num`. Raise this value only when you expect legitimately large partition ranges; increasing it allows more partitions to be created but can increase metadata size, scheduling work, and operational complexity. +- Introduced in: v3.2.0 + +##### `max_partition_number_per_table` + +- Default: 100000 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of partitions can be created in a table. +- Introduced in: v3.3.2 + +##### `max_task_consecutive_fail_count` + +- Default: 10 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: Maximum number of consecutive failures a task may have before the scheduler automatically suspends it. When `TaskSource.MV.equals(task.getSource())` and `max_task_consecutive_fail_count` are greater than 0, if a task's consecutive failure counter reaches or exceeds `max_task_consecutive_fail_count`, the task is suspended via the TaskManager and, for materialized-view tasks, the materialized view is inactivated. An exception is thrown indicating suspension and how to reactivate (for example, `ALTER MATERIALIZED VIEW ACTIVE`). Set this item to 0 or a negative value to disable automatic suspension. +- Introduced in: - + +##### `partition_recycle_retention_period_secs` + +- Default: 1800 +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: The metadata retention time for the partition that is dropped by INSERT OVERWRITE or materialized view refresh operations. Note that such metadata cannot be recovered by executing [RECOVER](../../sql-reference/sql-statements/backup_restore/RECOVER.md). +- Introduced in: v3.5.9 + +##### `recover_with_empty_tablet` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to replace a lost or corrupted tablet replica with an empty one. If a tablet replica is lost or corrupted, data queries on this tablet or other healthy tablets may fail. Replacing the lost or corrupted tablet replica with an empty tablet ensures that the query can still be executed. However, the result may be incorrect because data is lost. The default value is `FALSE`, which means lost or corrupted tablet replicas are not replaced with empty ones, and the query fails. +- Introduced in: - + +##### `storage_usage_hard_limit_percent` + +- Default: 95 +- Alias: `storage_flood_stage_usage_percent` +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: Hard limit of the storage usage percentage in a BE directory. If the storage usage (in percentage) of the BE storage directory exceeds this value and the remaining storage space is less than `storage_usage_hard_limit_reserve_bytes`, Load and Restore jobs are rejected. You need to set this item together with the BE configuration item `storage_flood_stage_usage_percent` to allow the configurations to take effect. +- Introduced in: - + +##### `storage_usage_hard_limit_reserve_bytes` + +- Default: 100 * 1024 * 1024 * 1024 +- Alias: `storage_flood_stage_left_capacity_bytes` +- Type: Long +- Unit: Bytes +- Is mutable: Yes +- Description: Hard limit of the remaining storage space in a BE directory. If the remaining storage space in the BE storage directory is less than this value and the storage usage (in percentage) exceeds `storage_usage_hard_limit_percent`, Load and Restore jobs are rejected. You need to set this item together with the BE configuration item `storage_flood_stage_left_capacity_bytes` to allow the configurations to take effect. +- Introduced in: - + +##### `storage_usage_soft_limit_percent` + +- Default: 90 +- Alias: `storage_high_watermark_usage_percent` +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: Soft limit of the storage usage percentage in a BE directory. If the storage usage (in percentage) of the BE storage directory exceeds this value and the remaining storage space is less than `storage_usage_soft_limit_reserve_bytes`, tablets cannot be cloned into this directory. +- Introduced in: - + +##### `storage_usage_soft_limit_reserve_bytes` + +- Default: 200 * 1024 * 1024 * 1024 +- Alias: `storage_min_left_capacity_bytes` +- Type: Long +- Unit: Bytes +- Is mutable: Yes +- Description: Soft limit of the remaining storage space in a BE directory. If the remaining storage space in the BE storage directory is less than this value and the storage usage (in percentage) exceeds `storage_usage_soft_limit_percent`, tablets cannot be cloned into this directory. +- Introduced in: - + +##### `tablet_checker_lock_time_per_cycle_ms` + +- Default: 1000 +- Type: Int +- Unit: Milliseconds +- Is mutable: Yes +- Description: The maximum lock hold time per cycle for tablet checker before releasing and reacquiring the table lock. Values less than 100 will be treated as 100. +- Introduced in: v3.5.9, v4.0.2 + +##### `tablet_create_timeout_second` + +- Default: 10 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The timeout duration for creating a tablet. The default value is changed from 1 to 10 from v3.1 onwards. +- Introduced in: - + +##### `tablet_delete_timeout_second` + +- Default: 2 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The timeout duration for deleting a tablet. +- Introduced in: - + +##### `tablet_sched_balance_load_disk_safe_threshold` + +- Default: 0.5 +- Alias: `balance_load_disk_safe_threshold` +- Type: Double +- Unit: - +- Is mutable: Yes +- Description: The percentage threshold for determining whether the disk usage of BEs is balanced. If the disk usage of all BEs is lower than this value, it is considered balanced. If the disk usage is greater than this value and the difference between the highest and lowest BE disk usage is greater than 10%, the disk usage is considered unbalanced and a tablet re-balancing is triggered. +- Introduced in: - + +##### `tablet_sched_balance_load_score_threshold` + +- Default: 0.1 +- Alias: `balance_load_score_threshold` +- Type: Double +- Unit: - +- Is mutable: Yes +- Description: The percentage threshold for determining whether the load of a BE is balanced. If a BE has a lower load than the average load of all BEs and the difference is greater than this value, this BE is in a low load state. On the contrary, if a BE has a higher load than the average load and the difference is greater than this value, this BE is in a high load state. +- Introduced in: - + +##### `tablet_sched_be_down_tolerate_time_s` + +- Default: 900 +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: The maximum duration the scheduler allows for a BE node to remain inactive. After the time threshold is reached, tablets on that BE node will be migrated to other active BE nodes. +- Introduced in: v2.5.7 + +##### `tablet_sched_disable_balance` + +- Default: false +- Alias: `disable_balance` +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to disable tablet balancing. `TRUE` indicates that tablet balancing is disabled. `FALSE` indicates that tablet balancing is enabled. +- Introduced in: - + +##### `tablet_sched_disable_colocate_balance` + +- Default: false +- Alias: `disable_colocate_balance` +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to disable replica balancing for Colocate Table. `TRUE` indicates replica balancing is disabled. `FALSE` indicates replica balancing is enabled. +- Introduced in: - + +##### `tablet_sched_max_balancing_tablets` + +- Default: 500 +- Alias: `max_balancing_tablets` +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of tablets that can be balanced at the same time. If this value is exceeded, tablet re-balancing will be skipped. +- Introduced in: - + +##### `tablet_sched_max_clone_task_timeout_sec` + +- Default: 2 * 60 * 60 +- Alias: `max_clone_task_timeout_sec` +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description:The maximum timeout duration for cloning a tablet. +- Introduced in: - + +##### `tablet_sched_max_not_being_scheduled_interval_ms` + +- Default: 15 * 60 * 1000 +- Type: Long +- Unit: Milliseconds +- Is mutable: Yes +- Description: When the tablet clone tasks are being scheduled, if a tablet has not been scheduled for the specified time in this parameter, StarRocks gives it a higher priority to schedule it as soon as possible. +- Introduced in: - + +##### `tablet_sched_max_scheduling_tablets` + +- Default: 10000 +- Alias: `max_scheduling_tablets` +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of tablets that can be scheduled at the same time. If the value is exceeded, tablet balancing and repair checks will be skipped. +- Introduced in: - + +##### `tablet_sched_min_clone_task_timeout_sec` + +- Default: 3 * 60 +- Alias: `min_clone_task_timeout_sec` +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: The minimum timeout duration for cloning a tablet. +- Introduced in: - + +##### `tablet_sched_num_based_balance_threshold_ratio` + +- Default: 0.5 +- Alias: - +- Type: Double +- Unit: - +- Is mutable: Yes +- Description: Doing num based balance may break the disk size balance, but the maximum gap between disks cannot exceed `tablet_sched_num_based_balance_threshold_ratio` * `tablet_sched_balance_load_score_threshold`. If there are tablets in the cluster that are constantly balancing from A to B and B to A, reduce this value. If you want the tablet distribution to be more balanced, increase this value. +- Introduced in: - 3.1 + +##### `tablet_sched_repair_delay_factor_second` + +- Default: 60 +- Alias: `tablet_repair_delay_factor_second` +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: The interval at which replicas are repaired, in seconds. +- Introduced in: - + +##### `tablet_sched_slot_num_per_path` + +- Default: 8 +- Alias: `schedule_slot_num_per_path` +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of tablet-related tasks that can run concurrently in a BE storage directory. From v2.5 onwards, the default value of this parameter is changed from `4` to `8`. +- Introduced in: - + +##### `tablet_sched_storage_cooldown_second` + +- Default: -1 +- Alias: `storage_cooldown_second` +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: The latency of automatic cooling starting from the time of table creation. The default value `-1` specifies that automatic cooling is disabled. If you want to enable automatic cooling, set this parameter to a value greater than `-1`. +- Introduced in: - + +##### `tablet_stat_update_interval_second` + +- Default: 300 +- Type: Int +- Unit: Seconds +- Is mutable: No +- Description: The time interval at which the FE retrieves tablet statistics from each BE. +- Introduced in: - + +### Shared-data + +##### `aws_s3_access_key` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The Access Key ID used to access your S3 bucket. +- Introduced in: v3.0 + +##### `aws_s3_endpoint` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The endpoint used to access your S3 bucket, for example, `https://s3.us-west-2.amazonaws.com`. +- Introduced in: v3.0 + +##### `aws_s3_external_id` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The external ID of the AWS account that is used for cross-account access to your S3 bucket. +- Introduced in: v3.0 + +##### `aws_s3_iam_role_arn` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The ARN of the IAM role that has privileges on your S3 bucket in which your data files are stored. +- Introduced in: v3.0 + +##### `aws_s3_path` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The S3 path used to store data. It consists of the name of your S3 bucket and the sub-path (if any) under it, for example, `testbucket/subpath`. +- Introduced in: v3.0 + +##### `aws_s3_region` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The region in which your S3 bucket resides, for example, `us-west-2`. +- Introduced in: v3.0 + +##### `aws_s3_secret_key` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The Secret Access Key used to access your S3 bucket. +- Introduced in: v3.0 + +##### `aws_s3_use_aws_sdk_default_behavior` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: No +- Description: Whether to use the default authentication credential of AWS SDK. Valid values: true and false (Default). +- Introduced in: v3.0 + +##### `aws_s3_use_instance_profile` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: No +- Description: Whether to use Instance Profile and Assumed Role as credential methods for accessing S3. Valid values: true and false (Default). + - If you use IAM user-based credential (Access Key and Secret Key) to access S3, you must specify this item as `false`, and specify `aws_s3_access_key` and `aws_s3_secret_key`. + - If you use Instance Profile to access S3, you must specify this item as `true`. + - If you use Assumed Role to access S3, you must specify this item as `true`, and specify `aws_s3_iam_role_arn`. + - And if you use an external AWS account, you must also specify `aws_s3_external_id`. +- Introduced in: v3.0 + +##### `azure_adls2_endpoint` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The endpoint of your Azure Data Lake Storage Gen2 Account, for example, `https://test.dfs.core.windows.net`. +- Introduced in: v3.4.1 + +##### `azure_adls2_oauth2_client_id` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The Client ID of the Managed Identity used to authorize requests for your Azure Data Lake Storage Gen2. +- Introduced in: v3.4.4 + +##### `azure_adls2_oauth2_tenant_id` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The Tenant ID of the Managed Identity used to authorize requests for your Azure Data Lake Storage Gen2. +- Introduced in: v3.4.4 + +##### `azure_adls2_oauth2_use_managed_identity` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: No +- Description: Whether to use Managed Identity to authorize requests for your Azure Data Lake Storage Gen2. +- Introduced in: v3.4.4 + +##### `azure_adls2_path` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The Azure Data Lake Storage Gen2 path used to store data. It consists of the file system name and the directory name, for example, `testfilesystem/starrocks`. +- Introduced in: v3.4.1 + +##### `azure_adls2_sas_token` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The shared access signatures (SAS) used to authorize requests for your Azure Data Lake Storage Gen2. +- Introduced in: v3.4.1 + +##### `azure_adls2_shared_key` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The Shared Key used to authorize requests for your Azure Data Lake Storage Gen2. +- Introduced in: v3.4.1 + +##### `azure_blob_endpoint` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The endpoint of your Azure Blob Storage Account, for example, `https://test.blob.core.windows.net`. +- Introduced in: v3.1 + +##### `azure_blob_path` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The Azure Blob Storage path used to store data. It consists of the name of the container within your storage account and the sub-path (if any) under the container, for example, `testcontainer/subpath`. +- Introduced in: v3.1 + +##### `azure_blob_sas_token` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The shared access signatures (SAS) used to authorize requests for your Azure Blob Storage. +- Introduced in: v3.1 + +##### `azure_blob_shared_key` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The Shared Key used to authorize requests for your Azure Blob Storage. +- Introduced in: v3.1 + +##### `azure_use_native_sdk` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to use the native SDK to access Azure Blob Storage, thus allowing authentication with Managed Identities and Service Principals. If this item is set to `false`, only authentication with Shared Key and SAS Token is allowed. +- Introduced in: v3.4.4 + +##### `cloud_native_hdfs_url` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The URL of the HDFS storage, for example, `hdfs://127.0.0.1:9000/user/xxx/starrocks/`. +- Introduced in: - + +##### `cloud_native_meta_port` + +- Default: 6090 +- Type: Int +- Unit: - +- Is mutable: No +- Description: FE cloud-native metadata server RPC listen port. +- Introduced in: - + +##### `cloud_native_storage_type` + +- Default: S3 +- Type: String +- Unit: - +- Is mutable: No +- Description: The type of object storage you use. In shared-data mode, StarRocks supports storing data in HDFS, Azure Blob (supported from v3.1.1 onwards), Azure Data Lake Storage Gen2 (supported from v3.4.1 onwards), Google Storage (with native SDK, supported from v3.5.1 onwards), and object storage systems that are compatible with the S3 protocol (such as AWS S3, and MinIO). Valid value: `S3` (Default), `HDFS`, `AZBLOB`, `ADLS2`, and `GS`. If you specify this parameter as `S3`, you must add the parameters prefixed by `aws_s3`. If you specify this parameter as `AZBLOB`, you must add the parameters prefixed by `azure_blob`. If you specify this parameter as `ADLS2`, you must add the parameters prefixed by `azure_adls2`. If you specify this parameter as `GS`, you must add the parameters prefixed by `gcp_gcs`. If you specify this parameter as `HDFS`, you only need to specify `cloud_native_hdfs_url`. +- Introduced in: - + +##### `enable_load_volume_from_conf` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: No +- Description: Whether to allow StarRocks to create the built-in storage volume by using the object storage-related properties specified in the FE configuration file. The default value is changed from `true` to `false` from v3.4.1 onwards. +- Introduced in: v3.1.0 + +##### `gcp_gcs_impersonation_service_account` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The Service Account that you want to impersonate if you use the impersonation-based authentication to access Google Storage. +- Introduced in: v3.5.1 + +##### `gcp_gcs_path` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The Google Cloud path used to store data. It consists of the name of your Google Cloud bucket and the sub-path (if any) under it, for example, `testbucket/subpath`. +- Introduced in: v3.5.1 + +##### `gcp_gcs_service_account_email` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The email address in the JSON file generated at the creation of the Service Account, for example, `user@hello.iam.gserviceaccount.com`. +- Introduced in: v3.5.1 + +##### `gcp_gcs_service_account_private_key` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The Private Key in the JSON file generated at the creation of the Service Account, for example, `-----BEGIN PRIVATE KEY----xxxx-----END PRIVATE KEY-----\n`. +- Introduced in: v3.5.1 + +##### `gcp_gcs_service_account_private_key_id` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The Private Key ID in the JSON file generated at the creation of the Service Account. +- Introduced in: v3.5.1 + +##### `gcp_gcs_use_compute_engine_service_account` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: No +- Description: Whether to use the Service Account that is bound to your Compute Engine. +- Introduced in: v3.5.1 + +##### `hdfs_file_system_expire_seconds` + +- Default: 300 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: Time-to-live in seconds for an unused cached HDFS/ObjectStore FileSystem managed by HdfsFsManager. The FileSystemExpirationChecker (runs every 60s) calls each HdfsFs.isExpired(...) using this value; when expired the manager closes the underlying FileSystem and removes it from the cache. Accessor methods (for example `HdfsFs.getDFSFileSystem`, `getUserName`, `getConfiguration`) update the last-access timestamp, so expiry is based on inactivity. Lower values reduce idle resource holding but increase reopen overhead; higher values keep handles longer and may consume more resources. +- Introduced in: v3.2.0 + +##### `lake_autovacuum_grace_period_minutes` + +- Default: 30 +- Type: Long +- Unit: Minutes +- Is mutable: Yes +- Description: The time range for retaining historical data versions in a shared-data cluster. Historical data versions within this time range are not automatically cleaned via AutoVacuum after Compactions. You need to set this value greater than the maximum query time to avoid that the data accessed by running queries get deleted before the queries finish. The default value has been changed from `5` to `30` since v3.3.0, v3.2.5, and v3.1.10. +- Introduced in: v3.1.0 + +##### `lake_autovacuum_parallel_partitions` + +- Default: 8 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The maximum number of partitions that can undergo AutoVacuum simultaneously in a shared-data cluster. AutoVacuum is the Garbage Collection after Compactions. +- Introduced in: v3.1.0 + +##### `lake_autovacuum_partition_naptime_seconds` + +- Default: 180 +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: The minimum interval between AutoVacuum operations on the same partition in a shared-data cluster. +- Introduced in: v3.1.0 + +##### `lake_autovacuum_stale_partition_threshold` + +- Default: 12 +- Type: Long +- Unit: Hours +- Is mutable: Yes +- Description: If a partition has no updates (loading, DELETE, or Compactions) within this time range, the system will not perform AutoVacuum on this partition. +- Introduced in: v3.1.0 + +##### `lake_compaction_allow_partial_success` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: If this item is set to `true`, the system will consider the Compaction operation in a shared-data cluster as successful when one of the sub-tasks succeeds. +- Introduced in: v3.5.2 + +##### `lake_compaction_disable_ids` + +- Default: "" +- Type: String +- Unit: - +- Is mutable: Yes +- Description: The table or partition list of which compaction is disabled in shared-data mode. The format is `tableId1;partitionId2`, seperated by semicolon, for example, `12345;98765`. +- Introduced in: v3.4.4 + +##### `lake_compaction_history_size` + +- Default: 20 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The number of recent successful Compaction task records to keep in the memory of the Leader FE node in a shared-data cluster. You can view recent successful Compaction task records using the `SHOW PROC '/compactions'` command. Note that the Compaction history is stored in the FE process memory, and it will be lost if the FE process is restarted. +- Introduced in: v3.1.0 + +##### `lake_compaction_max_tasks` + +- Default: -1 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of concurrent Compaction tasks allowed in a shared-data cluster. Setting this item to `-1` indicates to calculate the concurrent task number in an adaptive manner. Setting this value to `0` will disable compaction. +- Introduced in: v3.1.0 + +##### `lake_compaction_score_selector_min_score` + +- Default: 10.0 +- Type: Double +- Unit: - +- Is mutable: Yes +- Description: The Compaction Score threshold that triggers Compaction operations in a shared-data cluster. When the Compaction Score of a partition is greater than or equal to this value, the system performs Compaction on that partition. +- Introduced in: v3.1.0 + +##### `lake_compaction_score_upper_bound` + +- Default: 2000 +- Type: Long +- Unit: - +- Is mutable: Yes +- Description: The upper limit of the Compaction Score for a partition in a shared-data cluster. `0` indicates no upper limit. This item only takes effect when `lake_enable_ingest_slowdown` is set to `true`. When the Compaction Score of a partition reaches or exceeds this upper limit, incoming loading tasks will be rejected. From v3.3.6 onwards, the default value is changed from `0` to `2000`. +- Introduced in: v3.2.0 + +##### `lake_enable_balance_tablets_between_workers` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to balance the number of tablets among Compute Nodes during the tablet migration of cloud-native tables in a shared-data cluster. `true` indicates to balance the tablets among Compute Nodes, and `false` indicates to disabling this feature. +- Introduced in: v3.3.4 + +##### `lake_enable_ingest_slowdown` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable Data Ingestion Slowdown in a shared-data cluster. When Data Ingestion Slowdown is enabled, if the Compaction Score of a partition exceeds `lake_ingest_slowdown_threshold`, loading tasks on that partition will be throttled down. This configuration only takes effect when `run_mode` is set to `shared_data`. From v3.3.6 onwards, the default value is chenged from `false` to `true`. +- Introduced in: v3.2.0 + +##### `lake_ingest_slowdown_threshold` + +- Default: 100 +- Type: Long +- Unit: - +- Is mutable: Yes +- Description: The Compaction Score threshold that triggers Data Ingestion Slowdown in a shared-data cluster. This configuration only takes effect when `lake_enable_ingest_slowdown` is set to `true`. +- Introduced in: v3.2.0 + +##### `lake_publish_version_max_threads` + +- Default: 512 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of threads for Version Publish tasks in a shared-data cluster. +- Introduced in: v3.2.0 + +##### `meta_sync_force_delete_shard_meta` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to allow deleting the metadata of the shared-data cluster directly, bypassing cleaning the remote storage files. It is recommended to set this item to `true` only when there is an excessive number of shards to be cleaned, which leads to extreme memory pressure on the FE JVM. Note that the data files belonging to the shards or tablets cannot be automatically cleaned after this feature is enabled. +- Introduced in: v3.2.10, v3.3.3 + +##### `run_mode` + +- Default: `shared_nothing` +- Type: String +- Unit: - +- Is mutable: No +- Description: The running mode of the StarRocks cluster. Valid values: `shared_data` and `shared_nothing` (Default). + - `shared_data` indicates running StarRocks in shared-data mode. + - `shared_nothing` indicates running StarRocks in shared-nothing mode. + + > **CAUTION** + > + > - You cannot adopt the `shared_data` and `shared_nothing` modes simultaneously for a StarRocks cluster. Mixed deployment is not supported. + > - DO NOT change `run_mode` after the cluster is deployed. Otherwise, the cluster fails to restart. The transformation from a shared-nothing cluster to a shared-data cluster or vice versa is not supported. + +- Introduced in: - + +##### `shard_group_clean_threshold_sec` + +- Default: 3600 +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: The time before FE cleans the unused tablet and shard groups in a shared-data cluster. Tablets and shard groups created within this threshold will not be cleaned. +- Introduced in: - + +##### `star_mgr_meta_sync_interval_sec` + +- Default: 600 +- Type: Long +- Unit: Seconds +- Is mutable: No +- Description: The interval at which FE runs the periodical metadata synchronization with StarMgr in a shared-data cluster. +- Introduced in: - + +##### `starmgr_grpc_server_max_worker_threads` + +- Default: 1024 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of worker threads that are used by the grpc server in the FE starmgr module. +- Introduced in: v4.0.0, v3.5.8 + +##### `starmgr_grpc_timeout_seconds` + +- Default: 5 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: +- Introduced in: - + +### Data Lake + +##### `files_enable_insert_push_down_schema` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: When enabled, the analyzer will attempt to push the target table schema into the `files()` table function for INSERT ... FROM files() operations. This only applies when the source is a FileTableFunctionRelation, the target is a native table, and the SELECT list contains corresponding slot-ref columns (or *). The analyzer will match select columns to target columns (counts must match), lock the target table briefly, and replace file-column types with deep-copied target column types for non-complex types (complex types such as Parquet JSON `->` `array` are skipped). Column names from the original files table are preserved. This reduces type-mismatch and looseness from file-based type inference during ingestion. +- Introduced in: v3.4.0, v3.5.0 + +##### `hdfs_read_buffer_size_kb` + +- Default: 8192 +- Type: Int +- Unit: Kilobytes +- Is mutable: Yes +- Description: Size of the HDFS read buffer in kilobytes. StarRocks converts this value to bytes (`<< 10`) and uses it to initialize HDFS read buffers in `HdfsFsManager` and to populate the thrift field `hdfs_read_buffer_size_kb` sent to BE tasks (e.g., `TBrokerScanRangeParams`, `TDownloadReq`) when broker access is not used. Increasing `hdfs_read_buffer_size_kb` can improve sequential read throughput and reduce syscall overhead at the cost of higher per-stream memory usage; decreasing it reduces memory footprint but may lower IO efficiency. Consider workload (many small streams vs. few large sequential reads) when tuning. +- Introduced in: v3.2.0 + +##### `hdfs_write_buffer_size_kb` + +- Default: 1024 +- Type: Int +- Unit: Kilobytes +- Is mutable: Yes +- Description: Sets the HDFS write buffer size (in KB) used for direct writes to HDFS or object stores when not using a broker. The FE converts this value to bytes (`<< 10`) and initializes the local write buffer in HdfsFsManager, and it is propagated in Thrift requests (e.g., TUploadReq, TExportSink, sink options) so backends/agents use the same buffer size. Increasing this value can improve throughput for large sequential writes at the cost of more memory per writer; decreasing it reduces per-stream memory usage and may lower latency for small writes. Tune alongside `hdfs_read_buffer_size_kb` and consider available memory and concurrent writers. +- Introduced in: v3.2.0 + +##### `lake_batch_publish_max_version_num` + +- Default: 10 +- Type: Int +- Unit: Count +- Is mutable: Yes +- Description: Sets the upper bound on how many consecutive transaction versions may be grouped together when building a publish batch for lake (cloud‑native) tables. The value is passed to the transaction graph batching routine (see getReadyToPublishTxnListBatch) and works together with `lake_batch_publish_min_version_num` to determine the candidate range size for a TransactionStateBatch. Larger values can increase publish throughput by batching more commits, but increase the scope of an atomic publish (longer visibility latency and larger rollback surface) and may be limited at runtime when versions are not consecutive. Tune according to workload and visibility/latency requirements. +- Introduced in: v3.2.0 + +##### `lake_batch_publish_min_version_num` + +- Default: 1 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: Sets the minimum number of consecutive transaction versions required to form a publish batch for lake tables. DatabaseTransactionMgr.getReadyToPublishTxnListBatch passes this value to transactionGraph.getTxnsWithTxnDependencyBatch together with `lake_batch_publish_max_version_num` to select dependent transactions. A value of `1` allows single-transaction publishes (no batching). Values `>1` require at least that many consecutively-versioned, single-table, non-replication transactions to be available; batching is aborted if versions are non-consecutive, a replication transaction appears, or a schema change consumes a version. Increasing this value can improve publish throughput by grouping commits but may delay publishing while waiting for enough consecutive transactions. +- Introduced in: v3.2.0 + +##### `lake_enable_batch_publish_version` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: When enabled, PublishVersionDaemon batches ready transactions for the same Lake (shared-data) table/partition and publishes their versions together instead of issuing per-transaction publishes. In RunMode shared-data, the daemon calls getReadyPublishTransactionsBatch() and uses publishVersionForLakeTableBatch(...) to perform grouped publish operations (reducing RPCs and improving throughput). When disabled, the daemon falls back to per-transaction publishing via publishVersionForLakeTable(...). The implementation coordinates in-flight work using internal sets to avoid duplicate publishes when the switch is toggled and is affected by the thread pool sizing via `lake_publish_version_max_threads`. +- Introduced in: v3.2.0 + +##### `lake_enable_tablet_creation_optimization` + +- Default: false +- Type: boolean +- Unit: - +- Is mutable: Yes +- Description: When enabled, StarRocks optimizes tablet creation for cloud-native tables and materialized views in shared-data mode by creating a single shared tablet metadata for all tablets under a physical partition instead of distinct metadata per tablet. This reduces the number of tablet creation tasks and metadata/files produced during table creation, rollup, and schema-change jobs. The optimization is applied only for cloud-native tables/materialized views and is combined with `file_bundling` (the latter reuses the same optimization logic). Note: schema-change and rollup jobs explicitly disable the optimization for tables using `file_bundling` to avoid overwriting files with identical names. Enable cautiously — it changes the granularity of created tablet metadata and can affect how replica creation and file naming behave. +- Introduced in: v3.3.1, v3.4.0, v3.5.0 + +##### `lake_use_combined_txn_log` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: When this item is set to `true`, the system allows Lake tables to use the combined transaction log path for relevant transactions. Available for shared-data clusters only. +- Introduced in: v3.3.7, v3.4.0, v3.5.0 + +### Other + +##### `agent_task_resend_wait_time_ms` + +- Default: 5000 +- Type: Long +- Unit: Milliseconds +- Is mutable: Yes +- Description: The duration the FE must wait before it can resend an agent task. An agent task can be resent only when the gap between the task creation time and the current time exceeds the value of this parameter. This parameter is used to prevent repetitive sending of agent tasks. +- Introduced in: - + +##### `allow_system_reserved_names` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to allow users to create columns whose names are initiated with `__op` and `__row`. To enable this feature, set this parameter to `TRUE`. Please note that these name formats are reserved for special purposes in StarRocks and creating such columns may result in undefined behavior. Therefore this feature is disabled by default. +- Introduced in: v3.2.0 + +##### `auth_token` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The token that is used for identity authentication within the StarRocks cluster to which the FE belongs. If this parameter is left unspecified, StarRocks generates a random token for the cluster at the time when the leader FE of the cluster is started for the first time. +- Introduced in: - + +##### `authentication_ldap_simple_bind_base_dn` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: Yes +- Description: The base DN, which is the point from which the LDAP server starts to search for users' authentication information. +- Introduced in: - + +##### `authentication_ldap_simple_bind_root_dn` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: Yes +- Description: The administrator DN used to search for users' authentication information. +- Introduced in: - + +##### `authentication_ldap_simple_bind_root_pwd` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: Yes +- Description: The password of the administrator used to search for users' authentication information. +- Introduced in: - + +##### `authentication_ldap_simple_server_host` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: Yes +- Description: The host on which the LDAP server runs. +- Introduced in: - + +##### `authentication_ldap_simple_server_port` + +- Default: 389 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The port of the LDAP server. +- Introduced in: - + +##### `authentication_ldap_simple_user_search_attr` + +- Default: uid +- Type: String +- Unit: - +- Is mutable: Yes +- Description: The name of the attribute that identifies users in LDAP objects. +- Introduced in: - + +##### `backup_job_default_timeout_ms` + +- Default: 86400 * 1000 +- Type: Int +- Unit: Milliseconds +- Is mutable: Yes +- Description: The timeout duration of a backup job. If this value is exceeded, the backup job fails. +- Introduced in: - + +##### `enable_collect_tablet_num_in_show_proc_backend_disk_path` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable the collection of tablet numbers for each disk in the `SHOW PROC /BACKENDS/{id}` command +- Introduced in: v4.0.1, v3.5.8 + +##### `enable_colocate_restore` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable Backup and Restore for Colocate Tables. `true` indicates enabling Backup and Restore for Colocate Tables and `false` indicates disabling it. +- Introduced in: v3.2.10, v3.3.3 + +##### `enable_materialized_view_concurrent_prepare` + +- Default: true +- Type: Boolean +- Unit: +- Is mutable: Yes +- Description: Whether to prepare materialized view concurrently to improve performance. +- Introduced in: v3.4.4 + +##### `enable_metric_calculator` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: No +- Description: Specifies whether to enable the feature that is used to periodically collect metrics. Valid values: `TRUE` and `FALSE`. `TRUE` specifies to enable this feature, and `FALSE` specifies to disable this feature. +- Introduced in: - + +##### `enable_table_metrics_collect` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to export table-level metrics in FE. When disabled, FE will skip exporting table metrics (such as table scan/load counters and table size metrics), but still records the counters in memory. +- Introduced in: - + +##### `enable_mv_post_image_reload_cache` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to perform reload flag check after FE loaded an image. If the check is performed for a base materialized view, it is not needed for other materialized views that related to it. +- Introduced in: v3.5.0 + +##### `enable_mv_query_context_cache` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable query-level materialized view rewrite cache to improve query rewrite performance. +- Introduced in: v3.3 + +##### `enable_mv_refresh_collect_profile` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable profile in refreshing materialized view by default for all materialized views. +- Introduced in: v3.3.0 + +##### `enable_mv_refresh_extra_prefix_logging` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable prefixes with materialized view names in logs for better debug. +- Introduced in: v3.4.0 + +##### `enable_mv_refresh_query_rewrite` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable rewrite query during materialized view refresh so that the query can use the rewritten mv directly rather than the base table to improve query performance. +- Introduced in: v3.3 + +##### `enable_trace_historical_node` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to allow the system to trace the historical nodes. By setting this item to `true`, you can enable the Cache Sharing feature and allow the system to choose the right cache nodes during elastic scaling. +- Introduced in: v3.5.1 + +##### `es_state_sync_interval_second` + +- Default: 10 +- Type: Long +- Unit: Seconds +- Is mutable: No +- Description: The time interval at which the FE obtains Elasticsearch indexes and synchronizes the metadata of StarRocks external tables. +- Introduced in: - + +##### `hive_meta_cache_refresh_interval_s` + +- Default: 3600 * 2 +- Type: Long +- Unit: Seconds +- Is mutable: No +- Description: The time interval at which the cached metadata of Hive external tables is updated. +- Introduced in: - + +##### `hive_meta_store_timeout_s` + +- Default: 10 +- Type: Long +- Unit: Seconds +- Is mutable: No +- Description: The amount of time after which a connection to a Hive metastore times out. +- Introduced in: - + +##### `jdbc_connection_idle_timeout_ms` + +- Default: 600000 +- Type: Int +- Unit: Milliseconds +- Is mutable: No +- Description: The maximum amount of time after which a connection for accessing a JDBC catalog times out. Timed-out connections are considered idle. +- Introduced in: - + +##### `jdbc_connection_timeout_ms` + +- Default: 10000 +- Type: Long +- Unit: Milliseconds +- Is mutable: No +- Description: The timeout in milliseconds for HikariCP connection pool to acquire a connection. If a connection cannot be acquired from the pool within this time, the operation will fail. +- Introduced in: v3.5.13 + +##### `jdbc_query_timeout_ms` + +- Default: 30000 +- Type: Long +- Unit: Milliseconds +- Is mutable: Yes +- Description: The timeout in milliseconds for JDBC statement query execution. This timeout is applied to all SQL queries executed through JDBC catalogs (e.g., partition metadata queries). The value is converted to seconds when passed to the JDBC driver. +- Introduced in: v3.5.13 + +##### `jdbc_network_timeout_ms` + +- Default: 30000 +- Type: Long +- Unit: Milliseconds +- Is mutable: Yes +- Description: The timeout in milliseconds for JDBC network operations (socket read). This timeout applies to database metadata calls (e.g., getSchemas(), getTables(), getColumns()) to prevent indefinite blocking when the external database is unresponsive. +- Introduced in: v3.5.13 + +##### `jdbc_connection_pool_size` + +- Default: 8 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The maximum capacity of the JDBC connection pool for accessing JDBC catalogs. +- Introduced in: - + +##### `jdbc_meta_default_cache_enable` + +- Default: false +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: The default value for whether the JDBC Catalog metadata cache is enabled. When set to True, newly created JDBC Catalogs will default to metadata caching enabled. +- Introduced in: - + +##### `jdbc_meta_default_cache_expire_sec` + +- Default: 600 +- Type: Long +- Unit: Seconds +- Is mutable: Yes +- Description: The default expiration time for the JDBC Catalog metadata cache. When `jdbc_meta_default_cache_enable` is set to true, newly created JDBC Catalogs will default to setting the expiration time of the metadata cache. +- Introduced in: - + +##### `jdbc_minimum_idle_connections` + +- Default: 1 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The minimum number of idle connections in the JDBC connection pool for accessing JDBC catalogs. +- Introduced in: - + +##### `jwt_jwks_url` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The URL to the JSON Web Key Set (JWKS) service or the path to the public key local file under the `fe/conf` directory. +- Introduced in: v3.5.0 + +##### `jwt_principal_field` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The string used to identify the field that indicates the subject (`sub`) in the JWT. The default value is `sub`. The value of this field must be identical with the username for logging in to StarRocks. +- Introduced in: v3.5.0 + +##### `jwt_required_audience` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The list of strings used to identify the audience (`aud`) in the JWT. The JWT is considered valid only if one of the values in the list match the JWT audience. +- Introduced in: v3.5.0 + +##### `jwt_required_issuer` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The list of strings used to identify the issuers (`iss`) in the JWT. The JWT is considered valid only if one of the values in the list match the JWT issuer. +- Introduced in: v3.5.0 + +##### locale + +- Default: `zh_CN.UTF-8` +- Type: String +- Unit: - +- Is mutable: No +- Description: The character set that is used by the FE. +- Introduced in: - + +##### `max_agent_task_threads_num` + +- Default: 4096 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The maximum number of threads that are allowed in the agent task thread pool. +- Introduced in: - + +##### `max_download_task_per_be` + +- Default: 0 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: In each RESTORE operation, the maximum number of download tasks StarRocks assigned to a BE node. When this item is set to less than or equal to 0, no limit is imposed on the task number. +- Introduced in: v3.1.0 + +##### `max_mv_check_base_table_change_retry_times` + +- Default: 10 +- Type: - +- Unit: - +- Is mutable: Yes +- Description: The maximum retry times for detecting base table change when refreshing materialized views. +- Introduced in: v3.3.0 + +##### `max_mv_refresh_failure_retry_times` + +- Default: 1 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum retry times when materialized view fails to refresh. +- Introduced in: v3.3.0 + +##### `max_mv_refresh_try_lock_failure_retry_times` + +- Default: 3 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum retry times of try lock when materialized view fails to refresh. +- Introduced in: v3.3.0 + +##### `max_small_file_number` + +- Default: 100 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of small files that can be stored on an FE directory. +- Introduced in: - + +##### `max_small_file_size_bytes` + +- Default: 1024 * 1024 +- Type: Int +- Unit: Bytes +- Is mutable: Yes +- Description: The maximum size of a small file. +- Introduced in: - + +##### `max_upload_task_per_be` + +- Default: 0 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: In each BACKUP operation, the maximum number of upload tasks StarRocks assigned to a BE node. When this item is set to less than or equal to 0, no limit is imposed on the task number. +- Introduced in: v3.1.0 + +##### `mv_create_partition_batch_interval_ms` + +- Default: 1000 +- Type: Int +- Unit: ms +- Is mutable: Yes +- Description: During materialized view refresh, if multiple partitions need to be created in bulk, the system divides them into batches of 64 partitions each. To reduce the risk of failures caused by frequent partition creation, a default interval (in milliseconds) is set between each batch to control the creation frequency. +- Introduced in: v3.3 + +##### `mv_plan_cache_max_size` + +- Default: 1000 +- Type: Long +- Unit: +- Is mutable: Yes +- Description: The maximum size of materialized view plan cache (which is used for materialized view rewrite). If there are many materialized views used for transparent query rewrite, you may increase this value. +- Introduced in: v3.2 + +##### `mv_plan_cache_thread_pool_size` + +- Default: 3 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The default thread pool size of materialized view plan cache (which is used for materialized view rewrite). +- Introduced in: v3.2 + +##### `mv_refresh_default_planner_optimize_timeout` + +- Default: 30000 +- Type: - +- Unit: - +- Is mutable: Yes +- Description: The default timeout for the planning phase of the optimizer when refresh materialized views. +- Introduced in: v3.3.0 + +##### `mv_refresh_fail_on_filter_data` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Mv refresh fails if there is filtered data in refreshing, true by default, otherwise return success by ignoring the filtered data. +- Introduced in: - + +##### `mv_refresh_try_lock_timeout_ms` + +- Default: 30000 +- Type: Int +- Unit: Milliseconds +- Is mutable: Yes +- Description: The default try lock timeout for materialized view refresh to try the DB lock of its base table/materialized view. +- Introduced in: v3.3.0 + +##### `oauth2_auth_server_url` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The authorization URL. The URL to which the users’ browser will be redirected in order to begin the OAuth 2.0 authorization process. +- Introduced in: v3.5.0 + +##### `oauth2_client_id` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The public identifier of the StarRocks client. +- Introduced in: v3.5.0 + +##### `oauth2_client_secret` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The secret used to authorize StarRocks client with the authorization server. +- Introduced in: v3.5.0 + +##### `oauth2_jwks_url` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The URL to the JSON Web Key Set (JWKS) service or the path to the local file under the `conf` directory. +- Introduced in: v3.5.0 + +##### `oauth2_principal_field` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The string used to identify the field that indicates the subject (`sub`) in the JWT. The default value is `sub`. The value of this field must be identical with the username for logging in to StarRocks. +- Introduced in: v3.5.0 + +##### `oauth2_redirect_url` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The URL to which the users’ browser will be redirected after the OAuth 2.0 authentication succeeds. The authorization code will be sent to this URL. In most cases, it need to be configured as `http://:/api/oauth2`. +- Introduced in: v3.5.0 + +##### `oauth2_required_audience` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The list of strings used to identify the audience (`aud`) in the JWT. The JWT is considered valid only if one of the values in the list match the JWT audience. +- Introduced in: v3.5.0 + +##### `oauth2_required_issuer` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The list of strings used to identify the issuers (`iss`) in the JWT. The JWT is considered valid only if one of the values in the list match the JWT issuer. +- Introduced in: v3.5.0 + +##### `oauth2_token_server_url` + +- Default: Empty string +- Type: String +- Unit: - +- Is mutable: No +- Description: The URL of the endpoint on the authorization server from which StarRocks obtains the access token. +- Introduced in: v3.5.0 + +##### `plugin_dir` + +- Default: `System.getenv("STARROCKS_HOME")` + "/plugins" +- Type: String +- Unit: - +- Is mutable: No +- Description: The directory that stores plugin installation packages. +- Introduced in: - + +##### `plugin_enable` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether plugins can be installed on FEs. Plugins can be installed or uninstalled only on the Leader FE. +- Introduced in: - + +##### `proc_profile_jstack_depth` + +- Default: 128 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: Maximum Java stack depth when the system collects CPU and memory profiles. This value controls how many Java stack frames are captured for each sampled stack: larger values increase trace detail and output size and may add profiling overhead, while smaller values reduce details. This setting is used when the profiler is started for both CPU and memory profiling, so adjust it to balance diagnostic needs and performance impact. +- Introduced in: - + +##### `proc_profile_mem_enable` + +- Default: true +- Type: Boolean +- Unit: - +- Is mutable: Yes +- Description: Whether to enable collection of process memory allocation profiles. When this item is set to `true`, the system generates an HTML profile named `mem-profile-.html` under `sys_log_dir/proc_profile`, sleeps for `proc_profile_collect_time_s` seconds while sampling, and uses `proc_profile_jstack_depth` for Java stack depth. Generated files are compressed and purged according to `proc_profile_file_retained_days` and `proc_profile_file_retained_size_bytes`. The native extraction path uses `STARROCKS_HOME_DIR` to avoid `/tmp` noexec issues. This item is intended for troubleshooting memory-allocation hotspots. Enabling it increases CPU, I/O and disk usage and may produce large files. +- Introduced in: v3.2.12 + +##### `query_detail_explain_level` + +- Default: COSTS +- Type: String +- Unit: - +- Is mutable: true +- Description: The detail level of query plan returned by the EXPLAIN statement. Valid values: COSTS, NORMAL, VERBOSE. +- Introduced in: v3.2.12, v3.3.5 + +##### `replication_interval_ms` + +- Default: 100 +- Type: Int +- Unit: - +- Is mutable: No +- Description: The minimum time interval at which the replication tasks are scheduled. +- Introduced in: v3.3.5 + +##### `replication_max_parallel_data_size_mb` + +- Default: 1048576 +- Type: Int +- Unit: MB +- Is mutable: Yes +- Description: The maximum size of data allowed for concurrent synchronization. +- Introduced in: v3.3.5 + +##### `replication_max_parallel_replica_count` + +- Default: 10240 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of tablet replicas allowed for concurrent synchronization. +- Introduced in: v3.3.5 + +##### `replication_max_parallel_table_count` + +- Default: 100 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: The maximum number of concurrent data synchronization tasks allowed. StarRocks creates one synchronization task for each table. +- Introduced in: v3.3.5 + +##### `replication_transaction_timeout_sec` + +- Default: 86400 +- Type: Int +- Unit: Seconds +- Is mutable: Yes +- Description: The timeout duration for synchronization tasks. +- Introduced in: v3.3.5 + +##### `skip_whole_phase_lock_mv_limit` + +- Default: 5 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: Controls when StarRocks applies the "non-lock" optimization for tables that have related materialized views. When this item is set to less than 0, the system always applies non-lock optimization and does not copy related materialized views for queries (FE memory usage and metadata copy/lock contention is reduced but risk of metadata concurrency issues can be increased). When it is set to 0, non-lock optimization is disable (the system always use the safe, copy-and-lock path). When it is set to greater than 0, non-lock optimization is applied only for tables whose number of related materialized views is less than or equal to the configured threshold. Additionally, when the value is greater than and equal to 0, the planner records query OLAP tables into the optimizer context to enable materialized view-related rewrite paths; when it is less than 0, this step is skipped. +- Introduced in: v3.2.1 + +##### `small_file_dir` + +- Default: `StarRocksFE.STARROCKS_HOME_DIR` + "/small_files" +- Type: String +- Unit: - +- Is mutable: No +- Description: The root directory of small files. +- Introduced in: - + +##### `task_runs_max_history_number` + +- Default: 10000 +- Type: Int +- Unit: - +- Is mutable: Yes +- Description: Maximum number of task run records to retain in memory and to use as a default LIMIT when querying archived task-run history. When `enable_task_history_archive` is false, this value bounds in-memory history: Force GC trims older entries so only the newest `task_runs_max_history_number` remain. When archive history is queried (and no explicit LIMIT is provided), `TaskRunHistoryTable.lookup` uses `"ORDER BY create_time DESC LIMIT "` if this value is greater than 0. Note: setting this to 0 disables the query-side LIMIT (no cap) but will cause in-memory history to be truncated to zero (unless archiving is enabled). +- Introduced in: v3.2.0 + +##### `tmp_dir` + +- Default: `StarRocksFE.STARROCKS_HOME_DIR` + "/temp_dir" +- Type: String +- Unit: - +- Is mutable: No +- Description: The directory that stores temporary files such as files generated during backup and restore procedures. After these procedures finish, the generated temporary files are deleted. +- Introduced in: - + + From 13b436d21fb6f58e5976db1cd445a2796b8ae2fb Mon Sep 17 00:00:00 2001 From: "docs-automation[bot]" Date: Tue, 24 Feb 2026 18:25:49 +0000 Subject: [PATCH 2/4] docs: automated translation via Gemini --- .../management/FE_configuration.md | 4380 +++++++++++++++++ 1 file changed, 4380 insertions(+) create mode 100644 docs/ja/administration/management/FE_configuration.md diff --git a/docs/ja/administration/management/FE_configuration.md b/docs/ja/administration/management/FE_configuration.md new file mode 100644 index 0000000..8ffd4be --- /dev/null +++ b/docs/ja/administration/management/FE_configuration.md @@ -0,0 +1,4380 @@ +--- +displayed_sidebar: docs +--- + +import FEConfigMethod from '../../_assets/commonMarkdown/FE_config_method.mdx' + +import AdminSetFrontendNote from '../../_assets/commonMarkdown/FE_config_note.mdx' + +import StaticFEConfigNote from '../../_assets/commonMarkdown/StaticFE_config_note.mdx' + +import EditionSpecificFEItem from '../../_assets/commonMarkdown/Edition_Specific_FE_Item.mdx' + +# FE 設定 + + + +## FE 設定項目を表示 + +FE の起動後、MySQL クライアントで ADMIN SHOW FRONTEND CONFIG コマンドを実行して、パラメーター設定を確認できます。特定のパラメーターの設定をクエリしたい場合は、次のコマンドを実行します。 + +```SQL +ADMIN SHOW FRONTEND CONFIG [LIKE "pattern"]; +``` + +返されるフィールドの詳細な説明については、[`ADMIN SHOW CONFIG`](../../sql-reference/sql-statements/cluster-management/config_vars/ADMIN_SHOW_CONFIG.md) を参照してください。 + +:::note +クラスター管理関連のコマンドを実行するには、管理者権限が必要です。 +::: + +## FE パラメーターの設定 + +### FE 動的パラメーターの設定 + +[`ADMIN SET FRONTEND CONFIG`](../../sql-reference/sql-statements/cluster-management/config_vars/ADMIN_SET_CONFIG.md) を使用して、FE 動的パラメーターの設定を構成または変更できます。 + +```SQL +ADMIN SET FRONTEND CONFIG ("key" = "value"); +``` + + + +### FE 静的パラメーターの設定 + + + +## FE パラメーターについて理解する + +### ロギング + +##### `audit_log_delete_age` + +- デフォルト: 30d +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: 監査ログファイルの保持期間。デフォルト値 `30d` は、各監査ログファイルが 30 日間保持できることを指定します。StarRocks は各監査ログファイルをチェックし、30 日以上前に生成されたファイルを削除します。 +- 導入バージョン: - + +##### `audit_log_dir` + +- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/log" +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: 監査ログファイルが保存されるディレクトリ。 +- 導入バージョン: - + +##### `audit_log_enable_compress` + +- デフォルト: false +- タイプ: Boolean +- 単位: N/A +- 変更可能: いいえ +- 説明: true の場合、生成された Log4j2 設定は、ローテーションされた監査ログファイル名 (fe.audit.log.*) に ".gz" 接尾辞を追加し、Log4j2 がロールオーバー時に圧縮された (.gz) アーカイブ監査ログファイルを生成するようにします。この設定は、FE 起動時に Log4jConfig.initLogging で読み込まれ、監査ログの RollingFile アペンダーに適用されます。アクティブな監査ログには影響せず、ローテーション/アーカイブされたファイルにのみ影響します。値は起動時に初期化されるため、変更を反映するには FE の再起動が必要です。監査ログのローテーション設定 (`audit_log_dir`、`audit_log_roll_interval`、`audit_roll_maxsize`、`audit_log_roll_num`) と組み合わせて使用します。 +- 導入バージョン: 3.2.12 + +##### `audit_log_json_format` + +- デフォルト: false +- タイプ: Boolean +- 単位: N/A +- 変更可能: はい +- 説明: true の場合、FE 監査イベントは、デフォルトのパイプ区切り "key=value" 文字列の代わりに、構造化された JSON (Jackson ObjectMapper が注釈付き AuditEvent フィールドの Map をシリアル化) として出力されます。この設定は、AuditLogBuilder が処理するすべての組み込み監査シンクに影響します。接続監査、クエリ監査、大規模クエリ監査 (イベントが条件を満たす場合、大規模クエリしきい値フィールドが JSON に追加されます)、および低速監査出力です。大規模クエリしきい値および "features" フィールドに注釈が付けられたフィールドは特別に扱われます (通常の監査エントリから除外され、適用される場合、大規模クエリまたは機能ログに含まれます)。ログコレクターまたは SIEM のためにログを機械解析可能にするには、これを有効にします。ログ形式が変更され、従来のパイプ区切り形式を期待する既存のパーサーの更新が必要になる場合があることに注意してください。 +- 導入バージョン: 3.2.7 + +##### `audit_log_modules` + +- デフォルト: `slow_query`, query +- タイプ: String[] +- 単位: - +- 変更可能: いいえ +- 説明: StarRocks が監査ログエントリを生成するモジュール。デフォルトでは、StarRocks は `slow_query` モジュールと `query` モジュールの監査ログを生成します。`connection` モジュールは v3.0 からサポートされています。モジュール名をコンマ (,) とスペースで区切ります。 +- 導入バージョン: - + +##### `audit_log_roll_interval` + +- デフォルト: DAY +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: StarRocks が監査ログエントリをローテーションする時間間隔。有効な値: `DAY` と `HOUR`。 + - このパラメーターが `DAY` に設定されている場合、監査ログファイル名に `yyyyMMdd` 形式のサフィックスが追加されます。 + - このパラメーターが `HOUR` に設定されている場合、監査ログファイル名に `yyyyMMddHH` 形式のサフィックスが追加されます。 +- 導入バージョン: - + +##### `audit_log_roll_num` + +- デフォルト: 90 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: `audit_log_roll_interval` パラメーターで指定された保持期間内に保持できる監査ログファイルの最大数。 +- 導入バージョン: - + +##### `bdbje_log_level` + +- デフォルト: INFO +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: StarRocks で Berkeley DB Java Edition (BDB JE) が使用するロギングレベルを制御します。BDB 環境の初期化中に、BDBEnvironment.initConfigs() はこの値を `com.sleepycat.je` パッケージの Java ロガーと BDB JE 環境ファイルロギングレベル (`EnvironmentConfig.FILE_LOGGING_LEVEL`) に適用します。SEVERE、WARNING、INFO、CONFIG、FINE、FINER、FINEST、ALL、OFF などの標準的な java.util.logging.Level 名を受け入れます。ALL に設定すると、すべてのログメッセージが有効になります。冗長性を高めるとログのボリュームが増加し、ディスク I/O とパフォーマンスに影響を与える可能性があります。値は BDB 環境が初期化されるときに読み取られるため、環境の (再) 初期化後にのみ有効になります。 +- 導入バージョン: v3.2.0 + +##### `big_query_log_delete_age` + +- デフォルト: 7d +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: FE の大規模クエリログファイル (`fe.big_query.log.*`) が自動削除されるまでの保持期間を制御します。この値は、Log4j の削除ポリシーに IfLastModified の期間として渡されます。最後に変更された時刻がこの値よりも古いローテーションされた大規模クエリログは削除されます。`d` (日)、`h` (時間)、`m` (分)、`s` (秒) などのサフィックスをサポートします。例: `7d` (7 日)、`10h` (10 時間)、`60m` (60 分)、`120s` (120 秒)。この項目は `big_query_log_roll_interval` および `big_query_log_roll_num` と連携して、どのファイルを保持または削除するかを決定します。 +- 導入バージョン: v3.2.0 + +##### `big_query_log_dir` + +- デフォルト: `Config.STARROCKS_HOME_DIR + "/log"` +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: FE が大規模クエリダンプログ (`fe.big_query.log.*`) を書き込むディレクトリ。Log4j 設定は、このパスを使用して `fe.big_query.log` およびそのローテーションされたファイルの RollingFile アペンダーを作成します。ローテーションと保持は、`big_query_log_roll_interval` (時間ベースのサフィックス)、`log_roll_size_mb` (サイズトリガー)、`big_query_log_roll_num` (最大ファイル数)、および `big_query_log_delete_age` (年齢ベースの削除) によって管理されます。大規模クエリレコードは、`big_query_log_cpu_second_threshold`、`big_query_log_scan_rows_threshold`、または `big_query_log_scan_bytes_threshold` などのユーザー定義のしきい値を超えるクエリに対してログに記録されます。どのモジュールがこのファイルにログを記録するかを制御するには、`big_query_log_modules` を使用します。 +- 導入バージョン: v3.2.0 + +##### `big_query_log_modules` + +- デフォルト: `{"query"}` +- タイプ: String[] +- 単位: - +- 変更可能: いいえ +- 説明: モジュールごとの大規模クエリロギングを有効にするモジュール名サフィックスのリスト。典型的な値は論理コンポーネント名です。たとえば、デフォルトの `query` は `big_query.query` を生成します。 +- 導入バージョン: v3.2.0 + +##### `big_query_log_roll_interval` + +- デフォルト: `"DAY"` +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: `big_query` ログアペンダーのローリングファイル名の日付部分を構築するために使用される時間間隔を指定します。有効な値 (大文字と小文字を区別しない) は `DAY` (デフォルト) と `HOUR` です。`DAY` は日次パターン (`"%d{yyyyMMdd}"`) を生成し、`HOUR` は時間次パターン (`"%d{yyyyMMddHH}"`) を生成します。この値は、サイズベースのロールオーバー (`big_query_roll_maxsize`) とインデックスベースのロールオーバー (`big_query_log_roll_num`) と組み合わされて、RollingFile の filePattern を形成します。無効な値はログ設定の生成を失敗させ (IOException)、ログの初期化または再設定を妨げる可能性があります。`big_query_log_dir`、`big_query_roll_maxsize`、`big_query_log_roll_num`、および `big_query_log_delete_age` と組み合わせて使用します。 +- 導入バージョン: v3.2.0 + +##### `big_query_log_roll_num` + +- デフォルト: 10 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: `big_query_log_roll_interval` ごとに保持するローテーションされた FE 大規模クエリログファイルの最大数。この値は、`fe.big_query.log` の RollingFile アペンダーの DefaultRolloverStrategy `max` 属性にバインドされます。ログが (時間または `log_roll_size_mb` によって) ロールする場合、StarRocks は最大 `big_query_log_roll_num` 個のインデックス付きファイル (filePattern は時間サフィックスとインデックスを使用) を保持します。この数よりも古いファイルはロールオーバーによって削除される可能性があり、`big_query_log_delete_age` はさらに最終変更日時に基づいてファイルを削除できます。 +- 導入バージョン: v3.2.0 + +##### `dump_log_delete_age` + +- デフォルト: 7d +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: ダンプログファイルの保持期間。デフォルト値 `7d` は、各ダンプログファイルが 7 日間保持できることを指定します。StarRocks は各ダンプログファイルをチェックし、7 日以上前に生成されたファイルを削除します。 +- 導入バージョン: - + +##### `dump_log_dir` + +- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/log" +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: ダンプログファイルが保存されるディレクトリ。 +- 導入バージョン: - + +##### `dump_log_modules` + +- デフォルト: query +- タイプ: String[] +- 単位: - +- 変更可能: いいえ +- 説明: StarRocks がダンプログエントリを生成するモジュール。デフォルトでは、StarRocks はクエリモジュールのダンプログを生成します。モジュール名をコンマ (,) とスペースで区切ります。 +- 導入バージョン: - + +##### `dump_log_roll_interval` + +- デフォルト: DAY +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: StarRocks がダンプログエントリをローテーションする時間間隔。有効な値: `DAY` と `HOUR`。 + - このパラメーターが `DAY` に設定されている場合、ダンプログファイル名に `yyyyMMdd` 形式のサフィックスが追加されます。 + - このパラメーターが `HOUR` に設定されている場合、ダンプログファイル名に `yyyyMMddHH` 形式のサフィックスが追加されます。 +- 導入バージョン: - + +##### `dump_log_roll_num` + +- デフォルト: 10 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: `dump_log_roll_interval` パラメーターで指定された保持期間内に保持できるダンプログファイルの最大数。 +- 導入バージョン: - + +##### `edit_log_write_slow_log_threshold_ms` + +- デフォルト: 2000 +- タイプ: Int +- 単位: ミリ秒 +- 変更可能: はい +- 説明: JournalWriter が低速な編集ログバッチ書き込みを検出してログに記録するために使用するしきい値 (ミリ秒単位)。バッチコミット後、バッチ期間がこの値を超えると、JournalWriter はバッチサイズ、期間、現在のジャーナルキューサイズを含む WARN を出力します (約 2 秒に 1 回にレート制限されます)。この設定は、FE リーダーでの潜在的な I/O またはレプリケーションの遅延に対するロギング/アラートのみを制御します。コミットまたはロールの動作は変更しません (`edit_log_roll_num` およびコミット関連の設定を参照)。メトリックの更新は、このしきい値に関係なく発生します。 +- 導入バージョン: v3.2.3 + +##### `enable_audit_sql` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: いいえ +- 説明: この項目が `true` に設定されている場合、FE 監査サブシステムは、ConnectProcessor によって処理されたステートメントの SQL テキストを FE 監査ログ (`fe.audit.log`) に記録します。保存されるステートメントは、他の制御を尊重します。暗号化されたステートメントは編集され (`AuditEncryptionChecker`)、`enable_sql_desensitize_in_log` が設定されている場合、機密性の高い資格情報は編集または非機密化される場合があります。ダイジェスト記録は `enable_sql_digest` によって制御されます。`false` に設定されている場合、ConnectProcessor は監査イベントのステートメントテキストを "?" に置き換えます。他の監査フィールド (ユーザー、ホスト、期間、ステータス、`qe_slow_log_ms` による低速クエリ検出、およびメトリック) は引き続き記録されます。SQL 監査を有効にすると、フォレンジックとトラブルシューティングの可視性が向上しますが、機密性の高い SQL コンテンツが公開され、ログのボリュームと I/O が増加する可能性があります。無効にすると、監査ログでの完全なステートメントの可視性を失う代わりにプライバシーが向上します。 +- 導入バージョン: - + +##### `enable_profile_log` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: いいえ +- 説明: プロファイルロギングを有効にするかどうか。この機能が有効な場合、FE はクエリごとのプロファイルログ (`ProfileManager` によって生成されるシリアル化された `queryDetail` JSON) をプロファイルログシンクに書き込みます。このロギングは `enable_collect_query_detail_info` も有効な場合にのみ実行されます。`enable_profile_log_compress` が有効な場合、JSON はロギング前に gzip 圧縮される場合があります。プロファイルログファイルは `profile_log_dir`、`profile_log_roll_num`、`profile_log_roll_interval` によって管理され、`profile_log_delete_age` ( `7d`、`10h`、`60m`、`120s` のような形式をサポート) に従ってローテーション/削除されます。この機能を無効にすると、プロファイルログの書き込みが停止します (ディスク I/O、圧縮 CPU、ストレージの使用量が削減されます)。 +- 導入バージョン: v3.2.5 + +##### `enable_qe_slow_log` + +- デフォルト: true +- タイプ: Boolean +- 単位: N/A +- 変更可能: はい +- 説明: 有効にすると、FE 組み込み監査プラグイン (AuditLogBuilder) は、測定された実行時間 ("Time" フィールド) が `qe_slow_log_ms` で構成されたしきい値を超えるクエリイベントを低速クエリ監査ログ (AuditLog.getSlowAudit) に書き込みます。無効にすると、これらの低速クエリエントリは抑制されます (通常のクエリおよび接続監査ログは影響を受けません)。低速監査エントリは、グローバルな `audit_log_json_format` 設定 (JSON vs. プレーン文字列) に従います。このフラグを使用して、通常の監査ロギングとは独立して低速クエリ監査の生成量を制御します。これをオフにすると、`qe_slow_log_ms` が低い場合や、ワークロードが多数の長時間実行クエリを生成する場合に、ログ I/O を削減できます。 +- 導入バージョン: 3.2.11 + +##### `enable_sql_desensitize_in_log` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: いいえ +- 説明: この項目が `true` に設定されている場合、システムはログおよびクエリ詳細レコードに書き込まれる前に、機密性の高い SQL コンテンツを置き換えたり隠したりします。この設定を尊重するコードパスには、ConnectProcessor.formatStmt (監査ログ)、StmtExecutor.addRunningQueryDetail (クエリ詳細)、および SimpleExecutor.formatSQL (内部エグゼキュータログ) が含まれます。この機能が有効になっている場合、無効な SQL は固定された非機密化メッセージに置き換えられることがあり、資格情報 (ユーザー/パスワード) は隠され、SQL フォーマッターはサニタイズされた表現を生成する必要があります (ダイジェストスタイルの出力も有効にできます)。これにより、監査/内部ログでの機密リテラルや資格情報の漏洩が減りますが、ログやクエリ詳細に元の完全な SQL テキストが含まれなくなることになります (これは再生やデバッグに影響を与える可能性があります)。 +- 導入バージョン: - + +##### `internal_log_delete_age` + +- デフォルト: 7d +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: FE 内部ログファイル (`internal_log_dir` に書き込まれる) の保持期間を指定します。値は期間文字列です。サポートされるサフィックス: `d` (日)、`h` (時間)、`m` (分)、`s` (秒)。例: `7d` (7 日)、`10h` (10 時間)、`60m` (60 分)、`120s` (120 秒)。この項目は、RollingFile Delete ポリシーで使用される `` 述語として log4j 設定に代入されます。最終変更時刻がこの期間よりも前のファイルは、ログロールオーバー中に削除されます。ディスク領域をより早く解放するにはこの値を増やし、内部マテリアライズドビューまたは統計ログをより長く保持するにはこの値を減らします。 +- 導入バージョン: v3.2.4 + +##### `internal_log_dir` + +- デフォルト: `Config.STARROCKS_HOME_DIR` + "/log" +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: FE ロギングサブシステムが内部ログ (`fe.internal.log`) を保存するために使用するディレクトリ。この設定は Log4j 設定に代入され、InternalFile アペンダーが内部/マテリアライズドビュー/統計ログを書き込む場所、および `internal.` の下のモジュールごとのロガーがファイルを配置する場所を決定します。ディレクトリが存在し、書き込み可能であり、十分なディスク領域があることを確認してください。このディレクトリ内のファイルのログローテーションと保持は、`log_roll_size_mb`、`internal_log_roll_num`、`internal_log_delete_age`、および `internal_log_roll_interval` によって制御されます。`sys_log_to_console` が有効な場合、内部ログはこのディレクトリではなくコンソールに書き込まれる場合があります。 +- 導入バージョン: v3.2.4 + +##### `internal_log_json_format` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: この項目が `true` に設定されている場合、内部統計/監査エントリはコンパクトな JSON オブジェクトとして統計監査ロガーに書き込まれます。JSON には、"executeType" (InternalType: QUERY または DML)、"queryId"、"sql"、"time" (経過ミリ秒) のキーが含まれます。`false` に設定されている場合、同じ情報は 1 行のフォーマット済みテキストとしてログに記録されます ("statistic execute: ... | QueryId: [...] | SQL: ...")。JSON を有効にすると、機械解析とログプロセッサーとの統合が向上しますが、生の SQL テキストがログに含まれるため、機密情報が公開され、ログサイズが増加する可能性があります。 +- 導入バージョン: - + +##### `internal_log_modules` + +- デフォルト: `{"base", "statistic"}` +- タイプ: String[] +- 単位: - +- 変更可能: いいえ +- 説明: 専用の内部ロギングを受け取るモジュール識別子のリスト。各エントリ X について、Log4j はレベル INFO で additivity="false" の `internal.` という名前のロガーを作成します。これらのロガーは、内部アペンダー (`fe.internal.log` に書き込まれる) または `sys_log_to_console` が有効な場合はコンソールにルーティングされます。必要に応じて短い名前またはパッケージフラグメントを使用してください。正確なロガー名は `internal.` + 構成された文字列になります。内部ログファイルのローテーションと保持は、`internal_log_dir`、`internal_log_roll_num`、`internal_log_delete_age`、`internal_log_roll_interval`、および `log_roll_size_mb` に従います。モジュールを追加すると、その実行時メッセージが内部ロガーストリームに分離され、デバッグと監査が容易になります。 +- 導入バージョン: v3.2.4 + +##### `internal_log_roll_interval` + +- デフォルト: DAY +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: FE 内部ログアペンダーの時間ベースのロール間隔を制御します。受け入れられる値 (大文字と小文字を区別しない) は `HOUR` と `DAY` です。`HOUR` は時間単位のファイルパターン (`"%d{yyyyMMddHH}"`) を生成し、`DAY` は日単位のファイルパターン (`"%d{yyyyMMdd}"`) を生成します。これらは RollingFile TimeBasedTriggeringPolicy によってローテーションされた `fe.internal.log` ファイルの名前を付けるために使用されます。無効な値は初期化を失敗させます (アクティブな Log4j 設定の構築時に IOException がスローされます)。ロール動作は、`internal_log_dir`、`internal_roll_maxsize`、`internal_log_roll_num`、および `internal_log_delete_age` などの関連設定にも依存します。 +- 導入バージョン: v3.2.4 + +##### `internal_log_roll_num` + +- デフォルト: 90 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: 内部アペンダー (`fe.internal.log`) に対して保持する、ローテーションされた内部 FE ログファイルの最大数。この値は Log4j DefaultRolloverStrategy の `max` 属性として使用されます。ロールオーバーが発生すると、StarRocks は最大 `internal_log_roll_num` 個のアーカイブファイルを保持し、古いファイルを削除します (これも `internal_log_delete_age` によって管理されます)。値を小さくするとディスク使用量が削減されますが、ログ履歴が短くなります。値を大きくすると、より多くの履歴内部ログが保持されます。この項目は `internal_log_dir`、`internal_log_roll_interval`、および `internal_roll_maxsize` と連携して機能します。 +- 導入バージョン: v3.2.4 + +##### `log_cleaner_audit_log_min_retention_days` + +- デフォルト: 3 +- タイプ: Int +- 単位: 日 +- 変更可能: はい +- 説明: 監査ログファイルの最小保持日数。この日数よりも新しい監査ログファイルは、ディスク使用量が多い場合でも削除されません。これにより、監査ログがコンプライアンスおよびトラブルシューティングの目的で保持されることが保証されます。 +- 導入バージョン: - + +##### `log_cleaner_check_interval_second` + +- デフォルト: 300 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: ディスク使用量をチェックし、ログをクリーンアップする間隔 (秒単位)。クリーナーは、各ログディレクトリのディスク使用量を定期的にチェックし、必要に応じてクリーンアップをトリガーします。デフォルトは 300 秒 (5 分) です。 +- 導入バージョン: - + +##### `log_cleaner_disk_usage_target` + +- デフォルト: 60 +- タイプ: Int +- 単位: パーセンテージ +- 変更可能: はい +- 説明: ログクリーンアップ後の目標ディスク使用量 (パーセンテージ)。ログクリーンアップは、ディスク使用量がこのしきい値を下回るまで続行されます。クリーナーは、目標に到達するまで最も古いログファイルを 1 つずつ削除します。 +- 導入バージョン: - + +##### `log_cleaner_disk_usage_threshold` + +- デフォルト: 80 +- タイプ: Int +- 単位: パーセンテージ +- 変更可能: はい +- 説明: ログクリーンアップをトリガーするディスク使用量しきい値 (パーセンテージ)。ディスク使用量がこのしきい値を超えると、ログクリーンアップが開始されます。クリーナーは、構成された各ログディレクトリを独立してチェックし、このしきい値を超えるディレクトリを処理します。 +- 導入バージョン: - + +##### `log_cleaner_disk_util_based_enable` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: ディスク使用量に基づいた自動ログクリーンアップを有効にします。有効にすると、ディスク使用量がしきい値を超えたときにログがクリーンアップされます。ログクリーナーは FE ノードでバックグラウンドデーモンとして実行され、ログファイルの蓄積によるディスク領域の枯渇を防ぐのに役立ちます。 +- 導入バージョン: - + +##### `log_plan_cancelled_by_crash_be` + +- デフォルト: true +- タイプ: boolean +- 単位: - +- 変更可能: はい +- 説明: BE クラッシュまたは RPC 例外によりクエリがキャンセルされた場合に、クエリ実行プランのロギングを有効にするかどうか。この機能が有効な場合、StarRocks は、BE クラッシュまたは `RpcException` によりクエリがキャンセルされた場合に、クエリ実行プラン (`TExplainLevel.COSTS` レベルで) を WARN エントリとしてログに記録します。ログエントリには QueryId、SQL、および COSTS プランが含まれます。ExecuteExceptionHandler パスでは、例外スタックトレースもログに記録されます。`enable_collect_query_detail_info` が有効な場合 (この場合、プランはクエリ詳細に保存されます) はロギングはスキップされます。コードパスでは、クエリ詳細が null であることを確認することでチェックが実行されます。ExecuteExceptionHandler では、プランは最初の再試行時 (`retryTime == 0`) にのみログに記録されることに注意してください。これを有効にすると、完全な COSTS プランが大きくなる可能性があるため、ログのボリュームが増加する可能性があります。 +- 導入バージョン: v3.2.0 + +##### `log_register_and_unregister_query_id` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: FE が QeProcessorImpl からのクエリ登録および登録解除メッセージ (例: `"register query id = {}"` および `"deregister query id = {}"`) をログに記録することを許可するかどうか。ログは、クエリに null 以外の ConnectContext があり、かつコマンドが `COM_STMT_EXECUTE` でないか、またはセッション変数 `isAuditExecuteStmt()` が true の場合にのみ出力されます。これらのメッセージはすべてのクエリライフサイクルイベントに対して書き込まれるため、この機能を有効にすると、ログのボリュームが大きくなり、高並行環境ではスループットのボトルネックになる可能性があります。デバッグまたは監査のために有効にし、ロギングオーバーヘッドを削減しパフォーマンスを向上させるために無効にしてください。 +- 導入バージョン: v3.3.0, v3.4.0, v3.5.0 + +##### `log_roll_size_mb` + +- デフォルト: 1024 +- タイプ: Int +- 単位: MB +- 変更可能: いいえ +- 説明: システムログファイルまたは監査ログファイルの最大サイズ。 +- 導入バージョン: - + +##### `proc_profile_file_retained_days` + +- デフォルト: 1 +- タイプ: Int +- 単位: 日 +- 変更可能: はい +- 説明: `sys_log_dir/proc_profile` の下に生成されるプロセスプロファイリングファイル (CPU およびメモリ) を保持する日数。ProcProfileCollector は、現在の時刻から `proc_profile_file_retained_days` 日を引いたカットオフを計算し (yyyyMMdd-HHmmss 形式)、タイムスタンプ部分がそのカットオフよりも辞書順で早いプロファイルファイルを削除します (つまり、`timePart.compareTo(timeToDelete) < 0`)。ファイルの削除は、`proc_profile_file_retained_size_bytes` によって制御されるサイズベースのカットオフも尊重します。プロファイルファイルは `cpu-profile-` および `mem-profile-` のプレフィックスを使用し、収集後に圧縮されます。 +- 導入バージョン: v3.2.12 + +##### `proc_profile_file_retained_size_bytes` + +- デフォルト: 2L * 1024 * 1024 * 1024 (2147483648) +- タイプ: Long +- 単位: バイト +- 変更可能: はい +- 説明: プロファイルディレクトリの下に保持する、収集された CPU およびメモリプロファイルファイル (プレフィックス `cpu-profile-` および `mem-profile-` の付いたファイル) の合計バイト数の最大値。有効なプロファイルファイルの合計が `proc_profile_file_retained_size_bytes` を超えると、コレクターは残りの合計サイズが `proc_profile_file_retained_size_bytes` 以下になるまで最も古いプロファイルファイルを削除します。`proc_profile_file_retained_days` よりも古いファイルもサイズに関係なく削除されます。この設定はプロファイルアーカイブのディスク使用量を制御し、`proc_profile_file_retained_days` と相互作用して削除順序と保持を決定します。 +- 導入バージョン: v3.2.12 + +##### `profile_log_delete_age` + +- デフォルト: 1d +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: FE プロファイルログファイルが削除対象となるまでの保持期間を制御します。この値は Log4j の `` ポリシー (`Log4jConfig` 経由) に挿入され、`profile_log_roll_interval` や `profile_log_roll_num` などのローテーション設定と組み合わせて適用されます。サポートされるサフィックス: `d` (日)、`h` (時間)、`m` (分)、`s` (秒)。例: `7d` (7 日)、`10h` (10 時間)、`60m` (60 分)、`120s` (120 秒)。 +- 導入バージョン: v3.2.5 + +##### `profile_log_dir` + +- デフォルト: `Config.STARROCKS_HOME_DIR` + "/log" +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: FE プロファイルログが書き込まれるディレクトリ。Log4jConfig はこの値を使用してプロファイル関連のアペンダーを配置します (このディレクトリの下に `fe.profile.log` や `fe.features.log` などのファイルを作成します)。これらのファイルのローテーションと保持は、`profile_log_roll_size_mb`、`profile_log_roll_num`、および `profile_log_delete_age` によって管理されます。タイムスタンプサフィックス形式は `profile_log_roll_interval` (DAY または HOUR をサポート) によって制御されます。デフォルトディレクトリは `STARROCKS_HOME_DIR` の下にあるため、FE プロセスがこのディレクトリに対する書き込み権限とローテーション/削除権限を持っていることを確認してください。 +- 導入バージョン: v3.2.5 + +##### `profile_log_roll_interval` + +- デフォルト: DAY +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: プロファイルログファイル名の日付部分を生成するために使用される時間粒度を制御します。有効な値 (大文字と小文字を区別しない) は `HOUR` と `DAY` です。`HOUR` は `"%d{yyyyMMddHH}"` (時間単位のタイムバケット) のパターンを生成し、`DAY` は `"%d{yyyyMMdd}"` (日単位のタイムバケット) を生成します。この値は Log4j 設定で `profile_file_pattern` を計算する際に使用され、ロールオーバーファイル名の時間ベースのコンポーネントにのみ影響します。サイズベースのロールオーバーは引き続き `profile_log_roll_size_mb` によって制御され、保持は `profile_log_roll_num` / `profile_log_delete_age` によって制御されます。無効な値はロギング初期化中に IOException を引き起こします (エラーメッセージ: `"profile_log_roll_interval config error: "`)。高ボリュームプロファイリングではファイルごとのサイズを時間単位で制限するために `HOUR` を選択し、日単位の集計では `DAY` を選択します。 +- 導入バージョン: v3.2.5 + +##### `profile_log_roll_num` + +- デフォルト: 5 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: プロファイルロガーの Log4j DefaultRolloverStrategy によって保持される、ローテーションされたプロファイルログファイルの最大数を指定します。この値は、ロギング XML に `${profile_log_roll_num}` (例: ``) として挿入されます。ローテーションは `profile_log_roll_size_mb` または `profile_log_roll_interval` によってトリガーされます。ローテーションが発生すると、Log4j は最大でこれらのインデックス付きファイルを保持し、古いインデックスファイルは削除対象となります。ディスク上の実際の保持は、`profile_log_delete_age` および `profile_log_dir` の場所にも影響されます。値を小さくするとディスク使用量が削減されますが、保持される履歴が制限されます。値を大きくすると、より多くの履歴プロファイルログが保持されます。 +- 導入バージョン: v3.2.5 + +##### `profile_log_roll_size_mb` + +- デフォルト: 1024 +- タイプ: Int +- 単位: MB +- 変更可能: いいえ +- 説明: FE プロファイルログファイルのサイズベースのロールオーバーをトリガーするサイズしきい値 (メガバイト単位) を設定します。この値は `ProfileFile` アペンダーの Log4j RollingFile SizeBasedTriggeringPolicy によって使用されます。プロファイルログが `profile_log_roll_size_mb` を超えると、ローテーションされます。ローテーションは、`profile_log_roll_interval` に到達した場合にも時間によって発生する可能性があります。いずれかの条件がロールオーバーをトリガーします。`profile_log_roll_num` および `profile_log_delete_age` と組み合わせることで、この項目は、保持される履歴プロファイルファイルの数と、古いファイルが削除されるタイミングを制御します。ローテーションされたファイルの圧縮は `enable_profile_log_compress` によって制御されます。 +- 導入バージョン: v3.2.5 + +##### `qe_slow_log_ms` + +- デフォルト: 5000 +- タイプ: Long +- 単位: ミリ秒 +- 変更可能: はい +- 説明: クエリが遅いクエリであるかどうかを判断するために使用されるしきい値。クエリの応答時間がこのしきい値を超えると、**fe.audit.log** に遅いクエリとして記録されます。 +- 導入バージョン: - + +##### `slow_lock_log_every_ms` + +- デフォルト: 3000L +- タイプ: Long +- 単位: ミリ秒 +- 変更可能: はい +- 説明: 同じ SlowLockLogStats インスタンスに対して別の「低速ロック」警告を発行する前に待機する最小間隔 (ミリ秒)。LockUtils は、ロック待機が `slow_lock_threshold_ms` を超えた後にこの値をチェックし、最後にログに記録された低速ロックイベントから `slow_lock_log_every_ms` ミリ秒が経過するまで追加の警告を抑制します。長期的な競合中にログのボリュームを減らすにはより大きな値を、より頻繁な診断を取得するにはより小さな値を使用します。変更は、その後のチェックに対して実行時に有効になります。 +- 導入バージョン: v3.2.0 + +##### `slow_lock_print_stack` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: LockManager が `logSlowLockTrace` によって発行される低速ロック警告の JSON ペイロードに、所有スレッドの完全なスタックトレースを含めることを許可するかどうか ("stack" 配列は `LogUtil.getStackTraceToJsonArray` を `start=0` および `max=Short.MAX_VALUE` で介して入力されます)。この設定は、ロック取得が `slow_lock_threshold_ms` で構成されたしきい値を超えたときに表示されるロック所有者に関する追加のスタック情報のみを制御します。この機能を有効にすると、正確なスレッドスタックを提供することでデバッグに役立ちますが、高並行環境でスタックトレースをキャプチャしてシリアル化することによって発生するログボリュームと CPU/メモリオーバーヘッドが増加します。 +- 導入バージョン: v3.3.16, v3.4.5, v3.5.1 + +##### `slow_lock_threshold_ms` + +- デフォルト: 3000L +- タイプ: long +- 単位: ミリ秒 +- 変更可能: はい +- 説明: ロック操作または保持されているロックを「遅い」と分類するために使用されるしきい値 (ミリ秒単位)。ロックの経過待機時間または保持時間がこの値を超えると、StarRocks は (コンテキストに応じて) 診断ログを発行し、スタックトレースや待機者/所有者情報を含め、LockManager ではこの遅延後にデッドロック検出を開始します。これは LockUtils (低速ロックロギング)、QueryableReentrantReadWriteLock (低速リーダーのフィルタリング)、LockManager (デッドロック検出遅延および低速ロックトレース)、LockChecker (定期的な低速ロック検出)、およびその他の呼び出し元 (例: DiskAndTabletLoadReBalancer ロギング) によって使用されます。値を小さくすると感度が上がり、ロギング/診断のオーバーヘッドが増加します。0 または負の値を設定すると、初期の待機ベースのデッドロック検出遅延動作が無効になります。`slow_lock_log_every_ms`、`slow_lock_print_stack`、および `slow_lock_stack_trace_reserve_levels` と一緒に調整してください。 +- 導入バージョン: 3.2.0 + +##### `sys_log_delete_age` + +- デフォルト: 7d +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: システムログファイルの保持期間。デフォルト値 `7d` は、各システムログファイルが 7 日間保持できることを指定します。StarRocks は各システムログファイルをチェックし、7 日以上前に生成されたファイルを削除します。 +- 導入バージョン: - + +##### `sys_log_dir` + +- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/log" +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: システムログファイルが保存されるディレクトリ。 +- 導入バージョン: - + +##### `sys_log_enable_compress` + +- デフォルト: false +- タイプ: boolean +- 単位: - +- 変更可能: いいえ +- 説明: この項目が `true` に設定されている場合、システムはローテーションされたシステムログファイル名に ".gz" 接尾辞を追加し、Log4j が gzip 圧縮されたローテーションされた FE システムログを生成するようにします (例: fe.log.*)。この値は Log4j 設定生成時 (Log4jConfig.initLogging / generateActiveLog4jXmlConfig) に読み取られ、RollingFile の filePattern で使用される `sys_file_postfix` プロパティを制御します。この機能を有効にすると、保持されるログのディスク使用量は削減されますが、ロールオーバー中の CPU と I/O が増加し、ログファイル名が変更されるため、ログを読み取るツールやスクリプトは .gz ファイルを処理できる必要があります。監査ログは圧縮に対して別の設定 (`audit_log_enable_compress`) を使用することに注意してください。 +- 導入バージョン: v3.2.12 + +##### `sys_log_format` + +- デフォルト: "plaintext" +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: FE ログに使用される Log4j レイアウトを選択します。有効な値: `"plaintext"` (デフォルト) および `"json"`。値は大文字と小文字を区別しません。`"plaintext"` は、人間が読めるタイムスタンプ、レベル、スレッド、class.method:line、および WARN/ERROR のスタックトレースを持つ PatternLayout を構成します。`"json"` は JsonTemplateLayout を構成し、ログアグリゲーター (ELK, Splunk) に適した構造化された JSON イベント (UTC タイムスタンプ、レベル、スレッド ID/名前、ソースファイル/メソッド/行、メッセージ、例外スタックトレース) を出力します。JSON 出力は、最大文字列長の `sys_log_json_max_string_length` および `sys_log_json_profile_max_string_length` に従います。 +- 導入バージョン: v3.2.10 + +##### `sys_log_json_max_string_length` + +- デフォルト: 1048576 +- タイプ: Int +- 単位: バイト +- 変更可能: いいえ +- 説明: JSON 形式のシステムログに使用される JsonTemplateLayout の "maxStringLength" 値を設定します。`sys_log_format` が `"json"` に設定されている場合、文字列値フィールド (例: "message" および文字列化された例外スタックトレース) は、長さがこの制限を超えると切り捨てられます。この値は、生成された Log4j XML (`Log4jConfig.generateActiveLog4jXmlConfig()`) に挿入され、デフォルト、警告、監査、ダンプ、およびビッグクエリのレイアウトに適用されます。プロファイルレイアウトは別の設定 (`sys_log_json_profile_max_string_length`) を使用します。この値を小さくするとログサイズが削減されますが、有用な情報が切り捨てられる可能性があります。 +- 導入バージョン: 3.2.11 + +##### `sys_log_json_profile_max_string_length` + +- デフォルト: 104857600 (100 MB) +- タイプ: Int +- 単位: バイト +- 変更可能: いいえ +- 説明: `sys_log_format` が "json" の場合、プロファイル (および関連機能) ログアペンダーの JsonTemplateLayout の maxStringLength を設定します。JSON 形式のプロファイルログ内の文字列フィールド値は、このバイト長に切り捨てられます。文字列以外のフィールドは影響を受けません。この項目は Log4jConfig `JsonTemplateLayout maxStringLength` で適用され、`plaintext` ロギングが使用されている場合は無視されます。必要な完全なメッセージに対して十分に大きな値を維持しますが、値が大きいほどログサイズと I/O が増加することに注意してください。 +- 導入バージョン: v3.2.11 + +##### `sys_log_level` + +- デフォルト: INFO +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: システムログエントリが分類される重要度レベル。有効な値: `INFO`、`WARN`、`ERROR`、`FATAL`。 +- 導入バージョン: - + +##### `sys_log_roll_interval` + +- デフォルト: DAY +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: StarRocks がシステムログエントリをローテーションする時間間隔。有効な値: `DAY` と `HOUR`。 + - このパラメーターが `DAY` に設定されている場合、システムログファイル名に `yyyyMMdd` 形式のサフィックスが追加されます。 + - このパラメーターが `HOUR` に設定されている場合、システムログファイル名に `yyyyMMddHH` 形式のサフィックスが追加されます。 +- 導入バージョン: - + +##### `sys_log_roll_num` + +- デフォルト: 10 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: `sys_log_roll_interval` パラメーターで指定された保持期間内に保持できるシステムログファイルの最大数。 +- 導入バージョン: - + +##### `sys_log_to_console` + +- デフォルト: false (ただし、環境変数 `SYS_LOG_TO_CONSOLE` が "1" に設定されている場合を除く) +- タイプ: Boolean +- 単位: - +- 変更可能: いいえ +- 説明: この項目が `true` に設定されている場合、システムは Log4j を設定して、すべてのログをファイルベースのアペンダーではなくコンソール (ConsoleErr アペンダー) に送信します。この値は、アクティブな Log4j XML 設定を生成する際に読み取られ (ルートロガーとモジュールごとのロガーのアペンダー選択に影響します)、プロセス起動時に `SYS_LOG_TO_CONSOLE` 環境変数からキャプチャされます。実行時に変更しても効果はありません。この設定は、stdout/stderr ログ収集がログファイルの書き込みよりも優先されるコンテナ化された環境や CI 環境で一般的に使用されます。 +- 導入バージョン: v3.2.0 + +##### `sys_log_verbose_modules` + +- デフォルト: 空文字列 +- タイプ: String[] +- 単位: - +- 変更可能: いいえ +- 説明: StarRocks がシステムログを生成するモジュール。このパラメーターが `org.apache.starrocks.catalog` に設定されている場合、StarRocks はカタログモジュールに対してのみシステムログを生成します。モジュール名をコンマ (,) とスペースで区切ります。 +- 導入バージョン: - + +##### `sys_log_warn_modules` + +- デフォルト: {} +- タイプ: String[] +- 単位: - +- 変更可能: いいえ +- 説明: システムが起動時に WARN レベルのロガーとして構成し、警告アペンダー (SysWF) — `fe.warn.log` ファイルにルーティングするロガー名またはパッケージプレフィックスのリスト。エントリは、生成された Log4j 設定 (org.apache.kafka、org.apache.hudi、org.apache.hadoop.io.compress などの組み込み警告モジュールとともに) に挿入され、`` のようなロガー要素を生成します。通常のログへのノイズの多い INFO/DEBUG 出力を抑制し、警告を個別にキャプチャできるようにするために、完全修飾パッケージおよびクラスプレフィックス (例: "com.example.lib") を使用することをお勧めします。 +- 導入バージョン: v3.2.13 + +### サーバー + +##### `brpc_idle_wait_max_time` + +- デフォルト: 10000 +- タイプ: Int +- 単位: ms +- 変更可能: いいえ +- 説明: bRPC クライアントがアイドル状態で待機する最大時間。 +- 導入バージョン: - + +##### `brpc_inner_reuse_pool` + +- デフォルト: true +- タイプ: boolean +- 単位: - +- 変更可能: いいえ +- 説明: 基盤となる BRPC クライアントが、接続/チャネルに内部共有再利用プールを使用するかどうかを制御します。StarRocks は BrpcProxy で `brpc_inner_reuse_pool` を読み込み、RpcClientOptions を構築する際に使用します ( `rpcOptions.setInnerResuePool(...)` 経由)。有効 (true) の場合、RPC クライアントは内部プールを再利用して、呼び出しごとの接続作成を減らし、FE-to-BE / LakeService RPC の接続チャーン、メモリ、ファイルディスクリプタの使用量を削減します。無効 (false) の場合、クライアントはより分離されたプールを作成する可能性があります (リソース使用量が増加する代わりに、並行性の分離を向上させます)。この値を変更するには、プロセスを再起動して変更を反映する必要があります。 +- 導入バージョン: v3.3.11, v3.4.1, v3.5.0 + +##### `brpc_min_evictable_idle_time_ms` + +- デフォルト: 120000 +- タイプ: Int +- 単位: ミリ秒 +- 変更可能: いいえ +- 説明: アイドル状態の BRPC 接続が、接続プールで削除可能になる前に保持される必要のある時間 (ミリ秒)。`BrpcProxy` によって使用される RpcClientOptions に適用されます (RpcClientOptions.setMinEvictableIdleTime 経由)。アイドル接続を長く保持するにはこの値を増やし (再接続のチャーンを減らす)、未使用のソケットをより早く解放するにはこの値を減らします (リソース使用量を減らす)。接続の再利用、プールの成長、削除の動作のバランスをとるために、`brpc_connection_pool_size`、`brpc_idle_wait_max_time` とともに調整します。 +- 導入バージョン: v3.3.11, v3.4.1, v3.5.0 + +##### `brpc_reuse_addr` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: いいえ +- 説明: true の場合、StarRocks は、brpc RpcClient によって作成されたクライアントソケットのローカルアドレス再利用を許可するようにソケットオプションを設定します (RpcClientOptions.setReuseAddress 経由)。これを有効にすると、バインドの失敗が減り、ソケットが閉じられた後のローカルポートの再バインドが高速化されます。これは、高い接続チャーンまたは高速な再起動に役立ちます。false の場合、アドレス/ポートの再利用が無効になり、意図しないポート共有の可能性を減らすことができますが、一時的なバインドエラーが増加する可能性があります。このオプションは、`brpc_connection_pool_size` と `brpc_short_connection` で構成された接続動作と相互作用します。これは、クライアントソケットをどれだけ迅速に再バインドして再利用できるかに影響するためです。 +- 導入バージョン: v3.3.11, v3.4.1, v3.5.0 + +##### `cluster_name` + +- デフォルト: StarRocks Cluster +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: FE が属する StarRocks クラスターの名前。クラスター名はウェブページの `Title` に表示されます。 +- 導入バージョン: - + +##### `dns_cache_ttl_seconds` + +- デフォルト: 60 +- タイプ: Int +- 単位: 秒 +- 変更可能: いいえ +- 説明: 正常な DNS ルックアップの DNS キャッシュ TTL (Time-To-Live) (秒単位)。これは、JVM が正常な DNS ルックアップをキャッシュする期間を制御する Java セキュリティプロパティ `networkaddress.cache.ttl` を設定します。システムが常に情報をキャッシュするように `-1` に設定するか、キャッシュを無効にするために `0` に設定します。これは、IP アドレスが頻繁に変更される環境 (Kubernetes デプロイメントや動的 DNS が使用される場合など) で特に役立ちます。 +- 導入バージョン: v3.5.11, v4.0.4 + +##### `enable_http_async_handler` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: システムが HTTP リクエストを非同期で処理することを許可するかどうか。この機能が有効な場合、Netty ワーカー スレッドによって受信された HTTP リクエストは、HTTP サーバーのブロックを避けるために、サービスロジック処理のために別のスレッドプールに送信されます。無効になっている場合、Netty ワーカーがサービスロジックを処理します。 +- 導入バージョン: 4.0.0 + +##### `enable_http_validate_headers` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: いいえ +- 説明: Netty の HttpServerCodec が厳密な HTTP ヘッダー検証を実行するかどうかを制御します。この値は、HttpServer で HTTP パイプラインが初期化されるときに HttpServerCodec に渡されます (UseLocations を参照)。新しい Netty バージョンはより厳密なヘッダー規則を適用するため (https://github.com/netty/netty/pull/12760)、下位互換性のためにデフォルトは false です。RFC 準拠のヘッダーチェックを強制するには true に設定します。そうすると、レガシークライアントまたはプロキシからの不正な形式または非準拠のリクエストが拒否される可能性があります。変更を有効にするには HTTP サーバーの再起動が必要です。 +- 導入バージョン: v3.3.0, v3.4.0, v3.5.0 + +##### `frontend_address` + +- デフォルト: 0.0.0.0 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: FE ノードの IP アドレス。 +- 導入バージョン: - + +##### `http_async_threads_num` + +- デフォルト: 4096 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: 非同期 HTTP リクエスト処理用のスレッドプールのサイズ。エイリアスは `max_http_sql_service_task_threads_num` です。 +- 導入バージョン: 4.0.0 + +##### `http_backlog_num` + +- デフォルト: 1024 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: FE ノードの HTTP サーバーが保持するバックログキューの長さ。 +- 導入バージョン: - + +##### `http_max_chunk_size` + +- デフォルト: 8192 +- タイプ: Int +- 単位: バイト +- 変更可能: いいえ +- 説明: FE HTTP サーバーの Netty の HttpServerCodec によって処理される単一の HTTP チャンクの最大許容サイズ (バイト単位) を設定します。これは HttpServerCodec に 3 番目の引数として渡され、チャンク転送またはストリーミングリクエスト/レスポンス中のチャンクの長さを制限します。受信チャンクがこの値を超えると、Netty はフレームが大きすぎるエラー (例: TooLongFrameException) を発生させ、リクエストが拒否される可能性があります。正当な大規模チャンクアップロードの場合はこれを増やし、メモリ圧力を減らし、DoS 攻撃の表面積を減らすために小さく保ちます。この設定は `http_max_initial_line_length`、`http_max_header_size`、および `enable_http_validate_headers` とともに使用されます。 +- 導入バージョン: v3.2.0 + +##### `http_max_header_size` + +- デフォルト: 32768 +- タイプ: Int +- 単位: バイト +- 変更可能: いいえ +- 説明: Netty の `HttpServerCodec` によって解析される HTTP リクエストヘッダーブロックの最大許容サイズ (バイト単位)。StarRocks はこの値を `HttpServerCodec` に渡します (`Config.http_max_header_size` として)。受信リクエストのヘッダー (名前と値の組み合わせ) がこの制限を超えると、コーデックはリクエストを拒否し (デコーダー例外)、接続/リクエストは失敗します。クライアントが正当に非常に大きなヘッダー (大きなクッキーまたは多くのカスタムヘッダー) を送信する場合にのみ増やします。値が大きいほど、接続あたりのメモリ使用量が増加します。`http_max_initial_line_length` および `http_max_chunk_size` と組み合わせて調整します。変更には FE の再起動が必要です。 +- 導入バージョン: v3.2.0 + +##### `http_max_initial_line_length` + +- デフォルト: 4096 +- タイプ: Int +- 単位: バイト +- 変更可能: いいえ +- 説明: HttpServer で使用される Netty `HttpServerCodec` によって受け入れられる HTTP 初期リクエストライン (メソッド + リクエストターゲット + HTTP バージョン) の最大許容長 (バイト単位) を設定します。この値は Netty のデコーダーに渡され、この値よりも長い初期ラインを持つリクエストは拒否されます (TooLongFrameException)。非常に長いリクエスト URI をサポートする必要がある場合にのみこれを増やします。値が大きいほどメモリ使用量が増加し、不正な形式/リクエスト乱用に対する露出が増加する可能性があります。`http_max_header_size` および `http_max_chunk_size` とともに調整します。 +- 導入バージョン: v3.2.0 + +##### `http_port` + +- デフォルト: 8030 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: FE ノードの HTTP サーバーがリッスンするポート。 +- 導入バージョン: - + +##### `http_web_page_display_hardware` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: true の場合、HTTP インデックスページ (/index) に oshi ライブラリ (CPU、メモリ、プロセス、ディスク、ファイルシステム、ネットワークなど) を介して入力されたハードウェア情報セクションが含まれます。oshi は、システムユーティリティを呼び出したり、システムファイルを間接的に読み取ったりする可能性があります (たとえば、`getent passwd` などのコマンドを実行できます)。これにより、機密性の高いシステムデータが表面化する可能性があります。より厳密なセキュリティを要求する場合や、ホスト上でそれらの間接コマンドの実行を避けたい場合は、この設定を false に設定して、Web UI でのハードウェア詳細の収集と表示を無効にします。 +- 導入バージョン: v3.2.0 + +##### `http_worker_threads_num` + +- デフォルト: 0 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: HTTP リクエストを処理する HTTP サーバーのワーカー スレッドの数。負の値または 0 の場合、スレッド数は CPU コア数の 2 倍になります。 +- 導入バージョン: v2.5.18, v3.0.10, v3.1.7, v3.2.2 + +##### `max_mysql_service_task_threads_num` + +- デフォルト: 4096 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: FE ノードの MySQL サーバーがタスクを処理するために実行できるスレッドの最大数。 +- 導入バージョン: - + +##### `max_task_runs_threads_num` + +- デフォルト: 512 +- タイプ: Int +- 単位: スレッド +- 変更可能: いいえ +- 説明: タスク実行エグゼキュータースレッドプールの最大スレッド数を制御します。この値は、同時タスク実行の上限です。増やすと並列処理が向上しますが、CPU、メモリ、ネットワークの使用量も増加します。減らすとタスク実行のバックログが増え、遅延が長くなる可能性があります。この値は、予想される同時スケジュールジョブと利用可能なシステムリソースに応じて調整してください。 +- 導入バージョン: v3.2.0 + +##### `memory_tracker_enable` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: FE メモリトラッカーサブシステムを有効にします。`memory_tracker_enable` が `true` に設定されている場合、`MemoryUsageTracker` は定期的に登録されたメタデータモジュールをスキャンし、インメモリ `MemoryUsageTracker.MEMORY_USAGE` マップを更新し、合計をログに記録し、`MetricRepo` がメモリ使用量とオブジェクト数ゲージをメトリック出力に公開するようにします。サンプリング間隔を制御するには `memory_tracker_interval_seconds` を使用します。この機能を有効にすると、メモリ消費の監視とデバッグに役立ちますが、CPU と I/O のオーバーヘッド、および追加のメトリックカーディナリティが発生します。 +- 導入バージョン: v3.2.4 + +##### `memory_tracker_interval_seconds` + +- デフォルト: 60 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: FE `MemoryUsageTracker` デーモンが FE プロセスおよび登録された `MemoryTrackable` モジュールのメモリ使用量をポーリングおよび記録する間隔 (秒単位)。`memory_tracker_enable` が `true` に設定されている場合、トラッカーはこの頻度で実行され、`MEMORY_USAGE` を更新し、集約された JVM および追跡されたモジュールの使用状況をログに記録します。 +- 導入バージョン: v3.2.4 + +##### `mysql_nio_backlog_num` + +- デフォルト: 1024 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: FE ノードの MySQL サーバーが保持するバックログキューの長さ。 +- 導入バージョン: - + +##### `mysql_server_version` + +- デフォルト: 8.0.33 +- タイプ: String +- 単位: - +- 変更可能: はい +- 説明: クライアントに返される MySQL サーバーバージョン。このパラメーターを変更すると、以下の状況でバージョン情報に影響します。 + 1. `select version();` + 2. ハンドシェイクパケットバージョン + 3. グローバル変数 `version` の値 (`show variables like 'version';`) +- 導入バージョン: - + +##### `mysql_service_io_threads_num` + +- デフォルト: 4 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: FE ノードの MySQL サーバーが I/O イベントを処理するために実行できるスレッドの最大数。 +- 導入バージョン: - + +##### `mysql_service_kill_after_disconnect` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: いいえ +- 説明: MySQL TCP 接続が切断されたと検出された場合 (読み取りで EOF)、サーバーがセッションをどのように処理するかを制御します。`true` に設定されている場合、サーバーはその接続で実行中のクエリを直ちに強制終了し、即時クリーンアップを実行します。`false` の場合、サーバーは切断時に実行中のクエリを強制終了せず、保留中のリクエストタスクがない場合にのみクリーンアップを実行し、クライアントが切断された後も長時間実行されるクエリを続行できるようにします。注: TCP keep-alive を示唆する短いコメントにもかかわらず、このパラメーターは切断後の強制終了動作を具体的に管理し、孤立したクエリを終了させる必要があるか (信頼性の低い/ロードバランスされたクライアントの背後で推奨) または終了させることを許可するかによって設定する必要があります。 +- 導入バージョン: - + +##### `mysql_service_nio_enable_keep_alive` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: いいえ +- 説明: MySQL 接続の TCP Keep-Alive を有効にします。ロードバランサーの背後で長時間アイドル状態の接続に役立ちます。 +- 導入バージョン: - + +##### `net_use_ipv6_when_priority_networks_empty` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: いいえ +- 説明: `priority_networks` が指定されていない場合に、IPv6 アドレスを優先的に使用するかどうかを制御するブール値。`true` は、ノードをホストするサーバーが IPv4 と IPv6 の両方のアドレスを持ち、`priority_networks` が指定されていない場合に、システムが IPv6 アドレスを優先的に使用することを許可することを示します。 +- 導入バージョン: v3.3.0 + +##### `priority_networks` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: 複数の IP アドレスを持つサーバーの選択戦略を宣言します。このパラメーターで指定されたリストと一致する IP アドレスは最大で 1 つであることに注意してください。このパラメーターの値は、CIDR 表記でセミコロン (;) で区切られたエントリ (例: 10.10.10.0/24) で構成されるリストです。このリストのエントリと一致する IP アドレスがない場合、サーバーの利用可能な IP アドレスがランダムに選択されます。v3.3.0 以降、StarRocks は IPv6 に基づくデプロイメントをサポートします。サーバーが IPv4 と IPv6 の両方のアドレスを持ち、このパラメーターが指定されていない場合、システムはデフォルトで IPv4 アドレスを使用します。`net_use_ipv6_when_priority_networks_empty` を `true` に設定することで、この動作を変更できます。 +- 導入バージョン: - + +##### `proc_profile_cpu_enable` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: この項目が `true` に設定されている場合、バックグラウンドの `ProcProfileCollector` は `AsyncProfiler` を使用して CPU プロファイルを収集し、`sys_log_dir/proc_profile` の下に HTML レポートを書き込みます。各収集実行では、`proc_profile_collect_time_s` で構成された期間の CPU スタックを記録し、Java スタックの深さには `proc_profile_jstack_depth` を使用します。生成されたプロファイルは圧縮され、`proc_profile_file_retained_days` および `proc_profile_file_retained_size_bytes` に従って古いファイルは削除されます。`AsyncProfiler` にはネイティブライブラリ (`libasyncProfiler.so`) が必要です。`/tmp` の noexec の問題を避けるために、`one.profiler.extractPath` は `STARROCKS_HOME_DIR/bin` に設定されます。 +- 導入バージョン: v3.2.12 + +##### `qe_max_connection` + +- デフォルト: 4096 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: FE ノードにすべてのユーザーが確立できる接続の最大数。v3.1.12 および v3.2.7 以降、デフォルト値が `1024` から `4096` に変更されました。 +- 導入バージョン: - + +##### `query_port` + +- デフォルト: 9030 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: FE ノードの MySQL サーバーがリッスンするポート。 +- 導入バージョン: - + +##### `rpc_port` + +- デフォルト: 9020 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: FE ノードの Thrift サーバーがリッスンするポート。 +- 導入バージョン: - + +##### `slow_lock_stack_trace_reserve_levels` + +- デフォルト: 15 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: StarRocks が遅いロックまたは保持されているロックのロックデバッグ情報をダンプする際に、キャプチャおよび出力されるスタックトレースフレームの数を制御します。この値は、排他的ロック所有者、現在のスレッド、および最も古い/共有リーダーの JSON を生成する際に `QueryableReentrantReadWriteLock` によって `LogUtil.getStackTraceToJsonArray` に渡されます。この値を増やすと、トレースの詳細が増え、出力サイズが大きくなり、スタックキャプチャのための CPU/メモリがわずかに増加しますが、診断に役立ちます。減らすとオーバーヘッドが減少します。注: リーダーエントリは、低速ロックのみをログに記録する場合、`slow_lock_threshold_ms` によってフィルター処理できます。 +- 導入バージョン: v3.4.0, v3.5.0 + +##### `task_runs_concurrency` + +- デフォルト: 4 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: 同時に実行される TaskRun インスタンスのグローバル制限。`TaskRunScheduler` は、現在の実行数が `task_runs_concurrency` 以上の場合、新しい実行のスケジュールを停止するため、この値はスケジューラ全体で並列 TaskRun 実行を制限します。これは、`MVPCTRefreshPartitioner` によって TaskRun ごとのパーティションリフレッシュ粒度を計算するためにも使用されます。値を増やすと並列処理とリソース使用量が増加し、減らすと並列処理が減少し、パーティションリフレッシュが実行ごとに大きくなります。0 または負の値に設定しないでください (意図的にスケジューリングを無効にする場合を除く)。0 (または負の値) は、`TaskRunScheduler` による新しい TaskRun のスケジュールを実質的に防ぎます。 +- 導入バージョン: v3.2.0 + +##### `task_runs_queue_length` + +- デフォルト: 500 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: 保留中のキューに保持される保留中の TaskRun 項目の最大数を制限します。`TaskRunManager` は現在の保留中の数をチェックし、有効な保留中の TaskRun の数が `task_runs_queue_length` 以上の場合、新しい送信を拒否します。マージ/承認された TaskRun が追加される前に同じ制限が再チェックされます。メモリとスケジューリングのバックログのバランスをとるためにこの値を調整してください。大量のバースト性のワークロードでは拒否を避けるために高く設定し、メモリを制限し、保留中のバックログを減らすために低く設定します。 +- 導入バージョン: v3.2.0 + +##### `thrift_backlog_num` + +- デフォルト: 1024 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: FE ノードの Thrift サーバーが保持するバックログキューの長さ。 +- 導入バージョン: - + +##### `thrift_client_timeout_ms` + +- デフォルト: 5000 +- タイプ: Int +- 単位: ミリ秒 +- 変更可能: いいえ +- 説明: アイドル状態のクライアント接続がタイムアウトするまでの時間。 +- 導入バージョン: - + +##### `thrift_rpc_max_body_size` + +- デフォルト: -1 +- タイプ: Int +- 単位: バイト +- 変更可能: いいえ +- 説明: サーバーの Thrift プロトコルを構築する際に使用される Thrift RPC メッセージ本文の最大許容サイズ (バイト単位) を制御します (TBinaryProtocol.Factory に `ThriftServer` で渡されます)。`-1` の値は制限を無効にします (無制限)。正の値を設定すると、メッセージがこの値よりも大きい場合、Thrift レイヤーによって拒否され、メモリ使用量を制限し、サイズ超過リクエストや DoS のリスクを軽減するのに役立ちます。正当なリクエストを拒否しないように、予想されるペイロード (大規模な構造体やバッチデータ) に対して十分に大きなサイズに設定します。 +- 導入バージョン: v3.2.0 + +##### `thrift_server_max_worker_threads` + +- デフォルト: 4096 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: FE ノードの Thrift サーバーがサポートするワーカー スレッドの最大数。 +- 導入バージョン: - + +##### `thrift_server_queue_size` + +- デフォルト: 4096 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: リクエストが保留中のキューの長さ。Thrift サーバーで処理されているスレッドの数が `thrift_server_max_worker_threads` で指定された値を超えると、新しいリクエストが保留キューに追加されます。 +- 導入バージョン: - + +### メタデータとクラスター管理 + +##### `alter_max_worker_queue_size` + +- デフォルト: 4096 +- タイプ: Int +- 単位: タスク +- 変更可能: いいえ +- 説明: alter サブシステムで使用される内部ワーカー スレッド プール キューの容量を制御します。これは、`alter_max_worker_threads` とともに `AlterHandler` の `ThreadPoolManager.newDaemonCacheThreadPool` に渡されます。保留中の alter タスクの数が `alter_max_worker_queue_size` を超えると、新しい送信は拒否され、`RejectedExecutionException` がスローされる可能性があります (`AlterHandler.handleFinishAlterTask` を参照)。メモリ使用量と同時 alter タスクに対して許可するバックログの量のバランスをとるために、この値を調整します。 +- 導入バージョン: v3.2.0 + +##### `alter_max_worker_threads` + +- デフォルト: 4 +- タイプ: Int +- 単位: スレッド +- 変更可能: いいえ +- 説明: AlterHandler のスレッドプールの最大ワーカー スレッド数を設定します。AlterHandler はこの値でエグゼキューターを構築し、alter 関連のタスク (例: handleFinishAlterTask 経由での `AlterReplicaTask` の送信) を実行および完了します。この値は alter 操作の同時実行を制限します。増やすと並列処理とリソース使用量が増加し、減らすと同時 alter が制限され、ボトルネックになる可能性があります。エグゼキューターは `alter_max_worker_queue_size` とともに作成され、ハンドラースケジューリングは `alter_scheduler_interval_millisecond` を使用します。 +- 導入バージョン: v3.2.0 + +##### `automated_cluster_snapshot_interval_seconds` + +- デフォルト: 600 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: 自動クラスター スナップショット タスクがトリガーされる間隔。 +- 導入バージョン: v3.4.2 + +##### `background_refresh_metadata_interval_millis` + +- デフォルト: 600000 +- タイプ: Int +- 単位: ミリ秒 +- 変更可能: はい +- 説明: Hive メタデータキャッシュの連続する 2 つの更新間の間隔。 +- 導入バージョン: v2.5.5 + +##### `background_refresh_metadata_time_secs_since_last_access_secs` + +- デフォルト: 3600 * 24 +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: Hive メタデータキャッシュ更新タスクの有効期限。アクセスされた Hive カタログの場合、指定された時間を超えてアクセスされていない場合、StarRocks はキャッシュされたメタデータの更新を停止します。アクセスされていない Hive カタログの場合、StarRocks はキャッシュされたメタデータを更新しません。 +- 導入バージョン: v2.5.5 + +##### `bdbje_cleaner_threads` + +- デフォルト: 1 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: StarRocks ジャーナルで使用される Berkeley DB Java Edition (JE) 環境のバックグラウンドクリーナースレッドの数。この値は `BDBEnvironment.initConfigs` で環境初期化中に読み取られ、`Config.bdbje_cleaner_threads` を使用して `EnvironmentConfig.CLEANER_THREADS` に適用されます。JE ログのクリーンアップと領域の再利用の並列処理を制御します。増やすとクリーンアップが高速化される可能性がありますが、追加の CPU とフォアグラウンド操作への I/O 干渉というコストがかかります。変更は BDB 環境が (再) 初期化された場合にのみ有効になるため、新しい値を適用するにはフロントエンドの再起動が必要です。 +- 導入バージョン: v3.2.0 + +##### `bdbje_heartbeat_timeout_second` + +- デフォルト: 30 +- タイプ: Int +- 単位: 秒 +- 変更可能: いいえ +- 説明: StarRocks クラスターのリーダー、フォロワー、オブザーバー FE 間のハートビートがタイムアウトするまでの時間。 +- 導入バージョン: - + +##### `bdbje_lock_timeout_second` + +- デフォルト: 1 +- タイプ: Int +- 単位: 秒 +- 変更可能: いいえ +- 説明: BDB JE ベースの FE のロックがタイムアウトするまでの時間。 +- 導入バージョン: - + +##### `bdbje_replay_cost_percent` + +- デフォルト: 150 +- タイプ: Int +- 単位: パーセント +- 変更可能: いいえ +- 説明: BDB JE ログからトランザクションをリプレイする相対コスト (パーセンテージ) を、ネットワークリカバリを介して同じデータを取得するコストと比較して設定します。この値は基盤となる JE レプリケーションパラメーター `REPLAY_COST_PERCENT` に提供され、リプレイは通常ネットワークリカバリよりもコストがかかることを示すために通常 `>100` です。クリーンアップされたログファイルを潜在的なリプレイのために保持するかどうかを決定する際、システムはリプレイコストにログサイズを掛けたものとネットワークリカバリのコストを比較します。ネットワークリカバリの方が効率的と判断された場合、ファイルは削除されます。0 の値は、このコスト比較に基づいた保持を無効にします。`REP_STREAM_TIMEOUT` 内のレプリカ、またはアクティブなレプリケーションに必要なログファイルは常に保持されます。 +- 導入バージョン: v3.2.0 + +##### `bdbje_replica_ack_timeout_second` + +- デフォルト: 10 +- タイプ: Int +- 単位: 秒 +- 変更可能: いいえ +- 説明: リーダー FE が特定の数のフォロワー FE から ACK メッセージを待機できる最大時間 (リーダー FE からフォロワー FE にメタデータを書き込むとき)。単位: 秒。大量のメタデータが書き込まれている場合、フォロワー FE がリーダー FE に ACK メッセージを返すまでに時間がかかり、ACK タイムアウトが発生します。この状況では、メタデータ書き込みが失敗し、FE プロセスが終了します。この状況を防ぐために、このパラメーターの値を増やすことをお勧めします。 +- 導入バージョン: - + +##### `bdbje_reserved_disk_size` + +- デフォルト: 512 * 1024 * 1024 (536870912) +- タイプ: Long +- 単位: バイト +- 変更可能: いいえ +- 説明: Berkeley DB JE が「保護されていない」(削除可能) ログ/データファイルとして予約するバイト数を制限します。StarRocks はこの値を BDBEnvironment の `EnvironmentConfig.RESERVED_DISK` を介して JE に渡します。JE の組み込みのデフォルトは 0 (無制限) です。StarRocks のデフォルト (512 MiB) は、JE が保護されていないファイルに過剰なディスク領域を予約するのを防ぎながら、古いファイルを安全にクリーンアップできるようにします。ディスク容量が制約されているシステムでこの値を調整します。減らすと JE はより多くのファイルを早く解放でき、増やすと JE はより多くの予約領域を保持できます。変更を有効にするにはプロセスを再起動する必要があります。 +- 導入バージョン: v3.2.0 + +##### `bdbje_reset_election_group` + +- デフォルト: false +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: BDBJE レプリケーショングループをリセットするかどうか。このパラメーターが `TRUE` に設定されている場合、FE は BDBJE レプリケーショングループをリセットし (つまり、すべての選挙可能な FE ノードの情報を削除し)、リーダー FE として起動します。リセット後、この FE はクラスター内で唯一のメンバーになり、他の FE は `ALTER SYSTEM ADD/DROP FOLLOWER/OBSERVER 'xxx'` を使用してこのクラスターに再参加できます。この設定は、ほとんどのフォロワー FE のデータが破損しているため、リーダー FE を選出できない場合にのみ使用してください。`reset_election_group` は `metadata_failure_recovery` の代替として使用されます。 +- 導入バージョン: - + +##### `black_host_connect_failures_within_time` + +- デフォルト: 5 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: ブラックリストに登録された BE ノードに許可される接続失敗のしきい値。BE ノードが自動的に BE ブラックリストに追加された場合、StarRocks はその接続性を評価し、BE ブラックリストから削除できるかどうかを判断します。`black_host_history_sec` 内で、ブラックリストに登録された BE ノードの接続失敗回数が `black_host_connect_failures_within_time` で設定されたしきい値よりも少ない場合にのみ、BE ブラックリストから削除できます。 +- 導入バージョン: v3.3.0 + +##### `black_host_history_sec` + +- デフォルト: 2 * 60 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: BE ブラックリスト内の BE ノードの過去の接続失敗を保持する期間。BE ノードが自動的に BE ブラックリストに追加された場合、StarRocks はその接続性を評価し、BE ブラックリストから削除できるかどうかを判断します。`black_host_history_sec` 内で、ブラックリストに登録された BE ノードの接続失敗回数が `black_host_connect_failures_within_time` で設定されたしきい値よりも少ない場合にのみ、BE ブラックリストから削除できます。 +- 導入バージョン: v3.3.0 + +##### `brpc_connection_pool_size` + +- デフォルト: 16 +- タイプ: Int +- 単位: 接続 +- 変更可能: いいえ +- 説明: FE の BrpcProxy によって使用されるエンドポイントごとのプールされた BRPC 接続の最大数。この値は `setMaxTotoal` と `setMaxIdleSize` を介して RpcClientOptions に適用されるため、各リクエストはプールから接続を借りる必要があるため、同時アウトバウンド BRPC リクエストを直接制限します。高並列シナリオでは、リクエストキューイングを避けるためにこれを増やします。増やすとソケットとメモリの使用量が増加し、リモートサーバーの負荷が増加する可能性があります。調整する際は、`brpc_idle_wait_max_time`、`brpc_short_connection`、`brpc_inner_reuse_pool`、`brpc_reuse_addr`、および `brpc_min_evictable_idle_time_ms` などの関連設定を考慮してください。この値の変更はホットリロード可能ではなく、再起動が必要です。 +- 導入バージョン: v3.2.0 + +##### `brpc_short_connection` + +- デフォルト: false +- タイプ: boolean +- 単位: - +- 変更可能: いいえ +- 説明: 基盤となる brpc RpcClient が短命の接続を使用するかどうかを制御します。有効 ( `true` ) の場合、RpcClientOptions.setShortConnection が設定され、リクエスト完了後に接続が閉じられ、接続設定のオーバーヘッドと遅延が増加する代わりに、長寿命ソケットの数が減ります。無効 ( `false` 、デフォルト) の場合、永続接続と接続プールが使用されます。このオプションを有効にすると接続プールの動作に影響し、`brpc_connection_pool_size`、`brpc_idle_wait_max_time`、`brpc_min_evictable_idle_time_ms`、`brpc_reuse_addr`、および `brpc_inner_reuse_pool` と一緒に考慮する必要があります。通常の高スループットデプロイメントでは無効にしておき、ソケットの寿命を制限する必要がある場合や、ネットワークポリシーによって短命接続が必要な場合にのみ有効にしてください。 +- 導入バージョン: v3.3.11, v3.4.1, v3.5.0 + +##### `catalog_try_lock_timeout_ms` + +- デフォルト: 5000 +- タイプ: Long +- 単位: ミリ秒 +- 変更可能: はい +- 説明: グローバルロックを取得するためのタイムアウト期間。 +- 導入バージョン: - + +##### `checkpoint_only_on_leader` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: `true` の場合、CheckpointController はリーダー FE のみをチェックポイントワーカーとして選択します。`false` の場合、コントローラーは任意のフロントエンドを選択でき、ヒープ使用量が少ないノードを優先します。`false` の場合、ワーカーは最近の失敗時刻と `heapUsedPercent` でソートされます (リーダーは無限の使用量を持つものとして扱われ、選択を避けます)。クラスター スナップショット メタデータを必要とする操作の場合、コントローラーはすでにこのフラグに関係なくリーダー選択を強制します。`true` を有効にすると、チェックポイント作業がリーダーに集中します (単純ですが、リーダーの CPU/メモリとネットワーク負荷が増加します)。`false` のままにすると、負荷の少ない FE にチェックポイント負荷が分散されます。この設定は、ワーカー選択と、`checkpoint_timeout_seconds` のようなタイムアウト、および `thrift_rpc_timeout_ms` のような RPC 設定との相互作用に影響します。 +- 導入バージョン: v3.4.0, v3.5.0 + +##### `checkpoint_timeout_seconds` + +- デフォルト: 24 * 3600 +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: リーダーの CheckpointController がチェックポイントワーカーがチェックポイントを完了するのを待機する最大時間 (秒単位)。コントローラーはこの値をナノ秒に変換し、ワーカーの結果キューをポーリングします。このタイムアウト内に成功した完了が受信されない場合、チェックポイントは失敗として扱われ、createImage は失敗を返します。この値を増やすと、長時間実行されるチェックポイントに対応できますが、失敗検出とその後のイメージ伝播が遅れます。減らすと、より高速なフェイルオーバー/再試行が発生しますが、低速なワーカーに対して誤ったタイムアウトが発生する可能性があります。この設定は、チェックポイント作成中の `CheckpointController` での待機期間のみを制御し、ワーカーの内部チェックポイント動作は変更しません。 +- 導入バージョン: v3.4.0, v3.5.0 + +##### `db_used_data_quota_update_interval_secs` + +- デフォルト: 300 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: データベースの使用済みデータクォータが更新される間隔。StarRocks は、すべてのデータベースの使用済みデータクォータを定期的に更新して、ストレージ消費を追跡します。この値は、クォータの適用とメトリック収集に使用されます。許容される最小間隔は、過剰なシステム負荷を防ぐために 30 秒です。30 未満の値は拒否されます。 +- 導入バージョン: - + +##### `drop_backend_after_decommission` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: BE が廃止された後に BE を削除するかどうか。`TRUE` は、BE が廃止された直後に削除されることを示します。`FALSE` は、BE が廃止された後も削除されないことを示します。 +- 導入バージョン: - + +##### `edit_log_port` + +- デフォルト: 9010 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: クラスター内のリーダー、フォロワー、オブザーバー FE 間で通信に使用されるポート。 +- 導入バージョン: - + +##### `edit_log_roll_num` + +- デフォルト: 50000 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: ログファイルが作成されるまでに書き込み可能なメタデータログエントリの最大数。このパラメーターはログファイルのサイズを制御するために使用されます。新しいログファイルは BDBJE データベースに書き込まれます。 +- 導入バージョン: - + +##### `edit_log_type` + +- デフォルト: BDB +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: 生成可能な編集ログのタイプ。値を `BDB` に設定します。 +- 導入バージョン: - + +##### `enable_background_refresh_connector_metadata` + +- デフォルト: v3.0 以降では true、v2.5 では false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: 定期的な Hive メタデータキャッシュ更新を有効にするかどうか。有効にすると、StarRocks は Hive クラスターのメタストア (Hive Metastore または AWS Glue) をポーリングし、頻繁にアクセスされる Hive カタログのキャッシュされたメタデータを更新して、データ変更を認識します。`true` は Hive メタデータキャッシュ更新を有効にすることを示し、`false` は無効にすることを示します。 +- 導入バージョン: v2.5.5 + +##### `enable_collect_query_detail_info` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: クエリのプロファイルを収集するかどうか。このパラメーターが `TRUE` に設定されている場合、システムはクエリのプロファイルを収集します。このパラメーターが `FALSE` に設定されている場合、システムはクエリのプロファイルを収集しません。 +- 導入バージョン: - + +##### `enable_create_partial_partition_in_batch` + +- デフォルト: false +- タイプ: boolean +- 単位: - +- 変更可能: はい +- 説明: この項目が `false` (デフォルト) に設定されている場合、StarRocks は、バッチ作成された範囲パーティションが標準の時間単位境界に揃うように強制します。ギャップの作成を避けるために、非アラインド範囲は拒否されます。この項目を `true` に設定すると、アラインメントチェックが無効になり、バッチで部分的な (非標準の) パーティションの作成が許可され、ギャップや不整合なパーティション範囲が生成される可能性があります。意図的に部分的なバッチパーティションが必要であり、関連するリスクを受け入れる場合にのみ、これを `true` に設定してください。 +- 導入バージョン: v3.2.0 + +##### `enable_internal_sql` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: いいえ +- 説明: この項目が `true` に設定されている場合、内部コンポーネント (例: SimpleExecutor) によって実行される内部 SQL ステートメントは保持され、内部監査またはログメッセージに書き込まれます (`enable_sql_desensitize_in_log` が設定されている場合、さらに非機密化される可能性があります)。`false` に設定されている場合、内部 SQL テキストは抑制されます。フォーマットコード (SimpleExecutor.formatSQL) は "?" を返し、実際のステートメントは内部監査またはログメッセージに出力されません。この設定は、内部ステートメントの実行セマンティクスを変更しません。プライバシーまたはセキュリティのために内部 SQL のロギングと可視性のみを制御します。 +- 導入バージョン: - + +##### `enable_legacy_compatibility_for_replication` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: レプリケーションのレガシー互換性を有効にするかどうか。StarRocks は、古いバージョンと新しいバージョンで動作が異なる場合があり、クラスター間のデータ移行中に問題が発生することがあります。そのため、データ移行前にターゲットクラスターのレガシー互換性を有効にし、データ移行完了後に無効にする必要があります。`true` はこのモードを有効にすることを示します。 +- 導入バージョン: v3.1.10, v3.2.6 + +##### `enable_show_materialized_views_include_all_task_runs` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: SHOW MATERIALIZED VIEWS コマンドに TaskRun がどのように返されるかを制御します。この項目が `false` に設定されている場合、StarRocks はタスクごとに最新の TaskRun のみを返します (互換性のためのレガシー動作)。`true` (デフォルト) に設定されている場合、`TaskManager` は、同じ開始 TaskRun ID を共有する場合にのみ (たとえば、同じジョブに属する場合)、同じタスクの追加の TaskRun を含めることができ、関連性のない重複実行が表示されるのを防ぎながら、1 つのジョブに関連する複数のステータスを表示できるようにします。単一実行出力を復元したり、デバッグと監視のために複数実行ジョブ履歴を表示したりするには、この項目を `false` に設定します。 +- 導入バージョン: v3.3.0, v3.4.0, v3.5.0 + +##### `enable_statistics_collect_profile` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: 統計クエリのプロファイルを生成するかどうか。この項目を `true` に設定すると、StarRocks がシステム統計に関するクエリのクエリプロファイルを生成できるようになります。 +- 導入バージョン: v3.1.5 + +##### `enable_task_history_archive` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: 有効にすると、完了したタスク実行レコードは永続的なタスク実行履歴テーブルにアーカイブされ、編集ログに記録されるため、ルックアップ (例: `lookupHistory`、`lookupHistoryByTaskNames`、`lookupLastJobOfTasks`) にアーカイブされた結果が含まれます。アーカイブは FE リーダーによって実行され、単体テスト中 (`FeConstants.runningUnitTest`) はスキップされます。有効にすると、インメモリ有効期限と強制 GC パスはバイパスされるため (コードは `removeExpiredRuns` と `forceGC` から早期にリターンします)、保持/削除は `task_runs_ttl_second` と `task_runs_max_history_number` ではなく永続アーカイブによって処理されます。無効にすると、履歴はメモリ内に残り、これらの設定によって削除されます。 +- 導入バージョン: v3.3.1, v3.4.0, v3.5.0 + +##### `enable_task_run_fe_evaluation` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: 有効にすると、FE はシステムテーブル `task_runs` の `TaskRunsSystemTable.supportFeEvaluation` でローカル評価を実行します。FE 側の評価は、列を定数と比較する結合等価述語に対してのみ許可され、列 `QUERY_ID` と `TASK_NAME` に限定されます。これを有効にすると、より広範なスキャンや追加のリモート処理を避けることで、対象となるルックアップのパフォーマンスが向上します。無効にすると、プランナーは `task_runs` の FE 評価をスキップすることを強制され、述語のプルーニングが減少し、これらのフィルターのクエリ待機時間に影響を与える可能性があります。 +- 導入バージョン: v3.3.13, v3.4.3, v3.5.0 + +##### `heartbeat_mgr_blocking_queue_size` + +- デフォルト: 1024 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: ハートビートマネージャーによって実行されるハートビートタスクを格納するブロックキューのサイズ。 +- 導入バージョン: - + +##### `heartbeat_mgr_threads_num` + +- デフォルト: 8 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: ハートビートマネージャーがハートビートタスクを実行するために実行できるスレッドの数。 +- 導入バージョン: - + +##### `ignore_materialized_view_error` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: マテリアライズドビューエラーによって引き起こされるメタデータ例外を FE が無視するかどうか。マテリアライズドビューエラーによって引き起こされるメタデータ例外のために FE が起動に失敗した場合、このパラメーターを `true` に設定することで FE が例外を無視できるようにできます。 +- 導入バージョン: v2.5.10 + +##### `ignore_meta_check` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: 非リーダー FE がリーダー FE からのメタデータギャップを無視するかどうか。値が TRUE の場合、非リーダー FE はリーダー FE からのメタデータギャップを無視し、データ読み取りサービスを提供し続けます。このパラメーターは、リーダー FE を長期間停止した場合でも継続的なデータ読み取りサービスを保証します。値が FALSE の場合、非リーダー FE はリーダー FE からのメタデータギャップを無視せず、データ読み取りサービスを停止します。 +- 導入バージョン: - + +##### `ignore_task_run_history_replay_error` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: StarRocks が `information_schema.task_runs` の TaskRun 履歴行を逆シリアル化する際、破損または無効な JSON 行は通常、逆シリアル化が警告をログに記録し、RuntimeException をスローします。この項目が `true` に設定されている場合、システムは逆シリアル化エラーをキャッチし、不正な形式のレコードをスキップし、クエリを失敗させるのではなく、残りの行の処理を続行します。これにより、`information_schema.task_runs` クエリが `_statistics_.task_run_history` テーブルの不正なエントリを許容できるようになります。ただし、これを有効にすると、破損した履歴レコードは明示的なエラーを表示する代わりにサイレントにドロップされる可能性があることに注意してください (潜在的なデータ損失)。 +- 導入バージョン: v3.3.3, v3.4.0, v3.5.0 + +##### `lock_checker_interval_second` + +- デフォルト: 30 +- タイプ: long +- 単位: 秒 +- 変更可能: はい +- 説明: LockChecker フロントエンドデーモン ("deadlock-checker" という名前) の実行間隔 (秒単位)。デーモンはデッドロック検出と低速ロックのスキャンを実行します。構成された値はミリ秒単位でタイマーを設定するために 1000 倍されます。この値を減らすと検出遅延が減少しますが、スケジューリングと CPU オーバーヘッドが増加します。増やすとオーバーヘッドが減少しますが、検出と低速ロックレポートが遅れます。変更は、デーモンが実行ごとに間隔をリセットするため、実行時に有効になります。この設定は `lock_checker_enable_deadlock_check` (デッドロックチェックを有効にする) および `slow_lock_threshold_ms` (低速ロックを構成するものを定義する) と相互作用します。 +- 導入バージョン: v3.2.0 + +##### `master_sync_policy` + +- デフォルト: SYNC +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: リーダー FE がログをディスクにフラッシュする際のポリシー。このパラメーターは、現在の FE がリーダー FE である場合にのみ有効です。有効な値: + - `SYNC`: トランザクションがコミットされると、ログエントリが生成され、同時にディスクにフラッシュされます。 + - `NO_SYNC`: トランザクションがコミットされるときに、ログエントリの生成とフラッシュが同時に行われません。 + - `WRITE_NO_SYNC`: トランザクションがコミットされると、ログエントリが同時に生成されますが、ディスクにはフラッシュされません。 + + フォロワー FE を 1 つだけデプロイしている場合は、このパラメーターを `SYNC` に設定することをお勧めします。フォロワー FE を 3 つ以上デプロイしている場合は、このパラメーターと `replica_sync_policy` の両方を `WRITE_NO_SYNC` に設定することをお勧めします。 + +- 導入バージョン: - + +##### `max_bdbje_clock_delta_ms` + +- デフォルト: 5000 +- タイプ: Long +- 単位: ミリ秒 +- 変更可能: いいえ +- 説明: StarRocks クラスターのリーダー FE とフォロワーまたはオブザーバー FE の間で許容される最大クロックオフセット。 +- 導入バージョン: - + +##### `meta_delay_toleration_second` + +- デフォルト: 300 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: フォロワー FE およびオブザーバー FE のメタデータがリーダー FE のメタデータよりも遅延できる最大期間。単位: 秒。この期間を超過すると、非リーダー FE はサービスの提供を停止します。 +- 導入バージョン: - + +##### `meta_dir` + +- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/meta" +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: メタデータが保存されるディレクトリ。 +- 導入バージョン: - + +##### `metadata_ignore_unknown_operation_type` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: 不明なログ ID を無視するかどうか。FE がロールバックされると、以前のバージョンの FE は一部のログ ID を認識できない場合があります。値が `TRUE` の場合、FE は不明なログ ID を無視します。値が `FALSE` の場合、FE は終了します。 +- 導入バージョン: - + +##### `profile_info_format` + +- デフォルト: default +- タイプ: String +- 単位: - +- 変更可能: はい +- 説明: システムが出力するプロファイルの形式。有効な値: `default` と `json`。`default` に設定すると、プロファイルはデフォルトの形式になります。`json` に設定すると、システムは JSON 形式でプロファイルを出力します。 +- 導入バージョン: v2.5 + +##### `replica_ack_policy` + +- デフォルト: `SIMPLE_MAJORITY` +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: ログエントリが有効と見なされるポリシー。デフォルト値 `SIMPLE_MAJORITY` は、フォロワー FE の過半数が ACK メッセージを返した場合に、ログエントリが有効と見なされることを指定します。 +- 導入バージョン: - + +##### `replica_sync_policy` + +- デフォルト: SYNC +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: フォロワー FE がログをディスクにフラッシュするポリシー。このパラメーターは、現在の FE がフォロワー FE である場合にのみ有効です。有効な値: + - `SYNC`: トランザクションがコミットされると、ログエントリが生成され、同時にディスクにフラッシュされます。 + - `NO_SYNC`: トランザクションがコミットされるときに、ログエントリの生成とフラッシュが同時に行われません。 + - `WRITE_NO_SYNC`: トランザクションがコミットされると、ログエントリが同時に生成されますが、ディスクにはフラッシュされません。 +- 導入バージョン: - + +##### `start_with_incomplete_meta` + +- デフォルト: false +- タイプ: boolean +- 単位: - +- 変更可能: いいえ +- 説明: true の場合、FE はイメージデータは存在するが Berkeley DB JE (BDB) ログファイルが見つからないか破損している場合に起動を許可します。`MetaHelper.checkMetaDir()` はこのフラグを使用して、対応する BDB ログのないイメージからの起動を通常防止する安全チェックをバイパスします。この方法で起動すると、古いまたは一貫性のないメタデータが生成される可能性があり、緊急リカバリにのみ使用すべきです。`RestoreClusterSnapshotMgr` はクラスター スナップショットの復元中にこのフラグを一時的に true に設定し、その後元に戻します。このコンポーネントは、復元中に `bdbje_reset_election_group` も切り替えます。通常の操作では有効にしないでください。破損した BDB データから復旧する場合、またはイメージベースのスナップショットを明示的に復元する場合にのみ有効にしてください。 +- 導入バージョン: v3.2.0 + +##### `table_keeper_interval_second` + +- デフォルト: 30 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: TableKeeper デーモンの実行間隔 (秒単位)。TableKeeperDaemon はこの値 (1000 倍) を使用して内部タイマーを設定し、履歴テーブルが存在すること、テーブルプロパティ (レプリケーション数) が正しいこと、パーティション TTL を更新することを確認するキーパータスクを定期的に実行します。デーモンはリーダーノードでのみ作業を実行し、`table_keeper_interval_second` が変更されると `setInterval` を介して実行時間隔を更新します。スケジューリング頻度と負荷を減らすには増やし、欠落または古い履歴テーブルへの反応を高速化するには減らします。 +- 導入バージョン: v3.3.1, v3.4.0, v3.5.0 + +##### `task_runs_ttl_second` + +- デフォルト: 7 * 24 * 3600 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: タスク実行履歴の Time-To-Live (TTL) を制御します。この値を減らすと、履歴の保持期間が短くなり、メモリ/ディスク使用量が削減されます。増やすと、履歴が長く保持されますが、リソース使用量が増加します。予測可能な保持とストレージ動作のために、`task_runs_max_history_number` および `enable_task_history_archive` とともに調整します。 +- 導入バージョン: v3.2.0 + +##### `task_ttl_second` + +- デフォルト: 24 * 3600 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: タスクの Time-To-Live (TTL)。手動タスク (スケジュールが設定されていない場合) の場合、TaskBuilder はこの値を使用してタスクの `expireTime` を計算します (`expireTime = now + task_ttl_second * 1000L`)。TaskRun もこの値を実行タイムアウトの最大値として使用します。有効な実行タイムアウトは `min(task_runs_timeout_second, task_runs_ttl_second, task_ttl_second)` です。この値を調整すると、手動で作成されたタスクが有効なままになる期間が変更され、タスク実行の最大許容実行時間が間接的に制限される可能性があります。 +- 導入バージョン: v3.2.0 + +##### `thrift_rpc_retry_times` + +- デフォルト: 3 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: Thrift RPC 呼び出しが行う試行の合計回数を制御します。この値は `ThriftRPCRequestExecutor` (および `NodeMgr` や `VariableMgr` などの呼び出し元) によって再試行のループカウントとして使用されます。つまり、値 3 は初期試行を含めて最大 3 回の試行を許可します。`TTransportException` の場合、エグゼキューターは接続を再開してこの回数まで再試行します。`SocketTimeoutException` が原因の場合や再開が失敗した場合は再試行しません。各試行は `thrift_rpc_timeout_ms` で構成された試行ごとのタイムアウトの対象となります。この値を増やすと、一時的な接続失敗に対する回復力が向上しますが、RPC 全体の遅延とリソース使用量が増加する可能性があります。 +- 導入バージョン: v3.2.0 + +##### `thrift_rpc_strict_mode` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: いいえ +- 説明: Thrift サーバーで使用される TBinaryProtocol の「厳密な読み取り」モードを制御します。この値は、Thrift サーバー スタック内の org.apache.thrift.protocol.TBinaryProtocol.Factory に最初の引数として渡され、受信 Thrift メッセージがどのように解析および検証されるかに影響します。`true` (デフォルト) の場合、サーバーは厳密な Thrift エンコーディング/バージョン チェックを強制し、構成された `thrift_rpc_max_body_size` 制限を尊重します。`false` の場合、サーバーは非厳密 (レガシー/寛容) メッセージ形式を受け入れます。これにより、古いクライアントとの互換性が向上する可能性がありますが、一部のプロトコル検証がバイパスされる可能性があります。この値は変更可能ではなく、相互運用性と解析の安全性に影響するため、実行中のクラスターでこれを変更する場合は注意してください。 +- 導入バージョン: v3.2.0 + +##### `thrift_rpc_timeout_ms` + +- デフォルト: 10000 +- タイプ: Int +- 単位: ミリ秒 +- 変更可能: はい +- 説明: Thrift RPC 呼び出しのデフォルトのネットワーク/ソケットタイムアウトとして使用されるタイムアウト (ミリ秒単位)。`ThriftConnectionPool` (フロントエンドおよびバックエンドプールで使用される) で Thrift クライアントを作成する際に TSocket に渡され、`ConfigBase`、`LeaderOpExecutor`、`GlobalStateMgr`、`NodeMgr`、`VariableMgr`、`CheckpointWorker` などの場所で RPC 呼び出しタイムアウトを計算する際に、操作の実行タイムアウト (例: ExecTimeout*1000 + `thrift_rpc_timeout_ms`) にも追加されます。この値を増やすと、RPC 呼び出しは長いネットワークまたはリモート処理の遅延を許容できます。減らすと、低速なネットワークでのフェイルオーバーが高速になります。この値を変更すると、Thrift RPC を実行する FE コードパス全体の接続作成とリクエストの期限に影響します。 +- 導入バージョン: v3.2.0 + +##### `txn_rollback_limit` + +- デフォルト: 100 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: ロールバック可能なトランザクションの最大数。 +- 導入バージョン: - + +### ユーザー、ロール、および権限 + +##### `enable_task_info_mask_credential` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: true の場合、StarRocks は `information_schema.tasks` および `information_schema.task_runs` でタスク SQL 定義から資格情報を削除し、DEFINITION 列に SqlCredentialRedactor.redact を適用することで返します。`information_schema.task_runs` では、定義がタスク実行ステータスから来ている場合でも、空の場合はタスク定義ルックアップから来ている場合でも、同じ編集が適用されます。false の場合、生のタスク定義が返されます (資格情報が公開される可能性があります)。マスキングは CPU/文字列処理作業であり、タスクまたは `task_runs` の数が多い場合は時間がかかる場合があります。編集されていない定義が必要で、セキュリティリスクを受け入れる場合にのみ無効にしてください。 +- 導入バージョン: v3.5.6 + +##### `privilege_max_role_depth` + +- デフォルト: 16 +- タイプ: Int +- 単位: +- 変更可能: はい +- 説明: ロールの最大ロール深度 (継承レベル)。 +- 導入バージョン: v3.0.0 + +##### `privilege_max_total_roles_per_user` + +- デフォルト: 64 +- タイプ: Int +- 単位: +- 変更可能: はい +- 説明: ユーザーが持つことができるロールの最大数。 +- 導入バージョン: v3.0.0 + +### クエリエンジン + +##### `brpc_send_plan_fragment_timeout_ms` + +- デフォルト: 60000 +- タイプ: Int +- 単位: ミリ秒 +- 変更可能: はい +- 説明: プランフラグメントを送信する前に BRPC TalkTimeoutController に適用されるタイムアウト (ミリ秒単位)。`BackendServiceClient.sendPlanFragmentAsync` は、バックエンド `execPlanFragmentAsync` を呼び出す前にこの値を設定します。これは、BRPC がアイドル接続を接続プールから借りる際に、および送信を実行する際にどれだけ待機するかを制御します。超過すると、RPC は失敗し、メソッドの再試行ロジックをトリガーする可能性があります。競合時に高速に失敗するにはこれを小さく設定し、一時的なプール枯渇や低速ネットワークを許容するには高く設定します。注意: 非常に大きな値は障害検出を遅らせ、リクエストスレッドをブロックする可能性があります。 +- 導入バージョン: v3.3.11, v3.4.1, v3.5.0 + +##### `connector_table_query_trigger_analyze_large_table_interval` + +- デフォルト: 12 * 3600 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: 大規模テーブルのクエリトリガー ANALYZE タスクの間隔。 +- 導入バージョン: v3.4.0 + +##### `connector_table_query_trigger_analyze_max_pending_task_num` + +- デフォルト: 100 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: FE で保留状態にあるクエリトリガー ANALYZE タスクの最大数。 +- 導入バージョン: v3.4.0 + +##### `connector_table_query_trigger_analyze_max_running_task_num` + +- デフォルト: 2 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: FE で実行状態にあるクエリトリガー ANALYZE タスクの最大数。 +- 導入バージョン: v3.4.0 + +##### `connector_table_query_trigger_analyze_small_table_interval` + +- デフォルト: 2 * 3600 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: 小規模テーブルのクエリトリガー ANALYZE タスクの間隔。 +- 導入バージョン: v3.4.0 + +##### `connector_table_query_trigger_analyze_small_table_rows` + +- デフォルト: 10000000 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: クエリトリガー ANALYZE タスクのためにテーブルが小規模テーブルであるかどうかを決定するためのしきい値。 +- 導入バージョン: v3.4.0 + +##### `connector_table_query_trigger_task_schedule_interval` + +- デフォルト: 30 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: スケジューラスレッドがクエリトリガーバックグラウンドタスクをスケジュールする間隔。この項目は、v3.4 で導入された `connector_table_query_trigger_analyze_schedule_interval` を置き換えるものです。ここで、バックグラウンドタスクとは、v3.4 の `ANALYZE` タスクと、v3.4 以降のバージョンの低カーディナリティ列の辞書収集タスクを指します。 +- 導入バージョン: v3.4.2 + +##### `create_table_max_serial_replicas` + +- デフォルト: 128 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: シリアルに作成するレプリカの最大数。実際のレプリカ数がこの値を超える場合、レプリカは並行して作成されます。テーブル作成に時間がかかっている場合は、この値を減らしてみてください。 +- 導入バージョン: - + +##### `default_mv_partition_refresh_number` + +- デフォルト: 1 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: マテリアライズドビューの更新が複数のパーティションを含む場合、このパラメーターはデフォルトで単一バッチで更新されるパーティションの数を制御します。 +バージョン 3.3.0 以降、システムはデフォルトで一度に 1 つのパーティションを更新することで、潜在的なメモリ不足 (OOM) の問題を回避します。以前のバージョンでは、デフォルトですべてのパーティションが一度に更新され、メモリ枯渇やタスク失敗につながる可能性がありました。ただし、マテリアライズドビューの更新が多数のパーティションを含む場合、一度に 1 つのパーティションしか更新しないと、過剰なスケジューリングオーバーヘッド、全体的な更新時間の延長、および多数の更新レコードにつながる可能性があることに注意してください。そのような場合、更新効率を改善し、スケジューリングコストを削減するために、このパラメーターを適切に調整することをお勧めします。 +- 導入バージョン: v3.3.0 + +##### `default_mv_refresh_immediate` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: 非同期マテリアライズドビュー作成後すぐに更新するかどうか。この項目が `true` に設定されている場合、新しく作成されたマテリアライズドビューはすぐに更新されます。 +- 導入バージョン: v3.2.3 + +##### `dynamic_partition_check_interval_seconds` + +- デフォルト: 600 +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: 新しいデータのチェック間隔。新しいデータが検出された場合、StarRocks は自動的にデータのパーティションを作成します。 +- 導入バージョン: - + +##### `dynamic_partition_enable` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: 動的パーティショニング機能を有効にするかどうか。この機能が有効な場合、StarRocks は新しいデータのパーティションを動的に作成し、期限切れのパーティションを自動的に削除して、データの鮮度を保証します。 +- 導入バージョン: - + +##### `enable_active_materialized_view_schema_strict_check` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: 非アクティブなマテリアライズドビューをアクティブ化する際に、データ型の長さの一貫性を厳密にチェックするかどうか。この項目が `false` に設定されている場合、データ型の長さが基底テーブルで変更されても、マテリアライズドビューのアクティブ化は影響を受けません。 +- 導入バージョン: v3.3.4 + +##### `enable_backup_materialized_view` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: 特定のデータベースをバックアップまたは復元する際に、非同期マテリアライズドビューの BACKUP および RESTORE を有効にするかどうか。この項目が `false` に設定されている場合、StarRocks は非同期マテリアライズドビューのバックアップをスキップします。 +- 導入バージョン: v3.2.0 + +##### `enable_collect_full_statistic` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: 自動完全統計収集を有効にするかどうか。この機能はデフォルトで有効です。 +- 導入バージョン: - + +##### `enable_colocate_mv_index` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: 同期マテリアライズドビューを作成する際に、同期マテリアライズドビューインデックスを基底テーブルとコロケートすることをサポートするかどうか。この項目が `true` に設定されている場合、タブレットシンクは同期マテリアライズドビューの書き込みパフォーマンスを高速化します。 +- 導入バージョン: v3.2.0 + +##### `enable_decimal_v3` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: DECIMAL V3 データ型をサポートするかどうか。 +- 導入バージョン: - + +##### `enable_experimental_mv` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: 非同期マテリアライズドビュー機能を有効にするかどうか。TRUE はこの機能が有効であることを示します。v2.5.2 以降、この機能はデフォルトで有効になっています。v2.5.2 以前のバージョンでは、この機能はデフォルトで無効になっています。 +- 導入バージョン: v2.4 + +##### `enable_local_replica_selection` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: クエリのためにローカルレプリカを選択するかどうか。ローカルレプリカはネットワーク転送コストを削減します。このパラメーターが TRUE に設定されている場合、CBO は現在の FE と同じ IP アドレスを持つ BE 上のタブレットレプリカを優先的に選択します。このパラメーターが `FALSE` に設定されている場合、ローカルレプリカと非ローカルレプリカの両方を選択できます。 +- 導入バージョン: - + +##### `enable_materialized_view` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: マテリアライズドビューの作成を有効にするかどうか。 +- 導入バージョン: - + +##### `enable_materialized_view_external_table_precise_refresh` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: この項目を `true` に設定すると、基底テーブルが外部 (クラウドネイティブではない) テーブルである場合に、マテリアライズドビューの更新に対して内部最適化が有効になります。有効にすると、マテリアライズドビューの更新プロセッサは候補パーティションを計算し、すべてのパーティションではなく、影響を受ける基底テーブルパーティションのみを更新し、I/O と更新コストを削減します。外部テーブルの完全パーティション更新を強制するには `false` に設定します。 +- 導入バージョン: v3.2.9 + +##### `enable_materialized_view_metrics_collect` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: デフォルトで非同期マテリアライズドビューの監視メトリックを収集するかどうか。 +- 導入バージョン: v3.1.11, v3.2.5 + +##### `enable_materialized_view_spill` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: マテリアライズドビューの更新タスクに対する中間結果スピルを有効にするかどうか。 +- 導入バージョン: v3.1.1 + +##### `enable_materialized_view_text_based_rewrite` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: デフォルトでテキストベースのクエリ書き換えを有効にするかどうか。この項目が `true` に設定されている場合、システムは非同期マテリアライズドビューの作成中に抽象構文ツリーを構築します。 +- 導入バージョン: v3.2.5 + +##### `enable_mv_automatic_active_check` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: スキーマ変更、または基底テーブル (ビュー) の削除と再作成により非アクティブになった非同期マテリアライズドビューをシステムが自動的にチェックし、再アクティブ化することを有効にするかどうか。この機能は、ユーザーが手動で非アクティブに設定したマテリアライズドビューを再アクティブ化しないことに注意してください。 +- 導入バージョン: v3.1.6 + +##### `enable_mv_automatic_repairing_for_broken_base_tables` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: この項目が `true` に設定されている場合、StarRocks は、基底の外部テーブルが削除されて再作成されたり、テーブル識別子が変更されたりした場合に、マテリアライズドビューの基底テーブルメタデータを自動的に修復しようとします。修復フローは、マテリアライズドビューの基底テーブル情報を更新し、外部テーブルパーティションのパーティションレベルの修復情報を収集し、`autoRefreshPartitionsLimit` を尊重しながら非同期自動更新マテリアライズドビューのパーティション更新決定を駆動することができます。現在、自動修復は Hive 外部テーブルをサポートしています。サポートされていないテーブルタイプは、マテリアライズドビューを非アクティブにし、修復例外を引き起こします。パーティション情報収集は非ブロッキングであり、失敗はログに記録されます。 +- 導入バージョン: v3.3.19, v3.4.8, v3.5.6 + +##### `enable_predicate_columns_collection` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: 述語列の収集を有効にするかどうか。無効にすると、クエリ最適化中に述語列は記録されません。 +- 導入バージョン: - + +##### `enable_query_queue_v2` + +- デフォルト: true +- タイプ: boolean +- 単位: - +- 変更可能: いいえ +- 説明: true の場合、FE のスロットベースクエリスケジューラを Query Queue V2 に切り替えます。このフラグは、スロットマネージャーとトラッカー (例: `BaseSlotManager.isEnableQueryQueueV2` および `SlotTracker#createSlotSelectionStrategy`) によって読み取られ、従来の戦略ではなく `SlotSelectionStrategyV2` を選択します。`query_queue_v2_xxx` 構成オプションと `QueryQueueOptions` は、このフラグが有効な場合にのみ有効になります。v4.1 以降、デフォルト値は `false` から `true` に変更されました。 +- 導入バージョン: v3.3.4, v3.4.0, v3.5.0 + +##### `enable_sql_blacklist` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: SQL クエリのブラックリストチェックを有効にするかどうか。この機能が有効な場合、ブラックリスト内のクエリは実行できません。 +- 導入バージョン: - + +##### `enable_statistic_collect` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: CBO の統計を収集するかどうか。この機能はデフォルトで有効です。 +- 導入バージョン: - + +##### `enable_statistic_collect_on_first_load` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: データロード操作によってトリガーされる自動統計収集とメンテナンスを制御します。これには以下が含まれます。 + - データがパーティションに初めてロードされたとき (パーティションバージョンが 2 の場合) の統計収集。 + - 複数パーティションテーブルの空のパーティションにデータがロードされたときの統計収集。 + - INSERT OVERWRITE 操作の統計コピーと更新。 + + **統計収集タイプの決定ポリシー:** + + - INSERT OVERWRITE の場合: `deltaRatio = |targetRows - sourceRows| / (sourceRows + 1)` + - `deltaRatio < statistic_sample_collect_ratio_threshold_of_first_load` (デフォルト: 0.1) の場合、統計収集は実行されません。既存の統計のみがコピーされます。 + - それ以外の場合、`targetRows > statistic_sample_collect_rows` (デフォルト: 200000) の場合、SAMPLE 統計収集が使用されます。 + - それ以外の場合、FULL 統計収集が使用されます。 + + - 初回ロードの場合: `deltaRatio = loadRows / (totalRows + 1)` + - `deltaRatio < statistic_sample_collect_ratio_threshold_of_first_load` (デフォルト: 0.1) の場合、統計収集は実行されません。 + - それ以外の場合、`loadRows > statistic_sample_collect_rows` (デフォルト: 200000) の場合、SAMPLE 統計収集が使用されます。 + - それ以外の場合、FULL 統計収集が使用されます。 + + **同期動作:** + + - DML ステートメント (INSERT INTO/INSERT OVERWRITE) の場合: テーブルロックを使用した同期モード。ロード操作は統計収集が完了するまで待機します (最大 `semi_sync_collect_statistic_await_seconds` まで)。 + - Stream Load および Broker Load の場合: ロックなしの非同期モード。統計収集はバックグラウンドで実行され、ロード操作をブロックしません。 + + :::note + この設定を無効にすると、ロードによってトリガーされるすべての統計操作 (INSERT OVERWRITE の統計メンテナンスを含む) が防止され、テーブルに統計が不足する可能性があります。新しいテーブルが頻繁に作成され、データが頻繁にロードされる場合、この機能を有効にするとメモリと CPU のオーバーヘッドが増加します。 + ::: + +- 導入バージョン: v3.1 + +##### `enable_statistic_collect_on_update` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: UPDATE ステートメントが自動統計収集をトリガーできるかどうかを制御します。有効にすると、テーブルデータを変更する UPDATE 操作は、`enable_statistic_collect_on_first_load` によって制御される同じインジェストベースの統計フレームワークを通じて統計収集をスケジュールする可能性があります。この設定を無効にすると、UPDATE ステートメントの統計収集はスキップされ、ロードによってトリガーされる統計収集動作は変更されません。 +- 導入バージョン: v3.5.11, v4.0.4 + +##### `enable_udf` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: いいえ +- 説明: UDF を有効にするかどうか。 +- 導入バージョン: - + +##### `expr_children_limit` + +- デフォルト: 10000 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: 式で許可される子式の最大数。 +- 導入バージョン: - + +##### `histogram_buckets_size` + +- デフォルト: 64 +- タイプ: Long +- 単位: - +- 変更可能: はい +- 説明: ヒストグラムのデフォルトのバケット数。 +- 導入バージョン: - + +##### `histogram_max_sample_row_count` + +- デフォルト: 10000000 +- タイプ: Long +- 単位: - +- 変更可能: はい +- 説明: ヒストグラムのために収集する最大行数。 +- 導入バージョン: - + +##### `histogram_mcv_size` + +- デフォルト: 100 +- タイプ: Long +- 単位: - +- 変更可能: はい +- 説明: ヒストグラムの最頻値 (MCV) の数。 +- 導入バージョン: - + +##### `histogram_sample_ratio` + +- デフォルト: 0.1 +- タイプ: Double +- 単位: - +- 変更可能: はい +- 説明: ヒストグラムのサンプリング比率。 +- 導入バージョン: - + +##### `http_slow_request_threshold_ms` + +- デフォルト: 5000 +- タイプ: Int +- 単位: ミリ秒 +- 変更可能: はい +- 説明: HTTP リクエストの応答時間がこのパラメーターで指定された値を超えた場合、このリクエストを追跡するためのログが生成されます。 +- 導入バージョン: v2.5.15, v3.1.5 + +##### `lock_checker_enable_deadlock_check` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: 有効にすると、LockChecker スレッドは ThreadMXBean.findDeadlockedThreads() を使用して JVM レベルのデッドロック検出を実行し、問題のあるスレッドのスタックトレースをログに記録します。このチェックは LockChecker デーモン (その頻度は `lock_checker_interval_second` によって制御されます) の内部で実行され、詳細なスタック情報をログに書き込みます。これは CPU および I/O 集中型になる可能性があります。このオプションは、ライブまたは再現可能なデッドロックの問題のトラブルシューティングのためにのみ有効にしてください。通常の操作で有効のままにしておくと、オーバーヘッドとログのボリュームが増加する可能性があります。 +- 導入バージョン: v3.2.0 + +##### `low_cardinality_threshold` + +- デフォルト: 255 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: 低カーディナリティ辞書のしきい値。 +- 導入バージョン: v3.5.0 + +##### `materialized_view_min_refresh_interval` + +- デフォルト: 60 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: ASYNC マテリアライズドビュー スケジュールの最小許容更新間隔 (秒単位)。マテリアライズドビューが時間ベースの間隔で作成された場合、その間隔は秒に変換され、この値よりも小さくすることはできません。そうでない場合、CREATE/ALTER 操作は DDL エラーで失敗します。この値が 0 より大きい場合、チェックが強制されます。制限を無効にするには 0 または負の値に設定します。これにより、過剰な TaskManager スケジューリングと、過度に頻繁な更新による FE のメモリ/CPU 使用量が高くなるのを防ぎます。この項目は `EVENT_TRIGGERED` 更新には適用されません。 +- 導入バージョン: v3.3.0, v3.4.0, v3.5.0 + +##### `materialized_view_refresh_ascending` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: この項目が `true` に設定されている場合、マテリアライズドビューパーティションの更新は、パーティションキーの昇順 (最も古いものから新しいものへ) でパーティションを反復します。`false` (デフォルト) に設定されている場合、システムは降順 (最も新しいものから古いものへ) で反復します。StarRocks は、パーティション更新制限が適用される場合にどのパーティションを処理するかを選択し、後続の TaskRun 実行のために次の開始/終了パーティション境界を計算するために、リストパーティション化されたマテリアライズドビューと範囲パーティション化されたマテリアライズドビューの両方の更新ロジックでこの項目を使用します。この項目を変更すると、どのパーティションが最初に更新されるか、および次のパーティション範囲がどのように導出されるかが変更されます。範囲パーティション化されたマテリアライズドビューの場合、スケジューラは新しい開始/終了を検証し、変更によって繰り返される境界 (デッドループ) が作成される場合、エラーを発生させるため、この項目を慎重に設定してください。 +- 導入バージョン: v3.3.1, v3.4.0, v3.5.0 + +##### `max_allowed_in_element_num_of_delete` + +- デフォルト: 10000 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: DELETE ステートメントの IN 述語で許可される要素の最大数。 +- 導入バージョン: - + +##### `max_create_table_timeout_second` + +- デフォルト: 600 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: テーブル作成の最大タイムアウト期間。 +- 導入バージョン: - + +##### `max_distribution_pruner_recursion_depth` + +- デフォルト: 100 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: パーティションプルーナーが許可する最大再帰深度。再帰深度を増やすと、より多くの要素をプルーニングできますが、CPU 消費も増加します。 +- 導入バージョン: - + +##### `max_partitions_in_one_batch` + +- デフォルト: 4096 +- タイプ: Long +- 単位: - +- 変更可能: はい +- 説明: パーティションを一括作成するときに作成できるパーティションの最大数。 +- 導入バージョン: - + +##### `max_planner_scalar_rewrite_num` + +- デフォルト: 100000 +- タイプ: Long +- 単位: - +- 変更可能: はい +- 説明: オプティマイザーがスカラー演算子を書き換えることができる最大回数。 +- 導入バージョン: - + +##### `max_query_queue_history_slots_number` + +- デフォルト: 0 +- タイプ: Int +- 単位: スロット +- 変更可能: はい +- 説明: 監視と可観測性のために、クエリキューごとに保持される最近解放された (履歴) 割り当てスロットの数を制御します。`max_query_queue_history_slots_number` が `> 0` の値に設定されている場合、BaseSlotTracker は、インメモリキューにその数の最も最近解放された LogicalSlot エントリを保持し、制限を超えると最も古いものを削除します。これを有効にすると、getSlots() にこれらの履歴エントリ (最新のものが最初) が含まれるようになり、BaseSlotTracker は ConnectContext にスロットを登録して、より豊富な ExtraMessage データを提供できるようになり、LogicalSlot.ConnectContextListener はクエリ完了メタデータを履歴スロットに添付できるようになります。`max_query_queue_history_slots_number` が `<= 0` の場合、履歴メカニズムは無効になります (追加のメモリは使用されません)。可観測性とメモリオーバーヘッドのバランスをとるために、適切な値を使用してください。 +- 導入バージョン: v3.5.0 + +##### `max_query_retry_time` + +- デフォルト: 2 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: FE でのクエリ再試行の最大数。 +- 導入バージョン: - + +##### `max_running_rollup_job_num_per_table` + +- デフォルト: 1 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: テーブルで並行して実行できるロールアップジョブの最大数。 +- 導入バージョン: - + +##### `max_scalar_operator_flat_children` + +- デフォルト:10000 +- タイプ:Int +- 単位:- +- 変更可能: はい +- 説明:ScalarOperator のフラットな子の最大数。オプティマイザーが過剰なメモリを使用するのを防ぐために、この制限を設定できます。 +- 導入バージョン: - + +##### `max_scalar_operator_optimize_depth` + +- デフォルト:256 +- タイプ:Int +- 単位:- +- 変更可能: はい +- 説明: ScalarOperator 最適化を適用できる最大深度。 +- 導入バージョン: - + +##### `mv_active_checker_interval_seconds` + +- デフォルト: 60 +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: バックグラウンドの `active_checker` スレッドが有効な場合、システムはスキーマ変更または基底テーブル (またはビュー) の再構築により非アクティブになったマテリアライズドビューを定期的に検出し、自動的に再アクティブ化します。このパラメーターは、チェッカースレッドのスケジューリング間隔を秒単位で制御します。デフォルト値はシステム定義です。 +- 導入バージョン: v3.1.6 + +##### `mv_rewrite_consider_data_layout_mode` + +- デフォルト: `enable` +- タイプ: String +- 単位: - +- 変更可能: はい +- 説明: マテリアライズドビューの書き換えが、最適なマテリアライズドビューを選択する際に、基底テーブルのデータレイアウトを考慮するかどうかを制御します。有効な値: + - `disable`: 候補となるマテリアライズドビューを選択する際に、データレイアウト基準を一切使用しません。 + - `enable`: クエリがレイアウトを意識していると認識された場合にのみ、データレイアウト基準を使用します。 + - `force`: 最適なマテリアライズドビューを選択する際に、常にデータレイアウト基準を適用します。 + この項目を変更すると、`BestMvSelector` の動作が影響され、物理レイアウトがプランの正しさやパフォーマンスに影響するかどうかに応じて、書き換えの適用性が向上または拡大する可能性があります。 +- 導入バージョン: - + +##### `publish_version_interval_ms` + +- デフォルト: 10 +- タイプ: Int +- 単位: ミリ秒 +- 変更可能: いいえ +- 説明: リリース検証タスクが発行される時間間隔。 +- 導入バージョン: - + +##### `query_queue_slots_estimator_strategy` + +- デフォルト: MAX +- タイプ: String +- 単位: - +- 変更可能: はい +- 説明: `enable_query_queue_v2` が true の場合に、キューベースクエリに使用されるスロット推定戦略を選択します。有効な値: MBE (メモリベース)、PBE (並列処理ベース)、MAX (MBE と PBE の最大値を取る)、MIN (MBE と PBE の最小値を取る)。MBE は、予測されたメモリまたはプランコストをスロットあたりのメモリターゲットで割った値からスロットを推定し、`totalSlots` で上限が設定されます。PBE は、フラグメント並列処理 (スキャン範囲数またはカーディナリティ/スロットあたりの行数) と CPU コストベースの計算 (スロットあたりの CPU コストを使用) からスロットを導出し、その結果を [numSlots/2, numSlots] の範囲にクランプします。MAX と MIN は、それぞれ最大値または最小値を取ることで MBE と PBE を結合します。構成された値が無効な場合、デフォルト (`MAX`) が使用されます。 +- 導入バージョン: v3.5.0 + +##### `query_queue_v2_concurrency_level` + +- デフォルト: 4 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: システムの合計クエリスロットを計算する際に使用される論理的な並行性「レイヤー」の数を制御します。Shared-nothing モードでは、合計スロット = `query_queue_v2_concurrency_level` * BE の数 * BE あたりのコア数 (BackendResourceStat から派生)。マルチウェアハウスモードでは、有効な並行性は max(1, `query_queue_v2_concurrency_level` / 4) にスケールダウンされます。構成された値が非正の場合、`4` として扱われます。この値を変更すると totalSlots (および同時クエリ容量) が増減し、スロットごとのリソースに影響します。memBytesPerSlot は、ワーカーごとのメモリを (ワーカーごとのコア数 * 並行性) で割って導出され、CPU 課金は `query_queue_v2_cpu_costs_per_slot` を使用します。クラスターサイズに比例して設定します。非常に大きな値はスロットごとのメモリを減らし、リソースの断片化を引き起こす可能性があります。 +- 導入バージョン: v3.3.4, v3.4.0, v3.5.0 + +##### `query_queue_v2_cpu_costs_per_slot` + +- デフォルト: 1000000000 +- タイプ: Long +- 単位: プランナー CPU コスト単位 +- 変更可能: はい +- 説明: クエリがプランナー CPU コストから必要とするスロット数を推定するために使用されるスロットあたりの CPU コストしきい値。スケジューラはスロットを整数 (`plan_cpu_costs` / `query_queue_v2_cpu_costs_per_slot`) として計算し、その結果を範囲 [1, totalSlots] にクランプし、計算された値が非正の場合は最低 1 を強制します (totalSlots はクエリキュー V2 の `V2` パラメーターから導出されます)。V2 コードは非正の設定を 1 (Math.max(1, value)) に正規化するため、非正の値は実質的に `1` になります。この値を増やすと、クエリごとに割り当てられるスロットが減り (より少ない、より大きなスロットのクエリを優先)、減らすとクエリごとのスロットが増加します。並列処理とリソースの粒度を制御するために、`query_queue_v2_num_rows_per_slot` および並行性設定と組み合わせて調整します。 +- 導入バージョン: v3.3.4, v3.4.0, v3.5.0 + +##### `query_queue_v2_num_rows_per_slot` + +- デフォルト: 4096 +- タイプ: Int +- 単位: 行 +- 変更可能: はい +- 説明: クエリごとのスロット数を推定する際に、単一のスケジューリングスロットに割り当てられるソース行レコードの目標数。StarRocks は、`estimated_slots` = (ソースノードのカーディナリティ) / `query_queue_v2_num_rows_per_slot` を計算し、その結果を範囲 [1, totalSlots] にクランプし、計算された値が非正の場合は最低 1 を強制します。totalSlots は利用可能なリソース (おおよそ DOP * `query_queue_v2_concurrency_level` * ワーカー/BE の数) から導出されるため、クラスター/コア数に依存します。この値を増やすと、スロット数が減り (各スロットがより多くの行を処理)、スケジューリングオーバーヘッドが削減されます。減らすと、リソース制限まで並列処理が増加します (より多くの、より小さなスロット)。 +- 導入バージョン: v3.3.4, v3.4.0, v3.5.0 + +##### `query_queue_v2_schedule_strategy` + +- デフォルト: SWRR +- タイプ: String +- 単位: - +- 変更可能: はい +- 説明: Query Queue V2 が保留中のクエリを並べ替えるために使用するスケジューリングポリシーを選択します。サポートされる値 (大文字と小文字を区別しない) は `SWRR` (Smooth Weighted Round Robin) — デフォルトで、公平な重み付き共有を必要とする混合/ハイブリッドワークロードに適しています — および `SJF` (Short Job First + Aging) — エイジングを使用して飢餓を回避しながら短いジョブを優先します。この値は、大文字と小文字を区別しない enum ルックアップで解析されます。認識されない値はエラーとしてログに記録され、デフォルトのポリシーが使用されます。この設定は、Query Queue V2 が有効な場合にのみ動作に影響し、`query_queue_v2_concurrency_level` のような V2 サイジング設定と相互作用します。 +- 導入バージョン: v3.3.12, v3.4.2, v3.5.0 + +##### `semi_sync_collect_statistic_await_seconds` + +- デフォルト: 30 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: DML 操作 (INSERT INTO および INSERT OVERWRITE ステートメント) 中の半同期統計収集の最大待機時間。Stream Load および Broker Load は非同期モードを使用し、この設定の影響を受けません。統計収集時間がこの値を超過した場合、ロード操作は収集が完了するのを待たずに続行されます。この設定は `enable_statistic_collect_on_first_load` と連携して機能します。 +- 導入バージョン: v3.1 + +##### `slow_query_analyze_threshold` + +- デフォルト: 5 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: クエリフィードバックの分析をトリガーするクエリの実行時間しきい値。 +- 導入バージョン: v3.4.0 + +##### `statistic_analyze_status_keep_second` + +- デフォルト: 3 * 24 * 3600 +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: 収集タスクの履歴を保持する期間。デフォルト値は 3 日です。 +- 導入バージョン: - + +##### `statistic_auto_analyze_end_time` + +- デフォルト: 23:59:59 +- タイプ: String +- 単位: - +- 変更可能: はい +- 説明: 自動収集の終了時刻。値の範囲: `00:00:00` - `23:59:59`。 +- 導入バージョン: - + +##### `statistic_auto_analyze_start_time` + +- デフォルト: 00:00:00 +- タイプ: String +- 単位: - +- 変更可能: はい +- 説明: 自動収集の開始時刻。値の範囲: `00:00:00` - `23:59:59`。 +- 導入バージョン: - + +##### `statistic_auto_collect_ratio` + +- デフォルト: 0.8 +- タイプ: Double +- 単位: - +- 変更可能: はい +- 説明: 自動収集の統計が正常であるかどうかを判断するためのしきい値。統計の健全性がこのしきい値よりも低い場合、自動収集がトリガーされます。 +- 導入バージョン: - + +##### `statistic_auto_collect_small_table_rows` + +- デフォルト: 10000000 +- タイプ: Long +- 単位: - +- 変更可能: はい +- 説明: 自動収集中に、外部データソース (Hive、Iceberg、Hudi) のテーブルが小規模テーブルであるかどうかを判断するためのしきい値。テーブルの行数がこの値より少ない場合、そのテーブルは小規模テーブルと見なされます。 +- 導入バージョン: v3.2 + +##### `statistic_cache_columns` + +- デフォルト: 100000 +- タイプ: Long +- 単位: - +- 変更可能: いいえ +- 説明: 統計テーブルのためにキャッシュできる行数。 +- 導入バージョン: - + +##### `statistic_cache_thread_pool_size` + +- デフォルト: 10 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: 統計キャッシュを更新するために使用されるスレッドプールのサイズ。 +- 導入バージョン: - + +##### `statistic_collect_interval_sec` + +- デフォルト: 5 * 60 +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: 自動収集中にデータ更新をチェックする間隔。 +- 導入バージョン: - + +##### `statistic_max_full_collect_data_size` + +- デフォルト: 100 * 1024 * 1024 * 1024 +- タイプ: Long +- 単位: バイト +- 変更可能: はい +- 説明: 統計の自動収集のためのデータサイズしきい値。合計サイズがこの値を超えると、完全収集の代わりにサンプリング収集が実行されます。 +- 導入バージョン: - + +##### `statistic_sample_collect_rows` + +- デフォルト: 200000 +- タイプ: Long +- 単位: - +- 変更可能: はい +- 説明: ロードトリガー統計操作中に、SAMPLE と FULL 統計収集のどちらを選択するかを決定するための行数しきい値。ロードまたは変更された行数がこのしきい値 (デフォルト 200,000) を超える場合、SAMPLE 統計収集が使用されます。それ以外の場合、FULL 統計収集が使用されます。この設定は、`enable_statistic_collect_on_first_load` および `statistic_sample_collect_ratio_threshold_of_first_load` と連携して機能します。 +- 導入バージョン: - + +##### `statistic_update_interval_sec` + +- デフォルト: 24 * 60 * 60 +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: 統計情報のキャッシュが更新される間隔。 +- 導入バージョン: - + +##### `task_check_interval_second` + +- デフォルト: 60 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: タスクバックグラウンドジョブの実行間隔。GlobalStateMgr はこの値を使用して `doTaskBackgroundJob()` を呼び出す TaskCleaner FrontendDaemon をスケジュールします。この値はデーモン間隔をミリ秒単位で設定するために 1000 倍されます。値を減らすと、バックグラウンドメンテナンス (タスククリーンアップ、チェック) がより頻繁に実行され、より迅速に反応しますが、CPU/IO オーバーヘッドが増加します。増やすとオーバーヘッドが減少しますが、クリーンアップと古いタスクの検出が遅れます。この値を調整して、メンテナンスの応答性とリソース使用量のバランスをとってください。 +- 導入バージョン: v3.2.0 + +##### `task_min_schedule_interval_s` + +- デフォルト: 10 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: SQL レイヤーによってチェックされるタスクスケジュールの最小許容スケジュール間隔 (秒単位)。タスクが送信されると、TaskAnalyzer はスケジュール期間を秒に変換し、期間が `task_min_schedule_interval_s` よりも小さい場合、`ERR_INVALID_PARAMETER` で送信を拒否します。これにより、頻繁すぎるタスクの作成が防止され、スケジューラーが高頻度タスクから保護されます。スケジュールに明示的な開始時刻がない場合、TaskAnalyzer は開始時刻を現在のエポック秒に設定します。 +- 導入バージョン: v3.3.0, v3.4.0, v3.5.0 + +##### `task_runs_timeout_second` + +- デフォルト: 4 * 3600 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: TaskRun のデフォルト実行タイムアウト (秒単位)。この項目は、TaskRun 実行でベースラインタイムアウトとして使用されます。タスク実行のプロパティに、正の整数値を持つセッション変数 `query_timeout` または `insert_timeout` が含まれている場合、ランタイムは、そのセッションタイムアウトと `task_runs_timeout_second` のうち大きい方の値を使用します。有効なタイムアウトは、構成された `task_runs_ttl_second` と `task_ttl_second` を超えないように制限されます。タスク実行の最大実行時間を制限するには、この項目を設定します。非常に大きな値は、タスク/タスク実行の TTL 設定によってクリップされる可能性があります。 +- 導入バージョン: - + +### ロードとアンロード + +##### `broker_load_default_timeout_second` + +- デフォルト: 14400 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: Broker Load ジョブのタイムアウト期間。 +- 導入バージョン: - + +##### `desired_max_waiting_jobs` + +- デフォルト: 1024 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: FE での保留中のジョブの最大数。この数は、テーブル作成、ロード、スキーマ変更ジョブなど、すべてのジョブを指します。FE での保留中のジョブの数がこの値に達した場合、FE は新しいロードリクエストを拒否します。このパラメーターは、非同期ロードにのみ有効です。v2.5 以降、デフォルト値は 100 から 1024 に変更されました。 +- 導入バージョン: - + +##### `disable_load_job` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: クラスターがエラーに遭遇した場合にロードを無効にするかどうか。これにより、クラスターエラーによるデータの損失が防止されます。デフォルト値は `FALSE` であり、ロードが無効になっていないことを示します。`TRUE` はロードが無効になり、クラスターが読み取り専用状態になることを示します。 +- 導入バージョン: - + +##### `empty_load_as_error` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: データがロードされていない場合に、エラーメッセージ「すべてのパーティションにロードデータがありません」を返すかどうか。有効な値: + - `true`: データがロードされていない場合、システムは失敗メッセージを表示し、「すべてのパーティションにロードデータがありません」というエラーを返します。 + - `false`: データがロードされていない場合、システムは成功メッセージを表示し、エラーではなく OK を返します。 +- 導入バージョン: - + +##### `enable_routine_load_lag_metrics` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: ルーチンロード Kafka パーティションオフセットラグメトリックを収集するかどうか。この項目を `true` に設定すると、Kafka API を呼び出してパーティションの最新オフセットを取得することに注意してください。 +- 導入バージョン: - + +##### `enable_sync_publish` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: ロードトランザクションのパブリッシュフェーズで apply タスクを同期的に実行するかどうか。このパラメーターはプライマリキーテーブルにのみ適用されます。有効な値: + - `TRUE` (デフォルト): ロードトランザクションのパブリッシュフェーズで apply タスクが同期的に実行されます。これは、apply タスクが完了し、ロードされたデータが実際にクエリ可能になった後にのみ、ロードトランザクションが成功として報告されることを意味します。タスクが一度に大量のデータをロードしたり、データを頻繁にロードしたりする場合、このパラメーターを `true` に設定すると、クエリパフォーマンスと安定性を向上させることができますが、ロード遅延が増加する可能性があります。 + - `FALSE`: ロードトランザクションのパブリッシュフェーズで apply タスクが非同期的に実行されます。これは、apply タスクが送信された後にロードトランザクションが成功として報告されますが、ロードされたデータはすぐにクエリできないことを意味します。この場合、同時クエリは apply タスクが完了するかタイムアウトするまで待機する必要があります。タスクが一度に大量のデータをロードしたり、データを頻繁にロードしたりする場合、このパラメーターを `false` に設定すると、クエリパフォーマンスと安定性に影響を与える可能性があります。 +- 導入バージョン: v3.2.0 + +##### `export_checker_interval_second` + +- デフォルト: 5 +- タイプ: Int +- 単位: 秒 +- 変更可能: いいえ +- 説明: ロードジョブがスケジュールされる時間間隔。 +- 導入バージョン: - + +##### `export_max_bytes_per_be_per_task` + +- デフォルト: 268435456 +- タイプ: Long +- 単位: バイト +- 変更可能: はい +- 説明: 単一の BE から単一のデータアンロードタスクでエクスポートできる最大データ量。 +- 導入バージョン: - + +##### `export_running_job_num_limit` + +- デフォルト: 5 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: 並行して実行できるデータエクスポートタスクの最大数。 +- 導入バージョン: - + +##### `export_task_default_timeout_second` + +- デフォルト: 2 * 3600 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: データエクスポートタスクのタイムアウト期間。 +- 導入バージョン: - + +##### `export_task_pool_size` + +- デフォルト: 5 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: アンロードタスクスレッドプールのサイズ。 +- 導入バージョン: - + +##### `external_table_commit_timeout_ms` + +- デフォルト: 10000 +- タイプ: Int +- 単位: ミリ秒 +- 変更可能: はい +- 説明: StarRocks 外部テーブルへの書き込みトランザクションをコミット (発行) するためのタイムアウト期間。デフォルト値 `10000` は 10 秒のタイムアウト期間を示します。 +- 導入バージョン: - + +##### `finish_transaction_default_lock_timeout_ms` + +- デフォルト: 1000 +- タイプ: Int +- 単位: ミリ秒 +- 変更可能: はい +- 説明: トランザクション完了時に db およびテーブルロックを取得するためのデフォルトのタイムアウト。 +- 導入バージョン: v4.0.0, v3.5.8 + +##### `history_job_keep_max_second` + +- デフォルト: 7 * 24 * 3600 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: スキーマ変更ジョブなど、過去のジョブを保持できる最大期間。 +- 導入バージョン: - + +##### `insert_load_default_timeout_second` + +- デフォルト: 3600 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: データをロードするために使用される INSERT INTO ステートメントのタイムアウト期間。 +- 導入バージョン: - + +##### `label_clean_interval_second` + +- デフォルト: 4 * 3600 +- タイプ: Int +- 単位: 秒 +- 変更可能: いいえ +- 説明: ラベルがクリーンアップされる時間間隔。単位: 秒。履歴ラベルがタイムリーにクリーンアップされるように、短い時間間隔を指定することをお勧めします。 +- 導入バージョン: - + +##### `label_keep_max_num` + +- デフォルト: 1000 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: 一定期間内に保持できるロードジョブの最大数。この数を超えると、履歴ジョブの情報は削除されます。 +- 導入バージョン: - + +##### `label_keep_max_second` + +- デフォルト: 3 * 24 * 3600 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: 完了し、FINISHED または CANCELLED 状態にあるロードジョブのラベルを保持する最大期間 (秒単位)。デフォルト値は 3 日です。この期間が経過すると、ラベルは削除されます。このパラメーターは、すべての種類のロードジョブに適用されます。値が大きすぎると、大量のメモリを消費します。 +- 導入バージョン: - + +##### `load_checker_interval_second` + +- デフォルト: 5 +- タイプ: Int +- 単位: 秒 +- 変更可能: いいえ +- 説明: ロードジョブがローリングベースで処理される時間間隔。 +- 導入バージョン: - + +##### `load_parallel_instance_num` + +- デフォルト: 1 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: Broker Load と Stream Load の単一ホスト上に作成される並列ロードフラグメントインスタンスの数を制御します。LoadPlanner は、セッションがアダプティブシンク DOP を有効にしない限り、この値をホストあたりの並列度として使用します。セッション変数 `enable_adaptive_sink_dop` が true の場合、セッションの `sink_degree_of_parallelism` がこの設定を上書きします。シャッフルが必要な場合、この値はフラグメントの並列実行 (スキャンフラグメントとシンクフラグメントの並列実行インスタンス) に適用されます。シャッフルが不要な場合、シンクパイプライン DOP として使用されます。注: ローカルファイルからのロードは、ローカルディスクの競合を避けるために、単一インスタンス (パイプライン DOP = 1、並列実行 = 1) に強制されます。この値を増やすと、ホストあたりの並行性とスループットが向上しますが、CPU、メモリ、および I/O の競合が増加する可能性があります。 +- 導入バージョン: v3.2.0 + +##### `load_straggler_wait_second` + +- デフォルト: 300 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: BE レプリカが許容できる最大ロード遅延。この値を超過すると、他のレプリカからデータをクローンするためにクローニングが実行されます。 +- 導入バージョン: - + +##### `loads_history_retained_days` + +- デフォルト: 30 +- タイプ: Int +- 単位: 日 +- 変更可能: はい +- 説明: 内部 `_statistics_.loads_history` テーブルにロード履歴を保持する日数。この値は、テーブル作成時に `partition_live_number` テーブルプロパティを設定するために使用され、`TableKeeper` に渡され (最小 1 にクランプされます)、保持する日次パーティションの数を決定します。この値を増減すると、完了したロードジョブが日次パーティションに保持される期間が調整されます。新しいテーブルの作成とキーパーの削除動作に影響しますが、過去のパーティションを自動的に再作成することはありません。`LoadsHistorySyncer` は、ロード履歴のライフサイクルを管理する際にこの保持に依存します。その同期頻度は `loads_history_sync_interval_second` によって制御されます。 +- 導入バージョン: v3.3.6, v3.4.0, v3.5.0 + +##### `loads_history_sync_interval_second` + +- デフォルト: 60 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: LoadsHistorySyncer が `information_schema.loads` から内部 `_statistics_.loads_history` テーブルに完了したロードジョブの定期的な同期をスケジュールするために使用する間隔 (秒単位)。値はコンストラクタで 1000 倍され、FrontendDaemon 間隔を設定します。シンクロナイザーは最初の実行をスキップし (テーブル作成を許可するため)、1 分以上前に完了したロードのみをインポートします。小さい値は DML とエグゼキュータの負荷を増加させ、大きい値は履歴ロードレコードの可用性を遅らせます。ターゲットテーブルの保持/パーティション分割動作については `loads_history_retained_days` を参照してください。 +- 導入バージョン: v3.3.6, v3.4.0, v3.5.0 + +##### `max_broker_load_job_concurrency` + +- デフォルト: 5 +- エイリアス: `async_load_task_pool_size` +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: StarRocks クラスター内で許可される Broker Load ジョブの最大同時実行数。このパラメーターは Broker Load にのみ有効です。このパラメーターの値は、`max_running_txn_num_per_db` の値よりも小さくなければなりません。v2.5 以降、デフォルト値は `10` から `5` に変更されました。 +- 導入バージョン: - + +##### `max_load_timeout_second` + +- デフォルト: 259200 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: ロードジョブに許可される最大タイムアウト期間。この制限を超過すると、ロードジョブは失敗します。この制限は、すべての種類のロードジョブに適用されます。 +- 導入バージョン: - + +##### `max_routine_load_batch_size` + +- デフォルト: 4294967296 +- タイプ: Long +- 単位: バイト +- 変更可能: はい +- 説明: Routine Load タスクでロードできる最大データ量。 +- 導入バージョン: - + +##### `max_routine_load_task_concurrent_num` + +- デフォルト: 5 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: 各 Routine Load ジョブの最大同時タスク数。 +- 導入バージョン: - + +##### `max_routine_load_task_num_per_be` + +- デフォルト: 16 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: 各 BE での最大同時 Routine Load タスク数。v3.1.0 以降、このパラメーターのデフォルト値は 5 から 16 に増加し、BE 静的パラメーター `routine_load_thread_pool_size` (非推奨) の値以下である必要がなくなりました。 +- 導入バージョン: - + +##### `max_running_txn_num_per_db` + +- デフォルト: 1000 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: StarRocks クラスター内の各データベースで実行が許可されるロードトランザクションの最大数。デフォルト値は `1000` です。v3.1 以降、デフォルト値は `100` から `1000` に変更されました。データベースで実行中のロードトランザクションの実際の数がこのパラメーターの値を超過すると、新しいロードリクエストは処理されません。同期ロードジョブの新しいリクエストは拒否され、非同期ロードジョブの新しいリクエストはキューに入れられます。このパラメーターの値を増やすことは、システム負荷を増加させるため、推奨しません。 +- 導入バージョン: - + +##### `max_stream_load_timeout_second` + +- デフォルト: 259200 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: Stream Load ジョブに許可される最大タイムアウト期間。 +- 導入バージョン: - + +##### `max_tolerable_backend_down_num` + +- デフォルト: 0 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: 許容される障害 BE ノードの最大数。この数を超過すると、Routine Load ジョブは自動的に復旧できません。 +- 導入バージョン: - + +##### `min_bytes_per_broker_scanner` + +- デフォルト: 67108864 +- タイプ: Long +- 単位: バイト +- 変更可能: はい +- 説明: Broker Load インスタンスで処理できる最小データ量。 +- 導入バージョン: - + +##### `min_load_timeout_second` + +- デフォルト: 1 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: ロードジョブに許可される最小タイムアウト期間。この制限は、すべての種類のロードジョブに適用されます。 +- 導入バージョン: - + +##### `min_routine_load_lag_for_metrics` + +- デフォルト: 10000 +- タイプ: INT +- 単位: - +- 変更可能: はい +- 説明: モニタリングメトリックに表示される Routine Load ジョブの最小オフセット遅延。オフセット遅延がこの値よりも大きい Routine Load ジョブはメトリックに表示されます。 +- 導入バージョン: - + +##### `period_of_auto_resume_min` + +- デフォルト: 5 +- タイプ: Int +- 単位: 分 +- 変更可能: はい +- 説明: Routine Load ジョブが自動的に復旧される間隔。 +- 導入バージョン: - + +##### `prepared_transaction_default_timeout_second` + +- デフォルト: 86400 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: 準備されたトランザクションのデフォルトのタイムアウト期間。 +- 導入バージョン: - + +##### `routine_load_task_consume_second` + +- デフォルト: 15 +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: クラスター内の各 Routine Load タスクがデータを消費する最大時間。v3.1.0 以降、Routine Load ジョブは [`job_properties`](../../sql-reference/sql-statements/loading_unloading/routine_load/CREATE_ROUTINE_LOAD.md#job_properties) で新しいパラメーター `task_consume_second` をサポートしています。このパラメーターは Routine Load ジョブ内の個々のロードタスクに適用され、より柔軟性があります。 +- 導入バージョン: - + +##### `routine_load_task_timeout_second` + +- デフォルト: 60 +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: クラスター内の各 Routine Load タスクのタイムアウト期間。v3.1.0 以降、Routine Load ジョブは [`job_properties`](../../sql-reference/sql-statements/loading_unloading/routine_load/CREATE_ROUTINE_LOAD.md#job_properties) で新しいパラメーター `task_timeout_second` をサポートしています。このパラメーターは Routine Load ジョブ内の個々のロードタスクに適用され、より柔軟性があります。 +- 導入バージョン: - + +##### `routine_load_unstable_threshold_second` + +- デフォルト: 3600 +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: Routine Load ジョブ内のいずれかのタスクが遅延した場合、Routine Load ジョブは UNSTABLE 状態に設定されます。具体的には、消費されているメッセージのタイムスタンプと現在の時刻の差がこのしきい値を超え、データソースに消費されていないメッセージが存在する場合です。 +- 導入バージョン: - + +##### `spark_dpp_version` + +- デフォルト: 1.0.0 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: 使用される Spark Dynamic Partition Pruning (DPP) のバージョン。 +- 導入バージョン: - + +##### `spark_home_default_dir` + +- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/lib/spark2x" +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: Spark クライアントのルートディレクトリ。 +- 導入バージョン: - + +##### `spark_launcher_log_dir` + +- デフォルト: `sys_log_dir` + "/spark_launcher_log" +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: Spark ログファイルを格納するディレクトリ。 +- 導入バージョン: - + +##### `spark_load_default_timeout_second` + +- デフォルト: 86400 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: 各 Spark Load ジョブのタイムアウト期間。 +- 導入バージョン: - + +##### `spark_load_submit_timeout_second` + +- デフォルト: 300 +- タイプ: long +- 単位: 秒 +- 変更可能: いいえ +- 説明: Spark アプリケーションの送信後、YARN の応答を待機する最大時間 (秒単位)。`SparkLauncherMonitor.LogMonitor` はこの値をミリ秒に変換し、ジョブが UNKNOWN/CONNECTED/SUBMITTED 状態でこのタイムアウトよりも長く維持された場合、監視を停止し、スパークランチャープロセスを強制終了します。`SparkLoadJob` はこの設定をデフォルトとして読み込み、`LoadStmt.SPARK_LOAD_SUBMIT_TIMEOUT` プロパティを介してロードごとの上書きを許可します。YARN キューイングの遅延に対応するのに十分な高さに設定してください。低すぎると正当にキューに入れられたジョブが中断される可能性があり、高すぎると障害処理とリソースクリーンアップが遅れる可能性があります。 +- 導入バージョン: v3.2.0 + +##### `spark_resource_path` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: Spark 依存関係パッケージのルートディレクトリ。 +- 導入バージョン: - + +##### `stream_load_default_timeout_second` + +- デフォルト: 600 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: 各 Stream Load ジョブのデフォルトのタイムアウト期間。 +- 導入バージョン: - + +##### `stream_load_max_txn_num_per_be` + +- デフォルト: -1 +- タイプ: Int +- 単位: トランザクション +- 変更可能: はい +- 説明: 単一の BE (バックエンド) ホストから受け入れられる同時ストリームロードトランザクションの数を制限します。非負の整数に設定されている場合、FrontendServiceImpl は BE (クライアント IP 別) の現在のトランザクション数をチェックし、カウントが `>=` この制限である場合、新しいストリームロード開始リクエストを拒否します。`< 0` の値は制限を無効にします (無制限)。このチェックはストリームロード開始時に発生し、超過すると `streamload txn num per be exceeds limit` エラーが発生する可能性があります。関連する実行時動作は、リクエストタイムアウトフォールバックに `stream_load_default_timeout_second` を使用します。 +- 導入バージョン: v3.3.0, v3.4.0, v3.5.0 + +##### `stream_load_task_keep_max_num` + +- デフォルト: 1000 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: StreamLoadMgr がメモリに保持する Stream Load タスクの最大数 (すべてのデータベースにわたるグローバル)。追跡されているタスク数 (`idToStreamLoadTask`) がこのしきい値を超過すると、StreamLoadMgr はまず `cleanSyncStreamLoadTasks()` を呼び出して完了した同期ストリームロードタスクを削除します。サイズがこのしきい値の半分を超過したままの場合、`cleanOldStreamLoadTasks(true)` を呼び出して、古いタスクまたは完了したタスクの強制削除を実行します。メモリに多くのタスク履歴を保持するにはこの値を増やし、メモリ使用量を減らし、クリーンアップをより積極的に行うには減らします。この値はインメモリ保持のみを制御し、永続化/再生されたタスクには影響しません。 +- 導入バージョン: v3.2.0 + +##### `stream_load_task_keep_max_second` + +- デフォルト: 3 * 24 * 3600 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: 完了またはキャンセルされた Stream Load タスクの保持ウィンドウ。タスクが最終状態に到達し、その終了タイムスタンプがこのしきい値 (`currentMs - endTimeMs > stream_load_task_keep_max_second * 1000`) より古い場合、`StreamLoadMgr.cleanOldStreamLoadTasks` によって削除対象となり、永続化された状態をロードする際に破棄されます。`StreamLoadTask` と `StreamLoadMultiStmtTask` の両方に適用されます。合計タスク数が `stream_load_task_keep_max_num` を超える場合、クリーンアップが早期にトリガーされる可能性があります (同期タスクは `cleanSyncStreamLoadTasks` によって優先されます)。履歴/デバッグ可能性とメモリ使用量のバランスをとるためにこれを設定します。 +- 導入バージョン: v3.2.0 + +##### `transaction_clean_interval_second` + +- デフォルト: 30 +- タイプ: Int +- 単位: 秒 +- 変更可能: いいえ +- 説明: 完了したトランザクションがクリーンアップされる時間間隔。単位: 秒。完了したトランザクションがタイムリーにクリーンアップされるように、短い時間間隔を指定することをお勧めします。 +- 導入バージョン: - + +##### `transaction_stream_load_coordinator_cache_capacity` + +- デフォルト: 4096 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: トランザクションラベルからコーディネーターノードへのマッピングを格納するキャッシュの容量。 +- 導入バージョン: - + +##### `transaction_stream_load_coordinator_cache_expire_seconds` + +- デフォルト: 900 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: コーディネーターマッピングがキャッシュから削除されるまでの時間 (TTL)。 +- 導入バージョン: - + +##### `yarn_client_path` + +- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/lib/yarn-client/hadoop/bin/yarn" +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: Yarn クライアントパッケージのルートディレクトリ。 +- 導入バージョン: - + +##### `yarn_config_dir` + +- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/lib/yarn-config" +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: Yarn 設定ファイルを格納するディレクトリ。 +- 導入バージョン: - + +### 統計レポート + +##### `enable_collect_warehouse_metrics` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: この項目が `true` に設定されている場合、システムはウェアハウスごとのメトリックを収集してエクスポートします。これを有効にすると、ウェアハウスレベルのメトリック (スロット/使用量/可用性) がメトリック出力に追加され、メトリックのカーディナリティと収集オーバーヘッドが増加します。ウェアハウス固有のメトリックを省略し、CPU/ネットワークと監視ストレージのコストを削減するには無効にします。 +- 導入バージョン: v3.5.0 + +##### `enable_http_detail_metrics` + +- デフォルト: false +- タイプ: boolean +- 単位: - +- 変更可能: はい +- 説明: true の場合、HTTP サーバーは詳細な HTTP ワーカーメトリック (特に `HTTP_WORKER_PENDING_TASKS_NUM` ゲージ) を計算して公開します。これを有効にすると、サーバーは Netty ワーカーエグゼキュータを反復処理し、各 `NioEventLoop` で `pendingTasks()` を呼び出して保留中のタスクカウントを合計します。無効にすると、そのコストを避けるためにゲージは 0 を返します。この追加の収集は CPU および遅延に敏感である可能性があります。デバッグまたは詳細な調査のためにのみ有効にしてください。 +- 導入バージョン: v3.2.3 + +##### `proc_profile_collect_time_s` + +- デフォルト: 120 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: 単一のプロセスプロファイル収集の期間 (秒単位)。`proc_profile_cpu_enable` または `proc_profile_mem_enable` が `true` に設定されている場合、AsyncProfiler が起動され、コレクタースレッドはこの期間スリープし、その後プロファイラーが停止され、プロファイルが書き込まれます。値が大きいほどサンプルカバレッジとファイルサイズが増加しますが、プロファイラーの実行時間が長くなり、その後の収集が遅れます。値が小さいほどオーバーヘッドが減少しますが、不十分なサンプルが生成される可能性があります。この値が `proc_profile_file_retained_days` や `proc_profile_file_retained_size_bytes` などの保持設定と一致していることを確認してください。 +- 導入バージョン: v3.2.12 + +### ストレージ + +##### `alter_table_timeout_second` + +- デフォルト: 86400 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: スキーマ変更操作 (ALTER TABLE) のタイムアウト期間。 +- 導入バージョン: - + +##### `capacity_used_percent_high_water` + +- デフォルト: 0.75 +- タイプ: double +- 単位: 小数 (0.0–1.0) +- 変更可能: はい +- 説明: バックエンド負荷スコアを計算する際に使用される、ディスク使用率のハイウォーターしきい値 (総容量の割合)。`BackendLoadStatistic.calcSore` は `capacity_used_percent_high_water` を使用して `LoadScore.capacityCoefficient` を設定します。バックエンドの使用率が 0.5 未満の場合、係数は 0.5 に等しくなります。使用率が `capacity_used_percent_high_water` より大きい場合、係数は 1.0 に等しくなります。それ以外の場合、係数は使用率に比例して線形に遷移します (2 * usedPercent - 0.5)。係数が 1.0 の場合、負荷スコアは容量の割合のみによって決定されます。値が低いほど、レプリカ数の重みが増加します。この値を調整すると、高ディスク使用率のバックエンドに対するバランサーのペナルティがどれだけ厳しくなるかが変わります。 +- 導入バージョン: v3.2.0 + +##### `catalog_trash_expire_second` + +- デフォルト: 86400 +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: データベース、テーブル、またはパーティションが削除された後、メタデータを保持できる最長期間。この期間が経過すると、データは削除され、[RECOVER](../../sql-reference/sql-statements/backup_restore/RECOVER.md) コマンドで復元することはできません。 +- 導入バージョン: - + +##### `check_consistency_default_timeout_second` + +- デフォルト: 600 +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: レプリカの一貫性チェックのタイムアウト期間。タブレットのサイズに基づいてこのパラメーターを設定できます。 +- 導入バージョン: - + +##### `consistency_check_cooldown_time_second` + +- デフォルト: 24 * 3600 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: 同じタブレットの一貫性チェックの間隔 (秒単位) を制御します。タブレット選択中、タブレットが適格と見なされるのは、`tablet.getLastCheckTime()` が `(currentTimeMillis - consistency_check_cooldown_time_second * 1000)` より小さい場合のみです。デフォルト値 (24 * 3600) は、バックエンドディスク I/O を削減するために、タブレットあたり約 1 日に 1 回のチェックを強制します。この値を減らすとチェック頻度とリソース使用量が増加し、増やすと不整合検出が遅くなる代わりに I/O が減少します。この値は、インデックスのタブレットリストから冷却されたタブレットをフィルタリングする際にグローバルに適用されます。 +- 導入バージョン: v3.5.5 + +##### `consistency_check_end_time` + +- デフォルト: "4" +- タイプ: String +- 単位: 時 (0-23) +- 変更可能: いいえ +- 説明: ConsistencyChecker の作業ウィンドウの終了時間 (時単位) を指定します。値はシステムタイムゾーンで SimpleDateFormat("HH") で解析され、0 から 23 (1 桁または 2 桁) として受け入れられます。StarRocks は `consistency_check_start_time` とともにこれを使用して、一貫性チェックジョブをスケジュールおよび追加するタイミングを決定します。`consistency_check_start_time` が `consistency_check_end_time` より大きい場合、ウィンドウは深夜をまたぎます (たとえば、デフォルトは `consistency_check_start_time` = "23" から `consistency_check_end_time` = "4")。`consistency_check_start_time` が `consistency_check_end_time` と等しい場合、チェッカーは実行されません。解析に失敗すると FE の起動がエラーをログに記録して終了するため、有効な時文字列を指定してください。 +- 導入バージョン: v3.2.0 + +##### `consistency_check_start_time` + +- デフォルト: "23" +- タイプ: String +- 単位: 時 (00-23) +- 変更可能: いいえ +- 説明: ConsistencyChecker の作業ウィンドウの開始時間 (時単位) を指定します。値はシステムタイムゾーンで SimpleDateFormat("HH") で解析され、0 から 23 (1 桁または 2 桁) として受け入れられます。StarRocks は `consistency_check_end_time` とともにこれを使用して、一貫性チェックジョブをスケジュールおよび追加するタイミングを決定します。`consistency_check_start_time` が `consistency_check_end_time` より大きい場合、ウィンドウは深夜をまたぎます (たとえば、デフォルトは `consistency_check_start_time` = "23" から `consistency_check_end_time` = "4")。`consistency_check_start_time` が `consistency_check_end_time` と等しい場合、チェッカーは実行されません。解析に失敗すると FE の起動がエラーをログに記録して終了するため、有効な時文字列を指定してください。 +- 導入バージョン: v3.2.0 + +##### `consistency_tablet_meta_check_interval_ms` + +- デフォルト: 2 * 3600 * 1000 +- タイプ: Int +- 単位: ミリ秒 +- 変更可能: はい +- 説明: ConsistencyChecker が `TabletInvertedIndex` と `LocalMetastore` の間で完全なタブレットメタ一貫性スキャンを実行する間隔。`runAfterCatalogReady` のデーモンは、`current time - lastTabletMetaCheckTime` がこの値を超過したときに checkTabletMetaConsistency をトリガーします。無効なタブレットが最初に検出されると、その `toBeCleanedTime` は `now + (consistency_tablet_meta_check_interval_ms / 2)` に設定されるため、実際の削除はその後のスキャンまで遅延されます。スキャン頻度と負荷を減らすにはこの値を増やし (クリーンアップが遅れる)、古いタブレットをより迅速に検出して削除するにはこの値を減らします (オーバーヘッドが増加します)。 +- 導入バージョン: v3.2.0 + +##### `default_replication_num` + +- デフォルト: 3 +- タイプ: Short +- 単位: - +- 変更可能: はい +- 説明: StarRocks でテーブルを作成する際に、各データパーティションのレプリカのデフォルト数を設定します。この設定は、CREATE TABLE DDL で `replication_num=x` を指定することで、テーブル作成時に上書きできます。 +- 導入バージョン: - + +##### `enable_auto_tablet_distribution` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: バケットの数を自動的に設定するかどうか。 + - このパラメーターが `TRUE` に設定されている場合、テーブルを作成したりパーティションを追加したりするときにバケットの数を指定する必要はありません。StarRocks は自動的にバケットの数を決定します。 + - このパラメーターが `FALSE` に設定されている場合、テーブルを作成したりパーティションを追加したりするときにバケットの数を手動で指定する必要があります。テーブルに新しいパーティションを追加するときにバケット数を指定しない場合、新しいパーティションはテーブル作成時に設定されたバケット数を継承します。ただし、新しいパーティションのバケット数を手動で指定することもできます。 +- 導入バージョン: v2.5.7 + +##### `enable_experimental_rowstore` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: [ハイブリッド行/列ストレージ](../../table_design/hybrid_table.md) 機能を有効にするかどうか。 +- 導入バージョン: v3.2.3 + +##### `enable_fast_schema_evolution` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: StarRocks クラスター内のすべてのテーブルで高速スキーマ進化を有効にするかどうか。有効な値は `TRUE` と `FALSE` (デフォルト) です。高速スキーマ進化を有効にすると、スキーマ変更の速度が向上し、列の追加または削除時のリソース使用量が削減されます。 +- 導入バージョン: v3.2.0 + +> **注意** +> +> - StarRocks Shared-data クラスターは v3.3.0 以降このパラメーターをサポートします。 +> - 特定のテーブルの高速スキーマ進化を設定する必要がある場合 (特定のテーブルの高速スキーマ進化を無効にするなど) は、テーブル作成時にテーブルプロパティ [`fast_schema_evolution`](../../sql-reference/sql-statements/table_bucket_part_index/CREATE_TABLE.md#set-fast-schema-evolution) を設定できます。 + +##### `enable_online_optimize_table` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: StarRocks が最適化ジョブを作成する際に、非ブロッキングオンライン最適化パスを使用するかどうかを制御します。`enable_online_optimize_table` が true で、ターゲットテーブルが互換性チェック (パーティション/キー/ソート指定なし、分散が `RandomDistributionDesc` でない、ストレージタイプが `COLUMN_WITH_ROW` でない、レプリケートされたストレージが有効、テーブルがクラウドネイティブテーブルまたはマテリアライズドビューではない) を満たす場合、プランナーは `OnlineOptimizeJobV2` を作成して、書き込みをブロックせずに最適化を実行します。false の場合、または互換性条件が失敗した場合、StarRocks は `OptimizeJobV2` にフォールバックします。これは、最適化中に書き込み操作をブロックする可能性があります。 +- 導入バージョン: v3.3.3, v3.4.0, v3.5.0 + +##### `enable_strict_storage_medium_check` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: ユーザーがテーブルを作成する際に、FE が BE のストレージメディアを厳密にチェックするかどうか。このパラメーターが `TRUE` に設定されている場合、FE はユーザーがテーブルを作成する際に BE のストレージメディアをチェックし、BE のストレージメディアが CREATE TABLE ステートメントで指定された `storage_medium` パラメーターと異なる場合、エラーを返します。例えば、CREATE TABLE ステートメントで指定されたストレージメディアが SSD であるが、BE の実際のストレージメディアが HDD である場合などです。結果として、テーブル作成は失敗します。このパラメーターが `FALSE` の場合、FE はユーザーがテーブルを作成する際に BE のストレージメディアをチェックしません。 +- 導入バージョン: - + +##### `max_bucket_number_per_partition` + +- デフォルト: 1024 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: パーティションで作成できるバケットの最大数。 +- 導入バージョン: v3.3.2 + +##### `max_column_number_per_table` + +- デフォルト: 10000 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: テーブルで作成できる列の最大数。 +- 導入バージョン: v3.3.2 + +##### `max_dynamic_partition_num` + +- デフォルト: 500 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: 動的パーティションテーブルを分析または作成する際に、一度に作成できるパーティションの最大数を制限します。動的パーティションプロパティの検証中に、`systemtask_runs_max_history_number` は予想されるパーティション (終了オフセット + 履歴パーティション数) を計算し、その合計が `max_dynamic_partition_num` を超える場合、DDL エラーをスローします。正当に大きなパーティション範囲を期待する場合にのみこの値を増やしてください。増やすと、より多くのパーティションを作成できますが、メタデータサイズ、スケジューリング作業、および運用上の複雑さが増加する可能性があります。 +- 導入バージョン: v3.2.0 + +##### `max_partition_number_per_table` + +- デフォルト: 100000 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: テーブルで作成できるパーティションの最大数。 +- 導入バージョン: v3.3.2 + +##### `max_task_consecutive_fail_count` + +- デフォルト: 10 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: スケジューラがタスクを自動的に一時停止するまでに、タスクが連続して失敗できる最大回数。`TaskSource.MV.equals(task.getSource())` と `max_task_consecutive_fail_count` が 0 より大きい場合、タスクの連続失敗カウンターが `max_task_consecutive_fail_count` に達するか超えると、タスクは TaskManager を介して一時停止され、マテリアライズドビュータスクの場合、マテリアライズドビューは非アクティブ化されます。一時停止と再アクティブ化の方法を示す例外がスローされます (例: `ALTER MATERIALIZED VIEW ACTIVE`)。自動一時停止を無効にするには、この項目を 0 または負の値に設定します。 +- 導入バージョン: - + +##### `partition_recycle_retention_period_secs` + +- デフォルト: 1800 +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: INSERT OVERWRITE またはマテリアライズドビュー更新操作によって削除されたパーティションのメタデータ保持時間。このメタデータは [RECOVER](../../sql-reference/sql-statements/backup_restore/RECOVER.md) を実行しても復元できないことに注意してください。 +- 導入バージョン: v3.5.9 + +##### `recover_with_empty_tablet` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: 紛失または破損したタブレットレプリカを空のレプリカで置き換えるかどうか。タブレットレプリカが紛失または破損した場合、このタブレットまたは他の健全なタブレットのデータクエリは失敗する可能性があります。紛失または破損したタブレットレプリカを空のタブレットで置き換えることで、クエリは引き続き実行できます。ただし、データが失われるため、結果が不正確になる可能性があります。デフォルト値は `FALSE` であり、紛失または破損したタブレットレプリカは空のレプリカで置き換えられず、クエリは失敗します。 +- 導入バージョン: - + +##### `storage_usage_hard_limit_percent` + +- デフォルト: 95 +- エイリアス: `storage_flood_stage_usage_percent` +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: BE ディレクトリのストレージ使用率のハードリミット。BE ストレージディレクトリのストレージ使用率 (パーセンテージ) がこの値を超え、残りのストレージスペースが `storage_usage_hard_limit_reserve_bytes` 未満の場合、ロードおよびリカバリジョブは拒否されます。設定を有効にするには、BE 設定項目 `storage_flood_stage_usage_percent` とともにこの項目を設定する必要があります。 +- 導入バージョン: - + +##### `storage_usage_hard_limit_reserve_bytes` + +- デフォルト: 100 * 1024 * 1024 * 1024 +- エイリアス: `storage_flood_stage_left_capacity_bytes` +- タイプ: Long +- 単位: バイト +- 変更可能: はい +- 説明: BE ディレクトリの残りのストレージスペースのハードリミット。BE ストレージディレクトリの残りのストレージスペースがこの値未満で、ストレージ使用率 (パーセンテージ) が `storage_usage_hard_limit_percent` を超える場合、ロードおよびリカバリジョブは拒否されます。設定を有効にするには、BE 設定項目 `storage_flood_stage_left_capacity_bytes` とともにこの項目を設定する必要があります。 +- 導入バージョン: - + +##### `storage_usage_soft_limit_percent` + +- デフォルト: 90 +- エイリアス: `storage_high_watermark_usage_percent` +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: BE ディレクトリのストレージ使用率のソフトリミット。BE ストレージディレクトリのストレージ使用率 (パーセンテージ) がこの値を超え、残りのストレージスペースが `storage_usage_soft_limit_reserve_bytes` 未満の場合、タブレットはこのディレクトリにクローンできません。 +- 導入バージョン: - + +##### `storage_usage_soft_limit_reserve_bytes` + +- デフォルト: 200 * 1024 * 1024 * 1024 +- エイリアス: `storage_min_left_capacity_bytes` +- タイプ: Long +- 単位: バイト +- 変更可能: はい +- 説明: BE ディレクトリの残りのストレージスペースのソフトリミット。BE ストレージディレクトリの残りのストレージスペースがこの値未満で、ストレージ使用率 (パーセンテージ) が `storage_usage_soft_limit_percent` を超える場合、タブレットはこのディレクトリにクローンできません。 +- 導入バージョン: - + +##### `tablet_checker_lock_time_per_cycle_ms` + +- デフォルト: 1000 +- タイプ: Int +- 単位: ミリ秒 +- 変更可能: はい +- 説明: タブレットチェッカーがテーブルロックを解放して再取得する前に、サイクルごとに保持するロックの最大時間。100 未満の値は 100 として扱われます。 +- 導入バージョン: v3.5.9, v4.0.2 + +##### `tablet_create_timeout_second` + +- デフォルト: 10 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: タブレット作成のタイムアウト期間。v3.1 以降、デフォルト値は 1 から 10 に変更されました。 +- 導入バージョン: - + +##### `tablet_delete_timeout_second` + +- デフォルト: 2 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: タブレット削除のタイムアウト期間。 +- 導入バージョン: - + +##### `tablet_sched_balance_load_disk_safe_threshold` + +- デフォルト: 0.5 +- エイリアス: `balance_load_disk_safe_threshold` +- タイプ: Double +- 単位: - +- 変更可能: はい +- 説明: BE のディスク使用量がバランスしているかどうかを判断するためのパーセンテージしきい値。すべての BE のディスク使用量がこの値より低い場合、バランスしていると見なされます。ディスク使用量がこの値より大きく、最高の BE ディスク使用量と最低の BE ディスク使用量の差が 10% より大きい場合、ディスク使用量はバランスが取れていないと見なされ、タブレットの再バランシングがトリガーされます。 +- 導入バージョン: - + +##### `tablet_sched_balance_load_score_threshold` + +- デフォルト: 0.1 +- エイリアス: `balance_load_score_threshold` +- タイプ: Double +- 単位: - +- 変更可能: はい +- 説明: BE の負荷がバランスしているかどうかを判断するためのパーセンテージしきい値。BE の負荷がすべての BE の平均負荷よりも低く、その差がこの値より大きい場合、この BE は低負荷状態にあります。逆に、BE の負荷が平均負荷よりも高く、その差がこの値より大きい場合、この BE は高負荷状態にあります。 +- 導入バージョン: - + +##### `tablet_sched_be_down_tolerate_time_s` + +- デフォルト: 900 +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: スケジューラが BE ノードが非アクティブな状態を許容する最大期間。この時間しきい値に達すると、その BE ノード上のタブレットは他のアクティブな BE ノードに移行されます。 +- 導入バージョン: v2.5.7 + +##### `tablet_sched_disable_balance` + +- デフォルト: false +- エイリアス: `disable_balance` +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: タブレットのバランシングを無効にするかどうか。`TRUE` はタブレットのバランシングが無効になっていることを示します。`FALSE` はタブレットのバランシングが有効になっていることを示します。 +- 導入バージョン: - + +##### `tablet_sched_disable_colocate_balance` + +- デフォルト: false +- エイリアス: `disable_colocate_balance` +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: Colocate Table のレプリカバランシングを無効にするかどうか。`TRUE` はレプリカバランシングが無効になっていることを示します。`FALSE` はレプリカバランシングが有効になっていることを示します。 +- 導入バージョン: - + +##### `tablet_sched_max_balancing_tablets` + +- デフォルト: 500 +- エイリアス: `max_balancing_tablets` +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: 同時にバランスできるタブレットの最大数。この値を超過すると、タブレットの再バランシングはスキップされます。 +- 導入バージョン: - + +##### `tablet_sched_max_clone_task_timeout_sec` + +- デフォルト: 2 * 60 * 60 +- エイリアス: `max_clone_task_timeout_sec` +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: タブレットのクローニングの最大タイムアウト期間。 +- 導入バージョン: - + +##### `tablet_sched_max_not_being_scheduled_interval_ms` + +- デフォルト: 15 * 60 * 1000 +- タイプ: Long +- 単位: ミリ秒 +- 変更可能: はい +- 説明: タブレットクローンタスクがスケジュールされているときに、タブレットがこのパラメーターで指定された時間スケジュールされていない場合、StarRocks はそれをできるだけ早くスケジュールするために高い優先度を与えます。 +- 導入バージョン: - + +##### `tablet_sched_max_scheduling_tablets` + +- デフォルト: 10000 +- エイリアス: `max_scheduling_tablets` +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: 同時にスケジュールできるタブレットの最大数。この値を超過すると、タブレットのバランシングと修復チェックはスキップされます。 +- 導入バージョン: - + +##### `tablet_sched_min_clone_task_timeout_sec` + +- デフォルト: 3 * 60 +- エイリアス: `min_clone_task_timeout_sec` +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: タブレットのクローニングの最小タイムアウト期間。 +- 導入バージョン: - + +##### `tablet_sched_num_based_balance_threshold_ratio` + +- デフォルト: 0.5 +- エイリアス: - +- タイプ: Double +- 単位: - +- 変更可能: はい +- 説明: 数値ベースのバランシングはディスクサイズバランスを崩す可能性がありますが、ディスク間の最大ギャップは `tablet_sched_num_based_balance_threshold_ratio` * `tablet_sched_balance_load_score_threshold` を超えることはできません。クラスター内でタブレットが常に A から B、B から A へとバランスされている場合、この値を減らします。タブレットの分散をよりバランスさせたい場合は、この値を増やします。 +- 導入バージョン: - 3.1 + +##### `tablet_sched_repair_delay_factor_second` + +- デフォルト: 60 +- エイリアス: `tablet_repair_delay_factor_second` +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: レプリカが修復される間隔 (秒単位)。 +- 導入バージョン: - + +##### `tablet_sched_slot_num_per_path` + +- デフォルト: 8 +- エイリアス: `schedule_slot_num_per_path` +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: BE ストレージディレクトリで同時に実行できるタブレット関連タスクの最大数。v2.5 以降、このパラメーターのデフォルト値は `4` から `8` に変更されました。 +- 導入バージョン: - + +##### `tablet_sched_storage_cooldown_second` + +- デフォルト: -1 +- エイリアス: `storage_cooldown_second` +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: テーブル作成時からの自動クールダウンのレイテンシー。デフォルト値 `-1` は自動クールダウンが無効になっていることを指定します。自動クールダウンを有効にする場合は、このパラメーターを `-1` より大きい値に設定してください。 +- 導入バージョン: - + +##### `tablet_stat_update_interval_second` + +- デフォルト: 300 +- タイプ: Int +- 単位: 秒 +- 変更可能: いいえ +- 説明: FE が各 BE からタブレット統計を取得する時間間隔。 +- 導入バージョン: - + +### Shared-data + +##### `aws_s3_access_key` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: S3 バケットにアクセスするために使用するアクセスキー ID。 +- 導入バージョン: v3.0 + +##### `aws_s3_endpoint` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: S3 バケットにアクセスするために使用するエンドポイント。例: `https://s3.us-west-2.amazonaws.com`。 +- 導入バージョン: v3.0 + +##### `aws_s3_external_id` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: S3 バケットへのクロスアカウントアクセスに使用される AWS アカウントの外部 ID。 +- 導入バージョン: v3.0 + +##### `aws_s3_iam_role_arn` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: データファイルが保存されている S3 バケットに対する権限を持つ IAM ロールの ARN。 +- 導入バージョン: v3.0 + +##### `aws_s3_path` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: データを保存するために使用される S3 パス。S3 バケットの名前と、その下にあるサブパス (存在する場合) で構成されます。例: `testbucket/subpath`。 +- 導入バージョン: v3.0 + +##### `aws_s3_region` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: S3 バケットが存在するリージョン。例: `us-west-2`。 +- 導入バージョン: v3.0 + +##### `aws_s3_secret_key` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: S3 バケットにアクセスするために使用するシークレットアクセスキー。 +- 導入バージョン: v3.0 + +##### `aws_s3_use_aws_sdk_default_behavior` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: いいえ +- 説明: AWS SDK のデフォルトの認証資格情報を使用するかどうか。有効な値: true および false (デフォルト)。 +- 導入バージョン: v3.0 + +##### `aws_s3_use_instance_profile` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: いいえ +- 説明: S3 にアクセスするための認証方法としてインスタンスプロファイルと引き受けロールを使用するかどうか。有効な値: true および false (デフォルト)。 + - IAM ユーザーベースの資格情報 (アクセスキーとシークレットキー) を使用して S3 にアクセスする場合、この項目を `false` に指定し、`aws_s3_access_key` と `aws_s3_secret_key` を指定する必要があります。 + - インスタンスプロファイルを使用して S3 にアクセスする場合、この項目を `true` に指定する必要があります。 + - 引き受けロールを使用して S3 にアクセスする場合、この項目を `true` に指定し、`aws_s3_iam_role_arn` を指定する必要があります。 + - 外部 AWS アカウントを使用する場合、`aws_s3_external_id` も指定する必要があります。 +- 導入バージョン: v3.0 + +##### `azure_adls2_endpoint` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: Azure Data Lake Storage Gen2 アカウントのエンドポイント。例: `https://test.dfs.core.windows.net`。 +- 導入バージョン: v3.4.1 + +##### `azure_adls2_oauth2_client_id` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: Azure Data Lake Storage Gen2 のリクエストを承認するために使用されるマネージド ID のクライアント ID。 +- 導入バージョン: v3.4.4 + +##### `azure_adls2_oauth2_tenant_id` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: Azure Data Lake Storage Gen2 のリクエストを承認するために使用されるマネージド ID のテナント ID。 +- 導入バージョン: v3.4.4 + +##### `azure_adls2_oauth2_use_managed_identity` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: いいえ +- 説明: Azure Data Lake Storage Gen2 のリクエストを承認するためにマネージド ID を使用するかどうか。 +- 導入バージョン: v3.4.4 + +##### `azure_adls2_path` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: データを保存するために使用される Azure Data Lake Storage Gen2 パス。ファイルシステム名とディレクトリ名で構成されます。例: `testfilesystem/starrocks`。 +- 導入バージョン: v3.4.1 + +##### `azure_adls2_sas_token` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: Azure Data Lake Storage Gen2 のリクエストを承認するために使用される共有アクセス署名 (SAS)。 +- 導入バージョン: v3.4.1 + +##### `azure_adls2_shared_key` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: Azure Data Lake Storage Gen2 のリクエストを承認するために使用される共有キー。 +- 導入バージョン: v3.4.1 + +##### `azure_blob_endpoint` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: Azure Blob Storage アカウントのエンドポイント。例: `https://test.blob.core.windows.net`。 +- 導入バージョン: v3.1 + +##### `azure_blob_path` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: データを保存するために使用される Azure Blob Storage パス。ストレージアカウント内のコンテナ名と、コンテナの下にあるサブパス (存在する場合) で構成されます。例: `testcontainer/subpath`。 +- 導入バージョン: v3.1 + +##### `azure_blob_sas_token` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: Azure Blob Storage のリクエストを承認するために使用される共有アクセス署名 (SAS)。 +- 導入バージョン: v3.1 + +##### `azure_blob_shared_key` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: Azure Blob Storage のリクエストを承認するために使用される共有キー。 +- 導入バージョン: v3.1 + +##### `azure_use_native_sdk` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: Azure Blob Storage にアクセスするためにネイティブ SDK を使用し、Managed Identity と Service Principal で認証を許可するかどうか。この項目が `false` に設定されている場合、Shared Key と SAS Token による認証のみが許可されます。 +- 導入バージョン: v3.4.4 + +##### `cloud_native_hdfs_url` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: HDFS ストレージの URL。例: `hdfs://127.0.0.1:9000/user/xxx/starrocks/`。 +- 導入バージョン: - + +##### `cloud_native_meta_port` + +- デフォルト: 6090 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: FE クラウドネイティブメタデータサーバー RPC リッスンポート。 +- 導入バージョン: - + +##### `cloud_native_storage_type` + +- デフォルト: S3 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: 使用するオブジェクトストレージのタイプ。Shared-data モードでは、StarRocks は HDFS、Azure Blob (v3.1.1 以降サポート)、Azure Data Lake Storage Gen2 (v3.4.1 以降サポート)、Google Storage (ネイティブ SDK を使用、v3.5.1 以降サポート)、および S3 プロトコルと互換性のあるオブジェクトストレージシステム (AWS S3、MinIO など) にデータを保存することをサポートします。有効な値: `S3` (デフォルト)、`HDFS`、`AZBLOB`、`ADLS2`、`GS`。このパラメーターを `S3` に指定する場合、`aws_s3` で始まるパラメーターを追加する必要があります。このパラメーターを `AZBLOB` に指定する場合、`azure_blob` で始まるパラメーターを追加する必要があります。このパラメーターを `ADLS2` に指定する場合、`azure_adls2` で始まるパラメーターを追加する必要があります。このパラメーターを `GS` に指定する場合、`gcp_gcs` で始まるパラメーターを追加する必要があります。このパラメーターを `HDFS` に指定する場合、`cloud_native_hdfs_url` のみを指定する必要があります。 +- 導入バージョン: - + +##### `enable_load_volume_from_conf` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: いいえ +- 説明: StarRocks が FE 設定ファイルで指定されたオブジェクトストレージ関連プロパティを使用して組み込みストレージボリュームを作成することを許可するかどうか。v3.4.1 以降、デフォルト値は `true` から `false` に変更されました。 +- 導入バージョン: v3.1.0 + +##### `gcp_gcs_impersonation_service_account` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: Google Storage にアクセスするためになりすましベースの認証を使用する場合に、なりすましたいサービスアカウント。 +- 導入バージョン: v3.5.1 + +##### `gcp_gcs_path` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: データを保存するために使用される Google Cloud パス。Google Cloud バケットの名前と、その下にあるサブパス (存在する場合) で構成されます。例: `testbucket/subpath`。 +- 導入バージョン: v3.5.1 + +##### `gcp_gcs_service_account_email` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: サービスアカウント作成時に生成された JSON ファイル内のメールアドレス。例: `user@hello.iam.gserviceaccount.com`。 +- 導入バージョン: v3.5.1 + +##### `gcp_gcs_service_account_private_key` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: サービスアカウント作成時に生成された JSON ファイル内の秘密鍵。例: `-----BEGIN PRIVATE KEY----xxxx-----END PRIVATE KEY-----\n`。 +- 導入バージョン: v3.5.1 + +##### `gcp_gcs_service_account_private_key_id` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: サービスアカウント作成時に生成された JSON ファイル内の秘密鍵 ID。 +- 導入バージョン: v3.5.1 + +##### `gcp_gcs_use_compute_engine_service_account` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: いいえ +- 説明: Compute Engine にバインドされているサービスアカウントを使用するかどうか。 +- 導入バージョン: v3.5.1 + +##### `hdfs_file_system_expire_seconds` + +- デフォルト: 300 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: HdfsFsManager によって管理される、未使用のキャッシュされた HDFS/ObjectStore FileSystem の生存期間 (秒単位)。FileSystemExpirationChecker (60 秒ごとに実行) は、この値を使用して各 HdfsFs.isExpired(...) を呼び出します。期限切れになると、マネージャーは基盤となる FileSystem を閉じ、キャッシュから削除します。アクセサーメソッド (例: `HdfsFs.getDFSFileSystem`、`getUserName`、`getConfiguration`) は最終アクセス時刻を更新するため、有効期限は非アクティブに基づいています。値が小さいほどアイドル状態のリソース保持が減りますが、再オープンオーバーヘッドが増加します。値が大きいほどハンドルを長く保持し、より多くのリソースを消費する可能性があります。 +- 導入バージョン: v3.2.0 + +##### `lake_autovacuum_grace_period_minutes` + +- デフォルト: 30 +- タイプ: Long +- 単位: 分 +- 変更可能: はい +- 説明: Shared-data クラスターで履歴データバージョンを保持する時間範囲。この時間範囲内の履歴データバージョンは、コンパクション後に AutoVacuum によって自動的にクリーンアップされません。実行中のクエリが終了する前にアクセスされたデータが削除されるのを避けるために、この値を最大クエリ時間よりも大きく設定する必要があります。v3.3.0、v3.2.5、および v3.1.10 以降、デフォルト値は `5` から `30` に変更されました。 +- 導入バージョン: v3.1.0 + +##### `lake_autovacuum_parallel_partitions` + +- デフォルト: 8 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: Shared-data クラスターで AutoVacuum を同時に実行できるパーティションの最大数。AutoVacuum はコンパクション後のガベージコレクションです。 +- 導入バージョン: v3.1.0 + +##### `lake_autovacuum_partition_naptime_seconds` + +- デフォルト: 180 +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: Shared-data クラスターで同じパーティションに対する AutoVacuum 操作間の最小間隔。 +- 導入バージョン: v3.1.0 + +##### `lake_autovacuum_stale_partition_threshold` + +- デフォルト: 12 +- タイプ: Long +- 単位: 時間 +- 変更可能: はい +- 説明: この時間範囲内にパーティションの更新 (ロード、DELETE、またはコンパクション) がない場合、システムはこのパーティションに対して AutoVacuum を実行しません。 +- 導入バージョン: v3.1.0 + +##### `lake_compaction_allow_partial_success` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: この項目が `true` に設定されている場合、Shared-data クラスターでの Compaction 操作は、サブタスクの 1 つが成功した場合に成功と見なされます。 +- 導入バージョン: v3.5.2 + +##### `lake_compaction_disable_ids` + +- デフォルト: "" +- タイプ: String +- 単位: - +- 変更可能: はい +- 説明: Shared-data モードでコンパクションが無効になっているテーブルまたはパーティションのリスト。形式はセミコロンで区切られた `tableId1;partitionId2` です。例: `12345;98765`。 +- 導入バージョン: v3.4.4 + +##### `lake_compaction_history_size` + +- デフォルト: 20 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: Shared-data クラスターのリーダー FE ノードのメモリに保持する最近の成功した Compaction タスクレコードの数。`SHOW PROC '/compactions'` コマンドを使用して、最近の成功した Compaction タスクレコードを表示できます。Compaction 履歴は FE プロセスメモリに保存されるため、FE プロセスが再起動されると失われることに注意してください。 +- 導入バージョン: v3.1.0 + +##### `lake_compaction_max_tasks` + +- デフォルト: -1 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: Shared-data クラスターで許可される同時 Compaction タスクの最大数。この項目を `-1` に設定すると、同時タスク数が適応的に計算されることを示します。この値を `0` に設定すると、コンパクションが無効になります。 +- 導入バージョン: v3.1.0 + +##### `lake_compaction_score_selector_min_score` + +- デフォルト: 10.0 +- タイプ: Double +- 単位: - +- 変更可能: はい +- 説明: Shared-data クラスターで Compaction 操作をトリガーする Compaction Score のしきい値。パーティションの Compaction Score がこの値以上の場合、システムはそのパーティションに対して Compaction を実行します。 +- 導入バージョン: v3.1.0 + +##### `lake_compaction_score_upper_bound` + +- デフォルト: 2000 +- タイプ: Long +- 単位: - +- 変更可能: はい +- 説明: Shared-data クラスターのパーティションの Compaction Score の上限。`0` は上限がないことを示します。この項目は `lake_enable_ingest_slowdown` が `true` に設定されている場合にのみ有効です。パーティションの Compaction Score がこの上限に達するか超えると、受信ロードタスクは拒否されます。v3.3.6 以降、デフォルト値は `0` から `2000` に変更されました。 +- 導入バージョン: v3.2.0 + +##### `lake_enable_balance_tablets_between_workers` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: Shared-data クラスターのクラウドネイティブテーブルのタブレット移行中に、Compute ノード間でタブレット数をバランスさせるかどうか。`true` は Compute ノード間でタブレットをバランスさせることを示し、`false` はこの機能を無効にすることを示します。 +- 導入バージョン: v3.3.4 + +##### `lake_enable_ingest_slowdown` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: Shared-data クラスターでデータ取り込みの減速を有効にするかどうか。データ取り込みの減速が有効な場合、パーティションの Compaction Score が `lake_ingest_slowdown_threshold` を超えると、そのパーティション上のロードタスクはスロットルされます。この設定は、`run_mode` が `shared_data` に設定されている場合にのみ有効です。v3.3.6 以降、デフォルト値は `false` から `true` に変更されました。 +- 導入バージョン: v3.2.0 + +##### `lake_ingest_slowdown_threshold` + +- デフォルト: 100 +- タイプ: Long +- 単位: - +- 変更可能: はい +- 説明: Shared-data クラスターでデータ取り込みの減速をトリガーする Compaction Score のしきい値。この設定は `lake_enable_ingest_slowdown` が `true` に設定されている場合にのみ有効です。 +- 導入バージョン: v3.2.0 + +##### `lake_publish_version_max_threads` + +- デフォルト: 512 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: Shared-data クラスターにおけるバージョンパブリッシュタスクの最大スレッド数。 +- 導入バージョン: v3.2.0 + +##### `meta_sync_force_delete_shard_meta` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: リモートストレージファイルのクリーンアップをバイパスして、Shared-data クラスターのメタデータを直接削除することを許可するかどうか。この項目を `true` に設定することは、クリーンアップすべきシャードの数が過剰であり、それが FE JVM の極端なメモリプレッシャーにつながる場合にのみ推奨されます。この機能を有効にすると、シャードまたはタブレットに属するデータファイルが自動的にクリーンアップされないことに注意してください。 +- 導入バージョン: v3.2.10, v3.3.3 + +##### `run_mode` + +- デフォルト: `shared_nothing` +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: StarRocks クラスターの実行モード。有効な値: `shared_data` と `shared_nothing` (デフォルト)。 + - `shared_data` は StarRocks を Shared-data モードで実行することを示します。 + - `shared_nothing` は StarRocks を Shared-nothing モードで実行することを示します。 + + > **注意** + > + > - StarRocks クラスターで `shared_data` モードと `shared_nothing` モードを同時に採用することはできません。混合デプロイメントはサポートされていません。 + > - クラスターのデプロイ後に `run_mode` を変更しないでください。変更すると、クラスターの再起動に失敗します。Shared-nothing クラスターから Shared-data クラスターへの変換、またはその逆はサポートされていません。 + +- 導入バージョン: - + +##### `shard_group_clean_threshold_sec` + +- デフォルト: 3600 +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: Shared-data クラスターで未使用のタブレットとシャードグループを FE がクリーンアップするまでの時間。このしきい値内に作成されたタブレットとシャードグループはクリーンアップされません。 +- 導入バージョン: - + +##### `star_mgr_meta_sync_interval_sec` + +- デフォルト: 600 +- タイプ: Long +- 単位: 秒 +- 変更可能: いいえ +- 説明: Shared-data クラスターで FE が StarMgr と定期的なメタデータ同期を実行する間隔。 +- 導入バージョン: - + +##### `starmgr_grpc_server_max_worker_threads` + +- デフォルト: 1024 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: FE starmgr モジュールの grpc サーバーが使用するワーカー スレッドの最大数。 +- 導入バージョン: v4.0.0, v3.5.8 + +##### `starmgr_grpc_timeout_seconds` + +- デフォルト: 5 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: +- 導入バージョン: - + +### データレイク + +##### `files_enable_insert_push_down_schema` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: 有効な場合、アナライザーは INSERT ... FROM files() 操作のためにターゲットテーブルスキーマを `files()` テーブル関数にプッシュしようとします。これは、ソースが FileTableFunctionRelation であり、ターゲットがネイティブテーブルであり、SELECT リストに対応するスロット参照列 (または *) が含まれている場合にのみ適用されます。アナライザーは、選択された列をターゲット列と照合し (カウントは一致する必要がある)、ターゲットテーブルを一時的にロックし、ファイル列のタイプを非複合型についてはディープコピーされたターゲット列のタイプに置き換えます (Parquet JSON -> `array` のような複合型はスキップされます)。元のファイルテーブルからの列名は保持されます。これにより、取り込み中のファイルベースの型推論による型不一致や緩さが減少します。 +- 導入バージョン: v3.4.0, v3.5.0 + +##### `hdfs_read_buffer_size_kb` + +- デフォルト: 8192 +- タイプ: Int +- 単位: キロバイト +- 変更可能: はい +- 説明: HDFS 読み取りバッファのサイズ (キロバイト単位)。StarRocks はこの値をバイト (`<< 10`) に変換し、`HdfsFsManager` で HDFS 読み取りバッファを初期化したり、ブローカーアクセスが使用されていない場合にバックエンドタスク (例: `TBrokerScanRangeParams`、`TDownloadReq`) に送信される thrift フィールド `hdfs_read_buffer_size_kb` を入力したりするために使用します。`hdfs_read_buffer_size_kb` を増やすと、シーケンシャル読み取りスループットが向上し、システムコールオーバーヘッドが削減されますが、ストリームあたりのメモリ使用量が増加します。減らすとメモリフットプリントが削減されますが、IO 効率が低下する可能性があります。調整する際にはワークロード (多数の小さなストリーム vs. 少数の大きなシーケンシャル読み取り) を考慮してください。 +- 導入バージョン: v3.2.0 + +##### `hdfs_write_buffer_size_kb` + +- デフォルト: 1024 +- タイプ: Int +- 単位: キロバイト +- 変更可能: はい +- 説明: ブローカーを使用しない HDFS またはオブジェクトストレージへの直接書き込みに使用される HDFS 書き込みバッファサイズ (KB 単位) を設定します。FE はこの値をバイト (`<< 10`) に変換し、HdfsFsManager でローカル書き込みバッファを初期化します。また、Thrift リクエスト (例: TUploadReq, TExportSink, シンクオプション) に伝播されるため、バックエンド/エージェントは同じバッファサイズを使用します。この値を増やすと、大規模なシーケンシャル書き込みのスループットが向上しますが、ライターあたりのメモリが増加します。減らすと、ストリームあたりのメモリ使用量が減少し、小規模な書き込みの遅延が短縮される可能性があります。`hdfs_read_buffer_size_kb` と並行して、利用可能なメモリと同時ライター数を考慮して調整してください。 +- 導入バージョン: v3.2.0 + +##### `lake_batch_publish_max_version_num` + +- デフォルト: 10 +- タイプ: Int +- 単位: カウント +- 変更可能: はい +- 説明: レイク (クラウドネイティブ) テーブルのパブリッシュバッチを構築する際に、グループ化できる連続するトランザクションバージョンの上限を設定します。この値はトランザクショングラフのバッチ処理ルーチン (getReadyToPublishTxnListBatch を参照) に渡され、`lake_batch_publish_min_version_num` と連携して TransactionStateBatch の候補範囲サイズを決定します。値が大きいほど、より多くのコミットをバッチ処理することでパブリッシュスループットを向上させることができますが、アトミックなパブリッシュのスコープが広がり (可視性遅延が長くなり、ロールバックの表面積が大きくなる)、バージョンが連続していない場合は実行時に制限される可能性があります。ワークロードと可視性/遅延要件に従って調整してください。 +- 導入バージョン: v3.2.0 + +##### `lake_batch_publish_min_version_num` + +- デフォルト: 1 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: レイクテーブルのパブリッシュバッチを形成するために必要な連続するトランザクションバージョンの最小数を設定します。DatabaseTransactionMgr.getReadyToPublishTxnListBatch は、`lake_batch_publish_max_version_num` とともにこの値を transactionGraph.getTxnsWithTxnDependencyBatch に渡して、依存するトランザクションを選択します。`1` の値は単一トランザクションのパブリッシュを許可します (バッチ処理なし)。`>1` の値は、少なくともその数の連続したバージョンを持つ単一テーブルの非レプリケーショントランザクションが利用可能であることを要求します。バージョンが連続していない場合、レプリケーショントランザクションが出現した場合、またはスキーマ変更がバージョンを消費した場合、バッチ処理は中止されます。この値を増やすと、コミットをグループ化することでパブリッシュスループットを向上させることができますが、十分な連続トランザクションを待機している間、パブリッシュが遅延する可能性があります。 +- 導入バージョン: v3.2.0 + +##### `lake_enable_batch_publish_version` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: 有効な場合、PublishVersionDaemon は同じレイク (Shared-data) テーブル/パーティションの準備完了トランザクションをバッチ処理し、トランザクションごとのパブリッシュを発行する代わりに、それらのバージョンをまとめてパブリッシュします。RunMode Shared-data では、デーモンは getReadyPublishTransactionsBatch() を呼び出し、publishVersionForLakeTableBatch(...) を使用してグループ化されたパブリッシュ操作を実行します (RPC を減らし、スループットを向上させます)。無効な場合、デーモンは publishVersionForLakeTable(...) を介してトランザクションごとのパブリッシュにフォールバックします。実装は、スイッチが切り替えられたときの重複パブリッシュを避けるために内部セットを使用して進行中の作業を調整し、`lake_publish_version_max_threads` を介したスレッドプールサイジングの影響を受けます。 +- 導入バージョン: v3.2.0 + +##### `lake_enable_tablet_creation_optimization` + +- デフォルト: false +- タイプ: boolean +- 単位: - +- 変更可能: はい +- 説明: 有効にすると、StarRocks は Shared-data モードのクラウドネイティブテーブルとマテリアライズドビューのタブレット作成を最適化し、タブレットごとに異なるメタデータではなく、物理パーティション下のすべてのタブレットに単一の共有タブレットメタデータを作成します。これにより、テーブル作成、ロールアップ、およびスキーマ変更ジョブ中に生成されるタブレット作成タスクとメタデータ/ファイルの数が削減されます。この最適化はクラウドネイティブテーブル/マテリアライズドビューにのみ適用され、`file_bundling` と組み合わされます (後者は同じ最適化ロジックを再利用します)。注: スキーマ変更およびロールアップジョブは、同じ名前のファイルを上書きするのを避けるために、`file_bundling` を使用するテーブルの最適化を明示的に無効にします。慎重に有効にしてください。作成されるタブレットメタデータの粒度が変更され、レプリカ作成とファイル命名の動作に影響する可能性があります。 +- 導入バージョン: v3.3.1, v3.4.0, v3.5.0 + +##### `lake_use_combined_txn_log` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: この項目が `true` に設定されている場合、システムは Lake テーブルが関連トランザクションの結合されたトランザクションログパスを使用することを許可します。Shared-data クラスターでのみ利用可能です。 +- 導入バージョン: v3.3.7, v3.4.0, v3.5.0 + +### その他 + +##### `agent_task_resend_wait_time_ms` + +- デフォルト: 5000 +- タイプ: Long +- 単位: ミリ秒 +- 変更可能: はい +- 説明: FE がエージェントタスクを再送するまでに待機する必要がある期間。エージェントタスクは、タスク作成時間と現在の時間の差がこのパラメーターの値を超過した場合にのみ再送できます。このパラメーターは、エージェントタスクの繰り返し送信を防ぐために使用されます。 +- 導入バージョン: - + +##### `allow_system_reserved_names` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: ユーザーが `__op` および `__row` で始まる名前の列を作成することを許可するかどうか。この機能を有効にするには、このパラメーターを `TRUE` に設定します。これらの名前形式は StarRocks で特別な目的のために予約されており、そのような列を作成すると未定義の動作が発生する可能性があるため、この機能はデフォルトで無効になっています。 +- 導入バージョン: v3.2.0 + +##### `auth_token` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: FE が属する StarRocks クラスター内で ID 認証に使用されるトークン。このパラメーターが指定されていない場合、StarRocks はクラスターのリーダー FE が初めて起動したときにクラスターのランダムなトークンを生成します。 +- 導入バージョン: - + +##### `authentication_ldap_simple_bind_base_dn` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: はい +- 説明: LDAP サーバーがユーザーの認証情報を検索し始めるポイントであるベース DN。 +- 導入バージョン: - + +##### `authentication_ldap_simple_bind_root_dn` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: はい +- 説明: ユーザーの認証情報を検索するために使用される管理者 DN。 +- 導入バージョン: - + +##### `authentication_ldap_simple_bind_root_pwd` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: はい +- 説明: ユーザーの認証情報を検索するために使用される管理者のパスワード。 +- 導入バージョン: - + +##### `authentication_ldap_simple_server_host` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: はい +- 説明: LDAP サーバーが実行されているホスト。 +- 導入バージョン: - + +##### `authentication_ldap_simple_server_port` + +- デフォルト: 389 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: LDAP サーバーのポート。 +- 導入バージョン: - + +##### `authentication_ldap_simple_user_search_attr` + +- デフォルト: uid +- タイプ: String +- 単位: - +- 変更可能: はい +- 説明: LDAP オブジェクトでユーザーを識別する属性の名前。 +- 導入バージョン: - + +##### `backup_job_default_timeout_ms` + +- デフォルト: 86400 * 1000 +- タイプ: Int +- 単位: ミリ秒 +- 変更可能: はい +- 説明: バックアップジョブのタイムアウト期間。この値を超過すると、バックアップジョブは失敗します。 +- 導入バージョン: - + +##### `enable_collect_tablet_num_in_show_proc_backend_disk_path` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: `SHOW PROC /BACKENDS/{id}` コマンドで、各ディスクのタブレット数を収集することを有効にするかどうか。 +- 導入バージョン: v4.0.1, v3.5.8 + +##### `enable_colocate_restore` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: Colocate Table のバックアップと復元を有効にするかどうか。`true` は Colocate Table のバックアップと復元を有効にすることを示し、`false` は無効にすることを示します。 +- 導入バージョン: v3.2.10, v3.3.3 + +##### `enable_materialized_view_concurrent_prepare` + +- デフォルト: true +- タイプ: Boolean +- 単位: +- 変更可能: はい +- 説明: マテリアライズドビューを並行して準備してパフォーマンスを向上させるかどうか。 +- 導入バージョン: v3.4.4 + +##### `enable_metric_calculator` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: いいえ +- 説明: メトリックを定期的に収集する機能を有効にするかどうかを指定します。有効な値: `TRUE` および `FALSE`。`TRUE` はこの機能を有効にすることを示し、`FALSE` はこの機能を無効にすることを示します。 +- 導入バージョン: - + +##### `enable_table_metrics_collect` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: FE でテーブルレベルのメトリックをエクスポートするかどうか。無効の場合、FE はテーブルメトリック (テーブルスキャン/ロードカウンター、テーブルサイズメトリックなど) のエクスポートをスキップしますが、カウンターはメモリに記録されます。 +- 導入バージョン: - + +##### `enable_mv_post_image_reload_cache` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: FE がイメージをロードした後でリロードフラグチェックを実行するかどうか。基底マテリアライズドビューでチェックが実行された場合、それに関連する他のマテリアライズドビューでは必要ありません。 +- 導入バージョン: v3.5.0 + +##### `enable_mv_query_context_cache` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: クエリ書き換えパフォーマンスを向上させるために、クエリレベルのマテリアライズドビュー書き換えキャッシュを有効にするかどうか。 +- 導入バージョン: v3.3 + +##### `enable_mv_refresh_collect_profile` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: すべてのマテリアライズドビューについて、マテリアライズドビューの更新でプロファイルをデフォルトで有効にするかどうか。 +- 導入バージョン: v3.3.0 + +##### `enable_mv_refresh_extra_prefix_logging` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: デバッグを容易にするために、ログにマテリアライズドビュー名のプレフィックスを付けることを有効にするかどうか。 +- 導入バージョン: v3.4.0 + +##### `enable_mv_refresh_query_rewrite` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: マテリアライズドビューの更新中にクエリ書き換えを有効にして、クエリが基底テーブルではなく書き換えられた mv を直接使用してクエリパフォーマンスを向上させるかどうか。 +- 導入バージョン: v3.3 + +##### `enable_trace_historical_node` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: システムが履歴ノードをトレースすることを許可するかどうか。この項目を `true` に設定すると、キャッシュ共有機能を有効にし、弾力的なスケーリング中にシステムが適切なキャッシュノードを選択できるようにします。 +- 導入バージョン: v3.5.1 + +##### `es_state_sync_interval_second` + +- デフォルト: 10 +- タイプ: Long +- 単位: 秒 +- 変更可能: いいえ +- 説明: FE が Elasticsearch インデックスを取得し、StarRocks 外部テーブルのメタデータを同期する時間間隔。 +- 導入バージョン: - + +##### `hive_meta_cache_refresh_interval_s` + +- デフォルト: 3600 * 2 +- タイプ: Long +- 単位: 秒 +- 変更可能: いいえ +- 説明: Hive 外部テーブルのキャッシュされたメタデータが更新される時間間隔。 +- 導入バージョン: - + +##### `hive_meta_store_timeout_s` + +- デフォルト: 10 +- タイプ: Long +- 単位: 秒 +- 変更可能: いいえ +- 説明: Hive メタストアへの接続がタイムアウトするまでの時間。 +- 導入バージョン: - + +##### `jdbc_connection_idle_timeout_ms` + +- デフォルト: 600000 +- タイプ: Int +- 単位: ミリ秒 +- 変更可能: いいえ +- 説明: JDBC カタログにアクセスするための接続がタイムアウトする最大時間。タイムアウトした接続はアイドル状態と見なされます。 +- 導入バージョン: - + +##### `jdbc_connection_timeout_ms` + +- デフォルト: 10000 +- タイプ: Long +- 単位: ミリ秒 +- 変更可能: いいえ +- 説明: HikariCP 接続プールが接続を取得するためのタイムアウト (ミリ秒単位)。この時間内にプールから接続を取得できない場合、操作は失敗します。 +- 導入バージョン: v3.5.13 + +##### `jdbc_query_timeout_ms` + +- デフォルト: 30000 +- タイプ: Long +- 単位: ミリ秒 +- 変更可能: はい +- 説明: JDBC ステートメントクエリ実行のタイムアウト (ミリ秒単位)。このタイムアウトは、JDBC カタログを通じて実行されるすべての SQL クエリ (パーティションメタデータクエリなど) に適用されます。値は JDBC ドライバーに渡されるときに秒に変換されます。 +- 導入バージョン: v3.5.13 + +##### `jdbc_network_timeout_ms` + +- デフォルト: 30000 +- タイプ: Long +- 単位: ミリ秒 +- 変更可能: はい +- 説明: JDBC ネットワーク操作 (ソケット読み取り) のタイムアウト (ミリ秒単位)。このタイムアウトは、外部データベースが応答しない場合に無期限のブロックを防ぐために、データベースメタデータ呼び出し (例: getSchemas()、getTables()、getColumns()) に適用されます。 +- 導入バージョン: v3.5.13 + +##### `jdbc_connection_pool_size` + +- デフォルト: 8 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: JDBC カタログにアクセスするための JDBC 接続プールの最大容量。 +- 導入バージョン: - + +##### `jdbc_meta_default_cache_enable` + +- デフォルト: false +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: JDBC カタログメタデータキャッシュが有効になっているかどうかのデフォルト値。True に設定すると、新しく作成された JDBC カタログはデフォルトでメタデータキャッシュが有効になります。 +- 導入バージョン: - + +##### `jdbc_meta_default_cache_expire_sec` + +- デフォルト: 600 +- タイプ: Long +- 単位: 秒 +- 変更可能: はい +- 説明: JDBC カタログメタデータキャッシュのデフォルトの有効期限。`jdbc_meta_default_cache_enable` が true に設定されている場合、新しく作成された JDBC カタログはデフォルトでメタデータキャッシュの有効期限を設定します。 +- 導入バージョン: - + +##### `jdbc_minimum_idle_connections` + +- デフォルト: 1 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: JDBC カタログにアクセスするための JDBC 接続プール内のアイドル接続の最小数。 +- 導入バージョン: - + +##### `jwt_jwks_url` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: JSON Web Key Set (JWKS) サービスへの URL、または `fe/conf` ディレクトリ下の公開鍵ローカルファイルへのパス。 +- 導入バージョン: v3.5.0 + +##### `jwt_principal_field` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: JWT の subject (`sub`) を示すフィールドを識別するために使用される文字列。デフォルト値は `sub` です。このフィールドの値は、StarRocks にログインするためのユーザー名と同一である必要があります。 +- 導入バージョン: v3.5.0 + +##### `jwt_required_audience` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: JWT の audience (`aud`) を識別するために使用される文字列のリスト。JWT は、リスト内の値のいずれかが JWT audience と一致する場合にのみ有効と見なされます。 +- 導入バージョン: v3.5.0 + +##### `jwt_required_issuer` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: JWT の issuer (`iss`) を識別するために使用される文字列のリスト。JWT は、リスト内の値のいずれかが JWT issuer と一致する場合にのみ有効と見なされます。 +- 導入バージョン: v3.5.0 + +##### locale + +- デフォルト: `zh_CN.UTF-8` +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: FE が使用する文字セット。 +- 導入バージョン: - + +##### `max_agent_task_threads_num` + +- デフォルト: 4096 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: エージェントタスクスレッドプールで許可されるスレッドの最大数。 +- 導入バージョン: - + +##### `max_download_task_per_be` + +- デフォルト: 0 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: 各 RESTORE 操作で、StarRocks が BE ノードに割り当てるダウンロードタスクの最大数。この項目が 0 以下に設定されている場合、タスク数に制限はありません。 +- 導入バージョン: v3.1.0 + +##### `max_mv_check_base_table_change_retry_times` + +- デフォルト: 10 +- タイプ: - +- 単位: - +- 変更可能: はい +- 説明: マテリアライズドビューの更新時に基底テーブルの変更を検出するための最大再試行回数。 +- 導入バージョン: v3.3.0 + +##### `max_mv_refresh_failure_retry_times` + +- デフォルト: 1 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: マテリアライズドビューの更新に失敗した場合の最大再試行回数。 +- 導入バージョン: v3.3.0 + +##### `max_mv_refresh_try_lock_failure_retry_times` + +- デフォルト: 3 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: マテリアライズドビューの更新に失敗した場合の try lock の最大再試行回数。 +- 導入バージョン: v3.3.0 + +##### `max_small_file_number` + +- デフォルト: 100 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: FE ディレクトリに保存できる小さなファイルの最大数。 +- 導入バージョン: - + +##### `max_small_file_size_bytes` + +- デフォルト: 1024 * 1024 +- タイプ: Int +- 単位: バイト +- 変更可能: はい +- 説明: 小さなファイルの最大サイズ。 +- 導入バージョン: - + +##### `max_upload_task_per_be` + +- デフォルト: 0 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: 各 BACKUP 操作で、StarRocks が BE ノードに割り当てるアップロードタスクの最大数。この項目が 0 以下に設定されている場合、タスク数に制限はありません。 +- 導入バージョン: v3.1.0 + +##### `mv_create_partition_batch_interval_ms` + +- デフォルト: 1000 +- タイプ: Int +- 単位: ms +- 変更可能: はい +- 説明: マテリアライズドビューの更新中、複数のパーティションを一括作成する必要がある場合、システムはそれらをそれぞれ 64 パーティションのバッチに分割します。頻繁なパーティション作成による障害のリスクを減らすため、各バッチ間にデフォルトの間隔 (ミリ秒単位) が設定され、作成頻度を制御します。 +- 導入バージョン: v3.3 + +##### `mv_plan_cache_max_size` + +- デフォルト: 1000 +- タイプ: Long +- 単位: +- 変更可能: はい +- 説明: マテリアライズドビュープランキャッシュ (マテリアライズドビューの書き換えに使用される) の最大サイズ。透過的なクエリ書き換えに使用されるマテリアライズドビューが多い場合、この値を増やすことができます。 +- 導入バージョン: v3.2 + +##### `mv_plan_cache_thread_pool_size` + +- デフォルト: 3 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: マテリアライズドビュープランキャッシュ (マテリアライズドビューの書き換えに使用される) のデフォルトスレッドプールサイズ。 +- 導入バージョン: v3.2 + +##### `mv_refresh_default_planner_optimize_timeout` + +- デフォルト: 30000 +- タイプ: - +- 単位: - +- 変更可能: はい +- 説明: マテリアライズドビュー更新時のオプティマイザのプランニングフェーズのデフォルトのタイムアウト。 +- 導入バージョン: v3.3.0 + +##### `mv_refresh_fail_on_filter_data` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: フィルタリングされたデータがある場合、MV 更新は失敗します (デフォルトは true)。そうでない場合、フィルタリングされたデータを無視して成功を返します。 +- 導入バージョン: - + +##### `mv_refresh_try_lock_timeout_ms` + +- デフォルト: 30000 +- タイプ: Int +- 単位: ミリ秒 +- 変更可能: はい +- 説明: マテリアライズドビュー更新がその基底テーブル/マテリアライズドビューの DB ロックを試みるデフォルトの try lock タイムアウト。 +- 導入バージョン: v3.3.0 + +##### `oauth2_auth_server_url` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: 認証 URL。OAuth 2.0 認証プロセスを開始するためにユーザーのブラウザがリダイレクトされる URL。 +- 導入バージョン: v3.5.0 + +##### `oauth2_client_id` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: StarRocks クライアントの公開識別子。 +- 導入バージョン: v3.5.0 + +##### `oauth2_client_secret` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: 認可サーバーで StarRocks クライアントを認証するために使用されるシークレット。 +- 導入バージョン: v3.5.0 + +##### `oauth2_jwks_url` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: JSON Web Key Set (JWKS) サービスへの URL、または `conf` ディレクトリ下のローカルファイルへのパス。 +- 導入バージョン: v3.5.0 + +##### `oauth2_principal_field` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: JWT の subject (`sub`) を示すフィールドを識別するために使用される文字列。デフォルト値は `sub` です。このフィールドの値は、StarRocks にログインするためのユーザー名と同一である必要があります。 +- 導入バージョン: v3.5.0 + +##### `oauth2_redirect_url` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: OAuth 2.0 認証が成功した後にユーザーのブラウザがリダイレクトされる URL。認証コードはこの URL に送信されます。ほとんどの場合、`http://:/api/oauth2` として構成する必要があります。 +- 導入バージョン: v3.5.0 + +##### `oauth2_required_audience` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: JWT の audience (`aud`) を識別するために使用される文字列のリスト。JWT は、リスト内の値のいずれかが JWT audience と一致する場合にのみ有効と見なされます。 +- 導入バージョン: v3.5.0 + +##### `oauth2_required_issuer` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: JWT の issuer (`iss`) を識別するために使用される文字列のリスト。JWT は、リスト内の値のいずれかが JWT issuer と一致する場合にのみ有効と見なされます。 +- 導入バージョン: v3.5.0 + +##### `oauth2_token_server_url` + +- デフォルト: 空文字列 +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: StarRocks がアクセストークンを取得する認可サーバーのエンドポイントの URL。 +- 導入バージョン: v3.5.0 + +##### `plugin_dir` + +- デフォルト: `System.getenv("STARROCKS_HOME")` + "/plugins" +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: プラグインインストールパッケージを格納するディレクトリ。 +- 導入バージョン: - + +##### `plugin_enable` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: FE にプラグインをインストールできるかどうか。プラグインはリーダー FE にのみインストールまたはアンインストールできます。 +- 導入バージョン: - + +##### `proc_profile_jstack_depth` + +- デフォルト: 128 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: システムが CPU およびメモリプロファイルを収集する際の最大 Java スタック深度。この値は、サンプリングされた各スタックについてキャプチャされる Java スタックフレームの数を制御します。値が大きいほどトレースの詳細と出力サイズが増加し、プロファイリングオーバーヘッドが増加する可能性があります。値が小さいほど詳細が削減されます。この設定は、CPU プロファイリングとメモリプロファイリングの両方でプロファイラーが開始されるときに使用されるため、診断のニーズとパフォーマンスへの影響のバランスをとるために調整してください。 +- 導入バージョン: - + +##### `proc_profile_mem_enable` + +- デフォルト: true +- タイプ: Boolean +- 単位: - +- 変更可能: はい +- 説明: プロセスメモリ割り当てプロファイルの収集を有効にするかどうか。この項目が `true` に設定されている場合、システムは `sys_log_dir/proc_profile` の下に `mem-profile-.html` という名前の HTML プロファイルを生成し、`proc_profile_collect_time_s` 秒間サンプリングしながらスリープし、Java スタックの深さには `proc_profile_jstack_depth` を使用します。生成されたファイルは圧縮され、`proc_profile_file_retained_days` および `proc_profile_file_retained_size_bytes` に従って削除されます。ネイティブ抽出パスは、`/tmp` の noexec の問題を避けるために `STARROCKS_HOME_DIR` を使用します。この項目は、メモリ割り当てのホットスポットのトラブルシューティングを目的としています。有効にすると、CPU、I/O、ディスク使用量が増加し、大きなファイルが生成される可能性があります。 +- 導入バージョン: v3.2.12 + +##### `query_detail_explain_level` + +- デフォルト: COSTS +- タイプ: String +- 単位: - +- 変更可能: true +- 説明: EXPLAIN ステートメントによって返されるクエリプランの詳細レベル。有効な値: COSTS, NORMAL, VERBOSE。 +- 導入バージョン: v3.2.12, v3.3.5 + +##### `replication_interval_ms` + +- デフォルト: 100 +- タイプ: Int +- 単位: - +- 変更可能: いいえ +- 説明: レプリケーションタスクがスケジュールされる最小時間間隔。 +- 導入バージョン: v3.3.5 + +##### `replication_max_parallel_data_size_mb` + +- デフォルト: 1048576 +- タイプ: Int +- 単位: MB +- 変更可能: はい +- 説明: 同時同期に許可されるデータの最大サイズ。 +- 導入バージョン: v3.3.5 + +##### `replication_max_parallel_replica_count` + +- デフォルト: 10240 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: 同時同期に許可されるタブレットレプリカの最大数。 +- 導入バージョン: v3.3.5 + +##### `replication_max_parallel_table_count` + +- デフォルト: 100 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: 許可される同時データ同期タスクの最大数。StarRocks はテーブルごとに 1 つの同期タスクを作成します。 +- 導入バージョン: v3.3.5 + +##### `replication_transaction_timeout_sec` + +- デフォルト: 86400 +- タイプ: Int +- 単位: 秒 +- 変更可能: はい +- 説明: 同期タスクのタイムアウト期間。 +- 導入バージョン: v3.3.5 + +##### `skip_whole_phase_lock_mv_limit` + +- デフォルト: 5 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: StarRocks が関連するマテリアライズドビューを持つテーブルに対して「非ロック」最適化をいつ適用するかを制御します。この項目が 0 未満に設定されている場合、システムは常に非ロック最適化を適用し、クエリのために関連するマテリアライズドビューをコピーしません (FE メモリ使用量とメタデータコピー/ロック競合は削減されますが、メタデータ並行性問題のリスクが増加する可能性があります)。0 に設定されている場合、非ロック最適化は無効になります (システムは常に安全なコピーアンドロックパスを使用します)。0 より大きい値に設定されている場合、非ロック最適化は、関連するマテリアライズドビューの数が構成されたしきい値以下であるテーブルにのみ適用されます。さらに、値が 0 以上の場合、プランナーはクエリ OLAP テーブルをオプティマイザコンテキストに記録して、マテリアライズドビュー関連の書き換えパスを有効にします。0 未満の場合、このステップはスキップされます。 +- 導入バージョン: v3.2.1 + +##### `small_file_dir` + +- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/small_files" +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: 小さなファイルのルートディレクトリ。 +- 導入バージョン: - + +##### `task_runs_max_history_number` + +- デフォルト: 10000 +- タイプ: Int +- 単位: - +- 変更可能: はい +- 説明: メモリに保持され、アーカイブされたタスク実行履歴をクエリする際のデフォルトの LIMIT として使用されるタスク実行レコードの最大数。`enable_task_history_archive` が false の場合、この値はインメモリ履歴を制限します。強制 GC は古いエントリを削除し、最新の `task_runs_max_history_number` のみが残ります。アーカイブ履歴がクエリされた場合 (明示的な LIMIT が提供されない場合)、`TaskRunHistoryTable.lookup` は、この値が 0 より大きい場合に `"ORDER BY create_time DESC LIMIT "` を使用します。注: これを 0 に設定すると、クエリ側の LIMIT が無効になります (上限なし) が、インメモリ履歴はゼロに切り捨てられます (アーカイブが有効でない限り)。 +- 導入バージョン: v3.2.0 + +##### `tmp_dir` + +- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/temp_dir" +- タイプ: String +- 単位: - +- 変更可能: いいえ +- 説明: バックアップや復元手順中に生成されるファイルなど、一時ファイルを格納するディレクトリ。これらの手順が完了すると、生成された一時ファイルは削除されます。 +- 導入バージョン: - + + From 1c9cdfd6cbc340421fda9cf5172000d23964bec2 Mon Sep 17 00:00:00 2001 From: DanRoscigno Date: Tue, 24 Feb 2026 13:30:06 -0500 Subject: [PATCH 3/4] retrigger Signed-off-by: DanRoscigno --- .../management/FE_configuration.md | 4380 ----------------- 1 file changed, 4380 deletions(-) delete mode 100644 docs/ja/administration/management/FE_configuration.md diff --git a/docs/ja/administration/management/FE_configuration.md b/docs/ja/administration/management/FE_configuration.md deleted file mode 100644 index 8ffd4be..0000000 --- a/docs/ja/administration/management/FE_configuration.md +++ /dev/null @@ -1,4380 +0,0 @@ ---- -displayed_sidebar: docs ---- - -import FEConfigMethod from '../../_assets/commonMarkdown/FE_config_method.mdx' - -import AdminSetFrontendNote from '../../_assets/commonMarkdown/FE_config_note.mdx' - -import StaticFEConfigNote from '../../_assets/commonMarkdown/StaticFE_config_note.mdx' - -import EditionSpecificFEItem from '../../_assets/commonMarkdown/Edition_Specific_FE_Item.mdx' - -# FE 設定 - - - -## FE 設定項目を表示 - -FE の起動後、MySQL クライアントで ADMIN SHOW FRONTEND CONFIG コマンドを実行して、パラメーター設定を確認できます。特定のパラメーターの設定をクエリしたい場合は、次のコマンドを実行します。 - -```SQL -ADMIN SHOW FRONTEND CONFIG [LIKE "pattern"]; -``` - -返されるフィールドの詳細な説明については、[`ADMIN SHOW CONFIG`](../../sql-reference/sql-statements/cluster-management/config_vars/ADMIN_SHOW_CONFIG.md) を参照してください。 - -:::note -クラスター管理関連のコマンドを実行するには、管理者権限が必要です。 -::: - -## FE パラメーターの設定 - -### FE 動的パラメーターの設定 - -[`ADMIN SET FRONTEND CONFIG`](../../sql-reference/sql-statements/cluster-management/config_vars/ADMIN_SET_CONFIG.md) を使用して、FE 動的パラメーターの設定を構成または変更できます。 - -```SQL -ADMIN SET FRONTEND CONFIG ("key" = "value"); -``` - - - -### FE 静的パラメーターの設定 - - - -## FE パラメーターについて理解する - -### ロギング - -##### `audit_log_delete_age` - -- デフォルト: 30d -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: 監査ログファイルの保持期間。デフォルト値 `30d` は、各監査ログファイルが 30 日間保持できることを指定します。StarRocks は各監査ログファイルをチェックし、30 日以上前に生成されたファイルを削除します。 -- 導入バージョン: - - -##### `audit_log_dir` - -- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/log" -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: 監査ログファイルが保存されるディレクトリ。 -- 導入バージョン: - - -##### `audit_log_enable_compress` - -- デフォルト: false -- タイプ: Boolean -- 単位: N/A -- 変更可能: いいえ -- 説明: true の場合、生成された Log4j2 設定は、ローテーションされた監査ログファイル名 (fe.audit.log.*) に ".gz" 接尾辞を追加し、Log4j2 がロールオーバー時に圧縮された (.gz) アーカイブ監査ログファイルを生成するようにします。この設定は、FE 起動時に Log4jConfig.initLogging で読み込まれ、監査ログの RollingFile アペンダーに適用されます。アクティブな監査ログには影響せず、ローテーション/アーカイブされたファイルにのみ影響します。値は起動時に初期化されるため、変更を反映するには FE の再起動が必要です。監査ログのローテーション設定 (`audit_log_dir`、`audit_log_roll_interval`、`audit_roll_maxsize`、`audit_log_roll_num`) と組み合わせて使用します。 -- 導入バージョン: 3.2.12 - -##### `audit_log_json_format` - -- デフォルト: false -- タイプ: Boolean -- 単位: N/A -- 変更可能: はい -- 説明: true の場合、FE 監査イベントは、デフォルトのパイプ区切り "key=value" 文字列の代わりに、構造化された JSON (Jackson ObjectMapper が注釈付き AuditEvent フィールドの Map をシリアル化) として出力されます。この設定は、AuditLogBuilder が処理するすべての組み込み監査シンクに影響します。接続監査、クエリ監査、大規模クエリ監査 (イベントが条件を満たす場合、大規模クエリしきい値フィールドが JSON に追加されます)、および低速監査出力です。大規模クエリしきい値および "features" フィールドに注釈が付けられたフィールドは特別に扱われます (通常の監査エントリから除外され、適用される場合、大規模クエリまたは機能ログに含まれます)。ログコレクターまたは SIEM のためにログを機械解析可能にするには、これを有効にします。ログ形式が変更され、従来のパイプ区切り形式を期待する既存のパーサーの更新が必要になる場合があることに注意してください。 -- 導入バージョン: 3.2.7 - -##### `audit_log_modules` - -- デフォルト: `slow_query`, query -- タイプ: String[] -- 単位: - -- 変更可能: いいえ -- 説明: StarRocks が監査ログエントリを生成するモジュール。デフォルトでは、StarRocks は `slow_query` モジュールと `query` モジュールの監査ログを生成します。`connection` モジュールは v3.0 からサポートされています。モジュール名をコンマ (,) とスペースで区切ります。 -- 導入バージョン: - - -##### `audit_log_roll_interval` - -- デフォルト: DAY -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: StarRocks が監査ログエントリをローテーションする時間間隔。有効な値: `DAY` と `HOUR`。 - - このパラメーターが `DAY` に設定されている場合、監査ログファイル名に `yyyyMMdd` 形式のサフィックスが追加されます。 - - このパラメーターが `HOUR` に設定されている場合、監査ログファイル名に `yyyyMMddHH` 形式のサフィックスが追加されます。 -- 導入バージョン: - - -##### `audit_log_roll_num` - -- デフォルト: 90 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: `audit_log_roll_interval` パラメーターで指定された保持期間内に保持できる監査ログファイルの最大数。 -- 導入バージョン: - - -##### `bdbje_log_level` - -- デフォルト: INFO -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: StarRocks で Berkeley DB Java Edition (BDB JE) が使用するロギングレベルを制御します。BDB 環境の初期化中に、BDBEnvironment.initConfigs() はこの値を `com.sleepycat.je` パッケージの Java ロガーと BDB JE 環境ファイルロギングレベル (`EnvironmentConfig.FILE_LOGGING_LEVEL`) に適用します。SEVERE、WARNING、INFO、CONFIG、FINE、FINER、FINEST、ALL、OFF などの標準的な java.util.logging.Level 名を受け入れます。ALL に設定すると、すべてのログメッセージが有効になります。冗長性を高めるとログのボリュームが増加し、ディスク I/O とパフォーマンスに影響を与える可能性があります。値は BDB 環境が初期化されるときに読み取られるため、環境の (再) 初期化後にのみ有効になります。 -- 導入バージョン: v3.2.0 - -##### `big_query_log_delete_age` - -- デフォルト: 7d -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: FE の大規模クエリログファイル (`fe.big_query.log.*`) が自動削除されるまでの保持期間を制御します。この値は、Log4j の削除ポリシーに IfLastModified の期間として渡されます。最後に変更された時刻がこの値よりも古いローテーションされた大規模クエリログは削除されます。`d` (日)、`h` (時間)、`m` (分)、`s` (秒) などのサフィックスをサポートします。例: `7d` (7 日)、`10h` (10 時間)、`60m` (60 分)、`120s` (120 秒)。この項目は `big_query_log_roll_interval` および `big_query_log_roll_num` と連携して、どのファイルを保持または削除するかを決定します。 -- 導入バージョン: v3.2.0 - -##### `big_query_log_dir` - -- デフォルト: `Config.STARROCKS_HOME_DIR + "/log"` -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: FE が大規模クエリダンプログ (`fe.big_query.log.*`) を書き込むディレクトリ。Log4j 設定は、このパスを使用して `fe.big_query.log` およびそのローテーションされたファイルの RollingFile アペンダーを作成します。ローテーションと保持は、`big_query_log_roll_interval` (時間ベースのサフィックス)、`log_roll_size_mb` (サイズトリガー)、`big_query_log_roll_num` (最大ファイル数)、および `big_query_log_delete_age` (年齢ベースの削除) によって管理されます。大規模クエリレコードは、`big_query_log_cpu_second_threshold`、`big_query_log_scan_rows_threshold`、または `big_query_log_scan_bytes_threshold` などのユーザー定義のしきい値を超えるクエリに対してログに記録されます。どのモジュールがこのファイルにログを記録するかを制御するには、`big_query_log_modules` を使用します。 -- 導入バージョン: v3.2.0 - -##### `big_query_log_modules` - -- デフォルト: `{"query"}` -- タイプ: String[] -- 単位: - -- 変更可能: いいえ -- 説明: モジュールごとの大規模クエリロギングを有効にするモジュール名サフィックスのリスト。典型的な値は論理コンポーネント名です。たとえば、デフォルトの `query` は `big_query.query` を生成します。 -- 導入バージョン: v3.2.0 - -##### `big_query_log_roll_interval` - -- デフォルト: `"DAY"` -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: `big_query` ログアペンダーのローリングファイル名の日付部分を構築するために使用される時間間隔を指定します。有効な値 (大文字と小文字を区別しない) は `DAY` (デフォルト) と `HOUR` です。`DAY` は日次パターン (`"%d{yyyyMMdd}"`) を生成し、`HOUR` は時間次パターン (`"%d{yyyyMMddHH}"`) を生成します。この値は、サイズベースのロールオーバー (`big_query_roll_maxsize`) とインデックスベースのロールオーバー (`big_query_log_roll_num`) と組み合わされて、RollingFile の filePattern を形成します。無効な値はログ設定の生成を失敗させ (IOException)、ログの初期化または再設定を妨げる可能性があります。`big_query_log_dir`、`big_query_roll_maxsize`、`big_query_log_roll_num`、および `big_query_log_delete_age` と組み合わせて使用します。 -- 導入バージョン: v3.2.0 - -##### `big_query_log_roll_num` - -- デフォルト: 10 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: `big_query_log_roll_interval` ごとに保持するローテーションされた FE 大規模クエリログファイルの最大数。この値は、`fe.big_query.log` の RollingFile アペンダーの DefaultRolloverStrategy `max` 属性にバインドされます。ログが (時間または `log_roll_size_mb` によって) ロールする場合、StarRocks は最大 `big_query_log_roll_num` 個のインデックス付きファイル (filePattern は時間サフィックスとインデックスを使用) を保持します。この数よりも古いファイルはロールオーバーによって削除される可能性があり、`big_query_log_delete_age` はさらに最終変更日時に基づいてファイルを削除できます。 -- 導入バージョン: v3.2.0 - -##### `dump_log_delete_age` - -- デフォルト: 7d -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: ダンプログファイルの保持期間。デフォルト値 `7d` は、各ダンプログファイルが 7 日間保持できることを指定します。StarRocks は各ダンプログファイルをチェックし、7 日以上前に生成されたファイルを削除します。 -- 導入バージョン: - - -##### `dump_log_dir` - -- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/log" -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: ダンプログファイルが保存されるディレクトリ。 -- 導入バージョン: - - -##### `dump_log_modules` - -- デフォルト: query -- タイプ: String[] -- 単位: - -- 変更可能: いいえ -- 説明: StarRocks がダンプログエントリを生成するモジュール。デフォルトでは、StarRocks はクエリモジュールのダンプログを生成します。モジュール名をコンマ (,) とスペースで区切ります。 -- 導入バージョン: - - -##### `dump_log_roll_interval` - -- デフォルト: DAY -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: StarRocks がダンプログエントリをローテーションする時間間隔。有効な値: `DAY` と `HOUR`。 - - このパラメーターが `DAY` に設定されている場合、ダンプログファイル名に `yyyyMMdd` 形式のサフィックスが追加されます。 - - このパラメーターが `HOUR` に設定されている場合、ダンプログファイル名に `yyyyMMddHH` 形式のサフィックスが追加されます。 -- 導入バージョン: - - -##### `dump_log_roll_num` - -- デフォルト: 10 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: `dump_log_roll_interval` パラメーターで指定された保持期間内に保持できるダンプログファイルの最大数。 -- 導入バージョン: - - -##### `edit_log_write_slow_log_threshold_ms` - -- デフォルト: 2000 -- タイプ: Int -- 単位: ミリ秒 -- 変更可能: はい -- 説明: JournalWriter が低速な編集ログバッチ書き込みを検出してログに記録するために使用するしきい値 (ミリ秒単位)。バッチコミット後、バッチ期間がこの値を超えると、JournalWriter はバッチサイズ、期間、現在のジャーナルキューサイズを含む WARN を出力します (約 2 秒に 1 回にレート制限されます)。この設定は、FE リーダーでの潜在的な I/O またはレプリケーションの遅延に対するロギング/アラートのみを制御します。コミットまたはロールの動作は変更しません (`edit_log_roll_num` およびコミット関連の設定を参照)。メトリックの更新は、このしきい値に関係なく発生します。 -- 導入バージョン: v3.2.3 - -##### `enable_audit_sql` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: いいえ -- 説明: この項目が `true` に設定されている場合、FE 監査サブシステムは、ConnectProcessor によって処理されたステートメントの SQL テキストを FE 監査ログ (`fe.audit.log`) に記録します。保存されるステートメントは、他の制御を尊重します。暗号化されたステートメントは編集され (`AuditEncryptionChecker`)、`enable_sql_desensitize_in_log` が設定されている場合、機密性の高い資格情報は編集または非機密化される場合があります。ダイジェスト記録は `enable_sql_digest` によって制御されます。`false` に設定されている場合、ConnectProcessor は監査イベントのステートメントテキストを "?" に置き換えます。他の監査フィールド (ユーザー、ホスト、期間、ステータス、`qe_slow_log_ms` による低速クエリ検出、およびメトリック) は引き続き記録されます。SQL 監査を有効にすると、フォレンジックとトラブルシューティングの可視性が向上しますが、機密性の高い SQL コンテンツが公開され、ログのボリュームと I/O が増加する可能性があります。無効にすると、監査ログでの完全なステートメントの可視性を失う代わりにプライバシーが向上します。 -- 導入バージョン: - - -##### `enable_profile_log` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: いいえ -- 説明: プロファイルロギングを有効にするかどうか。この機能が有効な場合、FE はクエリごとのプロファイルログ (`ProfileManager` によって生成されるシリアル化された `queryDetail` JSON) をプロファイルログシンクに書き込みます。このロギングは `enable_collect_query_detail_info` も有効な場合にのみ実行されます。`enable_profile_log_compress` が有効な場合、JSON はロギング前に gzip 圧縮される場合があります。プロファイルログファイルは `profile_log_dir`、`profile_log_roll_num`、`profile_log_roll_interval` によって管理され、`profile_log_delete_age` ( `7d`、`10h`、`60m`、`120s` のような形式をサポート) に従ってローテーション/削除されます。この機能を無効にすると、プロファイルログの書き込みが停止します (ディスク I/O、圧縮 CPU、ストレージの使用量が削減されます)。 -- 導入バージョン: v3.2.5 - -##### `enable_qe_slow_log` - -- デフォルト: true -- タイプ: Boolean -- 単位: N/A -- 変更可能: はい -- 説明: 有効にすると、FE 組み込み監査プラグイン (AuditLogBuilder) は、測定された実行時間 ("Time" フィールド) が `qe_slow_log_ms` で構成されたしきい値を超えるクエリイベントを低速クエリ監査ログ (AuditLog.getSlowAudit) に書き込みます。無効にすると、これらの低速クエリエントリは抑制されます (通常のクエリおよび接続監査ログは影響を受けません)。低速監査エントリは、グローバルな `audit_log_json_format` 設定 (JSON vs. プレーン文字列) に従います。このフラグを使用して、通常の監査ロギングとは独立して低速クエリ監査の生成量を制御します。これをオフにすると、`qe_slow_log_ms` が低い場合や、ワークロードが多数の長時間実行クエリを生成する場合に、ログ I/O を削減できます。 -- 導入バージョン: 3.2.11 - -##### `enable_sql_desensitize_in_log` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: いいえ -- 説明: この項目が `true` に設定されている場合、システムはログおよびクエリ詳細レコードに書き込まれる前に、機密性の高い SQL コンテンツを置き換えたり隠したりします。この設定を尊重するコードパスには、ConnectProcessor.formatStmt (監査ログ)、StmtExecutor.addRunningQueryDetail (クエリ詳細)、および SimpleExecutor.formatSQL (内部エグゼキュータログ) が含まれます。この機能が有効になっている場合、無効な SQL は固定された非機密化メッセージに置き換えられることがあり、資格情報 (ユーザー/パスワード) は隠され、SQL フォーマッターはサニタイズされた表現を生成する必要があります (ダイジェストスタイルの出力も有効にできます)。これにより、監査/内部ログでの機密リテラルや資格情報の漏洩が減りますが、ログやクエリ詳細に元の完全な SQL テキストが含まれなくなることになります (これは再生やデバッグに影響を与える可能性があります)。 -- 導入バージョン: - - -##### `internal_log_delete_age` - -- デフォルト: 7d -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: FE 内部ログファイル (`internal_log_dir` に書き込まれる) の保持期間を指定します。値は期間文字列です。サポートされるサフィックス: `d` (日)、`h` (時間)、`m` (分)、`s` (秒)。例: `7d` (7 日)、`10h` (10 時間)、`60m` (60 分)、`120s` (120 秒)。この項目は、RollingFile Delete ポリシーで使用される `` 述語として log4j 設定に代入されます。最終変更時刻がこの期間よりも前のファイルは、ログロールオーバー中に削除されます。ディスク領域をより早く解放するにはこの値を増やし、内部マテリアライズドビューまたは統計ログをより長く保持するにはこの値を減らします。 -- 導入バージョン: v3.2.4 - -##### `internal_log_dir` - -- デフォルト: `Config.STARROCKS_HOME_DIR` + "/log" -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: FE ロギングサブシステムが内部ログ (`fe.internal.log`) を保存するために使用するディレクトリ。この設定は Log4j 設定に代入され、InternalFile アペンダーが内部/マテリアライズドビュー/統計ログを書き込む場所、および `internal.` の下のモジュールごとのロガーがファイルを配置する場所を決定します。ディレクトリが存在し、書き込み可能であり、十分なディスク領域があることを確認してください。このディレクトリ内のファイルのログローテーションと保持は、`log_roll_size_mb`、`internal_log_roll_num`、`internal_log_delete_age`、および `internal_log_roll_interval` によって制御されます。`sys_log_to_console` が有効な場合、内部ログはこのディレクトリではなくコンソールに書き込まれる場合があります。 -- 導入バージョン: v3.2.4 - -##### `internal_log_json_format` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: この項目が `true` に設定されている場合、内部統計/監査エントリはコンパクトな JSON オブジェクトとして統計監査ロガーに書き込まれます。JSON には、"executeType" (InternalType: QUERY または DML)、"queryId"、"sql"、"time" (経過ミリ秒) のキーが含まれます。`false` に設定されている場合、同じ情報は 1 行のフォーマット済みテキストとしてログに記録されます ("statistic execute: ... | QueryId: [...] | SQL: ...")。JSON を有効にすると、機械解析とログプロセッサーとの統合が向上しますが、生の SQL テキストがログに含まれるため、機密情報が公開され、ログサイズが増加する可能性があります。 -- 導入バージョン: - - -##### `internal_log_modules` - -- デフォルト: `{"base", "statistic"}` -- タイプ: String[] -- 単位: - -- 変更可能: いいえ -- 説明: 専用の内部ロギングを受け取るモジュール識別子のリスト。各エントリ X について、Log4j はレベル INFO で additivity="false" の `internal.` という名前のロガーを作成します。これらのロガーは、内部アペンダー (`fe.internal.log` に書き込まれる) または `sys_log_to_console` が有効な場合はコンソールにルーティングされます。必要に応じて短い名前またはパッケージフラグメントを使用してください。正確なロガー名は `internal.` + 構成された文字列になります。内部ログファイルのローテーションと保持は、`internal_log_dir`、`internal_log_roll_num`、`internal_log_delete_age`、`internal_log_roll_interval`、および `log_roll_size_mb` に従います。モジュールを追加すると、その実行時メッセージが内部ロガーストリームに分離され、デバッグと監査が容易になります。 -- 導入バージョン: v3.2.4 - -##### `internal_log_roll_interval` - -- デフォルト: DAY -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: FE 内部ログアペンダーの時間ベースのロール間隔を制御します。受け入れられる値 (大文字と小文字を区別しない) は `HOUR` と `DAY` です。`HOUR` は時間単位のファイルパターン (`"%d{yyyyMMddHH}"`) を生成し、`DAY` は日単位のファイルパターン (`"%d{yyyyMMdd}"`) を生成します。これらは RollingFile TimeBasedTriggeringPolicy によってローテーションされた `fe.internal.log` ファイルの名前を付けるために使用されます。無効な値は初期化を失敗させます (アクティブな Log4j 設定の構築時に IOException がスローされます)。ロール動作は、`internal_log_dir`、`internal_roll_maxsize`、`internal_log_roll_num`、および `internal_log_delete_age` などの関連設定にも依存します。 -- 導入バージョン: v3.2.4 - -##### `internal_log_roll_num` - -- デフォルト: 90 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: 内部アペンダー (`fe.internal.log`) に対して保持する、ローテーションされた内部 FE ログファイルの最大数。この値は Log4j DefaultRolloverStrategy の `max` 属性として使用されます。ロールオーバーが発生すると、StarRocks は最大 `internal_log_roll_num` 個のアーカイブファイルを保持し、古いファイルを削除します (これも `internal_log_delete_age` によって管理されます)。値を小さくするとディスク使用量が削減されますが、ログ履歴が短くなります。値を大きくすると、より多くの履歴内部ログが保持されます。この項目は `internal_log_dir`、`internal_log_roll_interval`、および `internal_roll_maxsize` と連携して機能します。 -- 導入バージョン: v3.2.4 - -##### `log_cleaner_audit_log_min_retention_days` - -- デフォルト: 3 -- タイプ: Int -- 単位: 日 -- 変更可能: はい -- 説明: 監査ログファイルの最小保持日数。この日数よりも新しい監査ログファイルは、ディスク使用量が多い場合でも削除されません。これにより、監査ログがコンプライアンスおよびトラブルシューティングの目的で保持されることが保証されます。 -- 導入バージョン: - - -##### `log_cleaner_check_interval_second` - -- デフォルト: 300 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: ディスク使用量をチェックし、ログをクリーンアップする間隔 (秒単位)。クリーナーは、各ログディレクトリのディスク使用量を定期的にチェックし、必要に応じてクリーンアップをトリガーします。デフォルトは 300 秒 (5 分) です。 -- 導入バージョン: - - -##### `log_cleaner_disk_usage_target` - -- デフォルト: 60 -- タイプ: Int -- 単位: パーセンテージ -- 変更可能: はい -- 説明: ログクリーンアップ後の目標ディスク使用量 (パーセンテージ)。ログクリーンアップは、ディスク使用量がこのしきい値を下回るまで続行されます。クリーナーは、目標に到達するまで最も古いログファイルを 1 つずつ削除します。 -- 導入バージョン: - - -##### `log_cleaner_disk_usage_threshold` - -- デフォルト: 80 -- タイプ: Int -- 単位: パーセンテージ -- 変更可能: はい -- 説明: ログクリーンアップをトリガーするディスク使用量しきい値 (パーセンテージ)。ディスク使用量がこのしきい値を超えると、ログクリーンアップが開始されます。クリーナーは、構成された各ログディレクトリを独立してチェックし、このしきい値を超えるディレクトリを処理します。 -- 導入バージョン: - - -##### `log_cleaner_disk_util_based_enable` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: ディスク使用量に基づいた自動ログクリーンアップを有効にします。有効にすると、ディスク使用量がしきい値を超えたときにログがクリーンアップされます。ログクリーナーは FE ノードでバックグラウンドデーモンとして実行され、ログファイルの蓄積によるディスク領域の枯渇を防ぐのに役立ちます。 -- 導入バージョン: - - -##### `log_plan_cancelled_by_crash_be` - -- デフォルト: true -- タイプ: boolean -- 単位: - -- 変更可能: はい -- 説明: BE クラッシュまたは RPC 例外によりクエリがキャンセルされた場合に、クエリ実行プランのロギングを有効にするかどうか。この機能が有効な場合、StarRocks は、BE クラッシュまたは `RpcException` によりクエリがキャンセルされた場合に、クエリ実行プラン (`TExplainLevel.COSTS` レベルで) を WARN エントリとしてログに記録します。ログエントリには QueryId、SQL、および COSTS プランが含まれます。ExecuteExceptionHandler パスでは、例外スタックトレースもログに記録されます。`enable_collect_query_detail_info` が有効な場合 (この場合、プランはクエリ詳細に保存されます) はロギングはスキップされます。コードパスでは、クエリ詳細が null であることを確認することでチェックが実行されます。ExecuteExceptionHandler では、プランは最初の再試行時 (`retryTime == 0`) にのみログに記録されることに注意してください。これを有効にすると、完全な COSTS プランが大きくなる可能性があるため、ログのボリュームが増加する可能性があります。 -- 導入バージョン: v3.2.0 - -##### `log_register_and_unregister_query_id` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: FE が QeProcessorImpl からのクエリ登録および登録解除メッセージ (例: `"register query id = {}"` および `"deregister query id = {}"`) をログに記録することを許可するかどうか。ログは、クエリに null 以外の ConnectContext があり、かつコマンドが `COM_STMT_EXECUTE` でないか、またはセッション変数 `isAuditExecuteStmt()` が true の場合にのみ出力されます。これらのメッセージはすべてのクエリライフサイクルイベントに対して書き込まれるため、この機能を有効にすると、ログのボリュームが大きくなり、高並行環境ではスループットのボトルネックになる可能性があります。デバッグまたは監査のために有効にし、ロギングオーバーヘッドを削減しパフォーマンスを向上させるために無効にしてください。 -- 導入バージョン: v3.3.0, v3.4.0, v3.5.0 - -##### `log_roll_size_mb` - -- デフォルト: 1024 -- タイプ: Int -- 単位: MB -- 変更可能: いいえ -- 説明: システムログファイルまたは監査ログファイルの最大サイズ。 -- 導入バージョン: - - -##### `proc_profile_file_retained_days` - -- デフォルト: 1 -- タイプ: Int -- 単位: 日 -- 変更可能: はい -- 説明: `sys_log_dir/proc_profile` の下に生成されるプロセスプロファイリングファイル (CPU およびメモリ) を保持する日数。ProcProfileCollector は、現在の時刻から `proc_profile_file_retained_days` 日を引いたカットオフを計算し (yyyyMMdd-HHmmss 形式)、タイムスタンプ部分がそのカットオフよりも辞書順で早いプロファイルファイルを削除します (つまり、`timePart.compareTo(timeToDelete) < 0`)。ファイルの削除は、`proc_profile_file_retained_size_bytes` によって制御されるサイズベースのカットオフも尊重します。プロファイルファイルは `cpu-profile-` および `mem-profile-` のプレフィックスを使用し、収集後に圧縮されます。 -- 導入バージョン: v3.2.12 - -##### `proc_profile_file_retained_size_bytes` - -- デフォルト: 2L * 1024 * 1024 * 1024 (2147483648) -- タイプ: Long -- 単位: バイト -- 変更可能: はい -- 説明: プロファイルディレクトリの下に保持する、収集された CPU およびメモリプロファイルファイル (プレフィックス `cpu-profile-` および `mem-profile-` の付いたファイル) の合計バイト数の最大値。有効なプロファイルファイルの合計が `proc_profile_file_retained_size_bytes` を超えると、コレクターは残りの合計サイズが `proc_profile_file_retained_size_bytes` 以下になるまで最も古いプロファイルファイルを削除します。`proc_profile_file_retained_days` よりも古いファイルもサイズに関係なく削除されます。この設定はプロファイルアーカイブのディスク使用量を制御し、`proc_profile_file_retained_days` と相互作用して削除順序と保持を決定します。 -- 導入バージョン: v3.2.12 - -##### `profile_log_delete_age` - -- デフォルト: 1d -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: FE プロファイルログファイルが削除対象となるまでの保持期間を制御します。この値は Log4j の `` ポリシー (`Log4jConfig` 経由) に挿入され、`profile_log_roll_interval` や `profile_log_roll_num` などのローテーション設定と組み合わせて適用されます。サポートされるサフィックス: `d` (日)、`h` (時間)、`m` (分)、`s` (秒)。例: `7d` (7 日)、`10h` (10 時間)、`60m` (60 分)、`120s` (120 秒)。 -- 導入バージョン: v3.2.5 - -##### `profile_log_dir` - -- デフォルト: `Config.STARROCKS_HOME_DIR` + "/log" -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: FE プロファイルログが書き込まれるディレクトリ。Log4jConfig はこの値を使用してプロファイル関連のアペンダーを配置します (このディレクトリの下に `fe.profile.log` や `fe.features.log` などのファイルを作成します)。これらのファイルのローテーションと保持は、`profile_log_roll_size_mb`、`profile_log_roll_num`、および `profile_log_delete_age` によって管理されます。タイムスタンプサフィックス形式は `profile_log_roll_interval` (DAY または HOUR をサポート) によって制御されます。デフォルトディレクトリは `STARROCKS_HOME_DIR` の下にあるため、FE プロセスがこのディレクトリに対する書き込み権限とローテーション/削除権限を持っていることを確認してください。 -- 導入バージョン: v3.2.5 - -##### `profile_log_roll_interval` - -- デフォルト: DAY -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: プロファイルログファイル名の日付部分を生成するために使用される時間粒度を制御します。有効な値 (大文字と小文字を区別しない) は `HOUR` と `DAY` です。`HOUR` は `"%d{yyyyMMddHH}"` (時間単位のタイムバケット) のパターンを生成し、`DAY` は `"%d{yyyyMMdd}"` (日単位のタイムバケット) を生成します。この値は Log4j 設定で `profile_file_pattern` を計算する際に使用され、ロールオーバーファイル名の時間ベースのコンポーネントにのみ影響します。サイズベースのロールオーバーは引き続き `profile_log_roll_size_mb` によって制御され、保持は `profile_log_roll_num` / `profile_log_delete_age` によって制御されます。無効な値はロギング初期化中に IOException を引き起こします (エラーメッセージ: `"profile_log_roll_interval config error: "`)。高ボリュームプロファイリングではファイルごとのサイズを時間単位で制限するために `HOUR` を選択し、日単位の集計では `DAY` を選択します。 -- 導入バージョン: v3.2.5 - -##### `profile_log_roll_num` - -- デフォルト: 5 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: プロファイルロガーの Log4j DefaultRolloverStrategy によって保持される、ローテーションされたプロファイルログファイルの最大数を指定します。この値は、ロギング XML に `${profile_log_roll_num}` (例: ``) として挿入されます。ローテーションは `profile_log_roll_size_mb` または `profile_log_roll_interval` によってトリガーされます。ローテーションが発生すると、Log4j は最大でこれらのインデックス付きファイルを保持し、古いインデックスファイルは削除対象となります。ディスク上の実際の保持は、`profile_log_delete_age` および `profile_log_dir` の場所にも影響されます。値を小さくするとディスク使用量が削減されますが、保持される履歴が制限されます。値を大きくすると、より多くの履歴プロファイルログが保持されます。 -- 導入バージョン: v3.2.5 - -##### `profile_log_roll_size_mb` - -- デフォルト: 1024 -- タイプ: Int -- 単位: MB -- 変更可能: いいえ -- 説明: FE プロファイルログファイルのサイズベースのロールオーバーをトリガーするサイズしきい値 (メガバイト単位) を設定します。この値は `ProfileFile` アペンダーの Log4j RollingFile SizeBasedTriggeringPolicy によって使用されます。プロファイルログが `profile_log_roll_size_mb` を超えると、ローテーションされます。ローテーションは、`profile_log_roll_interval` に到達した場合にも時間によって発生する可能性があります。いずれかの条件がロールオーバーをトリガーします。`profile_log_roll_num` および `profile_log_delete_age` と組み合わせることで、この項目は、保持される履歴プロファイルファイルの数と、古いファイルが削除されるタイミングを制御します。ローテーションされたファイルの圧縮は `enable_profile_log_compress` によって制御されます。 -- 導入バージョン: v3.2.5 - -##### `qe_slow_log_ms` - -- デフォルト: 5000 -- タイプ: Long -- 単位: ミリ秒 -- 変更可能: はい -- 説明: クエリが遅いクエリであるかどうかを判断するために使用されるしきい値。クエリの応答時間がこのしきい値を超えると、**fe.audit.log** に遅いクエリとして記録されます。 -- 導入バージョン: - - -##### `slow_lock_log_every_ms` - -- デフォルト: 3000L -- タイプ: Long -- 単位: ミリ秒 -- 変更可能: はい -- 説明: 同じ SlowLockLogStats インスタンスに対して別の「低速ロック」警告を発行する前に待機する最小間隔 (ミリ秒)。LockUtils は、ロック待機が `slow_lock_threshold_ms` を超えた後にこの値をチェックし、最後にログに記録された低速ロックイベントから `slow_lock_log_every_ms` ミリ秒が経過するまで追加の警告を抑制します。長期的な競合中にログのボリュームを減らすにはより大きな値を、より頻繁な診断を取得するにはより小さな値を使用します。変更は、その後のチェックに対して実行時に有効になります。 -- 導入バージョン: v3.2.0 - -##### `slow_lock_print_stack` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: LockManager が `logSlowLockTrace` によって発行される低速ロック警告の JSON ペイロードに、所有スレッドの完全なスタックトレースを含めることを許可するかどうか ("stack" 配列は `LogUtil.getStackTraceToJsonArray` を `start=0` および `max=Short.MAX_VALUE` で介して入力されます)。この設定は、ロック取得が `slow_lock_threshold_ms` で構成されたしきい値を超えたときに表示されるロック所有者に関する追加のスタック情報のみを制御します。この機能を有効にすると、正確なスレッドスタックを提供することでデバッグに役立ちますが、高並行環境でスタックトレースをキャプチャしてシリアル化することによって発生するログボリュームと CPU/メモリオーバーヘッドが増加します。 -- 導入バージョン: v3.3.16, v3.4.5, v3.5.1 - -##### `slow_lock_threshold_ms` - -- デフォルト: 3000L -- タイプ: long -- 単位: ミリ秒 -- 変更可能: はい -- 説明: ロック操作または保持されているロックを「遅い」と分類するために使用されるしきい値 (ミリ秒単位)。ロックの経過待機時間または保持時間がこの値を超えると、StarRocks は (コンテキストに応じて) 診断ログを発行し、スタックトレースや待機者/所有者情報を含め、LockManager ではこの遅延後にデッドロック検出を開始します。これは LockUtils (低速ロックロギング)、QueryableReentrantReadWriteLock (低速リーダーのフィルタリング)、LockManager (デッドロック検出遅延および低速ロックトレース)、LockChecker (定期的な低速ロック検出)、およびその他の呼び出し元 (例: DiskAndTabletLoadReBalancer ロギング) によって使用されます。値を小さくすると感度が上がり、ロギング/診断のオーバーヘッドが増加します。0 または負の値を設定すると、初期の待機ベースのデッドロック検出遅延動作が無効になります。`slow_lock_log_every_ms`、`slow_lock_print_stack`、および `slow_lock_stack_trace_reserve_levels` と一緒に調整してください。 -- 導入バージョン: 3.2.0 - -##### `sys_log_delete_age` - -- デフォルト: 7d -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: システムログファイルの保持期間。デフォルト値 `7d` は、各システムログファイルが 7 日間保持できることを指定します。StarRocks は各システムログファイルをチェックし、7 日以上前に生成されたファイルを削除します。 -- 導入バージョン: - - -##### `sys_log_dir` - -- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/log" -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: システムログファイルが保存されるディレクトリ。 -- 導入バージョン: - - -##### `sys_log_enable_compress` - -- デフォルト: false -- タイプ: boolean -- 単位: - -- 変更可能: いいえ -- 説明: この項目が `true` に設定されている場合、システムはローテーションされたシステムログファイル名に ".gz" 接尾辞を追加し、Log4j が gzip 圧縮されたローテーションされた FE システムログを生成するようにします (例: fe.log.*)。この値は Log4j 設定生成時 (Log4jConfig.initLogging / generateActiveLog4jXmlConfig) に読み取られ、RollingFile の filePattern で使用される `sys_file_postfix` プロパティを制御します。この機能を有効にすると、保持されるログのディスク使用量は削減されますが、ロールオーバー中の CPU と I/O が増加し、ログファイル名が変更されるため、ログを読み取るツールやスクリプトは .gz ファイルを処理できる必要があります。監査ログは圧縮に対して別の設定 (`audit_log_enable_compress`) を使用することに注意してください。 -- 導入バージョン: v3.2.12 - -##### `sys_log_format` - -- デフォルト: "plaintext" -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: FE ログに使用される Log4j レイアウトを選択します。有効な値: `"plaintext"` (デフォルト) および `"json"`。値は大文字と小文字を区別しません。`"plaintext"` は、人間が読めるタイムスタンプ、レベル、スレッド、class.method:line、および WARN/ERROR のスタックトレースを持つ PatternLayout を構成します。`"json"` は JsonTemplateLayout を構成し、ログアグリゲーター (ELK, Splunk) に適した構造化された JSON イベント (UTC タイムスタンプ、レベル、スレッド ID/名前、ソースファイル/メソッド/行、メッセージ、例外スタックトレース) を出力します。JSON 出力は、最大文字列長の `sys_log_json_max_string_length` および `sys_log_json_profile_max_string_length` に従います。 -- 導入バージョン: v3.2.10 - -##### `sys_log_json_max_string_length` - -- デフォルト: 1048576 -- タイプ: Int -- 単位: バイト -- 変更可能: いいえ -- 説明: JSON 形式のシステムログに使用される JsonTemplateLayout の "maxStringLength" 値を設定します。`sys_log_format` が `"json"` に設定されている場合、文字列値フィールド (例: "message" および文字列化された例外スタックトレース) は、長さがこの制限を超えると切り捨てられます。この値は、生成された Log4j XML (`Log4jConfig.generateActiveLog4jXmlConfig()`) に挿入され、デフォルト、警告、監査、ダンプ、およびビッグクエリのレイアウトに適用されます。プロファイルレイアウトは別の設定 (`sys_log_json_profile_max_string_length`) を使用します。この値を小さくするとログサイズが削減されますが、有用な情報が切り捨てられる可能性があります。 -- 導入バージョン: 3.2.11 - -##### `sys_log_json_profile_max_string_length` - -- デフォルト: 104857600 (100 MB) -- タイプ: Int -- 単位: バイト -- 変更可能: いいえ -- 説明: `sys_log_format` が "json" の場合、プロファイル (および関連機能) ログアペンダーの JsonTemplateLayout の maxStringLength を設定します。JSON 形式のプロファイルログ内の文字列フィールド値は、このバイト長に切り捨てられます。文字列以外のフィールドは影響を受けません。この項目は Log4jConfig `JsonTemplateLayout maxStringLength` で適用され、`plaintext` ロギングが使用されている場合は無視されます。必要な完全なメッセージに対して十分に大きな値を維持しますが、値が大きいほどログサイズと I/O が増加することに注意してください。 -- 導入バージョン: v3.2.11 - -##### `sys_log_level` - -- デフォルト: INFO -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: システムログエントリが分類される重要度レベル。有効な値: `INFO`、`WARN`、`ERROR`、`FATAL`。 -- 導入バージョン: - - -##### `sys_log_roll_interval` - -- デフォルト: DAY -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: StarRocks がシステムログエントリをローテーションする時間間隔。有効な値: `DAY` と `HOUR`。 - - このパラメーターが `DAY` に設定されている場合、システムログファイル名に `yyyyMMdd` 形式のサフィックスが追加されます。 - - このパラメーターが `HOUR` に設定されている場合、システムログファイル名に `yyyyMMddHH` 形式のサフィックスが追加されます。 -- 導入バージョン: - - -##### `sys_log_roll_num` - -- デフォルト: 10 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: `sys_log_roll_interval` パラメーターで指定された保持期間内に保持できるシステムログファイルの最大数。 -- 導入バージョン: - - -##### `sys_log_to_console` - -- デフォルト: false (ただし、環境変数 `SYS_LOG_TO_CONSOLE` が "1" に設定されている場合を除く) -- タイプ: Boolean -- 単位: - -- 変更可能: いいえ -- 説明: この項目が `true` に設定されている場合、システムは Log4j を設定して、すべてのログをファイルベースのアペンダーではなくコンソール (ConsoleErr アペンダー) に送信します。この値は、アクティブな Log4j XML 設定を生成する際に読み取られ (ルートロガーとモジュールごとのロガーのアペンダー選択に影響します)、プロセス起動時に `SYS_LOG_TO_CONSOLE` 環境変数からキャプチャされます。実行時に変更しても効果はありません。この設定は、stdout/stderr ログ収集がログファイルの書き込みよりも優先されるコンテナ化された環境や CI 環境で一般的に使用されます。 -- 導入バージョン: v3.2.0 - -##### `sys_log_verbose_modules` - -- デフォルト: 空文字列 -- タイプ: String[] -- 単位: - -- 変更可能: いいえ -- 説明: StarRocks がシステムログを生成するモジュール。このパラメーターが `org.apache.starrocks.catalog` に設定されている場合、StarRocks はカタログモジュールに対してのみシステムログを生成します。モジュール名をコンマ (,) とスペースで区切ります。 -- 導入バージョン: - - -##### `sys_log_warn_modules` - -- デフォルト: {} -- タイプ: String[] -- 単位: - -- 変更可能: いいえ -- 説明: システムが起動時に WARN レベルのロガーとして構成し、警告アペンダー (SysWF) — `fe.warn.log` ファイルにルーティングするロガー名またはパッケージプレフィックスのリスト。エントリは、生成された Log4j 設定 (org.apache.kafka、org.apache.hudi、org.apache.hadoop.io.compress などの組み込み警告モジュールとともに) に挿入され、`` のようなロガー要素を生成します。通常のログへのノイズの多い INFO/DEBUG 出力を抑制し、警告を個別にキャプチャできるようにするために、完全修飾パッケージおよびクラスプレフィックス (例: "com.example.lib") を使用することをお勧めします。 -- 導入バージョン: v3.2.13 - -### サーバー - -##### `brpc_idle_wait_max_time` - -- デフォルト: 10000 -- タイプ: Int -- 単位: ms -- 変更可能: いいえ -- 説明: bRPC クライアントがアイドル状態で待機する最大時間。 -- 導入バージョン: - - -##### `brpc_inner_reuse_pool` - -- デフォルト: true -- タイプ: boolean -- 単位: - -- 変更可能: いいえ -- 説明: 基盤となる BRPC クライアントが、接続/チャネルに内部共有再利用プールを使用するかどうかを制御します。StarRocks は BrpcProxy で `brpc_inner_reuse_pool` を読み込み、RpcClientOptions を構築する際に使用します ( `rpcOptions.setInnerResuePool(...)` 経由)。有効 (true) の場合、RPC クライアントは内部プールを再利用して、呼び出しごとの接続作成を減らし、FE-to-BE / LakeService RPC の接続チャーン、メモリ、ファイルディスクリプタの使用量を削減します。無効 (false) の場合、クライアントはより分離されたプールを作成する可能性があります (リソース使用量が増加する代わりに、並行性の分離を向上させます)。この値を変更するには、プロセスを再起動して変更を反映する必要があります。 -- 導入バージョン: v3.3.11, v3.4.1, v3.5.0 - -##### `brpc_min_evictable_idle_time_ms` - -- デフォルト: 120000 -- タイプ: Int -- 単位: ミリ秒 -- 変更可能: いいえ -- 説明: アイドル状態の BRPC 接続が、接続プールで削除可能になる前に保持される必要のある時間 (ミリ秒)。`BrpcProxy` によって使用される RpcClientOptions に適用されます (RpcClientOptions.setMinEvictableIdleTime 経由)。アイドル接続を長く保持するにはこの値を増やし (再接続のチャーンを減らす)、未使用のソケットをより早く解放するにはこの値を減らします (リソース使用量を減らす)。接続の再利用、プールの成長、削除の動作のバランスをとるために、`brpc_connection_pool_size`、`brpc_idle_wait_max_time` とともに調整します。 -- 導入バージョン: v3.3.11, v3.4.1, v3.5.0 - -##### `brpc_reuse_addr` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: いいえ -- 説明: true の場合、StarRocks は、brpc RpcClient によって作成されたクライアントソケットのローカルアドレス再利用を許可するようにソケットオプションを設定します (RpcClientOptions.setReuseAddress 経由)。これを有効にすると、バインドの失敗が減り、ソケットが閉じられた後のローカルポートの再バインドが高速化されます。これは、高い接続チャーンまたは高速な再起動に役立ちます。false の場合、アドレス/ポートの再利用が無効になり、意図しないポート共有の可能性を減らすことができますが、一時的なバインドエラーが増加する可能性があります。このオプションは、`brpc_connection_pool_size` と `brpc_short_connection` で構成された接続動作と相互作用します。これは、クライアントソケットをどれだけ迅速に再バインドして再利用できるかに影響するためです。 -- 導入バージョン: v3.3.11, v3.4.1, v3.5.0 - -##### `cluster_name` - -- デフォルト: StarRocks Cluster -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: FE が属する StarRocks クラスターの名前。クラスター名はウェブページの `Title` に表示されます。 -- 導入バージョン: - - -##### `dns_cache_ttl_seconds` - -- デフォルト: 60 -- タイプ: Int -- 単位: 秒 -- 変更可能: いいえ -- 説明: 正常な DNS ルックアップの DNS キャッシュ TTL (Time-To-Live) (秒単位)。これは、JVM が正常な DNS ルックアップをキャッシュする期間を制御する Java セキュリティプロパティ `networkaddress.cache.ttl` を設定します。システムが常に情報をキャッシュするように `-1` に設定するか、キャッシュを無効にするために `0` に設定します。これは、IP アドレスが頻繁に変更される環境 (Kubernetes デプロイメントや動的 DNS が使用される場合など) で特に役立ちます。 -- 導入バージョン: v3.5.11, v4.0.4 - -##### `enable_http_async_handler` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: システムが HTTP リクエストを非同期で処理することを許可するかどうか。この機能が有効な場合、Netty ワーカー スレッドによって受信された HTTP リクエストは、HTTP サーバーのブロックを避けるために、サービスロジック処理のために別のスレッドプールに送信されます。無効になっている場合、Netty ワーカーがサービスロジックを処理します。 -- 導入バージョン: 4.0.0 - -##### `enable_http_validate_headers` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: いいえ -- 説明: Netty の HttpServerCodec が厳密な HTTP ヘッダー検証を実行するかどうかを制御します。この値は、HttpServer で HTTP パイプラインが初期化されるときに HttpServerCodec に渡されます (UseLocations を参照)。新しい Netty バージョンはより厳密なヘッダー規則を適用するため (https://github.com/netty/netty/pull/12760)、下位互換性のためにデフォルトは false です。RFC 準拠のヘッダーチェックを強制するには true に設定します。そうすると、レガシークライアントまたはプロキシからの不正な形式または非準拠のリクエストが拒否される可能性があります。変更を有効にするには HTTP サーバーの再起動が必要です。 -- 導入バージョン: v3.3.0, v3.4.0, v3.5.0 - -##### `frontend_address` - -- デフォルト: 0.0.0.0 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: FE ノードの IP アドレス。 -- 導入バージョン: - - -##### `http_async_threads_num` - -- デフォルト: 4096 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: 非同期 HTTP リクエスト処理用のスレッドプールのサイズ。エイリアスは `max_http_sql_service_task_threads_num` です。 -- 導入バージョン: 4.0.0 - -##### `http_backlog_num` - -- デフォルト: 1024 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: FE ノードの HTTP サーバーが保持するバックログキューの長さ。 -- 導入バージョン: - - -##### `http_max_chunk_size` - -- デフォルト: 8192 -- タイプ: Int -- 単位: バイト -- 変更可能: いいえ -- 説明: FE HTTP サーバーの Netty の HttpServerCodec によって処理される単一の HTTP チャンクの最大許容サイズ (バイト単位) を設定します。これは HttpServerCodec に 3 番目の引数として渡され、チャンク転送またはストリーミングリクエスト/レスポンス中のチャンクの長さを制限します。受信チャンクがこの値を超えると、Netty はフレームが大きすぎるエラー (例: TooLongFrameException) を発生させ、リクエストが拒否される可能性があります。正当な大規模チャンクアップロードの場合はこれを増やし、メモリ圧力を減らし、DoS 攻撃の表面積を減らすために小さく保ちます。この設定は `http_max_initial_line_length`、`http_max_header_size`、および `enable_http_validate_headers` とともに使用されます。 -- 導入バージョン: v3.2.0 - -##### `http_max_header_size` - -- デフォルト: 32768 -- タイプ: Int -- 単位: バイト -- 変更可能: いいえ -- 説明: Netty の `HttpServerCodec` によって解析される HTTP リクエストヘッダーブロックの最大許容サイズ (バイト単位)。StarRocks はこの値を `HttpServerCodec` に渡します (`Config.http_max_header_size` として)。受信リクエストのヘッダー (名前と値の組み合わせ) がこの制限を超えると、コーデックはリクエストを拒否し (デコーダー例外)、接続/リクエストは失敗します。クライアントが正当に非常に大きなヘッダー (大きなクッキーまたは多くのカスタムヘッダー) を送信する場合にのみ増やします。値が大きいほど、接続あたりのメモリ使用量が増加します。`http_max_initial_line_length` および `http_max_chunk_size` と組み合わせて調整します。変更には FE の再起動が必要です。 -- 導入バージョン: v3.2.0 - -##### `http_max_initial_line_length` - -- デフォルト: 4096 -- タイプ: Int -- 単位: バイト -- 変更可能: いいえ -- 説明: HttpServer で使用される Netty `HttpServerCodec` によって受け入れられる HTTP 初期リクエストライン (メソッド + リクエストターゲット + HTTP バージョン) の最大許容長 (バイト単位) を設定します。この値は Netty のデコーダーに渡され、この値よりも長い初期ラインを持つリクエストは拒否されます (TooLongFrameException)。非常に長いリクエスト URI をサポートする必要がある場合にのみこれを増やします。値が大きいほどメモリ使用量が増加し、不正な形式/リクエスト乱用に対する露出が増加する可能性があります。`http_max_header_size` および `http_max_chunk_size` とともに調整します。 -- 導入バージョン: v3.2.0 - -##### `http_port` - -- デフォルト: 8030 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: FE ノードの HTTP サーバーがリッスンするポート。 -- 導入バージョン: - - -##### `http_web_page_display_hardware` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: true の場合、HTTP インデックスページ (/index) に oshi ライブラリ (CPU、メモリ、プロセス、ディスク、ファイルシステム、ネットワークなど) を介して入力されたハードウェア情報セクションが含まれます。oshi は、システムユーティリティを呼び出したり、システムファイルを間接的に読み取ったりする可能性があります (たとえば、`getent passwd` などのコマンドを実行できます)。これにより、機密性の高いシステムデータが表面化する可能性があります。より厳密なセキュリティを要求する場合や、ホスト上でそれらの間接コマンドの実行を避けたい場合は、この設定を false に設定して、Web UI でのハードウェア詳細の収集と表示を無効にします。 -- 導入バージョン: v3.2.0 - -##### `http_worker_threads_num` - -- デフォルト: 0 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: HTTP リクエストを処理する HTTP サーバーのワーカー スレッドの数。負の値または 0 の場合、スレッド数は CPU コア数の 2 倍になります。 -- 導入バージョン: v2.5.18, v3.0.10, v3.1.7, v3.2.2 - -##### `max_mysql_service_task_threads_num` - -- デフォルト: 4096 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: FE ノードの MySQL サーバーがタスクを処理するために実行できるスレッドの最大数。 -- 導入バージョン: - - -##### `max_task_runs_threads_num` - -- デフォルト: 512 -- タイプ: Int -- 単位: スレッド -- 変更可能: いいえ -- 説明: タスク実行エグゼキュータースレッドプールの最大スレッド数を制御します。この値は、同時タスク実行の上限です。増やすと並列処理が向上しますが、CPU、メモリ、ネットワークの使用量も増加します。減らすとタスク実行のバックログが増え、遅延が長くなる可能性があります。この値は、予想される同時スケジュールジョブと利用可能なシステムリソースに応じて調整してください。 -- 導入バージョン: v3.2.0 - -##### `memory_tracker_enable` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: FE メモリトラッカーサブシステムを有効にします。`memory_tracker_enable` が `true` に設定されている場合、`MemoryUsageTracker` は定期的に登録されたメタデータモジュールをスキャンし、インメモリ `MemoryUsageTracker.MEMORY_USAGE` マップを更新し、合計をログに記録し、`MetricRepo` がメモリ使用量とオブジェクト数ゲージをメトリック出力に公開するようにします。サンプリング間隔を制御するには `memory_tracker_interval_seconds` を使用します。この機能を有効にすると、メモリ消費の監視とデバッグに役立ちますが、CPU と I/O のオーバーヘッド、および追加のメトリックカーディナリティが発生します。 -- 導入バージョン: v3.2.4 - -##### `memory_tracker_interval_seconds` - -- デフォルト: 60 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: FE `MemoryUsageTracker` デーモンが FE プロセスおよび登録された `MemoryTrackable` モジュールのメモリ使用量をポーリングおよび記録する間隔 (秒単位)。`memory_tracker_enable` が `true` に設定されている場合、トラッカーはこの頻度で実行され、`MEMORY_USAGE` を更新し、集約された JVM および追跡されたモジュールの使用状況をログに記録します。 -- 導入バージョン: v3.2.4 - -##### `mysql_nio_backlog_num` - -- デフォルト: 1024 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: FE ノードの MySQL サーバーが保持するバックログキューの長さ。 -- 導入バージョン: - - -##### `mysql_server_version` - -- デフォルト: 8.0.33 -- タイプ: String -- 単位: - -- 変更可能: はい -- 説明: クライアントに返される MySQL サーバーバージョン。このパラメーターを変更すると、以下の状況でバージョン情報に影響します。 - 1. `select version();` - 2. ハンドシェイクパケットバージョン - 3. グローバル変数 `version` の値 (`show variables like 'version';`) -- 導入バージョン: - - -##### `mysql_service_io_threads_num` - -- デフォルト: 4 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: FE ノードの MySQL サーバーが I/O イベントを処理するために実行できるスレッドの最大数。 -- 導入バージョン: - - -##### `mysql_service_kill_after_disconnect` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: いいえ -- 説明: MySQL TCP 接続が切断されたと検出された場合 (読み取りで EOF)、サーバーがセッションをどのように処理するかを制御します。`true` に設定されている場合、サーバーはその接続で実行中のクエリを直ちに強制終了し、即時クリーンアップを実行します。`false` の場合、サーバーは切断時に実行中のクエリを強制終了せず、保留中のリクエストタスクがない場合にのみクリーンアップを実行し、クライアントが切断された後も長時間実行されるクエリを続行できるようにします。注: TCP keep-alive を示唆する短いコメントにもかかわらず、このパラメーターは切断後の強制終了動作を具体的に管理し、孤立したクエリを終了させる必要があるか (信頼性の低い/ロードバランスされたクライアントの背後で推奨) または終了させることを許可するかによって設定する必要があります。 -- 導入バージョン: - - -##### `mysql_service_nio_enable_keep_alive` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: いいえ -- 説明: MySQL 接続の TCP Keep-Alive を有効にします。ロードバランサーの背後で長時間アイドル状態の接続に役立ちます。 -- 導入バージョン: - - -##### `net_use_ipv6_when_priority_networks_empty` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: いいえ -- 説明: `priority_networks` が指定されていない場合に、IPv6 アドレスを優先的に使用するかどうかを制御するブール値。`true` は、ノードをホストするサーバーが IPv4 と IPv6 の両方のアドレスを持ち、`priority_networks` が指定されていない場合に、システムが IPv6 アドレスを優先的に使用することを許可することを示します。 -- 導入バージョン: v3.3.0 - -##### `priority_networks` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: 複数の IP アドレスを持つサーバーの選択戦略を宣言します。このパラメーターで指定されたリストと一致する IP アドレスは最大で 1 つであることに注意してください。このパラメーターの値は、CIDR 表記でセミコロン (;) で区切られたエントリ (例: 10.10.10.0/24) で構成されるリストです。このリストのエントリと一致する IP アドレスがない場合、サーバーの利用可能な IP アドレスがランダムに選択されます。v3.3.0 以降、StarRocks は IPv6 に基づくデプロイメントをサポートします。サーバーが IPv4 と IPv6 の両方のアドレスを持ち、このパラメーターが指定されていない場合、システムはデフォルトで IPv4 アドレスを使用します。`net_use_ipv6_when_priority_networks_empty` を `true` に設定することで、この動作を変更できます。 -- 導入バージョン: - - -##### `proc_profile_cpu_enable` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: この項目が `true` に設定されている場合、バックグラウンドの `ProcProfileCollector` は `AsyncProfiler` を使用して CPU プロファイルを収集し、`sys_log_dir/proc_profile` の下に HTML レポートを書き込みます。各収集実行では、`proc_profile_collect_time_s` で構成された期間の CPU スタックを記録し、Java スタックの深さには `proc_profile_jstack_depth` を使用します。生成されたプロファイルは圧縮され、`proc_profile_file_retained_days` および `proc_profile_file_retained_size_bytes` に従って古いファイルは削除されます。`AsyncProfiler` にはネイティブライブラリ (`libasyncProfiler.so`) が必要です。`/tmp` の noexec の問題を避けるために、`one.profiler.extractPath` は `STARROCKS_HOME_DIR/bin` に設定されます。 -- 導入バージョン: v3.2.12 - -##### `qe_max_connection` - -- デフォルト: 4096 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: FE ノードにすべてのユーザーが確立できる接続の最大数。v3.1.12 および v3.2.7 以降、デフォルト値が `1024` から `4096` に変更されました。 -- 導入バージョン: - - -##### `query_port` - -- デフォルト: 9030 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: FE ノードの MySQL サーバーがリッスンするポート。 -- 導入バージョン: - - -##### `rpc_port` - -- デフォルト: 9020 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: FE ノードの Thrift サーバーがリッスンするポート。 -- 導入バージョン: - - -##### `slow_lock_stack_trace_reserve_levels` - -- デフォルト: 15 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: StarRocks が遅いロックまたは保持されているロックのロックデバッグ情報をダンプする際に、キャプチャおよび出力されるスタックトレースフレームの数を制御します。この値は、排他的ロック所有者、現在のスレッド、および最も古い/共有リーダーの JSON を生成する際に `QueryableReentrantReadWriteLock` によって `LogUtil.getStackTraceToJsonArray` に渡されます。この値を増やすと、トレースの詳細が増え、出力サイズが大きくなり、スタックキャプチャのための CPU/メモリがわずかに増加しますが、診断に役立ちます。減らすとオーバーヘッドが減少します。注: リーダーエントリは、低速ロックのみをログに記録する場合、`slow_lock_threshold_ms` によってフィルター処理できます。 -- 導入バージョン: v3.4.0, v3.5.0 - -##### `task_runs_concurrency` - -- デフォルト: 4 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: 同時に実行される TaskRun インスタンスのグローバル制限。`TaskRunScheduler` は、現在の実行数が `task_runs_concurrency` 以上の場合、新しい実行のスケジュールを停止するため、この値はスケジューラ全体で並列 TaskRun 実行を制限します。これは、`MVPCTRefreshPartitioner` によって TaskRun ごとのパーティションリフレッシュ粒度を計算するためにも使用されます。値を増やすと並列処理とリソース使用量が増加し、減らすと並列処理が減少し、パーティションリフレッシュが実行ごとに大きくなります。0 または負の値に設定しないでください (意図的にスケジューリングを無効にする場合を除く)。0 (または負の値) は、`TaskRunScheduler` による新しい TaskRun のスケジュールを実質的に防ぎます。 -- 導入バージョン: v3.2.0 - -##### `task_runs_queue_length` - -- デフォルト: 500 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: 保留中のキューに保持される保留中の TaskRun 項目の最大数を制限します。`TaskRunManager` は現在の保留中の数をチェックし、有効な保留中の TaskRun の数が `task_runs_queue_length` 以上の場合、新しい送信を拒否します。マージ/承認された TaskRun が追加される前に同じ制限が再チェックされます。メモリとスケジューリングのバックログのバランスをとるためにこの値を調整してください。大量のバースト性のワークロードでは拒否を避けるために高く設定し、メモリを制限し、保留中のバックログを減らすために低く設定します。 -- 導入バージョン: v3.2.0 - -##### `thrift_backlog_num` - -- デフォルト: 1024 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: FE ノードの Thrift サーバーが保持するバックログキューの長さ。 -- 導入バージョン: - - -##### `thrift_client_timeout_ms` - -- デフォルト: 5000 -- タイプ: Int -- 単位: ミリ秒 -- 変更可能: いいえ -- 説明: アイドル状態のクライアント接続がタイムアウトするまでの時間。 -- 導入バージョン: - - -##### `thrift_rpc_max_body_size` - -- デフォルト: -1 -- タイプ: Int -- 単位: バイト -- 変更可能: いいえ -- 説明: サーバーの Thrift プロトコルを構築する際に使用される Thrift RPC メッセージ本文の最大許容サイズ (バイト単位) を制御します (TBinaryProtocol.Factory に `ThriftServer` で渡されます)。`-1` の値は制限を無効にします (無制限)。正の値を設定すると、メッセージがこの値よりも大きい場合、Thrift レイヤーによって拒否され、メモリ使用量を制限し、サイズ超過リクエストや DoS のリスクを軽減するのに役立ちます。正当なリクエストを拒否しないように、予想されるペイロード (大規模な構造体やバッチデータ) に対して十分に大きなサイズに設定します。 -- 導入バージョン: v3.2.0 - -##### `thrift_server_max_worker_threads` - -- デフォルト: 4096 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: FE ノードの Thrift サーバーがサポートするワーカー スレッドの最大数。 -- 導入バージョン: - - -##### `thrift_server_queue_size` - -- デフォルト: 4096 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: リクエストが保留中のキューの長さ。Thrift サーバーで処理されているスレッドの数が `thrift_server_max_worker_threads` で指定された値を超えると、新しいリクエストが保留キューに追加されます。 -- 導入バージョン: - - -### メタデータとクラスター管理 - -##### `alter_max_worker_queue_size` - -- デフォルト: 4096 -- タイプ: Int -- 単位: タスク -- 変更可能: いいえ -- 説明: alter サブシステムで使用される内部ワーカー スレッド プール キューの容量を制御します。これは、`alter_max_worker_threads` とともに `AlterHandler` の `ThreadPoolManager.newDaemonCacheThreadPool` に渡されます。保留中の alter タスクの数が `alter_max_worker_queue_size` を超えると、新しい送信は拒否され、`RejectedExecutionException` がスローされる可能性があります (`AlterHandler.handleFinishAlterTask` を参照)。メモリ使用量と同時 alter タスクに対して許可するバックログの量のバランスをとるために、この値を調整します。 -- 導入バージョン: v3.2.0 - -##### `alter_max_worker_threads` - -- デフォルト: 4 -- タイプ: Int -- 単位: スレッド -- 変更可能: いいえ -- 説明: AlterHandler のスレッドプールの最大ワーカー スレッド数を設定します。AlterHandler はこの値でエグゼキューターを構築し、alter 関連のタスク (例: handleFinishAlterTask 経由での `AlterReplicaTask` の送信) を実行および完了します。この値は alter 操作の同時実行を制限します。増やすと並列処理とリソース使用量が増加し、減らすと同時 alter が制限され、ボトルネックになる可能性があります。エグゼキューターは `alter_max_worker_queue_size` とともに作成され、ハンドラースケジューリングは `alter_scheduler_interval_millisecond` を使用します。 -- 導入バージョン: v3.2.0 - -##### `automated_cluster_snapshot_interval_seconds` - -- デフォルト: 600 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: 自動クラスター スナップショット タスクがトリガーされる間隔。 -- 導入バージョン: v3.4.2 - -##### `background_refresh_metadata_interval_millis` - -- デフォルト: 600000 -- タイプ: Int -- 単位: ミリ秒 -- 変更可能: はい -- 説明: Hive メタデータキャッシュの連続する 2 つの更新間の間隔。 -- 導入バージョン: v2.5.5 - -##### `background_refresh_metadata_time_secs_since_last_access_secs` - -- デフォルト: 3600 * 24 -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: Hive メタデータキャッシュ更新タスクの有効期限。アクセスされた Hive カタログの場合、指定された時間を超えてアクセスされていない場合、StarRocks はキャッシュされたメタデータの更新を停止します。アクセスされていない Hive カタログの場合、StarRocks はキャッシュされたメタデータを更新しません。 -- 導入バージョン: v2.5.5 - -##### `bdbje_cleaner_threads` - -- デフォルト: 1 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: StarRocks ジャーナルで使用される Berkeley DB Java Edition (JE) 環境のバックグラウンドクリーナースレッドの数。この値は `BDBEnvironment.initConfigs` で環境初期化中に読み取られ、`Config.bdbje_cleaner_threads` を使用して `EnvironmentConfig.CLEANER_THREADS` に適用されます。JE ログのクリーンアップと領域の再利用の並列処理を制御します。増やすとクリーンアップが高速化される可能性がありますが、追加の CPU とフォアグラウンド操作への I/O 干渉というコストがかかります。変更は BDB 環境が (再) 初期化された場合にのみ有効になるため、新しい値を適用するにはフロントエンドの再起動が必要です。 -- 導入バージョン: v3.2.0 - -##### `bdbje_heartbeat_timeout_second` - -- デフォルト: 30 -- タイプ: Int -- 単位: 秒 -- 変更可能: いいえ -- 説明: StarRocks クラスターのリーダー、フォロワー、オブザーバー FE 間のハートビートがタイムアウトするまでの時間。 -- 導入バージョン: - - -##### `bdbje_lock_timeout_second` - -- デフォルト: 1 -- タイプ: Int -- 単位: 秒 -- 変更可能: いいえ -- 説明: BDB JE ベースの FE のロックがタイムアウトするまでの時間。 -- 導入バージョン: - - -##### `bdbje_replay_cost_percent` - -- デフォルト: 150 -- タイプ: Int -- 単位: パーセント -- 変更可能: いいえ -- 説明: BDB JE ログからトランザクションをリプレイする相対コスト (パーセンテージ) を、ネットワークリカバリを介して同じデータを取得するコストと比較して設定します。この値は基盤となる JE レプリケーションパラメーター `REPLAY_COST_PERCENT` に提供され、リプレイは通常ネットワークリカバリよりもコストがかかることを示すために通常 `>100` です。クリーンアップされたログファイルを潜在的なリプレイのために保持するかどうかを決定する際、システムはリプレイコストにログサイズを掛けたものとネットワークリカバリのコストを比較します。ネットワークリカバリの方が効率的と判断された場合、ファイルは削除されます。0 の値は、このコスト比較に基づいた保持を無効にします。`REP_STREAM_TIMEOUT` 内のレプリカ、またはアクティブなレプリケーションに必要なログファイルは常に保持されます。 -- 導入バージョン: v3.2.0 - -##### `bdbje_replica_ack_timeout_second` - -- デフォルト: 10 -- タイプ: Int -- 単位: 秒 -- 変更可能: いいえ -- 説明: リーダー FE が特定の数のフォロワー FE から ACK メッセージを待機できる最大時間 (リーダー FE からフォロワー FE にメタデータを書き込むとき)。単位: 秒。大量のメタデータが書き込まれている場合、フォロワー FE がリーダー FE に ACK メッセージを返すまでに時間がかかり、ACK タイムアウトが発生します。この状況では、メタデータ書き込みが失敗し、FE プロセスが終了します。この状況を防ぐために、このパラメーターの値を増やすことをお勧めします。 -- 導入バージョン: - - -##### `bdbje_reserved_disk_size` - -- デフォルト: 512 * 1024 * 1024 (536870912) -- タイプ: Long -- 単位: バイト -- 変更可能: いいえ -- 説明: Berkeley DB JE が「保護されていない」(削除可能) ログ/データファイルとして予約するバイト数を制限します。StarRocks はこの値を BDBEnvironment の `EnvironmentConfig.RESERVED_DISK` を介して JE に渡します。JE の組み込みのデフォルトは 0 (無制限) です。StarRocks のデフォルト (512 MiB) は、JE が保護されていないファイルに過剰なディスク領域を予約するのを防ぎながら、古いファイルを安全にクリーンアップできるようにします。ディスク容量が制約されているシステムでこの値を調整します。減らすと JE はより多くのファイルを早く解放でき、増やすと JE はより多くの予約領域を保持できます。変更を有効にするにはプロセスを再起動する必要があります。 -- 導入バージョン: v3.2.0 - -##### `bdbje_reset_election_group` - -- デフォルト: false -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: BDBJE レプリケーショングループをリセットするかどうか。このパラメーターが `TRUE` に設定されている場合、FE は BDBJE レプリケーショングループをリセットし (つまり、すべての選挙可能な FE ノードの情報を削除し)、リーダー FE として起動します。リセット後、この FE はクラスター内で唯一のメンバーになり、他の FE は `ALTER SYSTEM ADD/DROP FOLLOWER/OBSERVER 'xxx'` を使用してこのクラスターに再参加できます。この設定は、ほとんどのフォロワー FE のデータが破損しているため、リーダー FE を選出できない場合にのみ使用してください。`reset_election_group` は `metadata_failure_recovery` の代替として使用されます。 -- 導入バージョン: - - -##### `black_host_connect_failures_within_time` - -- デフォルト: 5 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: ブラックリストに登録された BE ノードに許可される接続失敗のしきい値。BE ノードが自動的に BE ブラックリストに追加された場合、StarRocks はその接続性を評価し、BE ブラックリストから削除できるかどうかを判断します。`black_host_history_sec` 内で、ブラックリストに登録された BE ノードの接続失敗回数が `black_host_connect_failures_within_time` で設定されたしきい値よりも少ない場合にのみ、BE ブラックリストから削除できます。 -- 導入バージョン: v3.3.0 - -##### `black_host_history_sec` - -- デフォルト: 2 * 60 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: BE ブラックリスト内の BE ノードの過去の接続失敗を保持する期間。BE ノードが自動的に BE ブラックリストに追加された場合、StarRocks はその接続性を評価し、BE ブラックリストから削除できるかどうかを判断します。`black_host_history_sec` 内で、ブラックリストに登録された BE ノードの接続失敗回数が `black_host_connect_failures_within_time` で設定されたしきい値よりも少ない場合にのみ、BE ブラックリストから削除できます。 -- 導入バージョン: v3.3.0 - -##### `brpc_connection_pool_size` - -- デフォルト: 16 -- タイプ: Int -- 単位: 接続 -- 変更可能: いいえ -- 説明: FE の BrpcProxy によって使用されるエンドポイントごとのプールされた BRPC 接続の最大数。この値は `setMaxTotoal` と `setMaxIdleSize` を介して RpcClientOptions に適用されるため、各リクエストはプールから接続を借りる必要があるため、同時アウトバウンド BRPC リクエストを直接制限します。高並列シナリオでは、リクエストキューイングを避けるためにこれを増やします。増やすとソケットとメモリの使用量が増加し、リモートサーバーの負荷が増加する可能性があります。調整する際は、`brpc_idle_wait_max_time`、`brpc_short_connection`、`brpc_inner_reuse_pool`、`brpc_reuse_addr`、および `brpc_min_evictable_idle_time_ms` などの関連設定を考慮してください。この値の変更はホットリロード可能ではなく、再起動が必要です。 -- 導入バージョン: v3.2.0 - -##### `brpc_short_connection` - -- デフォルト: false -- タイプ: boolean -- 単位: - -- 変更可能: いいえ -- 説明: 基盤となる brpc RpcClient が短命の接続を使用するかどうかを制御します。有効 ( `true` ) の場合、RpcClientOptions.setShortConnection が設定され、リクエスト完了後に接続が閉じられ、接続設定のオーバーヘッドと遅延が増加する代わりに、長寿命ソケットの数が減ります。無効 ( `false` 、デフォルト) の場合、永続接続と接続プールが使用されます。このオプションを有効にすると接続プールの動作に影響し、`brpc_connection_pool_size`、`brpc_idle_wait_max_time`、`brpc_min_evictable_idle_time_ms`、`brpc_reuse_addr`、および `brpc_inner_reuse_pool` と一緒に考慮する必要があります。通常の高スループットデプロイメントでは無効にしておき、ソケットの寿命を制限する必要がある場合や、ネットワークポリシーによって短命接続が必要な場合にのみ有効にしてください。 -- 導入バージョン: v3.3.11, v3.4.1, v3.5.0 - -##### `catalog_try_lock_timeout_ms` - -- デフォルト: 5000 -- タイプ: Long -- 単位: ミリ秒 -- 変更可能: はい -- 説明: グローバルロックを取得するためのタイムアウト期間。 -- 導入バージョン: - - -##### `checkpoint_only_on_leader` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: `true` の場合、CheckpointController はリーダー FE のみをチェックポイントワーカーとして選択します。`false` の場合、コントローラーは任意のフロントエンドを選択でき、ヒープ使用量が少ないノードを優先します。`false` の場合、ワーカーは最近の失敗時刻と `heapUsedPercent` でソートされます (リーダーは無限の使用量を持つものとして扱われ、選択を避けます)。クラスター スナップショット メタデータを必要とする操作の場合、コントローラーはすでにこのフラグに関係なくリーダー選択を強制します。`true` を有効にすると、チェックポイント作業がリーダーに集中します (単純ですが、リーダーの CPU/メモリとネットワーク負荷が増加します)。`false` のままにすると、負荷の少ない FE にチェックポイント負荷が分散されます。この設定は、ワーカー選択と、`checkpoint_timeout_seconds` のようなタイムアウト、および `thrift_rpc_timeout_ms` のような RPC 設定との相互作用に影響します。 -- 導入バージョン: v3.4.0, v3.5.0 - -##### `checkpoint_timeout_seconds` - -- デフォルト: 24 * 3600 -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: リーダーの CheckpointController がチェックポイントワーカーがチェックポイントを完了するのを待機する最大時間 (秒単位)。コントローラーはこの値をナノ秒に変換し、ワーカーの結果キューをポーリングします。このタイムアウト内に成功した完了が受信されない場合、チェックポイントは失敗として扱われ、createImage は失敗を返します。この値を増やすと、長時間実行されるチェックポイントに対応できますが、失敗検出とその後のイメージ伝播が遅れます。減らすと、より高速なフェイルオーバー/再試行が発生しますが、低速なワーカーに対して誤ったタイムアウトが発生する可能性があります。この設定は、チェックポイント作成中の `CheckpointController` での待機期間のみを制御し、ワーカーの内部チェックポイント動作は変更しません。 -- 導入バージョン: v3.4.0, v3.5.0 - -##### `db_used_data_quota_update_interval_secs` - -- デフォルト: 300 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: データベースの使用済みデータクォータが更新される間隔。StarRocks は、すべてのデータベースの使用済みデータクォータを定期的に更新して、ストレージ消費を追跡します。この値は、クォータの適用とメトリック収集に使用されます。許容される最小間隔は、過剰なシステム負荷を防ぐために 30 秒です。30 未満の値は拒否されます。 -- 導入バージョン: - - -##### `drop_backend_after_decommission` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: BE が廃止された後に BE を削除するかどうか。`TRUE` は、BE が廃止された直後に削除されることを示します。`FALSE` は、BE が廃止された後も削除されないことを示します。 -- 導入バージョン: - - -##### `edit_log_port` - -- デフォルト: 9010 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: クラスター内のリーダー、フォロワー、オブザーバー FE 間で通信に使用されるポート。 -- 導入バージョン: - - -##### `edit_log_roll_num` - -- デフォルト: 50000 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: ログファイルが作成されるまでに書き込み可能なメタデータログエントリの最大数。このパラメーターはログファイルのサイズを制御するために使用されます。新しいログファイルは BDBJE データベースに書き込まれます。 -- 導入バージョン: - - -##### `edit_log_type` - -- デフォルト: BDB -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: 生成可能な編集ログのタイプ。値を `BDB` に設定します。 -- 導入バージョン: - - -##### `enable_background_refresh_connector_metadata` - -- デフォルト: v3.0 以降では true、v2.5 では false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: 定期的な Hive メタデータキャッシュ更新を有効にするかどうか。有効にすると、StarRocks は Hive クラスターのメタストア (Hive Metastore または AWS Glue) をポーリングし、頻繁にアクセスされる Hive カタログのキャッシュされたメタデータを更新して、データ変更を認識します。`true` は Hive メタデータキャッシュ更新を有効にすることを示し、`false` は無効にすることを示します。 -- 導入バージョン: v2.5.5 - -##### `enable_collect_query_detail_info` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: クエリのプロファイルを収集するかどうか。このパラメーターが `TRUE` に設定されている場合、システムはクエリのプロファイルを収集します。このパラメーターが `FALSE` に設定されている場合、システムはクエリのプロファイルを収集しません。 -- 導入バージョン: - - -##### `enable_create_partial_partition_in_batch` - -- デフォルト: false -- タイプ: boolean -- 単位: - -- 変更可能: はい -- 説明: この項目が `false` (デフォルト) に設定されている場合、StarRocks は、バッチ作成された範囲パーティションが標準の時間単位境界に揃うように強制します。ギャップの作成を避けるために、非アラインド範囲は拒否されます。この項目を `true` に設定すると、アラインメントチェックが無効になり、バッチで部分的な (非標準の) パーティションの作成が許可され、ギャップや不整合なパーティション範囲が生成される可能性があります。意図的に部分的なバッチパーティションが必要であり、関連するリスクを受け入れる場合にのみ、これを `true` に設定してください。 -- 導入バージョン: v3.2.0 - -##### `enable_internal_sql` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: いいえ -- 説明: この項目が `true` に設定されている場合、内部コンポーネント (例: SimpleExecutor) によって実行される内部 SQL ステートメントは保持され、内部監査またはログメッセージに書き込まれます (`enable_sql_desensitize_in_log` が設定されている場合、さらに非機密化される可能性があります)。`false` に設定されている場合、内部 SQL テキストは抑制されます。フォーマットコード (SimpleExecutor.formatSQL) は "?" を返し、実際のステートメントは内部監査またはログメッセージに出力されません。この設定は、内部ステートメントの実行セマンティクスを変更しません。プライバシーまたはセキュリティのために内部 SQL のロギングと可視性のみを制御します。 -- 導入バージョン: - - -##### `enable_legacy_compatibility_for_replication` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: レプリケーションのレガシー互換性を有効にするかどうか。StarRocks は、古いバージョンと新しいバージョンで動作が異なる場合があり、クラスター間のデータ移行中に問題が発生することがあります。そのため、データ移行前にターゲットクラスターのレガシー互換性を有効にし、データ移行完了後に無効にする必要があります。`true` はこのモードを有効にすることを示します。 -- 導入バージョン: v3.1.10, v3.2.6 - -##### `enable_show_materialized_views_include_all_task_runs` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: SHOW MATERIALIZED VIEWS コマンドに TaskRun がどのように返されるかを制御します。この項目が `false` に設定されている場合、StarRocks はタスクごとに最新の TaskRun のみを返します (互換性のためのレガシー動作)。`true` (デフォルト) に設定されている場合、`TaskManager` は、同じ開始 TaskRun ID を共有する場合にのみ (たとえば、同じジョブに属する場合)、同じタスクの追加の TaskRun を含めることができ、関連性のない重複実行が表示されるのを防ぎながら、1 つのジョブに関連する複数のステータスを表示できるようにします。単一実行出力を復元したり、デバッグと監視のために複数実行ジョブ履歴を表示したりするには、この項目を `false` に設定します。 -- 導入バージョン: v3.3.0, v3.4.0, v3.5.0 - -##### `enable_statistics_collect_profile` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: 統計クエリのプロファイルを生成するかどうか。この項目を `true` に設定すると、StarRocks がシステム統計に関するクエリのクエリプロファイルを生成できるようになります。 -- 導入バージョン: v3.1.5 - -##### `enable_task_history_archive` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: 有効にすると、完了したタスク実行レコードは永続的なタスク実行履歴テーブルにアーカイブされ、編集ログに記録されるため、ルックアップ (例: `lookupHistory`、`lookupHistoryByTaskNames`、`lookupLastJobOfTasks`) にアーカイブされた結果が含まれます。アーカイブは FE リーダーによって実行され、単体テスト中 (`FeConstants.runningUnitTest`) はスキップされます。有効にすると、インメモリ有効期限と強制 GC パスはバイパスされるため (コードは `removeExpiredRuns` と `forceGC` から早期にリターンします)、保持/削除は `task_runs_ttl_second` と `task_runs_max_history_number` ではなく永続アーカイブによって処理されます。無効にすると、履歴はメモリ内に残り、これらの設定によって削除されます。 -- 導入バージョン: v3.3.1, v3.4.0, v3.5.0 - -##### `enable_task_run_fe_evaluation` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: 有効にすると、FE はシステムテーブル `task_runs` の `TaskRunsSystemTable.supportFeEvaluation` でローカル評価を実行します。FE 側の評価は、列を定数と比較する結合等価述語に対してのみ許可され、列 `QUERY_ID` と `TASK_NAME` に限定されます。これを有効にすると、より広範なスキャンや追加のリモート処理を避けることで、対象となるルックアップのパフォーマンスが向上します。無効にすると、プランナーは `task_runs` の FE 評価をスキップすることを強制され、述語のプルーニングが減少し、これらのフィルターのクエリ待機時間に影響を与える可能性があります。 -- 導入バージョン: v3.3.13, v3.4.3, v3.5.0 - -##### `heartbeat_mgr_blocking_queue_size` - -- デフォルト: 1024 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: ハートビートマネージャーによって実行されるハートビートタスクを格納するブロックキューのサイズ。 -- 導入バージョン: - - -##### `heartbeat_mgr_threads_num` - -- デフォルト: 8 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: ハートビートマネージャーがハートビートタスクを実行するために実行できるスレッドの数。 -- 導入バージョン: - - -##### `ignore_materialized_view_error` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: マテリアライズドビューエラーによって引き起こされるメタデータ例外を FE が無視するかどうか。マテリアライズドビューエラーによって引き起こされるメタデータ例外のために FE が起動に失敗した場合、このパラメーターを `true` に設定することで FE が例外を無視できるようにできます。 -- 導入バージョン: v2.5.10 - -##### `ignore_meta_check` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: 非リーダー FE がリーダー FE からのメタデータギャップを無視するかどうか。値が TRUE の場合、非リーダー FE はリーダー FE からのメタデータギャップを無視し、データ読み取りサービスを提供し続けます。このパラメーターは、リーダー FE を長期間停止した場合でも継続的なデータ読み取りサービスを保証します。値が FALSE の場合、非リーダー FE はリーダー FE からのメタデータギャップを無視せず、データ読み取りサービスを停止します。 -- 導入バージョン: - - -##### `ignore_task_run_history_replay_error` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: StarRocks が `information_schema.task_runs` の TaskRun 履歴行を逆シリアル化する際、破損または無効な JSON 行は通常、逆シリアル化が警告をログに記録し、RuntimeException をスローします。この項目が `true` に設定されている場合、システムは逆シリアル化エラーをキャッチし、不正な形式のレコードをスキップし、クエリを失敗させるのではなく、残りの行の処理を続行します。これにより、`information_schema.task_runs` クエリが `_statistics_.task_run_history` テーブルの不正なエントリを許容できるようになります。ただし、これを有効にすると、破損した履歴レコードは明示的なエラーを表示する代わりにサイレントにドロップされる可能性があることに注意してください (潜在的なデータ損失)。 -- 導入バージョン: v3.3.3, v3.4.0, v3.5.0 - -##### `lock_checker_interval_second` - -- デフォルト: 30 -- タイプ: long -- 単位: 秒 -- 変更可能: はい -- 説明: LockChecker フロントエンドデーモン ("deadlock-checker" という名前) の実行間隔 (秒単位)。デーモンはデッドロック検出と低速ロックのスキャンを実行します。構成された値はミリ秒単位でタイマーを設定するために 1000 倍されます。この値を減らすと検出遅延が減少しますが、スケジューリングと CPU オーバーヘッドが増加します。増やすとオーバーヘッドが減少しますが、検出と低速ロックレポートが遅れます。変更は、デーモンが実行ごとに間隔をリセットするため、実行時に有効になります。この設定は `lock_checker_enable_deadlock_check` (デッドロックチェックを有効にする) および `slow_lock_threshold_ms` (低速ロックを構成するものを定義する) と相互作用します。 -- 導入バージョン: v3.2.0 - -##### `master_sync_policy` - -- デフォルト: SYNC -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: リーダー FE がログをディスクにフラッシュする際のポリシー。このパラメーターは、現在の FE がリーダー FE である場合にのみ有効です。有効な値: - - `SYNC`: トランザクションがコミットされると、ログエントリが生成され、同時にディスクにフラッシュされます。 - - `NO_SYNC`: トランザクションがコミットされるときに、ログエントリの生成とフラッシュが同時に行われません。 - - `WRITE_NO_SYNC`: トランザクションがコミットされると、ログエントリが同時に生成されますが、ディスクにはフラッシュされません。 - - フォロワー FE を 1 つだけデプロイしている場合は、このパラメーターを `SYNC` に設定することをお勧めします。フォロワー FE を 3 つ以上デプロイしている場合は、このパラメーターと `replica_sync_policy` の両方を `WRITE_NO_SYNC` に設定することをお勧めします。 - -- 導入バージョン: - - -##### `max_bdbje_clock_delta_ms` - -- デフォルト: 5000 -- タイプ: Long -- 単位: ミリ秒 -- 変更可能: いいえ -- 説明: StarRocks クラスターのリーダー FE とフォロワーまたはオブザーバー FE の間で許容される最大クロックオフセット。 -- 導入バージョン: - - -##### `meta_delay_toleration_second` - -- デフォルト: 300 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: フォロワー FE およびオブザーバー FE のメタデータがリーダー FE のメタデータよりも遅延できる最大期間。単位: 秒。この期間を超過すると、非リーダー FE はサービスの提供を停止します。 -- 導入バージョン: - - -##### `meta_dir` - -- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/meta" -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: メタデータが保存されるディレクトリ。 -- 導入バージョン: - - -##### `metadata_ignore_unknown_operation_type` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: 不明なログ ID を無視するかどうか。FE がロールバックされると、以前のバージョンの FE は一部のログ ID を認識できない場合があります。値が `TRUE` の場合、FE は不明なログ ID を無視します。値が `FALSE` の場合、FE は終了します。 -- 導入バージョン: - - -##### `profile_info_format` - -- デフォルト: default -- タイプ: String -- 単位: - -- 変更可能: はい -- 説明: システムが出力するプロファイルの形式。有効な値: `default` と `json`。`default` に設定すると、プロファイルはデフォルトの形式になります。`json` に設定すると、システムは JSON 形式でプロファイルを出力します。 -- 導入バージョン: v2.5 - -##### `replica_ack_policy` - -- デフォルト: `SIMPLE_MAJORITY` -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: ログエントリが有効と見なされるポリシー。デフォルト値 `SIMPLE_MAJORITY` は、フォロワー FE の過半数が ACK メッセージを返した場合に、ログエントリが有効と見なされることを指定します。 -- 導入バージョン: - - -##### `replica_sync_policy` - -- デフォルト: SYNC -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: フォロワー FE がログをディスクにフラッシュするポリシー。このパラメーターは、現在の FE がフォロワー FE である場合にのみ有効です。有効な値: - - `SYNC`: トランザクションがコミットされると、ログエントリが生成され、同時にディスクにフラッシュされます。 - - `NO_SYNC`: トランザクションがコミットされるときに、ログエントリの生成とフラッシュが同時に行われません。 - - `WRITE_NO_SYNC`: トランザクションがコミットされると、ログエントリが同時に生成されますが、ディスクにはフラッシュされません。 -- 導入バージョン: - - -##### `start_with_incomplete_meta` - -- デフォルト: false -- タイプ: boolean -- 単位: - -- 変更可能: いいえ -- 説明: true の場合、FE はイメージデータは存在するが Berkeley DB JE (BDB) ログファイルが見つからないか破損している場合に起動を許可します。`MetaHelper.checkMetaDir()` はこのフラグを使用して、対応する BDB ログのないイメージからの起動を通常防止する安全チェックをバイパスします。この方法で起動すると、古いまたは一貫性のないメタデータが生成される可能性があり、緊急リカバリにのみ使用すべきです。`RestoreClusterSnapshotMgr` はクラスター スナップショットの復元中にこのフラグを一時的に true に設定し、その後元に戻します。このコンポーネントは、復元中に `bdbje_reset_election_group` も切り替えます。通常の操作では有効にしないでください。破損した BDB データから復旧する場合、またはイメージベースのスナップショットを明示的に復元する場合にのみ有効にしてください。 -- 導入バージョン: v3.2.0 - -##### `table_keeper_interval_second` - -- デフォルト: 30 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: TableKeeper デーモンの実行間隔 (秒単位)。TableKeeperDaemon はこの値 (1000 倍) を使用して内部タイマーを設定し、履歴テーブルが存在すること、テーブルプロパティ (レプリケーション数) が正しいこと、パーティション TTL を更新することを確認するキーパータスクを定期的に実行します。デーモンはリーダーノードでのみ作業を実行し、`table_keeper_interval_second` が変更されると `setInterval` を介して実行時間隔を更新します。スケジューリング頻度と負荷を減らすには増やし、欠落または古い履歴テーブルへの反応を高速化するには減らします。 -- 導入バージョン: v3.3.1, v3.4.0, v3.5.0 - -##### `task_runs_ttl_second` - -- デフォルト: 7 * 24 * 3600 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: タスク実行履歴の Time-To-Live (TTL) を制御します。この値を減らすと、履歴の保持期間が短くなり、メモリ/ディスク使用量が削減されます。増やすと、履歴が長く保持されますが、リソース使用量が増加します。予測可能な保持とストレージ動作のために、`task_runs_max_history_number` および `enable_task_history_archive` とともに調整します。 -- 導入バージョン: v3.2.0 - -##### `task_ttl_second` - -- デフォルト: 24 * 3600 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: タスクの Time-To-Live (TTL)。手動タスク (スケジュールが設定されていない場合) の場合、TaskBuilder はこの値を使用してタスクの `expireTime` を計算します (`expireTime = now + task_ttl_second * 1000L`)。TaskRun もこの値を実行タイムアウトの最大値として使用します。有効な実行タイムアウトは `min(task_runs_timeout_second, task_runs_ttl_second, task_ttl_second)` です。この値を調整すると、手動で作成されたタスクが有効なままになる期間が変更され、タスク実行の最大許容実行時間が間接的に制限される可能性があります。 -- 導入バージョン: v3.2.0 - -##### `thrift_rpc_retry_times` - -- デフォルト: 3 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: Thrift RPC 呼び出しが行う試行の合計回数を制御します。この値は `ThriftRPCRequestExecutor` (および `NodeMgr` や `VariableMgr` などの呼び出し元) によって再試行のループカウントとして使用されます。つまり、値 3 は初期試行を含めて最大 3 回の試行を許可します。`TTransportException` の場合、エグゼキューターは接続を再開してこの回数まで再試行します。`SocketTimeoutException` が原因の場合や再開が失敗した場合は再試行しません。各試行は `thrift_rpc_timeout_ms` で構成された試行ごとのタイムアウトの対象となります。この値を増やすと、一時的な接続失敗に対する回復力が向上しますが、RPC 全体の遅延とリソース使用量が増加する可能性があります。 -- 導入バージョン: v3.2.0 - -##### `thrift_rpc_strict_mode` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: いいえ -- 説明: Thrift サーバーで使用される TBinaryProtocol の「厳密な読み取り」モードを制御します。この値は、Thrift サーバー スタック内の org.apache.thrift.protocol.TBinaryProtocol.Factory に最初の引数として渡され、受信 Thrift メッセージがどのように解析および検証されるかに影響します。`true` (デフォルト) の場合、サーバーは厳密な Thrift エンコーディング/バージョン チェックを強制し、構成された `thrift_rpc_max_body_size` 制限を尊重します。`false` の場合、サーバーは非厳密 (レガシー/寛容) メッセージ形式を受け入れます。これにより、古いクライアントとの互換性が向上する可能性がありますが、一部のプロトコル検証がバイパスされる可能性があります。この値は変更可能ではなく、相互運用性と解析の安全性に影響するため、実行中のクラスターでこれを変更する場合は注意してください。 -- 導入バージョン: v3.2.0 - -##### `thrift_rpc_timeout_ms` - -- デフォルト: 10000 -- タイプ: Int -- 単位: ミリ秒 -- 変更可能: はい -- 説明: Thrift RPC 呼び出しのデフォルトのネットワーク/ソケットタイムアウトとして使用されるタイムアウト (ミリ秒単位)。`ThriftConnectionPool` (フロントエンドおよびバックエンドプールで使用される) で Thrift クライアントを作成する際に TSocket に渡され、`ConfigBase`、`LeaderOpExecutor`、`GlobalStateMgr`、`NodeMgr`、`VariableMgr`、`CheckpointWorker` などの場所で RPC 呼び出しタイムアウトを計算する際に、操作の実行タイムアウト (例: ExecTimeout*1000 + `thrift_rpc_timeout_ms`) にも追加されます。この値を増やすと、RPC 呼び出しは長いネットワークまたはリモート処理の遅延を許容できます。減らすと、低速なネットワークでのフェイルオーバーが高速になります。この値を変更すると、Thrift RPC を実行する FE コードパス全体の接続作成とリクエストの期限に影響します。 -- 導入バージョン: v3.2.0 - -##### `txn_rollback_limit` - -- デフォルト: 100 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: ロールバック可能なトランザクションの最大数。 -- 導入バージョン: - - -### ユーザー、ロール、および権限 - -##### `enable_task_info_mask_credential` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: true の場合、StarRocks は `information_schema.tasks` および `information_schema.task_runs` でタスク SQL 定義から資格情報を削除し、DEFINITION 列に SqlCredentialRedactor.redact を適用することで返します。`information_schema.task_runs` では、定義がタスク実行ステータスから来ている場合でも、空の場合はタスク定義ルックアップから来ている場合でも、同じ編集が適用されます。false の場合、生のタスク定義が返されます (資格情報が公開される可能性があります)。マスキングは CPU/文字列処理作業であり、タスクまたは `task_runs` の数が多い場合は時間がかかる場合があります。編集されていない定義が必要で、セキュリティリスクを受け入れる場合にのみ無効にしてください。 -- 導入バージョン: v3.5.6 - -##### `privilege_max_role_depth` - -- デフォルト: 16 -- タイプ: Int -- 単位: -- 変更可能: はい -- 説明: ロールの最大ロール深度 (継承レベル)。 -- 導入バージョン: v3.0.0 - -##### `privilege_max_total_roles_per_user` - -- デフォルト: 64 -- タイプ: Int -- 単位: -- 変更可能: はい -- 説明: ユーザーが持つことができるロールの最大数。 -- 導入バージョン: v3.0.0 - -### クエリエンジン - -##### `brpc_send_plan_fragment_timeout_ms` - -- デフォルト: 60000 -- タイプ: Int -- 単位: ミリ秒 -- 変更可能: はい -- 説明: プランフラグメントを送信する前に BRPC TalkTimeoutController に適用されるタイムアウト (ミリ秒単位)。`BackendServiceClient.sendPlanFragmentAsync` は、バックエンド `execPlanFragmentAsync` を呼び出す前にこの値を設定します。これは、BRPC がアイドル接続を接続プールから借りる際に、および送信を実行する際にどれだけ待機するかを制御します。超過すると、RPC は失敗し、メソッドの再試行ロジックをトリガーする可能性があります。競合時に高速に失敗するにはこれを小さく設定し、一時的なプール枯渇や低速ネットワークを許容するには高く設定します。注意: 非常に大きな値は障害検出を遅らせ、リクエストスレッドをブロックする可能性があります。 -- 導入バージョン: v3.3.11, v3.4.1, v3.5.0 - -##### `connector_table_query_trigger_analyze_large_table_interval` - -- デフォルト: 12 * 3600 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: 大規模テーブルのクエリトリガー ANALYZE タスクの間隔。 -- 導入バージョン: v3.4.0 - -##### `connector_table_query_trigger_analyze_max_pending_task_num` - -- デフォルト: 100 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: FE で保留状態にあるクエリトリガー ANALYZE タスクの最大数。 -- 導入バージョン: v3.4.0 - -##### `connector_table_query_trigger_analyze_max_running_task_num` - -- デフォルト: 2 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: FE で実行状態にあるクエリトリガー ANALYZE タスクの最大数。 -- 導入バージョン: v3.4.0 - -##### `connector_table_query_trigger_analyze_small_table_interval` - -- デフォルト: 2 * 3600 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: 小規模テーブルのクエリトリガー ANALYZE タスクの間隔。 -- 導入バージョン: v3.4.0 - -##### `connector_table_query_trigger_analyze_small_table_rows` - -- デフォルト: 10000000 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: クエリトリガー ANALYZE タスクのためにテーブルが小規模テーブルであるかどうかを決定するためのしきい値。 -- 導入バージョン: v3.4.0 - -##### `connector_table_query_trigger_task_schedule_interval` - -- デフォルト: 30 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: スケジューラスレッドがクエリトリガーバックグラウンドタスクをスケジュールする間隔。この項目は、v3.4 で導入された `connector_table_query_trigger_analyze_schedule_interval` を置き換えるものです。ここで、バックグラウンドタスクとは、v3.4 の `ANALYZE` タスクと、v3.4 以降のバージョンの低カーディナリティ列の辞書収集タスクを指します。 -- 導入バージョン: v3.4.2 - -##### `create_table_max_serial_replicas` - -- デフォルト: 128 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: シリアルに作成するレプリカの最大数。実際のレプリカ数がこの値を超える場合、レプリカは並行して作成されます。テーブル作成に時間がかかっている場合は、この値を減らしてみてください。 -- 導入バージョン: - - -##### `default_mv_partition_refresh_number` - -- デフォルト: 1 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: マテリアライズドビューの更新が複数のパーティションを含む場合、このパラメーターはデフォルトで単一バッチで更新されるパーティションの数を制御します。 -バージョン 3.3.0 以降、システムはデフォルトで一度に 1 つのパーティションを更新することで、潜在的なメモリ不足 (OOM) の問題を回避します。以前のバージョンでは、デフォルトですべてのパーティションが一度に更新され、メモリ枯渇やタスク失敗につながる可能性がありました。ただし、マテリアライズドビューの更新が多数のパーティションを含む場合、一度に 1 つのパーティションしか更新しないと、過剰なスケジューリングオーバーヘッド、全体的な更新時間の延長、および多数の更新レコードにつながる可能性があることに注意してください。そのような場合、更新効率を改善し、スケジューリングコストを削減するために、このパラメーターを適切に調整することをお勧めします。 -- 導入バージョン: v3.3.0 - -##### `default_mv_refresh_immediate` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: 非同期マテリアライズドビュー作成後すぐに更新するかどうか。この項目が `true` に設定されている場合、新しく作成されたマテリアライズドビューはすぐに更新されます。 -- 導入バージョン: v3.2.3 - -##### `dynamic_partition_check_interval_seconds` - -- デフォルト: 600 -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: 新しいデータのチェック間隔。新しいデータが検出された場合、StarRocks は自動的にデータのパーティションを作成します。 -- 導入バージョン: - - -##### `dynamic_partition_enable` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: 動的パーティショニング機能を有効にするかどうか。この機能が有効な場合、StarRocks は新しいデータのパーティションを動的に作成し、期限切れのパーティションを自動的に削除して、データの鮮度を保証します。 -- 導入バージョン: - - -##### `enable_active_materialized_view_schema_strict_check` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: 非アクティブなマテリアライズドビューをアクティブ化する際に、データ型の長さの一貫性を厳密にチェックするかどうか。この項目が `false` に設定されている場合、データ型の長さが基底テーブルで変更されても、マテリアライズドビューのアクティブ化は影響を受けません。 -- 導入バージョン: v3.3.4 - -##### `enable_backup_materialized_view` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: 特定のデータベースをバックアップまたは復元する際に、非同期マテリアライズドビューの BACKUP および RESTORE を有効にするかどうか。この項目が `false` に設定されている場合、StarRocks は非同期マテリアライズドビューのバックアップをスキップします。 -- 導入バージョン: v3.2.0 - -##### `enable_collect_full_statistic` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: 自動完全統計収集を有効にするかどうか。この機能はデフォルトで有効です。 -- 導入バージョン: - - -##### `enable_colocate_mv_index` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: 同期マテリアライズドビューを作成する際に、同期マテリアライズドビューインデックスを基底テーブルとコロケートすることをサポートするかどうか。この項目が `true` に設定されている場合、タブレットシンクは同期マテリアライズドビューの書き込みパフォーマンスを高速化します。 -- 導入バージョン: v3.2.0 - -##### `enable_decimal_v3` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: DECIMAL V3 データ型をサポートするかどうか。 -- 導入バージョン: - - -##### `enable_experimental_mv` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: 非同期マテリアライズドビュー機能を有効にするかどうか。TRUE はこの機能が有効であることを示します。v2.5.2 以降、この機能はデフォルトで有効になっています。v2.5.2 以前のバージョンでは、この機能はデフォルトで無効になっています。 -- 導入バージョン: v2.4 - -##### `enable_local_replica_selection` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: クエリのためにローカルレプリカを選択するかどうか。ローカルレプリカはネットワーク転送コストを削減します。このパラメーターが TRUE に設定されている場合、CBO は現在の FE と同じ IP アドレスを持つ BE 上のタブレットレプリカを優先的に選択します。このパラメーターが `FALSE` に設定されている場合、ローカルレプリカと非ローカルレプリカの両方を選択できます。 -- 導入バージョン: - - -##### `enable_materialized_view` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: マテリアライズドビューの作成を有効にするかどうか。 -- 導入バージョン: - - -##### `enable_materialized_view_external_table_precise_refresh` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: この項目を `true` に設定すると、基底テーブルが外部 (クラウドネイティブではない) テーブルである場合に、マテリアライズドビューの更新に対して内部最適化が有効になります。有効にすると、マテリアライズドビューの更新プロセッサは候補パーティションを計算し、すべてのパーティションではなく、影響を受ける基底テーブルパーティションのみを更新し、I/O と更新コストを削減します。外部テーブルの完全パーティション更新を強制するには `false` に設定します。 -- 導入バージョン: v3.2.9 - -##### `enable_materialized_view_metrics_collect` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: デフォルトで非同期マテリアライズドビューの監視メトリックを収集するかどうか。 -- 導入バージョン: v3.1.11, v3.2.5 - -##### `enable_materialized_view_spill` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: マテリアライズドビューの更新タスクに対する中間結果スピルを有効にするかどうか。 -- 導入バージョン: v3.1.1 - -##### `enable_materialized_view_text_based_rewrite` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: デフォルトでテキストベースのクエリ書き換えを有効にするかどうか。この項目が `true` に設定されている場合、システムは非同期マテリアライズドビューの作成中に抽象構文ツリーを構築します。 -- 導入バージョン: v3.2.5 - -##### `enable_mv_automatic_active_check` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: スキーマ変更、または基底テーブル (ビュー) の削除と再作成により非アクティブになった非同期マテリアライズドビューをシステムが自動的にチェックし、再アクティブ化することを有効にするかどうか。この機能は、ユーザーが手動で非アクティブに設定したマテリアライズドビューを再アクティブ化しないことに注意してください。 -- 導入バージョン: v3.1.6 - -##### `enable_mv_automatic_repairing_for_broken_base_tables` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: この項目が `true` に設定されている場合、StarRocks は、基底の外部テーブルが削除されて再作成されたり、テーブル識別子が変更されたりした場合に、マテリアライズドビューの基底テーブルメタデータを自動的に修復しようとします。修復フローは、マテリアライズドビューの基底テーブル情報を更新し、外部テーブルパーティションのパーティションレベルの修復情報を収集し、`autoRefreshPartitionsLimit` を尊重しながら非同期自動更新マテリアライズドビューのパーティション更新決定を駆動することができます。現在、自動修復は Hive 外部テーブルをサポートしています。サポートされていないテーブルタイプは、マテリアライズドビューを非アクティブにし、修復例外を引き起こします。パーティション情報収集は非ブロッキングであり、失敗はログに記録されます。 -- 導入バージョン: v3.3.19, v3.4.8, v3.5.6 - -##### `enable_predicate_columns_collection` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: 述語列の収集を有効にするかどうか。無効にすると、クエリ最適化中に述語列は記録されません。 -- 導入バージョン: - - -##### `enable_query_queue_v2` - -- デフォルト: true -- タイプ: boolean -- 単位: - -- 変更可能: いいえ -- 説明: true の場合、FE のスロットベースクエリスケジューラを Query Queue V2 に切り替えます。このフラグは、スロットマネージャーとトラッカー (例: `BaseSlotManager.isEnableQueryQueueV2` および `SlotTracker#createSlotSelectionStrategy`) によって読み取られ、従来の戦略ではなく `SlotSelectionStrategyV2` を選択します。`query_queue_v2_xxx` 構成オプションと `QueryQueueOptions` は、このフラグが有効な場合にのみ有効になります。v4.1 以降、デフォルト値は `false` から `true` に変更されました。 -- 導入バージョン: v3.3.4, v3.4.0, v3.5.0 - -##### `enable_sql_blacklist` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: SQL クエリのブラックリストチェックを有効にするかどうか。この機能が有効な場合、ブラックリスト内のクエリは実行できません。 -- 導入バージョン: - - -##### `enable_statistic_collect` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: CBO の統計を収集するかどうか。この機能はデフォルトで有効です。 -- 導入バージョン: - - -##### `enable_statistic_collect_on_first_load` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: データロード操作によってトリガーされる自動統計収集とメンテナンスを制御します。これには以下が含まれます。 - - データがパーティションに初めてロードされたとき (パーティションバージョンが 2 の場合) の統計収集。 - - 複数パーティションテーブルの空のパーティションにデータがロードされたときの統計収集。 - - INSERT OVERWRITE 操作の統計コピーと更新。 - - **統計収集タイプの決定ポリシー:** - - - INSERT OVERWRITE の場合: `deltaRatio = |targetRows - sourceRows| / (sourceRows + 1)` - - `deltaRatio < statistic_sample_collect_ratio_threshold_of_first_load` (デフォルト: 0.1) の場合、統計収集は実行されません。既存の統計のみがコピーされます。 - - それ以外の場合、`targetRows > statistic_sample_collect_rows` (デフォルト: 200000) の場合、SAMPLE 統計収集が使用されます。 - - それ以外の場合、FULL 統計収集が使用されます。 - - - 初回ロードの場合: `deltaRatio = loadRows / (totalRows + 1)` - - `deltaRatio < statistic_sample_collect_ratio_threshold_of_first_load` (デフォルト: 0.1) の場合、統計収集は実行されません。 - - それ以外の場合、`loadRows > statistic_sample_collect_rows` (デフォルト: 200000) の場合、SAMPLE 統計収集が使用されます。 - - それ以外の場合、FULL 統計収集が使用されます。 - - **同期動作:** - - - DML ステートメント (INSERT INTO/INSERT OVERWRITE) の場合: テーブルロックを使用した同期モード。ロード操作は統計収集が完了するまで待機します (最大 `semi_sync_collect_statistic_await_seconds` まで)。 - - Stream Load および Broker Load の場合: ロックなしの非同期モード。統計収集はバックグラウンドで実行され、ロード操作をブロックしません。 - - :::note - この設定を無効にすると、ロードによってトリガーされるすべての統計操作 (INSERT OVERWRITE の統計メンテナンスを含む) が防止され、テーブルに統計が不足する可能性があります。新しいテーブルが頻繁に作成され、データが頻繁にロードされる場合、この機能を有効にするとメモリと CPU のオーバーヘッドが増加します。 - ::: - -- 導入バージョン: v3.1 - -##### `enable_statistic_collect_on_update` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: UPDATE ステートメントが自動統計収集をトリガーできるかどうかを制御します。有効にすると、テーブルデータを変更する UPDATE 操作は、`enable_statistic_collect_on_first_load` によって制御される同じインジェストベースの統計フレームワークを通じて統計収集をスケジュールする可能性があります。この設定を無効にすると、UPDATE ステートメントの統計収集はスキップされ、ロードによってトリガーされる統計収集動作は変更されません。 -- 導入バージョン: v3.5.11, v4.0.4 - -##### `enable_udf` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: いいえ -- 説明: UDF を有効にするかどうか。 -- 導入バージョン: - - -##### `expr_children_limit` - -- デフォルト: 10000 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: 式で許可される子式の最大数。 -- 導入バージョン: - - -##### `histogram_buckets_size` - -- デフォルト: 64 -- タイプ: Long -- 単位: - -- 変更可能: はい -- 説明: ヒストグラムのデフォルトのバケット数。 -- 導入バージョン: - - -##### `histogram_max_sample_row_count` - -- デフォルト: 10000000 -- タイプ: Long -- 単位: - -- 変更可能: はい -- 説明: ヒストグラムのために収集する最大行数。 -- 導入バージョン: - - -##### `histogram_mcv_size` - -- デフォルト: 100 -- タイプ: Long -- 単位: - -- 変更可能: はい -- 説明: ヒストグラムの最頻値 (MCV) の数。 -- 導入バージョン: - - -##### `histogram_sample_ratio` - -- デフォルト: 0.1 -- タイプ: Double -- 単位: - -- 変更可能: はい -- 説明: ヒストグラムのサンプリング比率。 -- 導入バージョン: - - -##### `http_slow_request_threshold_ms` - -- デフォルト: 5000 -- タイプ: Int -- 単位: ミリ秒 -- 変更可能: はい -- 説明: HTTP リクエストの応答時間がこのパラメーターで指定された値を超えた場合、このリクエストを追跡するためのログが生成されます。 -- 導入バージョン: v2.5.15, v3.1.5 - -##### `lock_checker_enable_deadlock_check` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: 有効にすると、LockChecker スレッドは ThreadMXBean.findDeadlockedThreads() を使用して JVM レベルのデッドロック検出を実行し、問題のあるスレッドのスタックトレースをログに記録します。このチェックは LockChecker デーモン (その頻度は `lock_checker_interval_second` によって制御されます) の内部で実行され、詳細なスタック情報をログに書き込みます。これは CPU および I/O 集中型になる可能性があります。このオプションは、ライブまたは再現可能なデッドロックの問題のトラブルシューティングのためにのみ有効にしてください。通常の操作で有効のままにしておくと、オーバーヘッドとログのボリュームが増加する可能性があります。 -- 導入バージョン: v3.2.0 - -##### `low_cardinality_threshold` - -- デフォルト: 255 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: 低カーディナリティ辞書のしきい値。 -- 導入バージョン: v3.5.0 - -##### `materialized_view_min_refresh_interval` - -- デフォルト: 60 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: ASYNC マテリアライズドビュー スケジュールの最小許容更新間隔 (秒単位)。マテリアライズドビューが時間ベースの間隔で作成された場合、その間隔は秒に変換され、この値よりも小さくすることはできません。そうでない場合、CREATE/ALTER 操作は DDL エラーで失敗します。この値が 0 より大きい場合、チェックが強制されます。制限を無効にするには 0 または負の値に設定します。これにより、過剰な TaskManager スケジューリングと、過度に頻繁な更新による FE のメモリ/CPU 使用量が高くなるのを防ぎます。この項目は `EVENT_TRIGGERED` 更新には適用されません。 -- 導入バージョン: v3.3.0, v3.4.0, v3.5.0 - -##### `materialized_view_refresh_ascending` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: この項目が `true` に設定されている場合、マテリアライズドビューパーティションの更新は、パーティションキーの昇順 (最も古いものから新しいものへ) でパーティションを反復します。`false` (デフォルト) に設定されている場合、システムは降順 (最も新しいものから古いものへ) で反復します。StarRocks は、パーティション更新制限が適用される場合にどのパーティションを処理するかを選択し、後続の TaskRun 実行のために次の開始/終了パーティション境界を計算するために、リストパーティション化されたマテリアライズドビューと範囲パーティション化されたマテリアライズドビューの両方の更新ロジックでこの項目を使用します。この項目を変更すると、どのパーティションが最初に更新されるか、および次のパーティション範囲がどのように導出されるかが変更されます。範囲パーティション化されたマテリアライズドビューの場合、スケジューラは新しい開始/終了を検証し、変更によって繰り返される境界 (デッドループ) が作成される場合、エラーを発生させるため、この項目を慎重に設定してください。 -- 導入バージョン: v3.3.1, v3.4.0, v3.5.0 - -##### `max_allowed_in_element_num_of_delete` - -- デフォルト: 10000 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: DELETE ステートメントの IN 述語で許可される要素の最大数。 -- 導入バージョン: - - -##### `max_create_table_timeout_second` - -- デフォルト: 600 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: テーブル作成の最大タイムアウト期間。 -- 導入バージョン: - - -##### `max_distribution_pruner_recursion_depth` - -- デフォルト: 100 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: パーティションプルーナーが許可する最大再帰深度。再帰深度を増やすと、より多くの要素をプルーニングできますが、CPU 消費も増加します。 -- 導入バージョン: - - -##### `max_partitions_in_one_batch` - -- デフォルト: 4096 -- タイプ: Long -- 単位: - -- 変更可能: はい -- 説明: パーティションを一括作成するときに作成できるパーティションの最大数。 -- 導入バージョン: - - -##### `max_planner_scalar_rewrite_num` - -- デフォルト: 100000 -- タイプ: Long -- 単位: - -- 変更可能: はい -- 説明: オプティマイザーがスカラー演算子を書き換えることができる最大回数。 -- 導入バージョン: - - -##### `max_query_queue_history_slots_number` - -- デフォルト: 0 -- タイプ: Int -- 単位: スロット -- 変更可能: はい -- 説明: 監視と可観測性のために、クエリキューごとに保持される最近解放された (履歴) 割り当てスロットの数を制御します。`max_query_queue_history_slots_number` が `> 0` の値に設定されている場合、BaseSlotTracker は、インメモリキューにその数の最も最近解放された LogicalSlot エントリを保持し、制限を超えると最も古いものを削除します。これを有効にすると、getSlots() にこれらの履歴エントリ (最新のものが最初) が含まれるようになり、BaseSlotTracker は ConnectContext にスロットを登録して、より豊富な ExtraMessage データを提供できるようになり、LogicalSlot.ConnectContextListener はクエリ完了メタデータを履歴スロットに添付できるようになります。`max_query_queue_history_slots_number` が `<= 0` の場合、履歴メカニズムは無効になります (追加のメモリは使用されません)。可観測性とメモリオーバーヘッドのバランスをとるために、適切な値を使用してください。 -- 導入バージョン: v3.5.0 - -##### `max_query_retry_time` - -- デフォルト: 2 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: FE でのクエリ再試行の最大数。 -- 導入バージョン: - - -##### `max_running_rollup_job_num_per_table` - -- デフォルト: 1 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: テーブルで並行して実行できるロールアップジョブの最大数。 -- 導入バージョン: - - -##### `max_scalar_operator_flat_children` - -- デフォルト:10000 -- タイプ:Int -- 単位:- -- 変更可能: はい -- 説明:ScalarOperator のフラットな子の最大数。オプティマイザーが過剰なメモリを使用するのを防ぐために、この制限を設定できます。 -- 導入バージョン: - - -##### `max_scalar_operator_optimize_depth` - -- デフォルト:256 -- タイプ:Int -- 単位:- -- 変更可能: はい -- 説明: ScalarOperator 最適化を適用できる最大深度。 -- 導入バージョン: - - -##### `mv_active_checker_interval_seconds` - -- デフォルト: 60 -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: バックグラウンドの `active_checker` スレッドが有効な場合、システムはスキーマ変更または基底テーブル (またはビュー) の再構築により非アクティブになったマテリアライズドビューを定期的に検出し、自動的に再アクティブ化します。このパラメーターは、チェッカースレッドのスケジューリング間隔を秒単位で制御します。デフォルト値はシステム定義です。 -- 導入バージョン: v3.1.6 - -##### `mv_rewrite_consider_data_layout_mode` - -- デフォルト: `enable` -- タイプ: String -- 単位: - -- 変更可能: はい -- 説明: マテリアライズドビューの書き換えが、最適なマテリアライズドビューを選択する際に、基底テーブルのデータレイアウトを考慮するかどうかを制御します。有効な値: - - `disable`: 候補となるマテリアライズドビューを選択する際に、データレイアウト基準を一切使用しません。 - - `enable`: クエリがレイアウトを意識していると認識された場合にのみ、データレイアウト基準を使用します。 - - `force`: 最適なマテリアライズドビューを選択する際に、常にデータレイアウト基準を適用します。 - この項目を変更すると、`BestMvSelector` の動作が影響され、物理レイアウトがプランの正しさやパフォーマンスに影響するかどうかに応じて、書き換えの適用性が向上または拡大する可能性があります。 -- 導入バージョン: - - -##### `publish_version_interval_ms` - -- デフォルト: 10 -- タイプ: Int -- 単位: ミリ秒 -- 変更可能: いいえ -- 説明: リリース検証タスクが発行される時間間隔。 -- 導入バージョン: - - -##### `query_queue_slots_estimator_strategy` - -- デフォルト: MAX -- タイプ: String -- 単位: - -- 変更可能: はい -- 説明: `enable_query_queue_v2` が true の場合に、キューベースクエリに使用されるスロット推定戦略を選択します。有効な値: MBE (メモリベース)、PBE (並列処理ベース)、MAX (MBE と PBE の最大値を取る)、MIN (MBE と PBE の最小値を取る)。MBE は、予測されたメモリまたはプランコストをスロットあたりのメモリターゲットで割った値からスロットを推定し、`totalSlots` で上限が設定されます。PBE は、フラグメント並列処理 (スキャン範囲数またはカーディナリティ/スロットあたりの行数) と CPU コストベースの計算 (スロットあたりの CPU コストを使用) からスロットを導出し、その結果を [numSlots/2, numSlots] の範囲にクランプします。MAX と MIN は、それぞれ最大値または最小値を取ることで MBE と PBE を結合します。構成された値が無効な場合、デフォルト (`MAX`) が使用されます。 -- 導入バージョン: v3.5.0 - -##### `query_queue_v2_concurrency_level` - -- デフォルト: 4 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: システムの合計クエリスロットを計算する際に使用される論理的な並行性「レイヤー」の数を制御します。Shared-nothing モードでは、合計スロット = `query_queue_v2_concurrency_level` * BE の数 * BE あたりのコア数 (BackendResourceStat から派生)。マルチウェアハウスモードでは、有効な並行性は max(1, `query_queue_v2_concurrency_level` / 4) にスケールダウンされます。構成された値が非正の場合、`4` として扱われます。この値を変更すると totalSlots (および同時クエリ容量) が増減し、スロットごとのリソースに影響します。memBytesPerSlot は、ワーカーごとのメモリを (ワーカーごとのコア数 * 並行性) で割って導出され、CPU 課金は `query_queue_v2_cpu_costs_per_slot` を使用します。クラスターサイズに比例して設定します。非常に大きな値はスロットごとのメモリを減らし、リソースの断片化を引き起こす可能性があります。 -- 導入バージョン: v3.3.4, v3.4.0, v3.5.0 - -##### `query_queue_v2_cpu_costs_per_slot` - -- デフォルト: 1000000000 -- タイプ: Long -- 単位: プランナー CPU コスト単位 -- 変更可能: はい -- 説明: クエリがプランナー CPU コストから必要とするスロット数を推定するために使用されるスロットあたりの CPU コストしきい値。スケジューラはスロットを整数 (`plan_cpu_costs` / `query_queue_v2_cpu_costs_per_slot`) として計算し、その結果を範囲 [1, totalSlots] にクランプし、計算された値が非正の場合は最低 1 を強制します (totalSlots はクエリキュー V2 の `V2` パラメーターから導出されます)。V2 コードは非正の設定を 1 (Math.max(1, value)) に正規化するため、非正の値は実質的に `1` になります。この値を増やすと、クエリごとに割り当てられるスロットが減り (より少ない、より大きなスロットのクエリを優先)、減らすとクエリごとのスロットが増加します。並列処理とリソースの粒度を制御するために、`query_queue_v2_num_rows_per_slot` および並行性設定と組み合わせて調整します。 -- 導入バージョン: v3.3.4, v3.4.0, v3.5.0 - -##### `query_queue_v2_num_rows_per_slot` - -- デフォルト: 4096 -- タイプ: Int -- 単位: 行 -- 変更可能: はい -- 説明: クエリごとのスロット数を推定する際に、単一のスケジューリングスロットに割り当てられるソース行レコードの目標数。StarRocks は、`estimated_slots` = (ソースノードのカーディナリティ) / `query_queue_v2_num_rows_per_slot` を計算し、その結果を範囲 [1, totalSlots] にクランプし、計算された値が非正の場合は最低 1 を強制します。totalSlots は利用可能なリソース (おおよそ DOP * `query_queue_v2_concurrency_level` * ワーカー/BE の数) から導出されるため、クラスター/コア数に依存します。この値を増やすと、スロット数が減り (各スロットがより多くの行を処理)、スケジューリングオーバーヘッドが削減されます。減らすと、リソース制限まで並列処理が増加します (より多くの、より小さなスロット)。 -- 導入バージョン: v3.3.4, v3.4.0, v3.5.0 - -##### `query_queue_v2_schedule_strategy` - -- デフォルト: SWRR -- タイプ: String -- 単位: - -- 変更可能: はい -- 説明: Query Queue V2 が保留中のクエリを並べ替えるために使用するスケジューリングポリシーを選択します。サポートされる値 (大文字と小文字を区別しない) は `SWRR` (Smooth Weighted Round Robin) — デフォルトで、公平な重み付き共有を必要とする混合/ハイブリッドワークロードに適しています — および `SJF` (Short Job First + Aging) — エイジングを使用して飢餓を回避しながら短いジョブを優先します。この値は、大文字と小文字を区別しない enum ルックアップで解析されます。認識されない値はエラーとしてログに記録され、デフォルトのポリシーが使用されます。この設定は、Query Queue V2 が有効な場合にのみ動作に影響し、`query_queue_v2_concurrency_level` のような V2 サイジング設定と相互作用します。 -- 導入バージョン: v3.3.12, v3.4.2, v3.5.0 - -##### `semi_sync_collect_statistic_await_seconds` - -- デフォルト: 30 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: DML 操作 (INSERT INTO および INSERT OVERWRITE ステートメント) 中の半同期統計収集の最大待機時間。Stream Load および Broker Load は非同期モードを使用し、この設定の影響を受けません。統計収集時間がこの値を超過した場合、ロード操作は収集が完了するのを待たずに続行されます。この設定は `enable_statistic_collect_on_first_load` と連携して機能します。 -- 導入バージョン: v3.1 - -##### `slow_query_analyze_threshold` - -- デフォルト: 5 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: クエリフィードバックの分析をトリガーするクエリの実行時間しきい値。 -- 導入バージョン: v3.4.0 - -##### `statistic_analyze_status_keep_second` - -- デフォルト: 3 * 24 * 3600 -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: 収集タスクの履歴を保持する期間。デフォルト値は 3 日です。 -- 導入バージョン: - - -##### `statistic_auto_analyze_end_time` - -- デフォルト: 23:59:59 -- タイプ: String -- 単位: - -- 変更可能: はい -- 説明: 自動収集の終了時刻。値の範囲: `00:00:00` - `23:59:59`。 -- 導入バージョン: - - -##### `statistic_auto_analyze_start_time` - -- デフォルト: 00:00:00 -- タイプ: String -- 単位: - -- 変更可能: はい -- 説明: 自動収集の開始時刻。値の範囲: `00:00:00` - `23:59:59`。 -- 導入バージョン: - - -##### `statistic_auto_collect_ratio` - -- デフォルト: 0.8 -- タイプ: Double -- 単位: - -- 変更可能: はい -- 説明: 自動収集の統計が正常であるかどうかを判断するためのしきい値。統計の健全性がこのしきい値よりも低い場合、自動収集がトリガーされます。 -- 導入バージョン: - - -##### `statistic_auto_collect_small_table_rows` - -- デフォルト: 10000000 -- タイプ: Long -- 単位: - -- 変更可能: はい -- 説明: 自動収集中に、外部データソース (Hive、Iceberg、Hudi) のテーブルが小規模テーブルであるかどうかを判断するためのしきい値。テーブルの行数がこの値より少ない場合、そのテーブルは小規模テーブルと見なされます。 -- 導入バージョン: v3.2 - -##### `statistic_cache_columns` - -- デフォルト: 100000 -- タイプ: Long -- 単位: - -- 変更可能: いいえ -- 説明: 統計テーブルのためにキャッシュできる行数。 -- 導入バージョン: - - -##### `statistic_cache_thread_pool_size` - -- デフォルト: 10 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: 統計キャッシュを更新するために使用されるスレッドプールのサイズ。 -- 導入バージョン: - - -##### `statistic_collect_interval_sec` - -- デフォルト: 5 * 60 -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: 自動収集中にデータ更新をチェックする間隔。 -- 導入バージョン: - - -##### `statistic_max_full_collect_data_size` - -- デフォルト: 100 * 1024 * 1024 * 1024 -- タイプ: Long -- 単位: バイト -- 変更可能: はい -- 説明: 統計の自動収集のためのデータサイズしきい値。合計サイズがこの値を超えると、完全収集の代わりにサンプリング収集が実行されます。 -- 導入バージョン: - - -##### `statistic_sample_collect_rows` - -- デフォルト: 200000 -- タイプ: Long -- 単位: - -- 変更可能: はい -- 説明: ロードトリガー統計操作中に、SAMPLE と FULL 統計収集のどちらを選択するかを決定するための行数しきい値。ロードまたは変更された行数がこのしきい値 (デフォルト 200,000) を超える場合、SAMPLE 統計収集が使用されます。それ以外の場合、FULL 統計収集が使用されます。この設定は、`enable_statistic_collect_on_first_load` および `statistic_sample_collect_ratio_threshold_of_first_load` と連携して機能します。 -- 導入バージョン: - - -##### `statistic_update_interval_sec` - -- デフォルト: 24 * 60 * 60 -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: 統計情報のキャッシュが更新される間隔。 -- 導入バージョン: - - -##### `task_check_interval_second` - -- デフォルト: 60 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: タスクバックグラウンドジョブの実行間隔。GlobalStateMgr はこの値を使用して `doTaskBackgroundJob()` を呼び出す TaskCleaner FrontendDaemon をスケジュールします。この値はデーモン間隔をミリ秒単位で設定するために 1000 倍されます。値を減らすと、バックグラウンドメンテナンス (タスククリーンアップ、チェック) がより頻繁に実行され、より迅速に反応しますが、CPU/IO オーバーヘッドが増加します。増やすとオーバーヘッドが減少しますが、クリーンアップと古いタスクの検出が遅れます。この値を調整して、メンテナンスの応答性とリソース使用量のバランスをとってください。 -- 導入バージョン: v3.2.0 - -##### `task_min_schedule_interval_s` - -- デフォルト: 10 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: SQL レイヤーによってチェックされるタスクスケジュールの最小許容スケジュール間隔 (秒単位)。タスクが送信されると、TaskAnalyzer はスケジュール期間を秒に変換し、期間が `task_min_schedule_interval_s` よりも小さい場合、`ERR_INVALID_PARAMETER` で送信を拒否します。これにより、頻繁すぎるタスクの作成が防止され、スケジューラーが高頻度タスクから保護されます。スケジュールに明示的な開始時刻がない場合、TaskAnalyzer は開始時刻を現在のエポック秒に設定します。 -- 導入バージョン: v3.3.0, v3.4.0, v3.5.0 - -##### `task_runs_timeout_second` - -- デフォルト: 4 * 3600 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: TaskRun のデフォルト実行タイムアウト (秒単位)。この項目は、TaskRun 実行でベースラインタイムアウトとして使用されます。タスク実行のプロパティに、正の整数値を持つセッション変数 `query_timeout` または `insert_timeout` が含まれている場合、ランタイムは、そのセッションタイムアウトと `task_runs_timeout_second` のうち大きい方の値を使用します。有効なタイムアウトは、構成された `task_runs_ttl_second` と `task_ttl_second` を超えないように制限されます。タスク実行の最大実行時間を制限するには、この項目を設定します。非常に大きな値は、タスク/タスク実行の TTL 設定によってクリップされる可能性があります。 -- 導入バージョン: - - -### ロードとアンロード - -##### `broker_load_default_timeout_second` - -- デフォルト: 14400 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: Broker Load ジョブのタイムアウト期間。 -- 導入バージョン: - - -##### `desired_max_waiting_jobs` - -- デフォルト: 1024 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: FE での保留中のジョブの最大数。この数は、テーブル作成、ロード、スキーマ変更ジョブなど、すべてのジョブを指します。FE での保留中のジョブの数がこの値に達した場合、FE は新しいロードリクエストを拒否します。このパラメーターは、非同期ロードにのみ有効です。v2.5 以降、デフォルト値は 100 から 1024 に変更されました。 -- 導入バージョン: - - -##### `disable_load_job` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: クラスターがエラーに遭遇した場合にロードを無効にするかどうか。これにより、クラスターエラーによるデータの損失が防止されます。デフォルト値は `FALSE` であり、ロードが無効になっていないことを示します。`TRUE` はロードが無効になり、クラスターが読み取り専用状態になることを示します。 -- 導入バージョン: - - -##### `empty_load_as_error` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: データがロードされていない場合に、エラーメッセージ「すべてのパーティションにロードデータがありません」を返すかどうか。有効な値: - - `true`: データがロードされていない場合、システムは失敗メッセージを表示し、「すべてのパーティションにロードデータがありません」というエラーを返します。 - - `false`: データがロードされていない場合、システムは成功メッセージを表示し、エラーではなく OK を返します。 -- 導入バージョン: - - -##### `enable_routine_load_lag_metrics` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: ルーチンロード Kafka パーティションオフセットラグメトリックを収集するかどうか。この項目を `true` に設定すると、Kafka API を呼び出してパーティションの最新オフセットを取得することに注意してください。 -- 導入バージョン: - - -##### `enable_sync_publish` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: ロードトランザクションのパブリッシュフェーズで apply タスクを同期的に実行するかどうか。このパラメーターはプライマリキーテーブルにのみ適用されます。有効な値: - - `TRUE` (デフォルト): ロードトランザクションのパブリッシュフェーズで apply タスクが同期的に実行されます。これは、apply タスクが完了し、ロードされたデータが実際にクエリ可能になった後にのみ、ロードトランザクションが成功として報告されることを意味します。タスクが一度に大量のデータをロードしたり、データを頻繁にロードしたりする場合、このパラメーターを `true` に設定すると、クエリパフォーマンスと安定性を向上させることができますが、ロード遅延が増加する可能性があります。 - - `FALSE`: ロードトランザクションのパブリッシュフェーズで apply タスクが非同期的に実行されます。これは、apply タスクが送信された後にロードトランザクションが成功として報告されますが、ロードされたデータはすぐにクエリできないことを意味します。この場合、同時クエリは apply タスクが完了するかタイムアウトするまで待機する必要があります。タスクが一度に大量のデータをロードしたり、データを頻繁にロードしたりする場合、このパラメーターを `false` に設定すると、クエリパフォーマンスと安定性に影響を与える可能性があります。 -- 導入バージョン: v3.2.0 - -##### `export_checker_interval_second` - -- デフォルト: 5 -- タイプ: Int -- 単位: 秒 -- 変更可能: いいえ -- 説明: ロードジョブがスケジュールされる時間間隔。 -- 導入バージョン: - - -##### `export_max_bytes_per_be_per_task` - -- デフォルト: 268435456 -- タイプ: Long -- 単位: バイト -- 変更可能: はい -- 説明: 単一の BE から単一のデータアンロードタスクでエクスポートできる最大データ量。 -- 導入バージョン: - - -##### `export_running_job_num_limit` - -- デフォルト: 5 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: 並行して実行できるデータエクスポートタスクの最大数。 -- 導入バージョン: - - -##### `export_task_default_timeout_second` - -- デフォルト: 2 * 3600 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: データエクスポートタスクのタイムアウト期間。 -- 導入バージョン: - - -##### `export_task_pool_size` - -- デフォルト: 5 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: アンロードタスクスレッドプールのサイズ。 -- 導入バージョン: - - -##### `external_table_commit_timeout_ms` - -- デフォルト: 10000 -- タイプ: Int -- 単位: ミリ秒 -- 変更可能: はい -- 説明: StarRocks 外部テーブルへの書き込みトランザクションをコミット (発行) するためのタイムアウト期間。デフォルト値 `10000` は 10 秒のタイムアウト期間を示します。 -- 導入バージョン: - - -##### `finish_transaction_default_lock_timeout_ms` - -- デフォルト: 1000 -- タイプ: Int -- 単位: ミリ秒 -- 変更可能: はい -- 説明: トランザクション完了時に db およびテーブルロックを取得するためのデフォルトのタイムアウト。 -- 導入バージョン: v4.0.0, v3.5.8 - -##### `history_job_keep_max_second` - -- デフォルト: 7 * 24 * 3600 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: スキーマ変更ジョブなど、過去のジョブを保持できる最大期間。 -- 導入バージョン: - - -##### `insert_load_default_timeout_second` - -- デフォルト: 3600 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: データをロードするために使用される INSERT INTO ステートメントのタイムアウト期間。 -- 導入バージョン: - - -##### `label_clean_interval_second` - -- デフォルト: 4 * 3600 -- タイプ: Int -- 単位: 秒 -- 変更可能: いいえ -- 説明: ラベルがクリーンアップされる時間間隔。単位: 秒。履歴ラベルがタイムリーにクリーンアップされるように、短い時間間隔を指定することをお勧めします。 -- 導入バージョン: - - -##### `label_keep_max_num` - -- デフォルト: 1000 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: 一定期間内に保持できるロードジョブの最大数。この数を超えると、履歴ジョブの情報は削除されます。 -- 導入バージョン: - - -##### `label_keep_max_second` - -- デフォルト: 3 * 24 * 3600 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: 完了し、FINISHED または CANCELLED 状態にあるロードジョブのラベルを保持する最大期間 (秒単位)。デフォルト値は 3 日です。この期間が経過すると、ラベルは削除されます。このパラメーターは、すべての種類のロードジョブに適用されます。値が大きすぎると、大量のメモリを消費します。 -- 導入バージョン: - - -##### `load_checker_interval_second` - -- デフォルト: 5 -- タイプ: Int -- 単位: 秒 -- 変更可能: いいえ -- 説明: ロードジョブがローリングベースで処理される時間間隔。 -- 導入バージョン: - - -##### `load_parallel_instance_num` - -- デフォルト: 1 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: Broker Load と Stream Load の単一ホスト上に作成される並列ロードフラグメントインスタンスの数を制御します。LoadPlanner は、セッションがアダプティブシンク DOP を有効にしない限り、この値をホストあたりの並列度として使用します。セッション変数 `enable_adaptive_sink_dop` が true の場合、セッションの `sink_degree_of_parallelism` がこの設定を上書きします。シャッフルが必要な場合、この値はフラグメントの並列実行 (スキャンフラグメントとシンクフラグメントの並列実行インスタンス) に適用されます。シャッフルが不要な場合、シンクパイプライン DOP として使用されます。注: ローカルファイルからのロードは、ローカルディスクの競合を避けるために、単一インスタンス (パイプライン DOP = 1、並列実行 = 1) に強制されます。この値を増やすと、ホストあたりの並行性とスループットが向上しますが、CPU、メモリ、および I/O の競合が増加する可能性があります。 -- 導入バージョン: v3.2.0 - -##### `load_straggler_wait_second` - -- デフォルト: 300 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: BE レプリカが許容できる最大ロード遅延。この値を超過すると、他のレプリカからデータをクローンするためにクローニングが実行されます。 -- 導入バージョン: - - -##### `loads_history_retained_days` - -- デフォルト: 30 -- タイプ: Int -- 単位: 日 -- 変更可能: はい -- 説明: 内部 `_statistics_.loads_history` テーブルにロード履歴を保持する日数。この値は、テーブル作成時に `partition_live_number` テーブルプロパティを設定するために使用され、`TableKeeper` に渡され (最小 1 にクランプされます)、保持する日次パーティションの数を決定します。この値を増減すると、完了したロードジョブが日次パーティションに保持される期間が調整されます。新しいテーブルの作成とキーパーの削除動作に影響しますが、過去のパーティションを自動的に再作成することはありません。`LoadsHistorySyncer` は、ロード履歴のライフサイクルを管理する際にこの保持に依存します。その同期頻度は `loads_history_sync_interval_second` によって制御されます。 -- 導入バージョン: v3.3.6, v3.4.0, v3.5.0 - -##### `loads_history_sync_interval_second` - -- デフォルト: 60 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: LoadsHistorySyncer が `information_schema.loads` から内部 `_statistics_.loads_history` テーブルに完了したロードジョブの定期的な同期をスケジュールするために使用する間隔 (秒単位)。値はコンストラクタで 1000 倍され、FrontendDaemon 間隔を設定します。シンクロナイザーは最初の実行をスキップし (テーブル作成を許可するため)、1 分以上前に完了したロードのみをインポートします。小さい値は DML とエグゼキュータの負荷を増加させ、大きい値は履歴ロードレコードの可用性を遅らせます。ターゲットテーブルの保持/パーティション分割動作については `loads_history_retained_days` を参照してください。 -- 導入バージョン: v3.3.6, v3.4.0, v3.5.0 - -##### `max_broker_load_job_concurrency` - -- デフォルト: 5 -- エイリアス: `async_load_task_pool_size` -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: StarRocks クラスター内で許可される Broker Load ジョブの最大同時実行数。このパラメーターは Broker Load にのみ有効です。このパラメーターの値は、`max_running_txn_num_per_db` の値よりも小さくなければなりません。v2.5 以降、デフォルト値は `10` から `5` に変更されました。 -- 導入バージョン: - - -##### `max_load_timeout_second` - -- デフォルト: 259200 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: ロードジョブに許可される最大タイムアウト期間。この制限を超過すると、ロードジョブは失敗します。この制限は、すべての種類のロードジョブに適用されます。 -- 導入バージョン: - - -##### `max_routine_load_batch_size` - -- デフォルト: 4294967296 -- タイプ: Long -- 単位: バイト -- 変更可能: はい -- 説明: Routine Load タスクでロードできる最大データ量。 -- 導入バージョン: - - -##### `max_routine_load_task_concurrent_num` - -- デフォルト: 5 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: 各 Routine Load ジョブの最大同時タスク数。 -- 導入バージョン: - - -##### `max_routine_load_task_num_per_be` - -- デフォルト: 16 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: 各 BE での最大同時 Routine Load タスク数。v3.1.0 以降、このパラメーターのデフォルト値は 5 から 16 に増加し、BE 静的パラメーター `routine_load_thread_pool_size` (非推奨) の値以下である必要がなくなりました。 -- 導入バージョン: - - -##### `max_running_txn_num_per_db` - -- デフォルト: 1000 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: StarRocks クラスター内の各データベースで実行が許可されるロードトランザクションの最大数。デフォルト値は `1000` です。v3.1 以降、デフォルト値は `100` から `1000` に変更されました。データベースで実行中のロードトランザクションの実際の数がこのパラメーターの値を超過すると、新しいロードリクエストは処理されません。同期ロードジョブの新しいリクエストは拒否され、非同期ロードジョブの新しいリクエストはキューに入れられます。このパラメーターの値を増やすことは、システム負荷を増加させるため、推奨しません。 -- 導入バージョン: - - -##### `max_stream_load_timeout_second` - -- デフォルト: 259200 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: Stream Load ジョブに許可される最大タイムアウト期間。 -- 導入バージョン: - - -##### `max_tolerable_backend_down_num` - -- デフォルト: 0 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: 許容される障害 BE ノードの最大数。この数を超過すると、Routine Load ジョブは自動的に復旧できません。 -- 導入バージョン: - - -##### `min_bytes_per_broker_scanner` - -- デフォルト: 67108864 -- タイプ: Long -- 単位: バイト -- 変更可能: はい -- 説明: Broker Load インスタンスで処理できる最小データ量。 -- 導入バージョン: - - -##### `min_load_timeout_second` - -- デフォルト: 1 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: ロードジョブに許可される最小タイムアウト期間。この制限は、すべての種類のロードジョブに適用されます。 -- 導入バージョン: - - -##### `min_routine_load_lag_for_metrics` - -- デフォルト: 10000 -- タイプ: INT -- 単位: - -- 変更可能: はい -- 説明: モニタリングメトリックに表示される Routine Load ジョブの最小オフセット遅延。オフセット遅延がこの値よりも大きい Routine Load ジョブはメトリックに表示されます。 -- 導入バージョン: - - -##### `period_of_auto_resume_min` - -- デフォルト: 5 -- タイプ: Int -- 単位: 分 -- 変更可能: はい -- 説明: Routine Load ジョブが自動的に復旧される間隔。 -- 導入バージョン: - - -##### `prepared_transaction_default_timeout_second` - -- デフォルト: 86400 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: 準備されたトランザクションのデフォルトのタイムアウト期間。 -- 導入バージョン: - - -##### `routine_load_task_consume_second` - -- デフォルト: 15 -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: クラスター内の各 Routine Load タスクがデータを消費する最大時間。v3.1.0 以降、Routine Load ジョブは [`job_properties`](../../sql-reference/sql-statements/loading_unloading/routine_load/CREATE_ROUTINE_LOAD.md#job_properties) で新しいパラメーター `task_consume_second` をサポートしています。このパラメーターは Routine Load ジョブ内の個々のロードタスクに適用され、より柔軟性があります。 -- 導入バージョン: - - -##### `routine_load_task_timeout_second` - -- デフォルト: 60 -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: クラスター内の各 Routine Load タスクのタイムアウト期間。v3.1.0 以降、Routine Load ジョブは [`job_properties`](../../sql-reference/sql-statements/loading_unloading/routine_load/CREATE_ROUTINE_LOAD.md#job_properties) で新しいパラメーター `task_timeout_second` をサポートしています。このパラメーターは Routine Load ジョブ内の個々のロードタスクに適用され、より柔軟性があります。 -- 導入バージョン: - - -##### `routine_load_unstable_threshold_second` - -- デフォルト: 3600 -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: Routine Load ジョブ内のいずれかのタスクが遅延した場合、Routine Load ジョブは UNSTABLE 状態に設定されます。具体的には、消費されているメッセージのタイムスタンプと現在の時刻の差がこのしきい値を超え、データソースに消費されていないメッセージが存在する場合です。 -- 導入バージョン: - - -##### `spark_dpp_version` - -- デフォルト: 1.0.0 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: 使用される Spark Dynamic Partition Pruning (DPP) のバージョン。 -- 導入バージョン: - - -##### `spark_home_default_dir` - -- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/lib/spark2x" -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: Spark クライアントのルートディレクトリ。 -- 導入バージョン: - - -##### `spark_launcher_log_dir` - -- デフォルト: `sys_log_dir` + "/spark_launcher_log" -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: Spark ログファイルを格納するディレクトリ。 -- 導入バージョン: - - -##### `spark_load_default_timeout_second` - -- デフォルト: 86400 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: 各 Spark Load ジョブのタイムアウト期間。 -- 導入バージョン: - - -##### `spark_load_submit_timeout_second` - -- デフォルト: 300 -- タイプ: long -- 単位: 秒 -- 変更可能: いいえ -- 説明: Spark アプリケーションの送信後、YARN の応答を待機する最大時間 (秒単位)。`SparkLauncherMonitor.LogMonitor` はこの値をミリ秒に変換し、ジョブが UNKNOWN/CONNECTED/SUBMITTED 状態でこのタイムアウトよりも長く維持された場合、監視を停止し、スパークランチャープロセスを強制終了します。`SparkLoadJob` はこの設定をデフォルトとして読み込み、`LoadStmt.SPARK_LOAD_SUBMIT_TIMEOUT` プロパティを介してロードごとの上書きを許可します。YARN キューイングの遅延に対応するのに十分な高さに設定してください。低すぎると正当にキューに入れられたジョブが中断される可能性があり、高すぎると障害処理とリソースクリーンアップが遅れる可能性があります。 -- 導入バージョン: v3.2.0 - -##### `spark_resource_path` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: Spark 依存関係パッケージのルートディレクトリ。 -- 導入バージョン: - - -##### `stream_load_default_timeout_second` - -- デフォルト: 600 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: 各 Stream Load ジョブのデフォルトのタイムアウト期間。 -- 導入バージョン: - - -##### `stream_load_max_txn_num_per_be` - -- デフォルト: -1 -- タイプ: Int -- 単位: トランザクション -- 変更可能: はい -- 説明: 単一の BE (バックエンド) ホストから受け入れられる同時ストリームロードトランザクションの数を制限します。非負の整数に設定されている場合、FrontendServiceImpl は BE (クライアント IP 別) の現在のトランザクション数をチェックし、カウントが `>=` この制限である場合、新しいストリームロード開始リクエストを拒否します。`< 0` の値は制限を無効にします (無制限)。このチェックはストリームロード開始時に発生し、超過すると `streamload txn num per be exceeds limit` エラーが発生する可能性があります。関連する実行時動作は、リクエストタイムアウトフォールバックに `stream_load_default_timeout_second` を使用します。 -- 導入バージョン: v3.3.0, v3.4.0, v3.5.0 - -##### `stream_load_task_keep_max_num` - -- デフォルト: 1000 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: StreamLoadMgr がメモリに保持する Stream Load タスクの最大数 (すべてのデータベースにわたるグローバル)。追跡されているタスク数 (`idToStreamLoadTask`) がこのしきい値を超過すると、StreamLoadMgr はまず `cleanSyncStreamLoadTasks()` を呼び出して完了した同期ストリームロードタスクを削除します。サイズがこのしきい値の半分を超過したままの場合、`cleanOldStreamLoadTasks(true)` を呼び出して、古いタスクまたは完了したタスクの強制削除を実行します。メモリに多くのタスク履歴を保持するにはこの値を増やし、メモリ使用量を減らし、クリーンアップをより積極的に行うには減らします。この値はインメモリ保持のみを制御し、永続化/再生されたタスクには影響しません。 -- 導入バージョン: v3.2.0 - -##### `stream_load_task_keep_max_second` - -- デフォルト: 3 * 24 * 3600 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: 完了またはキャンセルされた Stream Load タスクの保持ウィンドウ。タスクが最終状態に到達し、その終了タイムスタンプがこのしきい値 (`currentMs - endTimeMs > stream_load_task_keep_max_second * 1000`) より古い場合、`StreamLoadMgr.cleanOldStreamLoadTasks` によって削除対象となり、永続化された状態をロードする際に破棄されます。`StreamLoadTask` と `StreamLoadMultiStmtTask` の両方に適用されます。合計タスク数が `stream_load_task_keep_max_num` を超える場合、クリーンアップが早期にトリガーされる可能性があります (同期タスクは `cleanSyncStreamLoadTasks` によって優先されます)。履歴/デバッグ可能性とメモリ使用量のバランスをとるためにこれを設定します。 -- 導入バージョン: v3.2.0 - -##### `transaction_clean_interval_second` - -- デフォルト: 30 -- タイプ: Int -- 単位: 秒 -- 変更可能: いいえ -- 説明: 完了したトランザクションがクリーンアップされる時間間隔。単位: 秒。完了したトランザクションがタイムリーにクリーンアップされるように、短い時間間隔を指定することをお勧めします。 -- 導入バージョン: - - -##### `transaction_stream_load_coordinator_cache_capacity` - -- デフォルト: 4096 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: トランザクションラベルからコーディネーターノードへのマッピングを格納するキャッシュの容量。 -- 導入バージョン: - - -##### `transaction_stream_load_coordinator_cache_expire_seconds` - -- デフォルト: 900 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: コーディネーターマッピングがキャッシュから削除されるまでの時間 (TTL)。 -- 導入バージョン: - - -##### `yarn_client_path` - -- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/lib/yarn-client/hadoop/bin/yarn" -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: Yarn クライアントパッケージのルートディレクトリ。 -- 導入バージョン: - - -##### `yarn_config_dir` - -- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/lib/yarn-config" -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: Yarn 設定ファイルを格納するディレクトリ。 -- 導入バージョン: - - -### 統計レポート - -##### `enable_collect_warehouse_metrics` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: この項目が `true` に設定されている場合、システムはウェアハウスごとのメトリックを収集してエクスポートします。これを有効にすると、ウェアハウスレベルのメトリック (スロット/使用量/可用性) がメトリック出力に追加され、メトリックのカーディナリティと収集オーバーヘッドが増加します。ウェアハウス固有のメトリックを省略し、CPU/ネットワークと監視ストレージのコストを削減するには無効にします。 -- 導入バージョン: v3.5.0 - -##### `enable_http_detail_metrics` - -- デフォルト: false -- タイプ: boolean -- 単位: - -- 変更可能: はい -- 説明: true の場合、HTTP サーバーは詳細な HTTP ワーカーメトリック (特に `HTTP_WORKER_PENDING_TASKS_NUM` ゲージ) を計算して公開します。これを有効にすると、サーバーは Netty ワーカーエグゼキュータを反復処理し、各 `NioEventLoop` で `pendingTasks()` を呼び出して保留中のタスクカウントを合計します。無効にすると、そのコストを避けるためにゲージは 0 を返します。この追加の収集は CPU および遅延に敏感である可能性があります。デバッグまたは詳細な調査のためにのみ有効にしてください。 -- 導入バージョン: v3.2.3 - -##### `proc_profile_collect_time_s` - -- デフォルト: 120 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: 単一のプロセスプロファイル収集の期間 (秒単位)。`proc_profile_cpu_enable` または `proc_profile_mem_enable` が `true` に設定されている場合、AsyncProfiler が起動され、コレクタースレッドはこの期間スリープし、その後プロファイラーが停止され、プロファイルが書き込まれます。値が大きいほどサンプルカバレッジとファイルサイズが増加しますが、プロファイラーの実行時間が長くなり、その後の収集が遅れます。値が小さいほどオーバーヘッドが減少しますが、不十分なサンプルが生成される可能性があります。この値が `proc_profile_file_retained_days` や `proc_profile_file_retained_size_bytes` などの保持設定と一致していることを確認してください。 -- 導入バージョン: v3.2.12 - -### ストレージ - -##### `alter_table_timeout_second` - -- デフォルト: 86400 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: スキーマ変更操作 (ALTER TABLE) のタイムアウト期間。 -- 導入バージョン: - - -##### `capacity_used_percent_high_water` - -- デフォルト: 0.75 -- タイプ: double -- 単位: 小数 (0.0–1.0) -- 変更可能: はい -- 説明: バックエンド負荷スコアを計算する際に使用される、ディスク使用率のハイウォーターしきい値 (総容量の割合)。`BackendLoadStatistic.calcSore` は `capacity_used_percent_high_water` を使用して `LoadScore.capacityCoefficient` を設定します。バックエンドの使用率が 0.5 未満の場合、係数は 0.5 に等しくなります。使用率が `capacity_used_percent_high_water` より大きい場合、係数は 1.0 に等しくなります。それ以外の場合、係数は使用率に比例して線形に遷移します (2 * usedPercent - 0.5)。係数が 1.0 の場合、負荷スコアは容量の割合のみによって決定されます。値が低いほど、レプリカ数の重みが増加します。この値を調整すると、高ディスク使用率のバックエンドに対するバランサーのペナルティがどれだけ厳しくなるかが変わります。 -- 導入バージョン: v3.2.0 - -##### `catalog_trash_expire_second` - -- デフォルト: 86400 -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: データベース、テーブル、またはパーティションが削除された後、メタデータを保持できる最長期間。この期間が経過すると、データは削除され、[RECOVER](../../sql-reference/sql-statements/backup_restore/RECOVER.md) コマンドで復元することはできません。 -- 導入バージョン: - - -##### `check_consistency_default_timeout_second` - -- デフォルト: 600 -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: レプリカの一貫性チェックのタイムアウト期間。タブレットのサイズに基づいてこのパラメーターを設定できます。 -- 導入バージョン: - - -##### `consistency_check_cooldown_time_second` - -- デフォルト: 24 * 3600 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: 同じタブレットの一貫性チェックの間隔 (秒単位) を制御します。タブレット選択中、タブレットが適格と見なされるのは、`tablet.getLastCheckTime()` が `(currentTimeMillis - consistency_check_cooldown_time_second * 1000)` より小さい場合のみです。デフォルト値 (24 * 3600) は、バックエンドディスク I/O を削減するために、タブレットあたり約 1 日に 1 回のチェックを強制します。この値を減らすとチェック頻度とリソース使用量が増加し、増やすと不整合検出が遅くなる代わりに I/O が減少します。この値は、インデックスのタブレットリストから冷却されたタブレットをフィルタリングする際にグローバルに適用されます。 -- 導入バージョン: v3.5.5 - -##### `consistency_check_end_time` - -- デフォルト: "4" -- タイプ: String -- 単位: 時 (0-23) -- 変更可能: いいえ -- 説明: ConsistencyChecker の作業ウィンドウの終了時間 (時単位) を指定します。値はシステムタイムゾーンで SimpleDateFormat("HH") で解析され、0 から 23 (1 桁または 2 桁) として受け入れられます。StarRocks は `consistency_check_start_time` とともにこれを使用して、一貫性チェックジョブをスケジュールおよび追加するタイミングを決定します。`consistency_check_start_time` が `consistency_check_end_time` より大きい場合、ウィンドウは深夜をまたぎます (たとえば、デフォルトは `consistency_check_start_time` = "23" から `consistency_check_end_time` = "4")。`consistency_check_start_time` が `consistency_check_end_time` と等しい場合、チェッカーは実行されません。解析に失敗すると FE の起動がエラーをログに記録して終了するため、有効な時文字列を指定してください。 -- 導入バージョン: v3.2.0 - -##### `consistency_check_start_time` - -- デフォルト: "23" -- タイプ: String -- 単位: 時 (00-23) -- 変更可能: いいえ -- 説明: ConsistencyChecker の作業ウィンドウの開始時間 (時単位) を指定します。値はシステムタイムゾーンで SimpleDateFormat("HH") で解析され、0 から 23 (1 桁または 2 桁) として受け入れられます。StarRocks は `consistency_check_end_time` とともにこれを使用して、一貫性チェックジョブをスケジュールおよび追加するタイミングを決定します。`consistency_check_start_time` が `consistency_check_end_time` より大きい場合、ウィンドウは深夜をまたぎます (たとえば、デフォルトは `consistency_check_start_time` = "23" から `consistency_check_end_time` = "4")。`consistency_check_start_time` が `consistency_check_end_time` と等しい場合、チェッカーは実行されません。解析に失敗すると FE の起動がエラーをログに記録して終了するため、有効な時文字列を指定してください。 -- 導入バージョン: v3.2.0 - -##### `consistency_tablet_meta_check_interval_ms` - -- デフォルト: 2 * 3600 * 1000 -- タイプ: Int -- 単位: ミリ秒 -- 変更可能: はい -- 説明: ConsistencyChecker が `TabletInvertedIndex` と `LocalMetastore` の間で完全なタブレットメタ一貫性スキャンを実行する間隔。`runAfterCatalogReady` のデーモンは、`current time - lastTabletMetaCheckTime` がこの値を超過したときに checkTabletMetaConsistency をトリガーします。無効なタブレットが最初に検出されると、その `toBeCleanedTime` は `now + (consistency_tablet_meta_check_interval_ms / 2)` に設定されるため、実際の削除はその後のスキャンまで遅延されます。スキャン頻度と負荷を減らすにはこの値を増やし (クリーンアップが遅れる)、古いタブレットをより迅速に検出して削除するにはこの値を減らします (オーバーヘッドが増加します)。 -- 導入バージョン: v3.2.0 - -##### `default_replication_num` - -- デフォルト: 3 -- タイプ: Short -- 単位: - -- 変更可能: はい -- 説明: StarRocks でテーブルを作成する際に、各データパーティションのレプリカのデフォルト数を設定します。この設定は、CREATE TABLE DDL で `replication_num=x` を指定することで、テーブル作成時に上書きできます。 -- 導入バージョン: - - -##### `enable_auto_tablet_distribution` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: バケットの数を自動的に設定するかどうか。 - - このパラメーターが `TRUE` に設定されている場合、テーブルを作成したりパーティションを追加したりするときにバケットの数を指定する必要はありません。StarRocks は自動的にバケットの数を決定します。 - - このパラメーターが `FALSE` に設定されている場合、テーブルを作成したりパーティションを追加したりするときにバケットの数を手動で指定する必要があります。テーブルに新しいパーティションを追加するときにバケット数を指定しない場合、新しいパーティションはテーブル作成時に設定されたバケット数を継承します。ただし、新しいパーティションのバケット数を手動で指定することもできます。 -- 導入バージョン: v2.5.7 - -##### `enable_experimental_rowstore` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: [ハイブリッド行/列ストレージ](../../table_design/hybrid_table.md) 機能を有効にするかどうか。 -- 導入バージョン: v3.2.3 - -##### `enable_fast_schema_evolution` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: StarRocks クラスター内のすべてのテーブルで高速スキーマ進化を有効にするかどうか。有効な値は `TRUE` と `FALSE` (デフォルト) です。高速スキーマ進化を有効にすると、スキーマ変更の速度が向上し、列の追加または削除時のリソース使用量が削減されます。 -- 導入バージョン: v3.2.0 - -> **注意** -> -> - StarRocks Shared-data クラスターは v3.3.0 以降このパラメーターをサポートします。 -> - 特定のテーブルの高速スキーマ進化を設定する必要がある場合 (特定のテーブルの高速スキーマ進化を無効にするなど) は、テーブル作成時にテーブルプロパティ [`fast_schema_evolution`](../../sql-reference/sql-statements/table_bucket_part_index/CREATE_TABLE.md#set-fast-schema-evolution) を設定できます。 - -##### `enable_online_optimize_table` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: StarRocks が最適化ジョブを作成する際に、非ブロッキングオンライン最適化パスを使用するかどうかを制御します。`enable_online_optimize_table` が true で、ターゲットテーブルが互換性チェック (パーティション/キー/ソート指定なし、分散が `RandomDistributionDesc` でない、ストレージタイプが `COLUMN_WITH_ROW` でない、レプリケートされたストレージが有効、テーブルがクラウドネイティブテーブルまたはマテリアライズドビューではない) を満たす場合、プランナーは `OnlineOptimizeJobV2` を作成して、書き込みをブロックせずに最適化を実行します。false の場合、または互換性条件が失敗した場合、StarRocks は `OptimizeJobV2` にフォールバックします。これは、最適化中に書き込み操作をブロックする可能性があります。 -- 導入バージョン: v3.3.3, v3.4.0, v3.5.0 - -##### `enable_strict_storage_medium_check` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: ユーザーがテーブルを作成する際に、FE が BE のストレージメディアを厳密にチェックするかどうか。このパラメーターが `TRUE` に設定されている場合、FE はユーザーがテーブルを作成する際に BE のストレージメディアをチェックし、BE のストレージメディアが CREATE TABLE ステートメントで指定された `storage_medium` パラメーターと異なる場合、エラーを返します。例えば、CREATE TABLE ステートメントで指定されたストレージメディアが SSD であるが、BE の実際のストレージメディアが HDD である場合などです。結果として、テーブル作成は失敗します。このパラメーターが `FALSE` の場合、FE はユーザーがテーブルを作成する際に BE のストレージメディアをチェックしません。 -- 導入バージョン: - - -##### `max_bucket_number_per_partition` - -- デフォルト: 1024 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: パーティションで作成できるバケットの最大数。 -- 導入バージョン: v3.3.2 - -##### `max_column_number_per_table` - -- デフォルト: 10000 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: テーブルで作成できる列の最大数。 -- 導入バージョン: v3.3.2 - -##### `max_dynamic_partition_num` - -- デフォルト: 500 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: 動的パーティションテーブルを分析または作成する際に、一度に作成できるパーティションの最大数を制限します。動的パーティションプロパティの検証中に、`systemtask_runs_max_history_number` は予想されるパーティション (終了オフセット + 履歴パーティション数) を計算し、その合計が `max_dynamic_partition_num` を超える場合、DDL エラーをスローします。正当に大きなパーティション範囲を期待する場合にのみこの値を増やしてください。増やすと、より多くのパーティションを作成できますが、メタデータサイズ、スケジューリング作業、および運用上の複雑さが増加する可能性があります。 -- 導入バージョン: v3.2.0 - -##### `max_partition_number_per_table` - -- デフォルト: 100000 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: テーブルで作成できるパーティションの最大数。 -- 導入バージョン: v3.3.2 - -##### `max_task_consecutive_fail_count` - -- デフォルト: 10 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: スケジューラがタスクを自動的に一時停止するまでに、タスクが連続して失敗できる最大回数。`TaskSource.MV.equals(task.getSource())` と `max_task_consecutive_fail_count` が 0 より大きい場合、タスクの連続失敗カウンターが `max_task_consecutive_fail_count` に達するか超えると、タスクは TaskManager を介して一時停止され、マテリアライズドビュータスクの場合、マテリアライズドビューは非アクティブ化されます。一時停止と再アクティブ化の方法を示す例外がスローされます (例: `ALTER MATERIALIZED VIEW ACTIVE`)。自動一時停止を無効にするには、この項目を 0 または負の値に設定します。 -- 導入バージョン: - - -##### `partition_recycle_retention_period_secs` - -- デフォルト: 1800 -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: INSERT OVERWRITE またはマテリアライズドビュー更新操作によって削除されたパーティションのメタデータ保持時間。このメタデータは [RECOVER](../../sql-reference/sql-statements/backup_restore/RECOVER.md) を実行しても復元できないことに注意してください。 -- 導入バージョン: v3.5.9 - -##### `recover_with_empty_tablet` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: 紛失または破損したタブレットレプリカを空のレプリカで置き換えるかどうか。タブレットレプリカが紛失または破損した場合、このタブレットまたは他の健全なタブレットのデータクエリは失敗する可能性があります。紛失または破損したタブレットレプリカを空のタブレットで置き換えることで、クエリは引き続き実行できます。ただし、データが失われるため、結果が不正確になる可能性があります。デフォルト値は `FALSE` であり、紛失または破損したタブレットレプリカは空のレプリカで置き換えられず、クエリは失敗します。 -- 導入バージョン: - - -##### `storage_usage_hard_limit_percent` - -- デフォルト: 95 -- エイリアス: `storage_flood_stage_usage_percent` -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: BE ディレクトリのストレージ使用率のハードリミット。BE ストレージディレクトリのストレージ使用率 (パーセンテージ) がこの値を超え、残りのストレージスペースが `storage_usage_hard_limit_reserve_bytes` 未満の場合、ロードおよびリカバリジョブは拒否されます。設定を有効にするには、BE 設定項目 `storage_flood_stage_usage_percent` とともにこの項目を設定する必要があります。 -- 導入バージョン: - - -##### `storage_usage_hard_limit_reserve_bytes` - -- デフォルト: 100 * 1024 * 1024 * 1024 -- エイリアス: `storage_flood_stage_left_capacity_bytes` -- タイプ: Long -- 単位: バイト -- 変更可能: はい -- 説明: BE ディレクトリの残りのストレージスペースのハードリミット。BE ストレージディレクトリの残りのストレージスペースがこの値未満で、ストレージ使用率 (パーセンテージ) が `storage_usage_hard_limit_percent` を超える場合、ロードおよびリカバリジョブは拒否されます。設定を有効にするには、BE 設定項目 `storage_flood_stage_left_capacity_bytes` とともにこの項目を設定する必要があります。 -- 導入バージョン: - - -##### `storage_usage_soft_limit_percent` - -- デフォルト: 90 -- エイリアス: `storage_high_watermark_usage_percent` -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: BE ディレクトリのストレージ使用率のソフトリミット。BE ストレージディレクトリのストレージ使用率 (パーセンテージ) がこの値を超え、残りのストレージスペースが `storage_usage_soft_limit_reserve_bytes` 未満の場合、タブレットはこのディレクトリにクローンできません。 -- 導入バージョン: - - -##### `storage_usage_soft_limit_reserve_bytes` - -- デフォルト: 200 * 1024 * 1024 * 1024 -- エイリアス: `storage_min_left_capacity_bytes` -- タイプ: Long -- 単位: バイト -- 変更可能: はい -- 説明: BE ディレクトリの残りのストレージスペースのソフトリミット。BE ストレージディレクトリの残りのストレージスペースがこの値未満で、ストレージ使用率 (パーセンテージ) が `storage_usage_soft_limit_percent` を超える場合、タブレットはこのディレクトリにクローンできません。 -- 導入バージョン: - - -##### `tablet_checker_lock_time_per_cycle_ms` - -- デフォルト: 1000 -- タイプ: Int -- 単位: ミリ秒 -- 変更可能: はい -- 説明: タブレットチェッカーがテーブルロックを解放して再取得する前に、サイクルごとに保持するロックの最大時間。100 未満の値は 100 として扱われます。 -- 導入バージョン: v3.5.9, v4.0.2 - -##### `tablet_create_timeout_second` - -- デフォルト: 10 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: タブレット作成のタイムアウト期間。v3.1 以降、デフォルト値は 1 から 10 に変更されました。 -- 導入バージョン: - - -##### `tablet_delete_timeout_second` - -- デフォルト: 2 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: タブレット削除のタイムアウト期間。 -- 導入バージョン: - - -##### `tablet_sched_balance_load_disk_safe_threshold` - -- デフォルト: 0.5 -- エイリアス: `balance_load_disk_safe_threshold` -- タイプ: Double -- 単位: - -- 変更可能: はい -- 説明: BE のディスク使用量がバランスしているかどうかを判断するためのパーセンテージしきい値。すべての BE のディスク使用量がこの値より低い場合、バランスしていると見なされます。ディスク使用量がこの値より大きく、最高の BE ディスク使用量と最低の BE ディスク使用量の差が 10% より大きい場合、ディスク使用量はバランスが取れていないと見なされ、タブレットの再バランシングがトリガーされます。 -- 導入バージョン: - - -##### `tablet_sched_balance_load_score_threshold` - -- デフォルト: 0.1 -- エイリアス: `balance_load_score_threshold` -- タイプ: Double -- 単位: - -- 変更可能: はい -- 説明: BE の負荷がバランスしているかどうかを判断するためのパーセンテージしきい値。BE の負荷がすべての BE の平均負荷よりも低く、その差がこの値より大きい場合、この BE は低負荷状態にあります。逆に、BE の負荷が平均負荷よりも高く、その差がこの値より大きい場合、この BE は高負荷状態にあります。 -- 導入バージョン: - - -##### `tablet_sched_be_down_tolerate_time_s` - -- デフォルト: 900 -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: スケジューラが BE ノードが非アクティブな状態を許容する最大期間。この時間しきい値に達すると、その BE ノード上のタブレットは他のアクティブな BE ノードに移行されます。 -- 導入バージョン: v2.5.7 - -##### `tablet_sched_disable_balance` - -- デフォルト: false -- エイリアス: `disable_balance` -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: タブレットのバランシングを無効にするかどうか。`TRUE` はタブレットのバランシングが無効になっていることを示します。`FALSE` はタブレットのバランシングが有効になっていることを示します。 -- 導入バージョン: - - -##### `tablet_sched_disable_colocate_balance` - -- デフォルト: false -- エイリアス: `disable_colocate_balance` -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: Colocate Table のレプリカバランシングを無効にするかどうか。`TRUE` はレプリカバランシングが無効になっていることを示します。`FALSE` はレプリカバランシングが有効になっていることを示します。 -- 導入バージョン: - - -##### `tablet_sched_max_balancing_tablets` - -- デフォルト: 500 -- エイリアス: `max_balancing_tablets` -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: 同時にバランスできるタブレットの最大数。この値を超過すると、タブレットの再バランシングはスキップされます。 -- 導入バージョン: - - -##### `tablet_sched_max_clone_task_timeout_sec` - -- デフォルト: 2 * 60 * 60 -- エイリアス: `max_clone_task_timeout_sec` -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: タブレットのクローニングの最大タイムアウト期間。 -- 導入バージョン: - - -##### `tablet_sched_max_not_being_scheduled_interval_ms` - -- デフォルト: 15 * 60 * 1000 -- タイプ: Long -- 単位: ミリ秒 -- 変更可能: はい -- 説明: タブレットクローンタスクがスケジュールされているときに、タブレットがこのパラメーターで指定された時間スケジュールされていない場合、StarRocks はそれをできるだけ早くスケジュールするために高い優先度を与えます。 -- 導入バージョン: - - -##### `tablet_sched_max_scheduling_tablets` - -- デフォルト: 10000 -- エイリアス: `max_scheduling_tablets` -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: 同時にスケジュールできるタブレットの最大数。この値を超過すると、タブレットのバランシングと修復チェックはスキップされます。 -- 導入バージョン: - - -##### `tablet_sched_min_clone_task_timeout_sec` - -- デフォルト: 3 * 60 -- エイリアス: `min_clone_task_timeout_sec` -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: タブレットのクローニングの最小タイムアウト期間。 -- 導入バージョン: - - -##### `tablet_sched_num_based_balance_threshold_ratio` - -- デフォルト: 0.5 -- エイリアス: - -- タイプ: Double -- 単位: - -- 変更可能: はい -- 説明: 数値ベースのバランシングはディスクサイズバランスを崩す可能性がありますが、ディスク間の最大ギャップは `tablet_sched_num_based_balance_threshold_ratio` * `tablet_sched_balance_load_score_threshold` を超えることはできません。クラスター内でタブレットが常に A から B、B から A へとバランスされている場合、この値を減らします。タブレットの分散をよりバランスさせたい場合は、この値を増やします。 -- 導入バージョン: - 3.1 - -##### `tablet_sched_repair_delay_factor_second` - -- デフォルト: 60 -- エイリアス: `tablet_repair_delay_factor_second` -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: レプリカが修復される間隔 (秒単位)。 -- 導入バージョン: - - -##### `tablet_sched_slot_num_per_path` - -- デフォルト: 8 -- エイリアス: `schedule_slot_num_per_path` -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: BE ストレージディレクトリで同時に実行できるタブレット関連タスクの最大数。v2.5 以降、このパラメーターのデフォルト値は `4` から `8` に変更されました。 -- 導入バージョン: - - -##### `tablet_sched_storage_cooldown_second` - -- デフォルト: -1 -- エイリアス: `storage_cooldown_second` -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: テーブル作成時からの自動クールダウンのレイテンシー。デフォルト値 `-1` は自動クールダウンが無効になっていることを指定します。自動クールダウンを有効にする場合は、このパラメーターを `-1` より大きい値に設定してください。 -- 導入バージョン: - - -##### `tablet_stat_update_interval_second` - -- デフォルト: 300 -- タイプ: Int -- 単位: 秒 -- 変更可能: いいえ -- 説明: FE が各 BE からタブレット統計を取得する時間間隔。 -- 導入バージョン: - - -### Shared-data - -##### `aws_s3_access_key` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: S3 バケットにアクセスするために使用するアクセスキー ID。 -- 導入バージョン: v3.0 - -##### `aws_s3_endpoint` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: S3 バケットにアクセスするために使用するエンドポイント。例: `https://s3.us-west-2.amazonaws.com`。 -- 導入バージョン: v3.0 - -##### `aws_s3_external_id` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: S3 バケットへのクロスアカウントアクセスに使用される AWS アカウントの外部 ID。 -- 導入バージョン: v3.0 - -##### `aws_s3_iam_role_arn` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: データファイルが保存されている S3 バケットに対する権限を持つ IAM ロールの ARN。 -- 導入バージョン: v3.0 - -##### `aws_s3_path` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: データを保存するために使用される S3 パス。S3 バケットの名前と、その下にあるサブパス (存在する場合) で構成されます。例: `testbucket/subpath`。 -- 導入バージョン: v3.0 - -##### `aws_s3_region` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: S3 バケットが存在するリージョン。例: `us-west-2`。 -- 導入バージョン: v3.0 - -##### `aws_s3_secret_key` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: S3 バケットにアクセスするために使用するシークレットアクセスキー。 -- 導入バージョン: v3.0 - -##### `aws_s3_use_aws_sdk_default_behavior` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: いいえ -- 説明: AWS SDK のデフォルトの認証資格情報を使用するかどうか。有効な値: true および false (デフォルト)。 -- 導入バージョン: v3.0 - -##### `aws_s3_use_instance_profile` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: いいえ -- 説明: S3 にアクセスするための認証方法としてインスタンスプロファイルと引き受けロールを使用するかどうか。有効な値: true および false (デフォルト)。 - - IAM ユーザーベースの資格情報 (アクセスキーとシークレットキー) を使用して S3 にアクセスする場合、この項目を `false` に指定し、`aws_s3_access_key` と `aws_s3_secret_key` を指定する必要があります。 - - インスタンスプロファイルを使用して S3 にアクセスする場合、この項目を `true` に指定する必要があります。 - - 引き受けロールを使用して S3 にアクセスする場合、この項目を `true` に指定し、`aws_s3_iam_role_arn` を指定する必要があります。 - - 外部 AWS アカウントを使用する場合、`aws_s3_external_id` も指定する必要があります。 -- 導入バージョン: v3.0 - -##### `azure_adls2_endpoint` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: Azure Data Lake Storage Gen2 アカウントのエンドポイント。例: `https://test.dfs.core.windows.net`。 -- 導入バージョン: v3.4.1 - -##### `azure_adls2_oauth2_client_id` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: Azure Data Lake Storage Gen2 のリクエストを承認するために使用されるマネージド ID のクライアント ID。 -- 導入バージョン: v3.4.4 - -##### `azure_adls2_oauth2_tenant_id` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: Azure Data Lake Storage Gen2 のリクエストを承認するために使用されるマネージド ID のテナント ID。 -- 導入バージョン: v3.4.4 - -##### `azure_adls2_oauth2_use_managed_identity` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: いいえ -- 説明: Azure Data Lake Storage Gen2 のリクエストを承認するためにマネージド ID を使用するかどうか。 -- 導入バージョン: v3.4.4 - -##### `azure_adls2_path` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: データを保存するために使用される Azure Data Lake Storage Gen2 パス。ファイルシステム名とディレクトリ名で構成されます。例: `testfilesystem/starrocks`。 -- 導入バージョン: v3.4.1 - -##### `azure_adls2_sas_token` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: Azure Data Lake Storage Gen2 のリクエストを承認するために使用される共有アクセス署名 (SAS)。 -- 導入バージョン: v3.4.1 - -##### `azure_adls2_shared_key` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: Azure Data Lake Storage Gen2 のリクエストを承認するために使用される共有キー。 -- 導入バージョン: v3.4.1 - -##### `azure_blob_endpoint` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: Azure Blob Storage アカウントのエンドポイント。例: `https://test.blob.core.windows.net`。 -- 導入バージョン: v3.1 - -##### `azure_blob_path` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: データを保存するために使用される Azure Blob Storage パス。ストレージアカウント内のコンテナ名と、コンテナの下にあるサブパス (存在する場合) で構成されます。例: `testcontainer/subpath`。 -- 導入バージョン: v3.1 - -##### `azure_blob_sas_token` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: Azure Blob Storage のリクエストを承認するために使用される共有アクセス署名 (SAS)。 -- 導入バージョン: v3.1 - -##### `azure_blob_shared_key` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: Azure Blob Storage のリクエストを承認するために使用される共有キー。 -- 導入バージョン: v3.1 - -##### `azure_use_native_sdk` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: Azure Blob Storage にアクセスするためにネイティブ SDK を使用し、Managed Identity と Service Principal で認証を許可するかどうか。この項目が `false` に設定されている場合、Shared Key と SAS Token による認証のみが許可されます。 -- 導入バージョン: v3.4.4 - -##### `cloud_native_hdfs_url` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: HDFS ストレージの URL。例: `hdfs://127.0.0.1:9000/user/xxx/starrocks/`。 -- 導入バージョン: - - -##### `cloud_native_meta_port` - -- デフォルト: 6090 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: FE クラウドネイティブメタデータサーバー RPC リッスンポート。 -- 導入バージョン: - - -##### `cloud_native_storage_type` - -- デフォルト: S3 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: 使用するオブジェクトストレージのタイプ。Shared-data モードでは、StarRocks は HDFS、Azure Blob (v3.1.1 以降サポート)、Azure Data Lake Storage Gen2 (v3.4.1 以降サポート)、Google Storage (ネイティブ SDK を使用、v3.5.1 以降サポート)、および S3 プロトコルと互換性のあるオブジェクトストレージシステム (AWS S3、MinIO など) にデータを保存することをサポートします。有効な値: `S3` (デフォルト)、`HDFS`、`AZBLOB`、`ADLS2`、`GS`。このパラメーターを `S3` に指定する場合、`aws_s3` で始まるパラメーターを追加する必要があります。このパラメーターを `AZBLOB` に指定する場合、`azure_blob` で始まるパラメーターを追加する必要があります。このパラメーターを `ADLS2` に指定する場合、`azure_adls2` で始まるパラメーターを追加する必要があります。このパラメーターを `GS` に指定する場合、`gcp_gcs` で始まるパラメーターを追加する必要があります。このパラメーターを `HDFS` に指定する場合、`cloud_native_hdfs_url` のみを指定する必要があります。 -- 導入バージョン: - - -##### `enable_load_volume_from_conf` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: いいえ -- 説明: StarRocks が FE 設定ファイルで指定されたオブジェクトストレージ関連プロパティを使用して組み込みストレージボリュームを作成することを許可するかどうか。v3.4.1 以降、デフォルト値は `true` から `false` に変更されました。 -- 導入バージョン: v3.1.0 - -##### `gcp_gcs_impersonation_service_account` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: Google Storage にアクセスするためになりすましベースの認証を使用する場合に、なりすましたいサービスアカウント。 -- 導入バージョン: v3.5.1 - -##### `gcp_gcs_path` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: データを保存するために使用される Google Cloud パス。Google Cloud バケットの名前と、その下にあるサブパス (存在する場合) で構成されます。例: `testbucket/subpath`。 -- 導入バージョン: v3.5.1 - -##### `gcp_gcs_service_account_email` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: サービスアカウント作成時に生成された JSON ファイル内のメールアドレス。例: `user@hello.iam.gserviceaccount.com`。 -- 導入バージョン: v3.5.1 - -##### `gcp_gcs_service_account_private_key` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: サービスアカウント作成時に生成された JSON ファイル内の秘密鍵。例: `-----BEGIN PRIVATE KEY----xxxx-----END PRIVATE KEY-----\n`。 -- 導入バージョン: v3.5.1 - -##### `gcp_gcs_service_account_private_key_id` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: サービスアカウント作成時に生成された JSON ファイル内の秘密鍵 ID。 -- 導入バージョン: v3.5.1 - -##### `gcp_gcs_use_compute_engine_service_account` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: いいえ -- 説明: Compute Engine にバインドされているサービスアカウントを使用するかどうか。 -- 導入バージョン: v3.5.1 - -##### `hdfs_file_system_expire_seconds` - -- デフォルト: 300 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: HdfsFsManager によって管理される、未使用のキャッシュされた HDFS/ObjectStore FileSystem の生存期間 (秒単位)。FileSystemExpirationChecker (60 秒ごとに実行) は、この値を使用して各 HdfsFs.isExpired(...) を呼び出します。期限切れになると、マネージャーは基盤となる FileSystem を閉じ、キャッシュから削除します。アクセサーメソッド (例: `HdfsFs.getDFSFileSystem`、`getUserName`、`getConfiguration`) は最終アクセス時刻を更新するため、有効期限は非アクティブに基づいています。値が小さいほどアイドル状態のリソース保持が減りますが、再オープンオーバーヘッドが増加します。値が大きいほどハンドルを長く保持し、より多くのリソースを消費する可能性があります。 -- 導入バージョン: v3.2.0 - -##### `lake_autovacuum_grace_period_minutes` - -- デフォルト: 30 -- タイプ: Long -- 単位: 分 -- 変更可能: はい -- 説明: Shared-data クラスターで履歴データバージョンを保持する時間範囲。この時間範囲内の履歴データバージョンは、コンパクション後に AutoVacuum によって自動的にクリーンアップされません。実行中のクエリが終了する前にアクセスされたデータが削除されるのを避けるために、この値を最大クエリ時間よりも大きく設定する必要があります。v3.3.0、v3.2.5、および v3.1.10 以降、デフォルト値は `5` から `30` に変更されました。 -- 導入バージョン: v3.1.0 - -##### `lake_autovacuum_parallel_partitions` - -- デフォルト: 8 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: Shared-data クラスターで AutoVacuum を同時に実行できるパーティションの最大数。AutoVacuum はコンパクション後のガベージコレクションです。 -- 導入バージョン: v3.1.0 - -##### `lake_autovacuum_partition_naptime_seconds` - -- デフォルト: 180 -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: Shared-data クラスターで同じパーティションに対する AutoVacuum 操作間の最小間隔。 -- 導入バージョン: v3.1.0 - -##### `lake_autovacuum_stale_partition_threshold` - -- デフォルト: 12 -- タイプ: Long -- 単位: 時間 -- 変更可能: はい -- 説明: この時間範囲内にパーティションの更新 (ロード、DELETE、またはコンパクション) がない場合、システムはこのパーティションに対して AutoVacuum を実行しません。 -- 導入バージョン: v3.1.0 - -##### `lake_compaction_allow_partial_success` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: この項目が `true` に設定されている場合、Shared-data クラスターでの Compaction 操作は、サブタスクの 1 つが成功した場合に成功と見なされます。 -- 導入バージョン: v3.5.2 - -##### `lake_compaction_disable_ids` - -- デフォルト: "" -- タイプ: String -- 単位: - -- 変更可能: はい -- 説明: Shared-data モードでコンパクションが無効になっているテーブルまたはパーティションのリスト。形式はセミコロンで区切られた `tableId1;partitionId2` です。例: `12345;98765`。 -- 導入バージョン: v3.4.4 - -##### `lake_compaction_history_size` - -- デフォルト: 20 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: Shared-data クラスターのリーダー FE ノードのメモリに保持する最近の成功した Compaction タスクレコードの数。`SHOW PROC '/compactions'` コマンドを使用して、最近の成功した Compaction タスクレコードを表示できます。Compaction 履歴は FE プロセスメモリに保存されるため、FE プロセスが再起動されると失われることに注意してください。 -- 導入バージョン: v3.1.0 - -##### `lake_compaction_max_tasks` - -- デフォルト: -1 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: Shared-data クラスターで許可される同時 Compaction タスクの最大数。この項目を `-1` に設定すると、同時タスク数が適応的に計算されることを示します。この値を `0` に設定すると、コンパクションが無効になります。 -- 導入バージョン: v3.1.0 - -##### `lake_compaction_score_selector_min_score` - -- デフォルト: 10.0 -- タイプ: Double -- 単位: - -- 変更可能: はい -- 説明: Shared-data クラスターで Compaction 操作をトリガーする Compaction Score のしきい値。パーティションの Compaction Score がこの値以上の場合、システムはそのパーティションに対して Compaction を実行します。 -- 導入バージョン: v3.1.0 - -##### `lake_compaction_score_upper_bound` - -- デフォルト: 2000 -- タイプ: Long -- 単位: - -- 変更可能: はい -- 説明: Shared-data クラスターのパーティションの Compaction Score の上限。`0` は上限がないことを示します。この項目は `lake_enable_ingest_slowdown` が `true` に設定されている場合にのみ有効です。パーティションの Compaction Score がこの上限に達するか超えると、受信ロードタスクは拒否されます。v3.3.6 以降、デフォルト値は `0` から `2000` に変更されました。 -- 導入バージョン: v3.2.0 - -##### `lake_enable_balance_tablets_between_workers` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: Shared-data クラスターのクラウドネイティブテーブルのタブレット移行中に、Compute ノード間でタブレット数をバランスさせるかどうか。`true` は Compute ノード間でタブレットをバランスさせることを示し、`false` はこの機能を無効にすることを示します。 -- 導入バージョン: v3.3.4 - -##### `lake_enable_ingest_slowdown` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: Shared-data クラスターでデータ取り込みの減速を有効にするかどうか。データ取り込みの減速が有効な場合、パーティションの Compaction Score が `lake_ingest_slowdown_threshold` を超えると、そのパーティション上のロードタスクはスロットルされます。この設定は、`run_mode` が `shared_data` に設定されている場合にのみ有効です。v3.3.6 以降、デフォルト値は `false` から `true` に変更されました。 -- 導入バージョン: v3.2.0 - -##### `lake_ingest_slowdown_threshold` - -- デフォルト: 100 -- タイプ: Long -- 単位: - -- 変更可能: はい -- 説明: Shared-data クラスターでデータ取り込みの減速をトリガーする Compaction Score のしきい値。この設定は `lake_enable_ingest_slowdown` が `true` に設定されている場合にのみ有効です。 -- 導入バージョン: v3.2.0 - -##### `lake_publish_version_max_threads` - -- デフォルト: 512 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: Shared-data クラスターにおけるバージョンパブリッシュタスクの最大スレッド数。 -- 導入バージョン: v3.2.0 - -##### `meta_sync_force_delete_shard_meta` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: リモートストレージファイルのクリーンアップをバイパスして、Shared-data クラスターのメタデータを直接削除することを許可するかどうか。この項目を `true` に設定することは、クリーンアップすべきシャードの数が過剰であり、それが FE JVM の極端なメモリプレッシャーにつながる場合にのみ推奨されます。この機能を有効にすると、シャードまたはタブレットに属するデータファイルが自動的にクリーンアップされないことに注意してください。 -- 導入バージョン: v3.2.10, v3.3.3 - -##### `run_mode` - -- デフォルト: `shared_nothing` -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: StarRocks クラスターの実行モード。有効な値: `shared_data` と `shared_nothing` (デフォルト)。 - - `shared_data` は StarRocks を Shared-data モードで実行することを示します。 - - `shared_nothing` は StarRocks を Shared-nothing モードで実行することを示します。 - - > **注意** - > - > - StarRocks クラスターで `shared_data` モードと `shared_nothing` モードを同時に採用することはできません。混合デプロイメントはサポートされていません。 - > - クラスターのデプロイ後に `run_mode` を変更しないでください。変更すると、クラスターの再起動に失敗します。Shared-nothing クラスターから Shared-data クラスターへの変換、またはその逆はサポートされていません。 - -- 導入バージョン: - - -##### `shard_group_clean_threshold_sec` - -- デフォルト: 3600 -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: Shared-data クラスターで未使用のタブレットとシャードグループを FE がクリーンアップするまでの時間。このしきい値内に作成されたタブレットとシャードグループはクリーンアップされません。 -- 導入バージョン: - - -##### `star_mgr_meta_sync_interval_sec` - -- デフォルト: 600 -- タイプ: Long -- 単位: 秒 -- 変更可能: いいえ -- 説明: Shared-data クラスターで FE が StarMgr と定期的なメタデータ同期を実行する間隔。 -- 導入バージョン: - - -##### `starmgr_grpc_server_max_worker_threads` - -- デフォルト: 1024 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: FE starmgr モジュールの grpc サーバーが使用するワーカー スレッドの最大数。 -- 導入バージョン: v4.0.0, v3.5.8 - -##### `starmgr_grpc_timeout_seconds` - -- デフォルト: 5 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: -- 導入バージョン: - - -### データレイク - -##### `files_enable_insert_push_down_schema` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: 有効な場合、アナライザーは INSERT ... FROM files() 操作のためにターゲットテーブルスキーマを `files()` テーブル関数にプッシュしようとします。これは、ソースが FileTableFunctionRelation であり、ターゲットがネイティブテーブルであり、SELECT リストに対応するスロット参照列 (または *) が含まれている場合にのみ適用されます。アナライザーは、選択された列をターゲット列と照合し (カウントは一致する必要がある)、ターゲットテーブルを一時的にロックし、ファイル列のタイプを非複合型についてはディープコピーされたターゲット列のタイプに置き換えます (Parquet JSON -> `array` のような複合型はスキップされます)。元のファイルテーブルからの列名は保持されます。これにより、取り込み中のファイルベースの型推論による型不一致や緩さが減少します。 -- 導入バージョン: v3.4.0, v3.5.0 - -##### `hdfs_read_buffer_size_kb` - -- デフォルト: 8192 -- タイプ: Int -- 単位: キロバイト -- 変更可能: はい -- 説明: HDFS 読み取りバッファのサイズ (キロバイト単位)。StarRocks はこの値をバイト (`<< 10`) に変換し、`HdfsFsManager` で HDFS 読み取りバッファを初期化したり、ブローカーアクセスが使用されていない場合にバックエンドタスク (例: `TBrokerScanRangeParams`、`TDownloadReq`) に送信される thrift フィールド `hdfs_read_buffer_size_kb` を入力したりするために使用します。`hdfs_read_buffer_size_kb` を増やすと、シーケンシャル読み取りスループットが向上し、システムコールオーバーヘッドが削減されますが、ストリームあたりのメモリ使用量が増加します。減らすとメモリフットプリントが削減されますが、IO 効率が低下する可能性があります。調整する際にはワークロード (多数の小さなストリーム vs. 少数の大きなシーケンシャル読み取り) を考慮してください。 -- 導入バージョン: v3.2.0 - -##### `hdfs_write_buffer_size_kb` - -- デフォルト: 1024 -- タイプ: Int -- 単位: キロバイト -- 変更可能: はい -- 説明: ブローカーを使用しない HDFS またはオブジェクトストレージへの直接書き込みに使用される HDFS 書き込みバッファサイズ (KB 単位) を設定します。FE はこの値をバイト (`<< 10`) に変換し、HdfsFsManager でローカル書き込みバッファを初期化します。また、Thrift リクエスト (例: TUploadReq, TExportSink, シンクオプション) に伝播されるため、バックエンド/エージェントは同じバッファサイズを使用します。この値を増やすと、大規模なシーケンシャル書き込みのスループットが向上しますが、ライターあたりのメモリが増加します。減らすと、ストリームあたりのメモリ使用量が減少し、小規模な書き込みの遅延が短縮される可能性があります。`hdfs_read_buffer_size_kb` と並行して、利用可能なメモリと同時ライター数を考慮して調整してください。 -- 導入バージョン: v3.2.0 - -##### `lake_batch_publish_max_version_num` - -- デフォルト: 10 -- タイプ: Int -- 単位: カウント -- 変更可能: はい -- 説明: レイク (クラウドネイティブ) テーブルのパブリッシュバッチを構築する際に、グループ化できる連続するトランザクションバージョンの上限を設定します。この値はトランザクショングラフのバッチ処理ルーチン (getReadyToPublishTxnListBatch を参照) に渡され、`lake_batch_publish_min_version_num` と連携して TransactionStateBatch の候補範囲サイズを決定します。値が大きいほど、より多くのコミットをバッチ処理することでパブリッシュスループットを向上させることができますが、アトミックなパブリッシュのスコープが広がり (可視性遅延が長くなり、ロールバックの表面積が大きくなる)、バージョンが連続していない場合は実行時に制限される可能性があります。ワークロードと可視性/遅延要件に従って調整してください。 -- 導入バージョン: v3.2.0 - -##### `lake_batch_publish_min_version_num` - -- デフォルト: 1 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: レイクテーブルのパブリッシュバッチを形成するために必要な連続するトランザクションバージョンの最小数を設定します。DatabaseTransactionMgr.getReadyToPublishTxnListBatch は、`lake_batch_publish_max_version_num` とともにこの値を transactionGraph.getTxnsWithTxnDependencyBatch に渡して、依存するトランザクションを選択します。`1` の値は単一トランザクションのパブリッシュを許可します (バッチ処理なし)。`>1` の値は、少なくともその数の連続したバージョンを持つ単一テーブルの非レプリケーショントランザクションが利用可能であることを要求します。バージョンが連続していない場合、レプリケーショントランザクションが出現した場合、またはスキーマ変更がバージョンを消費した場合、バッチ処理は中止されます。この値を増やすと、コミットをグループ化することでパブリッシュスループットを向上させることができますが、十分な連続トランザクションを待機している間、パブリッシュが遅延する可能性があります。 -- 導入バージョン: v3.2.0 - -##### `lake_enable_batch_publish_version` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: 有効な場合、PublishVersionDaemon は同じレイク (Shared-data) テーブル/パーティションの準備完了トランザクションをバッチ処理し、トランザクションごとのパブリッシュを発行する代わりに、それらのバージョンをまとめてパブリッシュします。RunMode Shared-data では、デーモンは getReadyPublishTransactionsBatch() を呼び出し、publishVersionForLakeTableBatch(...) を使用してグループ化されたパブリッシュ操作を実行します (RPC を減らし、スループットを向上させます)。無効な場合、デーモンは publishVersionForLakeTable(...) を介してトランザクションごとのパブリッシュにフォールバックします。実装は、スイッチが切り替えられたときの重複パブリッシュを避けるために内部セットを使用して進行中の作業を調整し、`lake_publish_version_max_threads` を介したスレッドプールサイジングの影響を受けます。 -- 導入バージョン: v3.2.0 - -##### `lake_enable_tablet_creation_optimization` - -- デフォルト: false -- タイプ: boolean -- 単位: - -- 変更可能: はい -- 説明: 有効にすると、StarRocks は Shared-data モードのクラウドネイティブテーブルとマテリアライズドビューのタブレット作成を最適化し、タブレットごとに異なるメタデータではなく、物理パーティション下のすべてのタブレットに単一の共有タブレットメタデータを作成します。これにより、テーブル作成、ロールアップ、およびスキーマ変更ジョブ中に生成されるタブレット作成タスクとメタデータ/ファイルの数が削減されます。この最適化はクラウドネイティブテーブル/マテリアライズドビューにのみ適用され、`file_bundling` と組み合わされます (後者は同じ最適化ロジックを再利用します)。注: スキーマ変更およびロールアップジョブは、同じ名前のファイルを上書きするのを避けるために、`file_bundling` を使用するテーブルの最適化を明示的に無効にします。慎重に有効にしてください。作成されるタブレットメタデータの粒度が変更され、レプリカ作成とファイル命名の動作に影響する可能性があります。 -- 導入バージョン: v3.3.1, v3.4.0, v3.5.0 - -##### `lake_use_combined_txn_log` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: この項目が `true` に設定されている場合、システムは Lake テーブルが関連トランザクションの結合されたトランザクションログパスを使用することを許可します。Shared-data クラスターでのみ利用可能です。 -- 導入バージョン: v3.3.7, v3.4.0, v3.5.0 - -### その他 - -##### `agent_task_resend_wait_time_ms` - -- デフォルト: 5000 -- タイプ: Long -- 単位: ミリ秒 -- 変更可能: はい -- 説明: FE がエージェントタスクを再送するまでに待機する必要がある期間。エージェントタスクは、タスク作成時間と現在の時間の差がこのパラメーターの値を超過した場合にのみ再送できます。このパラメーターは、エージェントタスクの繰り返し送信を防ぐために使用されます。 -- 導入バージョン: - - -##### `allow_system_reserved_names` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: ユーザーが `__op` および `__row` で始まる名前の列を作成することを許可するかどうか。この機能を有効にするには、このパラメーターを `TRUE` に設定します。これらの名前形式は StarRocks で特別な目的のために予約されており、そのような列を作成すると未定義の動作が発生する可能性があるため、この機能はデフォルトで無効になっています。 -- 導入バージョン: v3.2.0 - -##### `auth_token` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: FE が属する StarRocks クラスター内で ID 認証に使用されるトークン。このパラメーターが指定されていない場合、StarRocks はクラスターのリーダー FE が初めて起動したときにクラスターのランダムなトークンを生成します。 -- 導入バージョン: - - -##### `authentication_ldap_simple_bind_base_dn` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: はい -- 説明: LDAP サーバーがユーザーの認証情報を検索し始めるポイントであるベース DN。 -- 導入バージョン: - - -##### `authentication_ldap_simple_bind_root_dn` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: はい -- 説明: ユーザーの認証情報を検索するために使用される管理者 DN。 -- 導入バージョン: - - -##### `authentication_ldap_simple_bind_root_pwd` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: はい -- 説明: ユーザーの認証情報を検索するために使用される管理者のパスワード。 -- 導入バージョン: - - -##### `authentication_ldap_simple_server_host` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: はい -- 説明: LDAP サーバーが実行されているホスト。 -- 導入バージョン: - - -##### `authentication_ldap_simple_server_port` - -- デフォルト: 389 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: LDAP サーバーのポート。 -- 導入バージョン: - - -##### `authentication_ldap_simple_user_search_attr` - -- デフォルト: uid -- タイプ: String -- 単位: - -- 変更可能: はい -- 説明: LDAP オブジェクトでユーザーを識別する属性の名前。 -- 導入バージョン: - - -##### `backup_job_default_timeout_ms` - -- デフォルト: 86400 * 1000 -- タイプ: Int -- 単位: ミリ秒 -- 変更可能: はい -- 説明: バックアップジョブのタイムアウト期間。この値を超過すると、バックアップジョブは失敗します。 -- 導入バージョン: - - -##### `enable_collect_tablet_num_in_show_proc_backend_disk_path` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: `SHOW PROC /BACKENDS/{id}` コマンドで、各ディスクのタブレット数を収集することを有効にするかどうか。 -- 導入バージョン: v4.0.1, v3.5.8 - -##### `enable_colocate_restore` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: Colocate Table のバックアップと復元を有効にするかどうか。`true` は Colocate Table のバックアップと復元を有効にすることを示し、`false` は無効にすることを示します。 -- 導入バージョン: v3.2.10, v3.3.3 - -##### `enable_materialized_view_concurrent_prepare` - -- デフォルト: true -- タイプ: Boolean -- 単位: -- 変更可能: はい -- 説明: マテリアライズドビューを並行して準備してパフォーマンスを向上させるかどうか。 -- 導入バージョン: v3.4.4 - -##### `enable_metric_calculator` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: いいえ -- 説明: メトリックを定期的に収集する機能を有効にするかどうかを指定します。有効な値: `TRUE` および `FALSE`。`TRUE` はこの機能を有効にすることを示し、`FALSE` はこの機能を無効にすることを示します。 -- 導入バージョン: - - -##### `enable_table_metrics_collect` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: FE でテーブルレベルのメトリックをエクスポートするかどうか。無効の場合、FE はテーブルメトリック (テーブルスキャン/ロードカウンター、テーブルサイズメトリックなど) のエクスポートをスキップしますが、カウンターはメモリに記録されます。 -- 導入バージョン: - - -##### `enable_mv_post_image_reload_cache` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: FE がイメージをロードした後でリロードフラグチェックを実行するかどうか。基底マテリアライズドビューでチェックが実行された場合、それに関連する他のマテリアライズドビューでは必要ありません。 -- 導入バージョン: v3.5.0 - -##### `enable_mv_query_context_cache` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: クエリ書き換えパフォーマンスを向上させるために、クエリレベルのマテリアライズドビュー書き換えキャッシュを有効にするかどうか。 -- 導入バージョン: v3.3 - -##### `enable_mv_refresh_collect_profile` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: すべてのマテリアライズドビューについて、マテリアライズドビューの更新でプロファイルをデフォルトで有効にするかどうか。 -- 導入バージョン: v3.3.0 - -##### `enable_mv_refresh_extra_prefix_logging` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: デバッグを容易にするために、ログにマテリアライズドビュー名のプレフィックスを付けることを有効にするかどうか。 -- 導入バージョン: v3.4.0 - -##### `enable_mv_refresh_query_rewrite` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: マテリアライズドビューの更新中にクエリ書き換えを有効にして、クエリが基底テーブルではなく書き換えられた mv を直接使用してクエリパフォーマンスを向上させるかどうか。 -- 導入バージョン: v3.3 - -##### `enable_trace_historical_node` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: システムが履歴ノードをトレースすることを許可するかどうか。この項目を `true` に設定すると、キャッシュ共有機能を有効にし、弾力的なスケーリング中にシステムが適切なキャッシュノードを選択できるようにします。 -- 導入バージョン: v3.5.1 - -##### `es_state_sync_interval_second` - -- デフォルト: 10 -- タイプ: Long -- 単位: 秒 -- 変更可能: いいえ -- 説明: FE が Elasticsearch インデックスを取得し、StarRocks 外部テーブルのメタデータを同期する時間間隔。 -- 導入バージョン: - - -##### `hive_meta_cache_refresh_interval_s` - -- デフォルト: 3600 * 2 -- タイプ: Long -- 単位: 秒 -- 変更可能: いいえ -- 説明: Hive 外部テーブルのキャッシュされたメタデータが更新される時間間隔。 -- 導入バージョン: - - -##### `hive_meta_store_timeout_s` - -- デフォルト: 10 -- タイプ: Long -- 単位: 秒 -- 変更可能: いいえ -- 説明: Hive メタストアへの接続がタイムアウトするまでの時間。 -- 導入バージョン: - - -##### `jdbc_connection_idle_timeout_ms` - -- デフォルト: 600000 -- タイプ: Int -- 単位: ミリ秒 -- 変更可能: いいえ -- 説明: JDBC カタログにアクセスするための接続がタイムアウトする最大時間。タイムアウトした接続はアイドル状態と見なされます。 -- 導入バージョン: - - -##### `jdbc_connection_timeout_ms` - -- デフォルト: 10000 -- タイプ: Long -- 単位: ミリ秒 -- 変更可能: いいえ -- 説明: HikariCP 接続プールが接続を取得するためのタイムアウト (ミリ秒単位)。この時間内にプールから接続を取得できない場合、操作は失敗します。 -- 導入バージョン: v3.5.13 - -##### `jdbc_query_timeout_ms` - -- デフォルト: 30000 -- タイプ: Long -- 単位: ミリ秒 -- 変更可能: はい -- 説明: JDBC ステートメントクエリ実行のタイムアウト (ミリ秒単位)。このタイムアウトは、JDBC カタログを通じて実行されるすべての SQL クエリ (パーティションメタデータクエリなど) に適用されます。値は JDBC ドライバーに渡されるときに秒に変換されます。 -- 導入バージョン: v3.5.13 - -##### `jdbc_network_timeout_ms` - -- デフォルト: 30000 -- タイプ: Long -- 単位: ミリ秒 -- 変更可能: はい -- 説明: JDBC ネットワーク操作 (ソケット読み取り) のタイムアウト (ミリ秒単位)。このタイムアウトは、外部データベースが応答しない場合に無期限のブロックを防ぐために、データベースメタデータ呼び出し (例: getSchemas()、getTables()、getColumns()) に適用されます。 -- 導入バージョン: v3.5.13 - -##### `jdbc_connection_pool_size` - -- デフォルト: 8 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: JDBC カタログにアクセスするための JDBC 接続プールの最大容量。 -- 導入バージョン: - - -##### `jdbc_meta_default_cache_enable` - -- デフォルト: false -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: JDBC カタログメタデータキャッシュが有効になっているかどうかのデフォルト値。True に設定すると、新しく作成された JDBC カタログはデフォルトでメタデータキャッシュが有効になります。 -- 導入バージョン: - - -##### `jdbc_meta_default_cache_expire_sec` - -- デフォルト: 600 -- タイプ: Long -- 単位: 秒 -- 変更可能: はい -- 説明: JDBC カタログメタデータキャッシュのデフォルトの有効期限。`jdbc_meta_default_cache_enable` が true に設定されている場合、新しく作成された JDBC カタログはデフォルトでメタデータキャッシュの有効期限を設定します。 -- 導入バージョン: - - -##### `jdbc_minimum_idle_connections` - -- デフォルト: 1 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: JDBC カタログにアクセスするための JDBC 接続プール内のアイドル接続の最小数。 -- 導入バージョン: - - -##### `jwt_jwks_url` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: JSON Web Key Set (JWKS) サービスへの URL、または `fe/conf` ディレクトリ下の公開鍵ローカルファイルへのパス。 -- 導入バージョン: v3.5.0 - -##### `jwt_principal_field` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: JWT の subject (`sub`) を示すフィールドを識別するために使用される文字列。デフォルト値は `sub` です。このフィールドの値は、StarRocks にログインするためのユーザー名と同一である必要があります。 -- 導入バージョン: v3.5.0 - -##### `jwt_required_audience` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: JWT の audience (`aud`) を識別するために使用される文字列のリスト。JWT は、リスト内の値のいずれかが JWT audience と一致する場合にのみ有効と見なされます。 -- 導入バージョン: v3.5.0 - -##### `jwt_required_issuer` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: JWT の issuer (`iss`) を識別するために使用される文字列のリスト。JWT は、リスト内の値のいずれかが JWT issuer と一致する場合にのみ有効と見なされます。 -- 導入バージョン: v3.5.0 - -##### locale - -- デフォルト: `zh_CN.UTF-8` -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: FE が使用する文字セット。 -- 導入バージョン: - - -##### `max_agent_task_threads_num` - -- デフォルト: 4096 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: エージェントタスクスレッドプールで許可されるスレッドの最大数。 -- 導入バージョン: - - -##### `max_download_task_per_be` - -- デフォルト: 0 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: 各 RESTORE 操作で、StarRocks が BE ノードに割り当てるダウンロードタスクの最大数。この項目が 0 以下に設定されている場合、タスク数に制限はありません。 -- 導入バージョン: v3.1.0 - -##### `max_mv_check_base_table_change_retry_times` - -- デフォルト: 10 -- タイプ: - -- 単位: - -- 変更可能: はい -- 説明: マテリアライズドビューの更新時に基底テーブルの変更を検出するための最大再試行回数。 -- 導入バージョン: v3.3.0 - -##### `max_mv_refresh_failure_retry_times` - -- デフォルト: 1 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: マテリアライズドビューの更新に失敗した場合の最大再試行回数。 -- 導入バージョン: v3.3.0 - -##### `max_mv_refresh_try_lock_failure_retry_times` - -- デフォルト: 3 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: マテリアライズドビューの更新に失敗した場合の try lock の最大再試行回数。 -- 導入バージョン: v3.3.0 - -##### `max_small_file_number` - -- デフォルト: 100 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: FE ディレクトリに保存できる小さなファイルの最大数。 -- 導入バージョン: - - -##### `max_small_file_size_bytes` - -- デフォルト: 1024 * 1024 -- タイプ: Int -- 単位: バイト -- 変更可能: はい -- 説明: 小さなファイルの最大サイズ。 -- 導入バージョン: - - -##### `max_upload_task_per_be` - -- デフォルト: 0 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: 各 BACKUP 操作で、StarRocks が BE ノードに割り当てるアップロードタスクの最大数。この項目が 0 以下に設定されている場合、タスク数に制限はありません。 -- 導入バージョン: v3.1.0 - -##### `mv_create_partition_batch_interval_ms` - -- デフォルト: 1000 -- タイプ: Int -- 単位: ms -- 変更可能: はい -- 説明: マテリアライズドビューの更新中、複数のパーティションを一括作成する必要がある場合、システムはそれらをそれぞれ 64 パーティションのバッチに分割します。頻繁なパーティション作成による障害のリスクを減らすため、各バッチ間にデフォルトの間隔 (ミリ秒単位) が設定され、作成頻度を制御します。 -- 導入バージョン: v3.3 - -##### `mv_plan_cache_max_size` - -- デフォルト: 1000 -- タイプ: Long -- 単位: -- 変更可能: はい -- 説明: マテリアライズドビュープランキャッシュ (マテリアライズドビューの書き換えに使用される) の最大サイズ。透過的なクエリ書き換えに使用されるマテリアライズドビューが多い場合、この値を増やすことができます。 -- 導入バージョン: v3.2 - -##### `mv_plan_cache_thread_pool_size` - -- デフォルト: 3 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: マテリアライズドビュープランキャッシュ (マテリアライズドビューの書き換えに使用される) のデフォルトスレッドプールサイズ。 -- 導入バージョン: v3.2 - -##### `mv_refresh_default_planner_optimize_timeout` - -- デフォルト: 30000 -- タイプ: - -- 単位: - -- 変更可能: はい -- 説明: マテリアライズドビュー更新時のオプティマイザのプランニングフェーズのデフォルトのタイムアウト。 -- 導入バージョン: v3.3.0 - -##### `mv_refresh_fail_on_filter_data` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: フィルタリングされたデータがある場合、MV 更新は失敗します (デフォルトは true)。そうでない場合、フィルタリングされたデータを無視して成功を返します。 -- 導入バージョン: - - -##### `mv_refresh_try_lock_timeout_ms` - -- デフォルト: 30000 -- タイプ: Int -- 単位: ミリ秒 -- 変更可能: はい -- 説明: マテリアライズドビュー更新がその基底テーブル/マテリアライズドビューの DB ロックを試みるデフォルトの try lock タイムアウト。 -- 導入バージョン: v3.3.0 - -##### `oauth2_auth_server_url` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: 認証 URL。OAuth 2.0 認証プロセスを開始するためにユーザーのブラウザがリダイレクトされる URL。 -- 導入バージョン: v3.5.0 - -##### `oauth2_client_id` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: StarRocks クライアントの公開識別子。 -- 導入バージョン: v3.5.0 - -##### `oauth2_client_secret` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: 認可サーバーで StarRocks クライアントを認証するために使用されるシークレット。 -- 導入バージョン: v3.5.0 - -##### `oauth2_jwks_url` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: JSON Web Key Set (JWKS) サービスへの URL、または `conf` ディレクトリ下のローカルファイルへのパス。 -- 導入バージョン: v3.5.0 - -##### `oauth2_principal_field` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: JWT の subject (`sub`) を示すフィールドを識別するために使用される文字列。デフォルト値は `sub` です。このフィールドの値は、StarRocks にログインするためのユーザー名と同一である必要があります。 -- 導入バージョン: v3.5.0 - -##### `oauth2_redirect_url` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: OAuth 2.0 認証が成功した後にユーザーのブラウザがリダイレクトされる URL。認証コードはこの URL に送信されます。ほとんどの場合、`http://:/api/oauth2` として構成する必要があります。 -- 導入バージョン: v3.5.0 - -##### `oauth2_required_audience` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: JWT の audience (`aud`) を識別するために使用される文字列のリスト。JWT は、リスト内の値のいずれかが JWT audience と一致する場合にのみ有効と見なされます。 -- 導入バージョン: v3.5.0 - -##### `oauth2_required_issuer` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: JWT の issuer (`iss`) を識別するために使用される文字列のリスト。JWT は、リスト内の値のいずれかが JWT issuer と一致する場合にのみ有効と見なされます。 -- 導入バージョン: v3.5.0 - -##### `oauth2_token_server_url` - -- デフォルト: 空文字列 -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: StarRocks がアクセストークンを取得する認可サーバーのエンドポイントの URL。 -- 導入バージョン: v3.5.0 - -##### `plugin_dir` - -- デフォルト: `System.getenv("STARROCKS_HOME")` + "/plugins" -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: プラグインインストールパッケージを格納するディレクトリ。 -- 導入バージョン: - - -##### `plugin_enable` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: FE にプラグインをインストールできるかどうか。プラグインはリーダー FE にのみインストールまたはアンインストールできます。 -- 導入バージョン: - - -##### `proc_profile_jstack_depth` - -- デフォルト: 128 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: システムが CPU およびメモリプロファイルを収集する際の最大 Java スタック深度。この値は、サンプリングされた各スタックについてキャプチャされる Java スタックフレームの数を制御します。値が大きいほどトレースの詳細と出力サイズが増加し、プロファイリングオーバーヘッドが増加する可能性があります。値が小さいほど詳細が削減されます。この設定は、CPU プロファイリングとメモリプロファイリングの両方でプロファイラーが開始されるときに使用されるため、診断のニーズとパフォーマンスへの影響のバランスをとるために調整してください。 -- 導入バージョン: - - -##### `proc_profile_mem_enable` - -- デフォルト: true -- タイプ: Boolean -- 単位: - -- 変更可能: はい -- 説明: プロセスメモリ割り当てプロファイルの収集を有効にするかどうか。この項目が `true` に設定されている場合、システムは `sys_log_dir/proc_profile` の下に `mem-profile-.html` という名前の HTML プロファイルを生成し、`proc_profile_collect_time_s` 秒間サンプリングしながらスリープし、Java スタックの深さには `proc_profile_jstack_depth` を使用します。生成されたファイルは圧縮され、`proc_profile_file_retained_days` および `proc_profile_file_retained_size_bytes` に従って削除されます。ネイティブ抽出パスは、`/tmp` の noexec の問題を避けるために `STARROCKS_HOME_DIR` を使用します。この項目は、メモリ割り当てのホットスポットのトラブルシューティングを目的としています。有効にすると、CPU、I/O、ディスク使用量が増加し、大きなファイルが生成される可能性があります。 -- 導入バージョン: v3.2.12 - -##### `query_detail_explain_level` - -- デフォルト: COSTS -- タイプ: String -- 単位: - -- 変更可能: true -- 説明: EXPLAIN ステートメントによって返されるクエリプランの詳細レベル。有効な値: COSTS, NORMAL, VERBOSE。 -- 導入バージョン: v3.2.12, v3.3.5 - -##### `replication_interval_ms` - -- デフォルト: 100 -- タイプ: Int -- 単位: - -- 変更可能: いいえ -- 説明: レプリケーションタスクがスケジュールされる最小時間間隔。 -- 導入バージョン: v3.3.5 - -##### `replication_max_parallel_data_size_mb` - -- デフォルト: 1048576 -- タイプ: Int -- 単位: MB -- 変更可能: はい -- 説明: 同時同期に許可されるデータの最大サイズ。 -- 導入バージョン: v3.3.5 - -##### `replication_max_parallel_replica_count` - -- デフォルト: 10240 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: 同時同期に許可されるタブレットレプリカの最大数。 -- 導入バージョン: v3.3.5 - -##### `replication_max_parallel_table_count` - -- デフォルト: 100 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: 許可される同時データ同期タスクの最大数。StarRocks はテーブルごとに 1 つの同期タスクを作成します。 -- 導入バージョン: v3.3.5 - -##### `replication_transaction_timeout_sec` - -- デフォルト: 86400 -- タイプ: Int -- 単位: 秒 -- 変更可能: はい -- 説明: 同期タスクのタイムアウト期間。 -- 導入バージョン: v3.3.5 - -##### `skip_whole_phase_lock_mv_limit` - -- デフォルト: 5 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: StarRocks が関連するマテリアライズドビューを持つテーブルに対して「非ロック」最適化をいつ適用するかを制御します。この項目が 0 未満に設定されている場合、システムは常に非ロック最適化を適用し、クエリのために関連するマテリアライズドビューをコピーしません (FE メモリ使用量とメタデータコピー/ロック競合は削減されますが、メタデータ並行性問題のリスクが増加する可能性があります)。0 に設定されている場合、非ロック最適化は無効になります (システムは常に安全なコピーアンドロックパスを使用します)。0 より大きい値に設定されている場合、非ロック最適化は、関連するマテリアライズドビューの数が構成されたしきい値以下であるテーブルにのみ適用されます。さらに、値が 0 以上の場合、プランナーはクエリ OLAP テーブルをオプティマイザコンテキストに記録して、マテリアライズドビュー関連の書き換えパスを有効にします。0 未満の場合、このステップはスキップされます。 -- 導入バージョン: v3.2.1 - -##### `small_file_dir` - -- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/small_files" -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: 小さなファイルのルートディレクトリ。 -- 導入バージョン: - - -##### `task_runs_max_history_number` - -- デフォルト: 10000 -- タイプ: Int -- 単位: - -- 変更可能: はい -- 説明: メモリに保持され、アーカイブされたタスク実行履歴をクエリする際のデフォルトの LIMIT として使用されるタスク実行レコードの最大数。`enable_task_history_archive` が false の場合、この値はインメモリ履歴を制限します。強制 GC は古いエントリを削除し、最新の `task_runs_max_history_number` のみが残ります。アーカイブ履歴がクエリされた場合 (明示的な LIMIT が提供されない場合)、`TaskRunHistoryTable.lookup` は、この値が 0 より大きい場合に `"ORDER BY create_time DESC LIMIT "` を使用します。注: これを 0 に設定すると、クエリ側の LIMIT が無効になります (上限なし) が、インメモリ履歴はゼロに切り捨てられます (アーカイブが有効でない限り)。 -- 導入バージョン: v3.2.0 - -##### `tmp_dir` - -- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/temp_dir" -- タイプ: String -- 単位: - -- 変更可能: いいえ -- 説明: バックアップや復元手順中に生成されるファイルなど、一時ファイルを格納するディレクトリ。これらの手順が完了すると、生成された一時ファイルは削除されます。 -- 導入バージョン: - - - From 588c55821a5b4f1fc9b7cfeec2efcff8493176b5 Mon Sep 17 00:00:00 2001 From: "docs-automation[bot]" Date: Tue, 24 Feb 2026 18:35:21 +0000 Subject: [PATCH 4/4] docs: automated translation via Gemini --- .../management/FE_configuration.md | 167 ++++++++++++++++++ 1 file changed, 167 insertions(+) create mode 100644 docs/ja/administration/management/FE_configuration.md diff --git a/docs/ja/administration/management/FE_configuration.md b/docs/ja/administration/management/FE_configuration.md new file mode 100644 index 0000000..399874d --- /dev/null +++ b/docs/ja/administration/management/FE_configuration.md @@ -0,0 +1,167 @@ +--- +displayed_sidebar: docs +--- + +import FEConfigMethod from '../../_assets/commonMarkdown/FE_config_method.mdx' + +import AdminSetFrontendNote from '../../_assets/commonMarkdown/FE_config_note.mdx' + +import StaticFEConfigNote from '../../_assets/commonMarkdown/StaticFE_config_note.mdx' + +import EditionSpecificFEItem from '../../_assets/commonMarkdown/Edition_Specific_FE_Item.mdx' + +# FE構成 + + + +## FE構成項目を表示する + +FEが起動した後、MySQLクライアントで`ADMIN SHOW FRONTEND CONFIG`コマンドを実行して、パラメータ構成を確認できます。特定のパラメータの構成をクエリしたい場合は、次のコマンドを実行します。 + +```SQL +ADMIN SHOW FRONTEND CONFIG [LIKE "pattern"]; +``` + +返されるフィールドの詳細については、[`ADMIN SHOW CONFIG`](../../sql-reference/sql-statements/cluster-management/config_vars/ADMIN_SHOW_CONFIG.md)を参照してください。 + +:::note +クラスター管理関連コマンドを実行するには、管理者権限が必要です。 +::: + +## FEパラメータを構成する + +### FE動的パラメータを構成する + +[`ADMIN SET FRONTEND CONFIG`](../../sql-reference/sql-statements/cluster-management/config_vars/ADMIN_SET_CONFIG.md)を使用して、FE動的パラメータの設定を構成または変更できます。 + +```SQL +ADMIN SET FRONTEND CONFIG ("key" = "value"); +``` + + + +### FE静的パラメータを構成する + + + +## FEパラメータを理解する + +### ロギング + +##### `audit_log_delete_age` + +- デフォルト: 30d +- 型: String +- 単位: - +- 変更可能: いいえ +- 説明: 監査ログファイルの保持期間。デフォルト値`30d`は、各監査ログファイルが30日間保持されることを指定します。StarRocksは各監査ログファイルをチェックし、30日前に生成されたファイルを削除します。 +- 導入バージョン: - + +##### `audit_log_dir` + +- デフォルト: `StarRocksFE.STARROCKS_HOME_DIR` + "/log" +- 型: String +- 単位: - +- 変更可能: いいえ +- 説明: 監査ログファイルを格納するディレクトリ。 +- 導入バージョン: - + +##### `audit_log_enable_compress` + +- デフォルト: false +- 型: Boolean +- 単位: N/A +- 変更可能: いいえ +- 説明: trueの場合、生成されたLog4j2構成は、ローテーションされた監査ログファイル名 (fe.audit.log.*) に".gz"接尾辞を追加し、Log4j2がロールオーバー時に圧縮された(.gz)アーカイブ監査ログファイルを生成するようにします。この設定は、FE起動時にLog4jConfig.initLoggingで読み取られ、監査ログ用のRollingFileアペンダーに適用されます。アクティブな監査ログではなく、ローテーション/アーカイブされたファイルのみに影響します。値は起動時に初期化されるため、変更を有効にするにはFEの再起動が必要です。監査ログのローテーション設定 (`audit_log_dir`、`audit_log_roll_interval`、`audit_roll_maxsize`、`audit_log_roll_num`) と一緒に使用します。 +- 導入バージョン: 3.2.12 + +##### `audit_log_json_format` + +- デフォルト: false +- 型: Boolean +- 単位: N/A +- 変更可能: はい +- 説明: trueの場合、FE監査イベントは、デフォルトのパイプ区切り「key=value」文字列ではなく、構造化されたJSON (AuditEventフィールドにアノテーションが付けられたMapをシリアル化するJackson ObjectMapper) として出力されます。この設定は、AuditLogBuilderが処理するすべての組み込み監査シンクに影響します。接続監査、クエリ監査、ビッグクエリ監査 (イベントが条件を満たすとビッグクエリしきい値フィールドがJSONに追加されます)、および低速監査出力です。ビッグクエリしきい値用にアノテーションが付けられたフィールドと「features」フィールドは特別に扱われます (通常の監査エントリから除外され、該当する場合はビッグクエリまたは機能ログに含まれます)。ログコレクタまたはSIEMがログを機械で解析できるようにするにはこれを有効にします。ログ形式が変更され、従来のパイプ区切り形式を想定している既存のパーサーを更新する必要がある場合があることに注意してください。 +- 導入バージョン: 3.2.7 + +##### `audit_log_modules` + +- デフォルト: `slow_query`, query +- 型: String[] +- 単位: - +- 変更可能: いいえ +- 説明: StarRocksが監査ログエントリを生成するモジュール。デフォルトでは、StarRocksは`slow_query`モジュールと`query`モジュールに対して監査ログを生成します。`connection`モジュールはv3.0からサポートされています。モジュール名はコンマ (`,`) とスペースで区切ります。 +- 導入バージョン: - + +##### `audit_log_roll_interval` + +- デフォルト: DAY +- 型: String +- 単位: - +- 変更可能: いいえ +- 説明: StarRocksが監査ログエントリをローテーションする時間間隔。有効な値: `DAY`と`HOUR`。 + - このパラメータが`DAY`に設定されている場合、監査ログファイル名に`yyyyMMdd`形式のサフィックスが追加されます。 + - このパラメータが`HOUR`に設定されている場合、監査ログファイル名に`yyyyMMddHH`形式のサフィックスが追加されます。 +- 導入バージョン: - + +##### `audit_log_roll_num` + +- デフォルト: 90 +- 型: Int +- 単位: - +- 変更可能: いいえ +- 説明: `audit_log_roll_interval`パラメータで指定された各保持期間内に保持できる監査ログファイルの最大数。 +- 導入バージョン: - + +##### `bdbje_log_level` + +- デフォルト: INFO +- 型: String +- 単位: - +- 変更可能: いいえ +- 説明: StarRocksのBerkeley DB Java Edition (BDB JE) が使用するロギングレベルを制御します。BDB環境の初期化中、BDBEnvironment.initConfigs() はこの値を`com.sleepycat.je`パッケージのJavaロガーとBDB JE環境ファイルロギングレベル (`EnvironmentConfig.FILE_LOGGING_LEVEL`) に適用します。SEVERE、WARNING、INFO、CONFIG、FINE、FINER、FINEST、ALL、OFFなどの標準的なjava.util.logging.Level名を受け入れます。ALLに設定すると、すべてのログメッセージが有効になります。詳細度を上げるとログ量が増加し、ディスクI/Oとパフォーマンスに影響を与える可能性があります。この値はBDB環境が初期化されるときに読み取られるため、環境 (再) 初期化後にのみ有効になります。 +- 導入バージョン: v3.2.0 + +##### `big_query_log_delete_age` + +- デフォルト: 7d +- 型: String +- 単位: - +- 変更可能: いいえ +- 説明: FEビッグクエリログファイル (`fe.big_query.log.*`) が自動削除されるまでに保持される期間を制御します。この値は、Log4jの削除ポリシーにIfLastModifiedの期間として渡されます。最終更新時間がこの値より古いローテーションされたビッグクエリログはすべて削除されます。`d` (日)、`h` (時間)、`m` (分)、`s` (秒) の接尾辞をサポートします。例: `7d` (7日)、`10h` (10時間)、`60m` (60分)、`120s` (120秒)。この項目は、`big_query_log_roll_interval`および`big_query_log_roll_num`と連携して、保持またはパージされるファイルを決定します。 +- 導入バージョン: v3.2.0 + +##### `big_query_log_dir` + +- デフォルト: `Config.STARROCKS_HOME_DIR + "/log"` +- 型: String +- 単位: - +- 変更可能: いいえ +- 説明: FEがビッグクエリダンプログ (`fe.big_query.log.*`) を書き込むディレクトリ。Log4j構成はこのパスを使用して、`fe.big_query.log`とそのローテーションされたファイル用のRollingFileアペンダーを作成します。ローテーションと保持は、`big_query_log_roll_interval` (時間ベースのサフィックス)、`log_roll_size_mb` (サイズトリガー)、`big_query_log_roll_num` (最大ファイル数)、および`big_query_log_delete_age` (期間ベースの削除) によって管理されます。ビッグクエリレコードは、`big_query_log_cpu_second_threshold`、`big_query_log_scan_rows_threshold`、または`big_query_log_scan_bytes_threshold`などのユーザー定義のしきい値を超えるクエリに対してログに記録されます。`big_query_log_modules`を使用して、どのモジュールがこのファイルにログを記録するかを制御します。 +- 導入バージョン: v3.2.0 + +##### `big_query_log_modules` + +- デフォルト: `{"query"}` +- 型: String[] +- 単位: - +- 変更可能: いいえ +- 説明: モジュールごとのビッグクエリロギングを有効にするモジュール名サフィックスのリスト。一般的な値は論理コンポーネント名です。たとえば、デフォルトの`query`は`big_query.query`を生成します。 +- 導入バージョン: v3.2.0 + +##### `big_query_log_roll_interval` + +- デフォルト: `"DAY"` +- 型: String +- 単位: - +- 変更可能: いいえ +- 説明: `big_query`ログアペンダーのローリングファイル名の日付部分を構築するために使用される時間間隔を指定します。有効な値 (大文字と小文字を区別しない) は`DAY` (デフォルト) と`HOUR`です。`DAY`は日次パターン (`"%d{yyyyMMdd}"`) を生成し、`HOUR`は時間パターン (`"%d{yyyyMMddHH}"`) を生成します。この値は、サイズベースのロールオーバー (`big_query_roll_maxsize`) とインデックスベースのロールオーバー (`big_query_log_roll_num`) と組み合わせてRollingFileのfilePatternを形成します。無効な値は、ログ構成の生成に失敗し (IOException)、ログの初期化または再構成を妨げる可能性があります。`big_query_log_dir`、`big_query_roll_maxsize`、`big_query_log_roll_num`、および`big_query_log_delete_age`と組み合わせて使用します。 +- 導入バージョン: v3.2.0 + +##### `big_query_log_roll_num` + +- デフォルト: 10 +- 型: Int +- 単位: - +- 変更可能: いいえ +- 説明: `big_query_log_roll_interval`ごとに保持するローテーションされたFEビッグクエリログファイルの最大数。この値は`fe.big_query.log`のRollingFileアペンダーのDefaultRolloverStrategy `max`属性にバインドされます。ログがロール (時間または`log_roll_size_mb`による) すると、StarRocksは`big_query_log_roll_num`までのインデックス付きファイル (filePattern