当前位置: 首页 > 知识库问答 >
问题:

什么是java/scalakafka流相当于KSQL加入WHERE子句?

尚声
2023-03-14

假设我有两个Kafka流(Kafka流scala库,版本2.2.0):

val builder: StreamsBuilder = new StreamsBuilder
val stream1: KStream[String, GenericRecord] = builder.stream[String, GenericRecord]("topic1")
val stream2: KStream[String, GenericRecord] = builder.stream[String, GenericRecord]("topic2")

以及他们的加入:

val stream3: KStream[String, MyClass] = flights.join(schedules)((r1, r2) =>  MyClass(r1.get("f1"), r2.get("f2")), JoinWindows.of(Duration.ofSeconds(30))

KSQL中WHERE子句的等价物是什么?(参见最新订单流)了解流API?使用stream3是个好主意。滤器这种方法的效率是否与KSQL创建的流相同?

共有1个答案

薛烈
2023-03-14

对于流API,什么是KSQL中可用的WHERE子句?(参见late_orders流)?

它是:

  • KStream#filter(),它返回一个经过过滤的KStream
  • KTable#filter(),返回一个经过过滤的KTable

https://kafka.apache.org/documentation/streams/developer-guide/dsl-api.html#stateless-转变

使用stream3是个好主意。滤器

是的。

这种方法的效率是否与KSQL创建的流相同?

是的。

 类似资料:
  • 问题内容: 什么是Java相当于ManualResetEvent? 问题答案: 我所知道的最接近的是信号量。只需将其“许可”计数为1即可使用,获得/释放将与您从中获得的信息几乎相同。 初始化为一个的信号灯可以用作互斥锁,该信号灯最多只能使用一个许可。这通常被称为二进制信号量,因为它只有两种状态:一个许可可用,或零许可可用。当以这种方式使用时,二进制信号量具有属性(与许多Lock实现不同),该“锁”

  • 问题内容: 我熟悉SQL,但不熟悉Crystal Reports。我正在尝试处理5列的导入数据集: 我正在尝试执行子查询,但无法弄清楚SQL中WHERE的CR等效项是什么。我想按照以下方式做一些事情: 有什么建议? 问题答案: 正如Conrad和dotjoe所观察到的,sql子句的Crystal等效项是Select Expert-您应该能够在Report菜单上找到它。 如果您需要在明细部分中同时包

  • 问题内容: 我有一个Bash shell脚本,我想在其中暂停执行,直到用户按下某个键为止。在DOS中,可以使用“ pause”命令轻松完成此操作。我可以在脚本中使用等效的Linux吗? 问题答案: 做这个: 该指定它只是等待一个字符。在将其放入原始模式,这是必要的,否则,如果按类似反斜杠,它不会注册,直到你遇到下一个关键。在指定的提示,如果包含空格,必须用引号括起来。仅当您想知道他们按下了哪个键时

  • 问题内容: 我有两个要加入的表。 我想要类别表中的所有类别以及用户在category_subscriptions表中订阅的所有类别。 基本上这是我到目前为止的查询: 这很好用,但是我想在查询的末尾添加一个where子句,然后从本质上使它成为一个内部/等参连接。 如何仅使用一个查询获取所有类别以及特定用户订阅的所有类别? category_id是类别表和user_category_subscript

  • 问题内容: C#中的Java枚举相当于什么? 问题答案: 完整的Java枚举功能在C#中不可用。你可以来 合理地 接近使用嵌套类型和私有构造虽然。例如: 当然你不 具备 使用嵌套类型,但他们给了方便的“自定义的行为”其中一部分的Java枚举是好的。在其他情况下,您可以仅将参数传递给私有构造函数以获取众所周知的受限值集。 一些不能给您的事情: 顺序支持 开关支持 序列化/反序列化(作为单例) 尽管没