Vous pouvez utiliser $slice
comme modificateur de $push
lorsque vous mettez à jour le document :
$push: {"field": $each: ["val1", "val2"], $slice: -10}
Cela entraînera field
n'être composé que des 10 derniers éléments (ce qui vous donne une "fenêtre glissante" de valeurs insérées dans le champ).