java - 如何通过键前缀查询 Samza KeyValueStore?

使用 Samza KeyValueStore接口(interface),如何检索具有公共(public)键前缀的所有文档?键是字符串,RocksDb 将是底层存储。

下面使用 range 方法的方法是否有任何问题?

KeyValueStore<String,String> store = (KeyValueStore<String, String>) context.getStore("foo")
store.put("aaa.xxx", "foo");
store.put("aaa.yyy", "bar");
store.put("bbb.zzz", "qux");

// get all docs starting with "aaa."
KeyValueIterator<String, String> it = store.range("aaa.", "aaa." + Character.MAX_VALUE)

最佳答案

这会起作用,但是因为范围结束值是排他的,你也可以只做 store.range("aaa.", "b")

https://stackoverflow.com/questions/31561429/

相关文章:

asp.net-mvc-4 - ModelState.IsValid == false,尽管插入了所

php - 使用 Jsonb 绑定(bind)参数?|使用 Postgres 的 Doctrine2

php - 带有 PHP SDK 的 AWS EC2 - 等到实例具有公共(public) DNS

c# - Visual Studio : how to use scripts to "build

python - 通过 Mininet 网络发送 "random"流量

sql - 如何克服 `PERCENTILE_CONT` 参数应为常量的限制?

c# - 在基于 Web 的架构上使用 POCO、DTO 和 ViewModel

python - 在 Matplotlib 和 OSX 中使用数学模式和下标时出现错误偏移

algorithm - 生成填字游戏的高效算法(纽约时报的风格)

hibernate - Spring-data/Hibernate 不能正确处理空值