Outra opção seria apenas manter os valores diferentes por idioma. Provavelmente tornaria a manutenção do esquema muito mais fácil também:
product : {
_id:xxx,
sku: {
und: "23456"
},
name: {
en: "Fork",
de: "Gabel"
},
description: {
en: "A metal thingy with four spikes",
de: "Eine Dinge aus metal der vier spitze hat"
}
}
und
seria a abreviação de "indefinido", ou seja, o mesmo para todos os idiomas, e poderia ser usado como substituto - ou você sempre usa "en" como substituto, se preferir. O exemplo acima é aproximadamente como o Drupal CMS gerencia idiomas (embora traduzidos de SQL para Mongo).