我在一组中有数百万条记录。我想检索与相同模式匹配的所有记录。
例如,我可能有:
id=4444?mode=mode1?fieldA=abc
id=4444?mode=mode1?fieldA=azerty
id=4444?mode=mode1?fieldA=qwerty
id=4444?mode=mode1?fieldA=foo
id=4444?mode=mode1?fieldA=bar
是否可以进行查询以获取所有上述记录,而无需事先知道fieldA
?的值?在正则表达式中是这样的:
id=4444?mode=mode1?fieldA=[\w]*
谢谢您的时间。
是的,可以做到。您将需要首先通过二级索引进行查询,以首先将结果集缩小到可管理的大小,然后使用Lua编写一个过滤器,以过滤掉不需要的过滤器。此过滤器可以获取您要匹配的正则表达式(动态传递),并仅返回那些匹配的记录。
尽管这可行,但性能不如Aerospike中的键值操作。您肯定会在将这种解决方案投入生产之前对其进行基准测试。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句