Infinispan缓存联合查询
Infinispan cache union query
我里面有两个不同类型的缓存
想对它们进行分页查询。那么想传入一个 sort/filter 值并从两个缓存中获取内容吗?
有没有不用手动编写合并和分页的方法?
目前我只能做这样的事情:
val queryFactory = Search.getQueryFactory(cache)
queryFactory.from(Class.getClass)
或
val searchManager = Search.getSearchManager(cache)
searchManager.buildQueryBuilderForClass(Class.getClass).get()
不支持跨多个缓存搜索,也没有支持它的具体计划。查询 DSL 和直接 Lucene API 都不允许这样做。解决方法是自己合并搜索结果。
主要原因是每个缓存都有自己独立的索引集。因此,跨缓存的搜索必须从多个索引中检索数据并执行合并,这在当前实现中效率不高,因此由于技术原因暂时忽略了这一点。
我里面有两个不同类型的缓存
想对它们进行分页查询。那么想传入一个 sort/filter 值并从两个缓存中获取内容吗?
有没有不用手动编写合并和分页的方法?
目前我只能做这样的事情:
val queryFactory = Search.getQueryFactory(cache)
queryFactory.from(Class.getClass)
或
val searchManager = Search.getSearchManager(cache)
searchManager.buildQueryBuilderForClass(Class.getClass).get()
不支持跨多个缓存搜索,也没有支持它的具体计划。查询 DSL 和直接 Lucene API 都不允许这样做。解决方法是自己合并搜索结果。
主要原因是每个缓存都有自己独立的索引集。因此,跨缓存的搜索必须从多个索引中检索数据并执行合并,这在当前实现中效率不高,因此由于技术原因暂时忽略了这一点。