Det du prøver at gøre er ikke muligt givet dit skema. Punktnotation kan være på flere niveauer, men hvis der er mere end ét niveau, der er en matrix, kan det ikke længere adresseres ved hjælp af positionsoperatoren '$'.
For eksempel. du skal gøre:
db.my_collection.update(
{'websites.blog_posts.url': 'http://www.example.com/01.html' },
{'$set': {'websites.$.blog_posts.$.impressions': 549}},
true );
Men at have to positionsoperatorer i opdateringen er ikke muligt, da MongoDB kun kan bestemme positionen af et element i det første array.
Din eneste mulighed er at omdesigne dit skema til at have en dedikeret samling af brugerwebsteder (hvilket også er bedre af andre årsager i dette tilfælde).