加载规范工具选项
vkconfig 脚本的加载规范工具可用于为加载流式传输数据的 COPY 语句提供参数。
语法
$ vkconfig load-spec {--create | --read | --update | --delete} [--load-spec spec‑name] [other‑options...]
--create
创建新的负载规范,不能与
‑‑delete
、‑‑read
或‑‑update
一起使用。--read
- 输出调度程序中定义的加载规范的当前设置。此输出采用 JSON 格式。不能与
‑‑create
、‑‑delete
或‑‑update
配合使用。默认情况下,此选项会输出调度程序中定义的所有加载规范。您可以通过向这些选项提供一个值或逗号分隔的值列表来限制输出:
-
--load-spec
-
--filters
-
--uds-kv-parameters
-
--parser
-
--message-max-bytes
-
--parser-parameters
vkconfig 脚本仅输出与您提供的值匹配的加载规范配置。
您可以在这些选项中使用 LIKE 通配符。有关使用通配符的详细信息,请参阅 LIKE 谓词。
-
--update
更新现有的 Set Snippet Variable Value in Topic。不能与
--create
、--delete
或--read
配合使用。--delete
删除 Set Snippet Variable Value in Topic。不能与
--create
、--read
或--update
配合使用。-
\--load-spec spec‑name
- 要对其执行操作的复制加载规范的唯一名称。
--create
、--update
和--delete
需要使用此选项。 --dump
当您将此选项与
--read
选项一起使用时,vkconfig 会输出用来检索数据的 Vertica 查询,而不是输出数据本身。如果您想从 Vertica 中访问数据而无需通过 vkconfig,则此选项很有用。如果不与--read
一起使用,此选项无效。-
\--filters "filter‑name"
- 包含要在 COPY 语句中使用的所有 UDFilter 的 Vertica FILTER 链。有关筛选器的详细信息,请参考解析自定义格式。
-
\--message-max-bytes max‑size
指定 Kafka 协议批处理消息的最大大小(以字节为单位)。
重要
如果您使用 Vertica 9.1.0 或更早版本创建调度程序,则可能需要手动更新此值。Kafka 的 max.message.bytes 设置的含义在 0.10 和 0.11 版本之间发生了变化。有关详细信息,请参阅在 Kafka 0.11 及更高版本中对 message.max.bytes 设置的更改。默认值: 25165824
-
\--new-load-spec new‑name
- 现有加载规范的新唯一名称。需要使用
--update
参数。 -
\--parser-parameters "key=value[,...]"
- 提供给
--parser
参数中指定的解析器的参数列表。在使用 Vertica 本机解析器时,调度程序会将这些参数传递给 COPY 语句,然后转而将其传递给解析器。 -
\--parser parser‑name
- 标识要用于指定目标的 Vertica UDParser。此解析器在调度程序为加载数据而运行的 COPY 语句中使用。如果使用的是 Vertica 本机解析器,则提供给
--parser-parameters
选项的值将传递给 COPY 语句。默认值: KafkaParser
-
\--uds-kv-parameters key=value[,...]
- 用户定义的源的键值对的逗号分隔列表。
--validation-type {ERROR|WARN|SKIP}
- 将对创建或更新后的加载规范执行的验证指定为以下值之一:
-
ERROR
:如果 vkconfig 无法验证加载规范,则取消配置或创建。这是默认设置。 -
WARN
:如果验证失败,则继续执行任务,但会显示警告。 -
SKIP
:不执行验证。
已重命名自
--skip-validation
。 -
请参阅常用 vkconfig 脚本选项以了解所有 vkconfig 工具中提供的选项。
示例
以下示例显示如何使用加载规范实用程序选项。
创建加载规范 Streamspec1
:
$ /opt/vertica/packages/kafka/bin/vkconfig load-spec --create --load-spec Streamspec1 --conf myscheduler.conf
将加载规范 Streamspec1
重命名为 Streamspec2
:
$ /opt/vertica/packages/kafka/bin/vkconfig load-spec --update --load-spec Streamspec1 \
--new-load-spec Streamspec2 \
--conf myscheduler.conf
更新加载规范 Filterspec
以使用 KafkaInsertLengths
筛选器和自定义解密筛选器:
$ /opt/vertica/packages/kafka/bin/vkconfig load-spec --update --load-spec Filterspec \
--filters "KafkaInsertLengths() DecryptFilter(parameter=Key)" \
--conf myscheduler.conf
读取加载规范 streamspec1
的当前设置:
$ vkconfig load-spec --read --load-spec streamspec1 --conf weblog.conf
{"load_spec":"streamspec1", "filters":null, "parser":"KafkaParser",
"parser_parameters":null, "load_method":"TRICKLE", "message_max_bytes":null,
"uds_kv_parameters":null}