В идеальном мире проекция должна быть как можно меньше и действительно мала.
Если вам нужно несколько групп данных - используйте несколько проекций. Это правильный способ простого масштабирования (в худшем случае - один узел - одна проекция).
Кроме того, я предлагаю решить, какой тип данных вы хотите сохранить. ИМХО, проекция в системе событий должна быть организована на основе документа - в этом случае проекция будет небольшой.
Если вы хотите хранить ГБ информации, в любом случае используйте db в качестве проекции. В теории это нормально, на практике вы создадите еще одну абстракцию (адаптер) для работы с различными типами проекций. Эту концепцию вы можете исследовать в каркасе resoljs.