När du skulle göra det på det sättet skulle du inte spåra vilken användare som redan har röstat, så användare kan rösta flera gånger. Det ligger säkert inte i ditt intresse.
Av den anledningen skulle jag lägga till en rad "röster" till varje artikel som inkluderar ett objekt för varje röst som unikt identifierar användaren som gjorde den:
votes: [
{ voter:"name or ID or IP address or some other unique identifier for the person who voted",
vote:-1 },
{ voter:"someone else",
vote:1 },
{ voter:"and someone entirely different",
vote:-1 }
]
När du skapar ett unikt index över artikel-ID och votes.voter har du redan sett till att ingen kan rösta två gånger på en artikel.
När du använder värdet "-1" för nedröstning och "1" för uppröstning kan du beräkna totalpoängen för en artikel genom att använda funktionen $summa aggregat (det skulle också lätt göra det möjligt för dig att införa viktade röster senare, när du känner gillar det).