开发者社区> 问答> 正文

kafka流与hive表join问题

请问一下,如何保证先加载完hive表,然后再与流join,我发现在hive还没有加载完就已经有join的结果出来,这样刚开始出来的结果是不准确的,还有一个问题是hive表加载完之后不会再做checkpoint?我目前使用的是1.7.1版本,看了1.9的维表join,blink文档说(必须加上FOR SYSTEM_TIME AS OF PROCTIME(),表示JOIN维表当前时刻所看到的每条数据),这也就意味着跟我现在一样,没有加载完hive就会join输出了?*来自志愿者整理的flink邮件归档

展开
收起
小阿怪 2021-12-07 22:03:47 701 0
1 条回答
写回答
取消 提交回答
  • Hi,看了你的问题,主要有两个问题。 1. join hive 维表,没加载完就有 join 输出了。 2. hive 加载完后,就不再做 checkpoint 了。

    第一个问题,目前flink 还没有内置支持hive 维表的支持。你可以自己实现一个 udtf 去拉取 hive 数据到内存,udtf 的 eval 方法在加载完 hive 数据之前不返回,这样可以避免没有加载完就有输出的问题。 第二个问题,目前 streaming job 中如果存在 finish vertex,是无法做 checkpoint 的。*来自志愿者整理的flink邮件归档

    2021-12-08 10:26:33
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Java Spring Boot开发实战系列课程【第16讲】:Spring Boot 2.0 实战Apache Kafka百万级高并发消息中间件与原理解析 立即下载
MaxCompute技术公开课第四季 之 如何将Kafka数据同步至MaxCompute 立即下载
消息队列kafka介绍 立即下载