Краткий ответ на ваш вопрос: ты не Единственный доступный вариант - хранить каждую уникальную пару в виде одного элемента массива. Так что вместо:
{a:[1,2], b[8,9]}
вы храните
{ab:[[1,8], [1,9], [2,8], [2,9]]}
Очевидно, что у этого есть несколько недостатков, так что это действительно зависит от вашего конкретного варианта использования, является ли это подходящим обходным решением. Однако я согласен с тем, что Монго не должен отклонять несколько индексов массива только для защиты от идиотов. Это хорошая функция для небольших / слабых кардинальных массивов.