AsyncIO 用Redis做缓存

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

AsyncIO 用Redis做缓存

王佩-2
需求: 事实表实时Join Kudu中的维度表,用来补全维度。

为加快查询速度,先从Kudu中查询数据,查询到数据后放入Redis缓存,下次查询先从Redis中取,取不到再从Kudu中查。

遇到的问题:
1、不用Redis缓存,checkpoint很快,效率很高。
2、用Redis缓存,用Jedis,但不用连接池,效率很低。
3、用Redis缓存,用Redis连接池,效率更低。

请教下:
1、从Kudu中取数据,不用缓存可以吗。
2、在AsyncIO中,用lettuce异步客户端,和flink netty不兼容。
3、在AsyncIO中,用Jedis连接池,flink checkpoint很慢的原因。
3、像我这种场景: 流(实时表) Join Kudu中的维度表,怎么才能更好的提高性能。

烦请解答下,辛苦,感谢。
Reply | Threaded
Open this post in threaded view
|

Re: AsyncIO 用Redis做缓存

王佩-2
这种Join场景,用上缓存后,理论上应该更快,但为啥会变慢呢。

王佩 <[hidden email]> 于2019年8月6日周二 下午10:09写道:

> 需求: 事实表实时Join Kudu中的维度表,用来补全维度。
>
> 为加快查询速度,先从Kudu中查询数据,查询到数据后放入Redis缓存,下次查询先从Redis中取,取不到再从Kudu中查。
>
> 遇到的问题:
> 1、不用Redis缓存,checkpoint很快,效率很高。
> 2、用Redis缓存,用Jedis,但不用连接池,效率很低。
> 3、用Redis缓存,用Redis连接池,效率更低。
>
> 请教下:
> 1、从Kudu中取数据,不用缓存可以吗。
> 2、在AsyncIO中,用lettuce异步客户端,和flink netty不兼容。
> 3、在AsyncIO中,用Jedis连接池,flink checkpoint很慢的原因。
> 3、像我这种场景: 流(实时表) Join Kudu中的维度表,怎么才能更好的提高性能。
>
> 烦请解答下,辛苦,感谢。
>
>
>
Reply | Threaded
Open this post in threaded view
|

Re: AsyncIO 用Redis做缓存

戴嘉诚
你好,
        可以用lettuce做异步客户端,排除lettuce的netty依赖,用flink的netty,就可以了集成lettuce了

王佩 <[hidden email]>于2019年8月6日 周二22:11写道:

> 这种Join场景,用上缓存后,理论上应该更快,但为啥会变慢呢。
>
> 王佩 <[hidden email]> 于2019年8月6日周二 下午10:09写道:
>
> > 需求: 事实表实时Join Kudu中的维度表,用来补全维度。
> >
> > 为加快查询速度,先从Kudu中查询数据,查询到数据后放入Redis缓存,下次查询先从Redis中取,取不到再从Kudu中查。
> >
> > 遇到的问题:
> > 1、不用Redis缓存,checkpoint很快,效率很高。
> > 2、用Redis缓存,用Jedis,但不用连接池,效率很低。
> > 3、用Redis缓存,用Redis连接池,效率更低。
> >
> > 请教下:
> > 1、从Kudu中取数据,不用缓存可以吗。
> > 2、在AsyncIO中,用lettuce异步客户端,和flink netty不兼容。
> > 3、在AsyncIO中,用Jedis连接池,flink checkpoint很慢的原因。
> > 3、像我这种场景: 流(实时表) Join Kudu中的维度表,怎么才能更好的提高性能。
> >
> > 烦请解答下,辛苦,感谢。
> >
> >
> >
>
Reply | Threaded
Open this post in threaded view
|

Re: AsyncIO 用Redis做缓存

KrisWu
您好,可以具体描述一下如何排除lettuce依赖和flink集成吗?  我现在在flink1.8遇到了兼容问题。以下是我的lettuce依赖:
<dependency>
            <groupId>io.lettuce</groupId>
            <artifactId>lettuce-core</artifactId>
            <version>5.0.0.RELEASE</version>
            <exclusions>
                <exclusion>
                    <groupId>io.netty</groupId>
                    <artifactId>netty-buffer</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>io.netty</groupId>
                    <artifactId>netty-codec</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>io.netty</groupId>
                    <artifactId>netty-common</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>io.netty</groupId>
                    <artifactId>netty-handler</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>io.netty</groupId>
                    <artifactId>netty-resolver</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>io.netty</groupId>
                    <artifactId>netty-transport</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

我排除了这些依赖后还是报同样的错



--
Sent from: http://apache-flink.147419.n8.nabble.com/