我想建立一个基于文档文件和值分布的动态过滤引擎(下一个要过滤的字段的决策树)
我使用 mongodb mongoose 和 nodejs。
IE :
数据库包含描述汽车特性的文档:
{color:"blue", engine:"1598", numOfDoors:3, ...}
我想返回最佳字段以按文档过滤。目标是返回最多 5 个与输入的特征最兼容的文档。
例如,如果有 2 辆蓝色汽车和 8 辆红色汽车,以及 2 辆 2 门汽车、2 辆 3 门汽车、2 辆 4 门汽车、2 辆 5 门汽车、2 辆 6 门汽车。
我想返回numOfDoors
作为下一个过滤字段,因为返回所需文档数量(5)的概率是 100%,而按颜色过滤只有 20%。
如果您能回答以下问题,我将不胜感激:
- 如何检索更多字段以通过一组匹配的文档进行过滤(由于 mongo 灵活模式,文档结构彼此不同)
- 是否有内置函数或模型可用于按字段及其值计算文档分布?
谢谢