kylin启动memcached缓存

当部署kylin的机器内存不足时,可以使用memcached作为kylin的查询缓存。

需要在kylin.properties添加的配置如下:

复制代码
kylin.query.cache-enabled=true
kylin.query.lazy-query-enabled=true
kylin.query.cache-signature-enabled=true
kylin.query.segment-cache-enabled=true
kylin.cache=true
kylin.cache.use-local=false
kylin.query.cache-type=memcached
kylin.cache.memcached.hosts=host:port,host:port

其中host是部署memcached机器的ip,port是memcached的端口。可以选择将查询缓存放在多个memcached的机器上。

需要修改的配置如下:

$KYLIN_HOME/tomcat/webapps/kylin/WEB-INF/classes/applicationContext.xml

注释掉:

复制代码
<bean id="ehcache"
      class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean"
      p:configLocation="classpath:ehcache-test.xml" p:shared="true"/>

<bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheCacheManager"
      p:cacheManager-ref="ehcache"/>

取消注释:

复制代码
<bean id="ehcache" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean"
      p:configLocation="classpath:ehcache-test.xml" p:shared="true"/>

<bean id="remoteCacheManager" class="org.apache.kylin.cache.cachemanager.MemcachedCacheManager" />
<bean id="localCacheManager" class="org.apache.kylin.cache.cachemanager.InstrumentedEhCacheCacheManager"
      p:cacheManager-ref="ehcache"/>
<bean id="cacheManager" class="org.apache.kylin.cache.cachemanager.RemoteLocalFailOverCacheManager" />

<bean id="memcachedCacheConfig" class="org.apache.kylin.cache.memcached.MemcachedCacheConfig">
    <property name="timeout" value="500" />
    <property name="hosts" value="${kylin.cache.memcached.hosts}" />
</bean>

然后重启kylin就可以啦。

使用后,在logs文件夹下的kylin.out里面可以找到如下:

复制代码
INFO net.spy.memcached.MemcachedConnection

在kylin.log里面也可以找到:

复制代码
service.QueryService:646 : The sqlResponse is found in QUERY_CACHE
相关推荐
rchmin10 小时前
Redis BitMap介绍及使用场景示例
数据库·redis·缓存
Go高并发架构_王工13 小时前
Redis未来展望:Redis 7.0新特性与技术发展趋势
数据库·redis·缓存
qq_4557608514 小时前
redis - 持久化
数据库·redis·缓存
qq_4557608515 小时前
redis - 事务
数据库·redis·缓存
Light6016 小时前
告别缓存浪费:No-Vary-Search,为你的网站性能注入“AI级”智能
缓存·性能优化·cdn·web性能·http缓存·no-vary-search·url参数
清水白石00816 小时前
动态规划中的记忆化与缓存:原理、差异与 Python 实战指南
python·缓存·动态规划
遇见火星1 天前
Redis主从复制深度解析:数据高可用与负载均衡的核心方案
数据库·redis·缓存·负载均衡
Ahtacca2 天前
Redis 五大常用数据类型详解及 Java 客户端(RedisTemplate)操作实战
java·数据库·redis·学习·缓存
C_心欲无痕2 天前
nodejs - pnpm解决幽灵依赖
前端·缓存·npm·node.js