KSQLDB 创建带句点的 stream/topic
KSQLDB creating a stream/topic with period
我希望将 stream/table 连接在一起,但是,在 KSQLDB 中的创建流连接语句上,我可以做到这一点。
CREATE STREAM test_name ......
有效
CREATE STREAM test.name ......
无效
我收到与在名称中使用句点相关的错误。想针对我的 Kafka 主题创建一个流,其中有一个句点。
有什么想法吗?
标识符是表示用户定义的实体的符号,例如流、表、列和其他对象。例如,如果您有一个名为 s1 的流,则 s1 是该流的标识符。默认情况下,标识符不区分大小写,这意味着 s1 和 S1 指的是同一个流。在幕后,ksqlDB 将标识符中的所有字符大写以用于所有未来的显示目的。
除非标识符有反引号,否则它只能由字母、数字或下划线等字符组成。字符数没有限制。
为了能够在标识符中使用任何字符,您可以在声明和使用它时将其括在反引号 (`) 中。当您不控制数据时,反引号标识符很有用,因此它可能包含特殊字符,甚至关键字。当您使用带反引号的标识符时,ksqlDB 会准确捕获大小写,并且以后对标识符的任何引用都会区分大小写。
使用KAFKA_TOPIC你可以说出你的主题名称
CREATE STREAM pageviews
(viewtime BIGINT,
userid VARCHAR,
pageid VARCHAR)
WITH (KAFKA_TOPIC='page.views',
VALUE_FORMAT='DELIMITED')
EMIT CHANGES;
我希望将 stream/table 连接在一起,但是,在 KSQLDB 中的创建流连接语句上,我可以做到这一点。
CREATE STREAM test_name ......
有效
CREATE STREAM test.name ......
无效
我收到与在名称中使用句点相关的错误。想针对我的 Kafka 主题创建一个流,其中有一个句点。
有什么想法吗?
标识符是表示用户定义的实体的符号,例如流、表、列和其他对象。例如,如果您有一个名为 s1 的流,则 s1 是该流的标识符。默认情况下,标识符不区分大小写,这意味着 s1 和 S1 指的是同一个流。在幕后,ksqlDB 将标识符中的所有字符大写以用于所有未来的显示目的。
除非标识符有反引号,否则它只能由字母、数字或下划线等字符组成。字符数没有限制。
为了能够在标识符中使用任何字符,您可以在声明和使用它时将其括在反引号 (`) 中。当您不控制数据时,反引号标识符很有用,因此它可能包含特殊字符,甚至关键字。当您使用带反引号的标识符时,ksqlDB 会准确捕获大小写,并且以后对标识符的任何引用都会区分大小写。
使用KAFKA_TOPIC你可以说出你的主题名称
CREATE STREAM pageviews
(viewtime BIGINT,
userid VARCHAR,
pageid VARCHAR)
WITH (KAFKA_TOPIC='page.views',
VALUE_FORMAT='DELIMITED')
EMIT CHANGES;