我是Riak的新手,我一直在阅读riak的文档中的this章节。它表明通过向桶和密钥添加结构信息,可以克服键/值操作的一些限制。
虽然文章陈述了如何构建这样一个密钥的例子:
传感器数据密钥可以由sensor_或temp_sensor1_开头,后跟时间戳 (例如sensor1_2013-11-05T08:15:30-05:00)
没有提到如何通过键前缀(例如sensor1_)查询数据的方法。查看stackoverflow,我发现了this个问题。其中提到了MapReduce和密钥过滤作为可能的解决方案。但关键过滤器上的documentation表明它们是即将被弃用的功能。我也检查了Riak搜索作为一种可能的方式,但无法找到通过密钥前缀查询数据的方法。
我的问题是:按密钥前缀搜索数据的最佳方法是什么?我非常感谢一个例子。
答案 0 :(得分:2)
搜索密钥前缀的最佳方法是,如果您不需要,请不要这样做,即如果可以的话,围绕该搜索模式进行设计。这样做的主要方法是使用应用程序可以轻松计算的确定性密钥。也就是说,如果您无法避免构建应用程序以要求搜索关键字符前缀,那么您可以做几件事(所有这些都有它们的缺点)。
希望这会给你一些想法。