例如,有这样一个集合:
如何高效地使用多个键执行“独特”?
{市场: 'SH',代码: '000001',日期: '2012-01-01',价格:1000}
{市场: 'SZ',代码: '000001',日期: '2012-01-01',价格:1000}
{市场: 'SH',代码: '000001',日期: '2012-01-02',价格:1000}
{市场: 'SZ',代码: '000001',日期: '2012-01-02',价格:1000}
{市场: 'SH',代码: '000002',日期: '2012-01-03',价格:1000}
...
此集合包含数千万的文件。
我想打电话给不同的两个键:
collection.distinct('market', 'code');
,并得到结果:
[{市场: 'SH',代码: '000001'}, {市场: 'SZ',代码: '000001'},{ 市场: 'SH',代码: '000002'}]
本机独特的命令只接受一个关键,我尝试实施它通过使用map-reduce。但是map-reduce太慢而不是本地独特。在我的一键独特测试中,map-reduce花费的时间比native distinct长十倍。
有没有一种有效的方法来实现multikey不同?