Sim, não há problema em usar um valor aleatório para um id de objeto, se algum valor estiver presente em
_id
campo de um documento que está sendo armazenado, ele é tratado como objectId. Desde
_id
campo é sempre indexado e chave primária, você precisa ter certeza de que diferentes ids de objeto são geradas para cada objeto. Existem algumas diretrizes para otimizar ids de objetos definidos pelo usuário:https://docs.mongodb.com/manual/core/document/#the-id-field.