Skip to main content
这些设置是根据源代码自动生成的。

format_schema

当您使用需要定义 schema 的格式 (例如 Cap’n ProtoProtobuf) 时,此参数会很有用。其值取决于具体格式。

format_schema_message_name

定义 format_schema 中指定的 schema 里所需消息的名称。 为保持与 legacy format_schema 格式 (file_name:message_name) 的兼容性:
  • 如果未指定 format_schema_message_name,则会从 legacy format_schema 值中的 message_name 部分推断出消息名称。
  • 如果在使用 legacy 格式时指定了 format_schema_message_name,则会引发错误。

format_schema_source

定义 format_schema 的来源。 可能的值:
  • ‘file’ (默认) :format_schema 是位于 format_schemas 目录中的 schema file 名称。
  • ‘string’:format_schema 是 schema 的字面内容。
  • ‘query’:format_schema 是一个用于获取 schema 的查询。 当 format_schema_source 设置为 ‘query’ 时,需满足以下条件:
  • 查询必须恰好返回一个值:即单行单个字符串列。
  • 查询结果会被视为 schema 内容。
  • 该结果会缓存在本地 format_schemas 目录中。
  • 你可以使用以下命令清除本地缓存:SYSTEM DROP FORMAT SCHEMA CACHE FOR Files
  • 一旦缓存,相同的查询将不会再次执行来拉取 schema,直到显式清除缓存为止
  • 除了本地缓存文件外,Protobuf Message 也会缓存在内存中。即使清除了本地缓存文件,也必须使用 SYSTEM DROP FORMAT SCHEMA CACHE [FOR Protobuf] 清除内存缓存,才能完全刷新 schema。
  • 运行查询 SYSTEM DROP FORMAT SCHEMA CACHE,即可一次性清除缓存文件和 Protobuf Message schema 的缓存。
最后修改于 2026年7月23日