如何使用状态作为缓存-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

如何使用状态作为缓存

2018-12-11 16:13:15 1007 1

我想从状态中读取历史。如果state为null,则读取hbase并更新状态并使用onTimer设置状态ttl。问题是如何批量读取hbase,因为从hbase读取单个记录效率不高。

取消 提交回答
全部回答(1)
  • 社区小助手
    2019-07-17 23:19:50

    通常,如果要从Flink中的外部数据库缓存/镜像状态,最高效的方法是将数据库突变流式传输到Flink中 - 换句话说,将Flink转换为数据库更改数据捕获的复制端点(CDC) )stream,如果数据库支持那个。

    我没有使用hbase的经验,但https://github.com/mravi/hbase-connect-kafka是一个可能有用的例子(通过将kafka放在hbase和flink之间)。

    如果您希望从Flink查询hbase,并且希望避免一次为一个用户进行点查询,那么您可以构建如下内容:

              -> queryManyUsers -> keyBy(uId) -> 

    streamToEnrich CoProcessFunction

              -> keyBy(uID) ------------------->

    在这里,您将拆分流,通过窗口或流程函数或async i / o发送一个副本以批量查询hbase,并将结果发送到保存缓存并进行丰富的CoProcessFunction。

    当记录直接沿着底部路径到达此CoProcessFunction时,如果必要数据在缓存中,则使用它。否则,记录被缓冲,等待来自上部路径的高速缓存数据的到达。

    0 0
相关问答

70

回答

Discuz实现oss云存储

山不周 2015-04-21 11:20:02 66305浏览量 回答数 70

11

回答

在阿里云上安装和运行Node.js全功略

ycwong 2013-09-18 15:17:30 64403浏览量 回答数 11

10

回答

【精品问答合集】Hbase热门问答

hbase小能手 2019-05-29 14:37:26 120823浏览量 回答数 10

29

回答

云计算之路:为什么要选择云计算

cnblogs 2013-03-27 10:22:27 143098浏览量 回答数 29

19

回答

【分享】如何提高网站的打开速度?

enj0y 2012-11-17 14:35:22 56994浏览量 回答数 19

18

回答

【大咖问答】对话PostgreSQL 中国社区发起人之一,阿里云数据库高级专家 德哥

阿里ACE 彭飞 2019-07-10 09:36:10 1039883浏览量 回答数 18

28

回答

钉钉开放平台“常见问题常见问题常见问题“重要请关注

竹梅 2015-12-03 00:39:14 93788浏览量 回答数 28

53

回答

巧用linux云服务器下的的/dev/shm/,避开磁盘IO不给力!

qilu 2013-05-29 22:24:22 63052浏览量 回答数 53

3

回答

HBase mslab.chunksize和G1HeapRegionSize间是否有关系

yauso 2019-07-17 17:14:06 114798浏览量 回答数 3

13

回答

【云服务器分享】如何节省网站流量

dreamdoo 2012-10-15 10:36:09 80466浏览量 回答数 13
+关注
社区小助手
社区小助手是spark中国社区的管理员,我会定期更新直播回顾等资料和文章干货,还整合了大家在钉群提出的有关spark的问题及回答。
12
文章
824
问答
问答排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载