Wprowadzenie:
W Twoim przypadku obydwa warianty będą dobre, ponieważ kategoria wystarczy wyliczyć i nie potrzebujesz kategorii obciążenia, aby wyświetlić kurs, wystarczy utworzyć wyliczenie i uzyskać nazwę kategorii po id.
Ale na przykład, jeśli masz tabelę db.users i każdy użytkownik ma kolekcję db.courses, nie musisz tworzyć oddzielnego dokumentu, wystarczy zagnieżdżone kursy kolekcji. I to jest naprawdę fajne, ponieważ w sql musisz utworzyć osobną tabelę z jednym do wielu odnośników.
Jedną wielką zaletą bazy danych dokumentów jest to, że możesz tworzyć duże dokumenty z zagnieżdżonymi kolekcjami i bez konieczności łączenia tabel.
Odpowiedź:
Więc w twoim przypadku proponuję dwa sposoby:
- Utwórz wyliczenie dla kategorii i uzyskaj nazwę kategorii według identyfikatora (ale nie ładuj z mongo).
- Po prostu skopiuj nazwę kategorii w kursie (ale pierwszy przypadek lepiej, ponieważ w przypadku zmiany nazwy kategorii musisz zaktualizować każdy kurs o nową nazwę kategorii).