ignite - 如何在正则表达式中给出键时从 Ignite Cache 中获取值?
问题描述
我的 Ignite 缓存中有密钥格式,例如
igniteCache.put("CACHE_1.2.3", someValue1)
igniteCache.put("CACHE_1.2.4", someValue2)
igniteCache.put("CACHE_2.2.3", someValue3)
如何获取键匹配正则表达式的值,如“CACHE_1 .. ”我期待输出 [someValue1, someValue2]
有人可以帮助解决这个问题吗?
解决方案
这种效果可以通过使用带有 LIKE 谓词的 SQL 请求来实现。
考虑以下示例:
CREATE TABLE people(name varchar PRIMARY KEY, age int);
INSERT INTO people (name, age) values('Bob', 21);
INSERT INTO people (name, age) values('George', 30);
INSERT INTO people (name, age) values('Georgiy', 31);
SELECT * FROM people WHERE name LIKE 'Georg%'
最终选择产生两行,name
列从“Georg”开始。
因此,您需要切换到使用 SQL 来定义数据架构,或者为缓存配置查询实体。
推荐阅读
- java - 如果运算符符号后有方法(而不是变量),如何实现左关联?
- python - 手动对 python 目录进行排序,然后无法推送到远程存储库
- javascript - 将 JavaScript 代码转换为 C# 以获取频繁字数
- c++ - 具有可分离内核的 2D 模糊卷积
- python - 从python中的两个数据框中打印出不匹配的行
- asp.net - 错误:如果连接未处于“已连接”状态,则无法发送数据。为什么我的 signalR 连接不起作用?
- r - 如何根据日期生成匹配对?
- android - 使用 MediaStore Android 10 下载大文件
- arrays - Circe:自定义对象的 Json 对象
- javascript - React useEffect Hook 不会被调用,Redux 动作不会被触发