$sample:
3.2+版本中新增,类似于大数据中的“数据采样”方式,从input中随机选择N条documents,语法“{$sample: {size: <N>}}”。如果N大于collection中总数据的5%,那么$sample将会执行collection扫描、sort,然后选择top N条文档;如果N小于5%,对于wiredTiger而言则会遍历collection并使用“伪随机”的方式选取N条文档,对于MMAPv1引擎则在_id索引上随机选取N条文档。
db.answers.aggregate([
{ $sample: { size: 20 }}
])