Para a primeira parte, você deve conseguir recuperar esse registro fazendo:
db.collectionName.find({"attributes.id": 1, "attributes.value": 150});
Isso recuperará apenas o campo _id de qualquer objeto que tenha um elemento da matriz de atributos que tenha id =1 e valor =150.
Como a segunda parte da sua pergunta envolve retornar uma contagem de correspondências, você deve explorar suas opções com o mapa -reduzir . Você não pode produzir esse resultado com uma simples consulta do Mongo.