2013-11-21 20 views

回答

1

在Riak上市的数百万密钥是not recommended in production environments,因为这是一个非常昂贵的操作。如果您仍然需要这样做,最好使用列表键功能,因为这可以让Riak将结果传输回客户端,并可用于任何后端。

虽然如果在1.4版本以后使用LevelDB或内存后端,可以对二级索引查询执行分页,但这需要在服务器端进行排序,因此不建议将其用于如此大的结果集。

+0

我需要将所有密钥(按需求)加载到缓存文件,我知道这不是推荐的生产解决方案,还有其他解决方案吗? –

+0

我见过使用二级索引$ key的建议,这应该允许我使用continuation参数。我无法找到如何在Java中使用它 –

+0

如果您绝对需要列出所有密钥,请使用流式密钥列表。如果您使用LevelDB,则会在幕后使用内部索引。尝试使用分页会给群集带来更多的负载,而不是一个键列表,因为您希望返回大量的键。我也不认为特殊的$ key和$ bucket索引可能分页。 –