Пн goose дискриминатор и индексы - PullRequest
1 голос
/ 21 февраля 2020

Если я устанавливаю модель с ключом дискриминатора mon goose, автоматически префиксирует все запросы ключом дискриминатора.

Но если я определю некоторые ключи как index: true, то индексы, которые создаются не префиксом ключа дискриминатора. Вместо этого они являются простыми индексами с одним ключом.

Разве это не оптимально? Разве все индексы не должны быть составными индексами дискриминатораKey (например, __t) и ключа, который я хочу индексировать?

И если да, я должен вместо определять индексы на уровне пути (через index: true) предпочитайте устанавливать их так:

Event.index({ __t: 1, type: 1 });

1 Ответ

1 голос
/ 21 февраля 2020

нет, это не неоптимально. Ключ дискриминатора позволяет mon goose понять, какую схему / модель вы используете, и автоматически создает его экземпляр, когда, например. запрос возвращается Пн goose не знает как вы будете использовать этот дополнительный ключ (возможно, вы хотите запросить все ваших типов для определенного c значения? Или вы хотите сделать уникальный индекс для имени для всех ваших типов?), поэтому создание индексов 'basi c' через значение пути делает то, что вы описываете, просто создает индекс.

, если у вас есть сценарий использования что они тесно связаны, вы можете создать составной индекс или разреженные индексы .

...