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
相关推荐
正儿八经的少年1 小时前
redis 的大 key 和热 key 详解
数据库·redis·缓存
X-⃢_⃢-X2 小时前
十、Redis之布隆过滤器
数据库·redis·缓存
Database_Cool_3 小时前
阿里云 Tair(企业级内存数据库)vs 腾讯云 Redis 云缓存深度对比:性能/数据结构/成本全维度 Benchmark
数据库·阿里云·缓存
流星白龙3 小时前
【Redis】1.Redis特性
数据库·redis·缓存
chexus3 小时前
21. 深入 Nginx HTTP 缓存源码:CDN功能
nginx·http·缓存
时空无限21 小时前
vllm 缓存对模型启动时间的影响
缓存·vllm
青山木1 天前
Redis 缓存一致性全解:从 Cache Aside 到延迟双删、Canal+MQ 的进阶之路
java·数据库·redis·后端·缓存
咏方舟【长江支流】1 天前
【开源】跨语言·跨平台·跨数据库(6) ——一种ORM缓存的接口实现和容错处理
数据库·缓存·开源·咏方舟-长江支流·用宝框架
爬也要爬着前进2 天前
redis主从搭建
数据库·redis·缓存
wuqingshun3141592 天前
redis如何保证缓存与数据库的数据一致性?
数据库·redis·缓存