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

Jak automaticky zabít pomalé dotazy MongoDB?

Možnost 'notablescan', jak zmínil @ghik, vám zabrání spouštět dotazy, které jsou pomalé kvůli nepoužívání indexu. Tato možnost je však pro server globální a není vhodná pro použití v produkčním prostředí. Kromě skenování tabulek vás také nechrání před žádným jiným zdrojem pomalých dotazů.

Bohužel si nemyslím, že právě teď existuje způsob, jak přímo dělat to, co chcete. Existuje lístek JIRA, který navrhuje přidání parametru dotazu $maxTime nebo $maxScan, což zní, že by vám to pomohlo, takže pro něj hlasujte:https://jira.mongodb.org/browse/SERVER-2212 .



  1. mongorestore ze samostatného na replikační sadu

  2. mongoDB. číst, hledat časové razítko na základě oplog

  3. MongoDB Query, najít vše podle ID uživatele

  4. Mongodb dotaz založený na položce na konkrétní pozici v poli