FE 配置 - 存算分离、数据湖和其他
FE 参数分为动态参数和静态参数。
-
动态参数可通过 SQL 命令进行在线配置和调整,方便快捷。需 要注意通过 SQL 命令所做的动态设置在重启 FE 后会失效。如果想让设置长期生效,建议同时修改 fe.conf 文件。
-
静态参数必须在 FE 配置文件 fe.conf 中进行配置和调整。调整完成后,需要重启 FE 使变更生效。
参数是否为动态参数可通过 ADMIN SHOW CONFIG 返回结果中的 IsMutable 列查看。TRUE 表示动态参数。
静态和动态参数均可通过 fe.conf 文件进行修改。
查看 FE 配置项
FE 启动后,您可以在 MySQL 客户端运行 ADMIN SHOW FRONTEND CONFIG 命令查看参数配置。如果要查询特定参数的配置,请运行以下命令:
ADMIN SHOW FRONTEND CONFIG [LIKE "pattern"];
有关返回字段的详细说明,请参阅 ADMIN SHOW CONFIG。
备注
您必须具有管理员权限才能运行集群管理相关命令。
配置 FE 参数
配置 FE 动态参数
您可以使用 ADMIN SET FRONTEND CONFIG 命令配置或修改 FE 动态参数。
ADMIN SET FRONTEND CONFIG ("key" = "value");
备注
动态设置的配置项,在 FE 重启之后会恢复成 fe.conf 文件中的配置或者默认值。如果需要让配置长期生效,建议设置完之后同时修改 fe.conf 文件,防止重启后修改失效。
配置 FE 静态参数
备注
FE 静态参数不支持在线修改,您需要在 fe.conf 中修改并重启 FE 以使修改生效。
当前主题包含以下类型的 FE 配置:
存算分离
aws_s3_access_key
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 用于访 问 S3 存储桶的 Access Key ID。
- 引入版本: v3.0
aws_s3_endpoint
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 用于访问 S3 存储桶的 endpoint,例如
https://s3.us-west-2.amazonaws.com。 - 引入版本: v3.0
aws_s3_external_id
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 用于跨账户访问 S3 存储桶的 AWS 账户的外部 ID。
- 引入版本: v3.0
aws_s3_iam_role_arn
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 对存储数据文件的 S3 存储桶具有权限的 IAM 角色的 ARN。
- 引入版本: v3.0
aws_s3_path
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 用于存储数据的 S3 路径。它由 S3 存储桶的名称和其下的子路径(如果有)组成,例如
testbucket/subpath。 - 引入版本: v3.0
aws_s3_region
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: S3 存储桶所在的区域,例如
us-west-2。 - 引入版本: v3.0
aws_s3_secret_key
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 用于访问 S3 存储桶的 Secret Access Key。
- 引入版本: v3.0
aws_s3_use_aws_sdk_default_behavior
- 默认值: false
- 类型: Boolean
- 单位: -
- 是否可变: No
- 描述: 是否使用 AWS SDK 的默认认证凭据。有效值:true 和 false (默认)。
- 引入版本: v3.0
aws_s3_use_instance_profile
- 默认值: false
- 类型: Boolean
- 单位: -
- 是否可变: No
- 描述: 是否使用实例配置文件和 assumed role 作为访问 S3 的凭证方法。有效值:true 和 false (默认)。
- 如果您使用基于 IAM 用户(Access Key 和 Secret Key)的凭证访问 S3,则必须将此项指定为
false,并指定aws_s3_access_key和aws_s3_secret_key。 - 如果您使用实例配置文件访问 S3,则必须将此项指定为
true。 - 如果您使用 assumed role 访问 S3,则必须将此项指定为
true,并指定aws_s3_iam_role_arn。 - 如果您使用外部 AWS 账户,则还必须指定
aws_s3_external_id。
- 如果您使用基于 IAM 用户(Access Key 和 Secret Key)的凭证访问 S3,则必须将此项指定为
- 引入版本: v3.0
azure_adls2_endpoint
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: Azure Data Lake Storage Gen2 账户的 endpoint,例如
https://test.dfs.core.windows.net。 - 引入版本: v3.4.1
azure_adls2_oauth2_client_id
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 用于授权 Azure Data Lake Storage Gen2 请求的托管标识的客户端 ID。
- 引入版本: v3.4.4
azure_adls2_oauth2_tenant_id
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 用于授权 Azure Data Lake Storage Gen2 请求的托管标识的租户 ID。
- 引入版本: v3.4.4
azure_adls2_oauth2_use_managed_identity
- 默认值: false
- 类型: Boolean
- 单位: -
- 是否可变: No
- 描述: 是否使用托管标识授权 Azure Data Lake Storage Gen2 请求。
- 引入版本: v3.4.4
azure_adls2_path
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 用于存储数据的 Azure Data Lake Storage Gen2 路径。它由文件系统名称和目录名称组成,例如
testfilesystem/starrocks。 - 引入版本: v3.4.1
azure_adls2_sas_token
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 用于授权 Azure Data Lake Storage Gen2 请求的共享访问签名 (SAS)。
- 引入版本: v3.4.1
azure_adls2_shared_key
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 用于授权 Azure Data Lake Storage Gen2 请求的共享密钥。
- 引入版本: v3.4.1
azure_blob_endpoint
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: Azure Blob Storage 账户的 endpoint,例如
https://test.blob.core.windows.net。 - 引入版本: v3.1
azure_blob_path
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 用于存储数据的 Azure Blob Storage 路径。它由存储账户中容器的名称和容器下的子路径(如果有)组成,例如
testcontainer/subpath。 - 引入版本: v3.1
azure_blob_sas_token
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 用于授权 Azure Blob Storage 请求的共享访问签名 (SAS)。
- 引入版本: v3.1
azure_blob_shared_key
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 用于授权 Azure Blob Storage 请求的共享密钥。
- 引入版本: v3.1
azure_use_native_sdk
- 默认值: true
- 类型: Boolean
- 单位: -
- 是否可变: Yes
- 描述: 是否使用原生 SDK 访问 Azure Blob Storage,从而允许使用托管标识和服务主体进行身份验证。如果此项设置为
false,则仅允许使用共享密钥和 SAS Token 进行身份验证。 - 引入版本: v3.4.4
cloud_native_hdfs_url
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: HDFS 存储的 URL,例如
hdfs://127.0.0.1:9000/user/xxx/starrocks/。 - 引入版本: -
cloud_native_meta_port
- 默认值: 6090
- 类型: Int
- 单位: -
- 是否可变: No
- 描述: FE 云原生元数据服务器 RPC 监听端口。
- 引入版本: -
cloud_native_storage_type
- 默认值: S3
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 您使用的对象存储类型。在共享数据模式下,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
- 单位: -
- 是否可变: No
- 描述: 是否允许 StarRocks 使用 FE 配置文件中指定的对象存储相关属性创建内置存储卷。从 v3.4.1 开始,默认值从
true更改为false。 - 引入版本: v3.1.0
gcp_gcs_impersonation_service_account
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 如果您使用基于模拟的身份验证访问 Google Storage,则要模拟的服务账户。
- 引入版本: v3.5.1
gcp_gcs_path
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 用于存储数据的 Google Cloud 路径。它由 Google Cloud 存储桶的名称和其下的子路径(如果有)组成,例如
testbucket/subpath。 - 引入版本: v3.5.1
gcp_gcs_service_account_email
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 服务账户创建时生成的 JSON 文件中的电子邮件地址,例如
user@hello.iam.gserviceaccount.com。 - 引入版本: v3.5.1
gcp_gcs_service_account_private_key
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 服 务账户创建时生成的 JSON 文件中的私钥,例如
-----BEGIN PRIVATE KEY----xxxx-----END PRIVATE KEY-----\n。 - 引入版本: v3.5.1
gcp_gcs_service_account_private_key_id
- 默认值: 空字符串
- 类型: String
- 单位: -
- 是否可变: No
- 描述: 服务账户创建时生成的 JSON 文件中的私钥 ID。
- 引入版本: v3.5.1
gcp_gcs_use_compute_engine_service_account
- 默认值: true
- 类型: Boolean
- 单位: -
- 是否可变: No
- 描述: 是否使用绑定到 Compute Engine 的服务账户。
- 引入版本: v3.5.1
hdfs_file_system_expire_seconds
- 默认值: 300
- 类型: Int
- 单位: 秒
- 是否可变: Yes
- 描述: 由 HdfsFsManager 管理的未使用的缓存 HDFS/ObjectStore FileSystem 的 存活时间(秒)。FileSystemExpirationChecker(每 60 秒运行一次)使用此值调用每个 HdfsFs.isExpired(...);过期时,管理器关闭底层 FileSystem 并将其从缓存中删除。访问器方法(例如
HdfsFs.getDFSFileSystem、getUserName、getConfiguration)更新最后访问时间戳,因此过期基于不活动。较低的值会减少空闲资源占用,但会增加重新打开的开销;较高的值会保持句柄更长时间,并可能消耗更多资源。 - 引入版本: v3.2.0
lake_autovacuum_grace_period_minutes
- 默认值: 30
- 类型: Long
- 单位: 分钟
- 是否可变: Yes
- 描述: 共享数据集群中保留历史数据版本的时间范围。在此时间范围内的历史数据版本不会在 Compactions 后通过 AutoVacuum 自动清理。您需要将此值设置得大于最大查询时间,以避免正在运行的查询访问的数据在查询完成之前被删除。从 v3.3.0、v3.2.5 和 v3.1.10 开始,默认值已从
5更改为30。 - 引入版本: v3.1.0
lake_autovacuum_parallel_partitions
- 默认值: 8
- 类型: Int
- 单位: -
- 是否可变: No