sql >> Databáze >  >> NoSQL >> MongoDB

Jaký je doporučený ekvivalent kaskádového mazání v MongoDB pro vztahy N:M?

To, co děláte, je nejlepší a nejoptimálnější způsob, jak to v Mongu dělat. Jsem v podobné situaci a poté, co jsem prošel všemi možnými implementacemi návrhového vzoru N:M, jsem také dospěl ke stejnému řešení.

Zdá se, že se nejedná o věc mongodb, ale spíše o koncept NoSQL, kde lze méně se měnící data (kurzy) uchovávat samostatně. A protože smazání kurzu nebude příliš častou operací, je dostatečně proveditelné, aby prošel všechny záznamy a odstranil jej.

Na druhou stranu to můžete nechat být tak, jak to je. Ve vaší aplikační logice prostě ignorujte hodnoty Courses v dokumentu Student, které vůbec nemají reference_id v dokumentu Course. Ale v tom případě se musíte ujistit, že staré smazané Course_id nejsou znovu použity.

NEBO stačí použít smazané příznaky v dokumentu kurzu a zpracovat vše ostatní ve své aplikační logice.



  1. MongoDB – A co desetinný typ hodnoty?

  2. Úvod do datových struktur Redis:sady

  3. Jak zastavit sestavení Runaway Index v MongoDB

  4. Tipy pro spuštění MongoDB v produkci pomocí změnových streamů