Zestawy rozmówBlog

Twoja wymarzona praca? Lets Git IT.
Interaktywna platforma przygotowująca do rozmów technicznych dla nowoczesnych programistów.

XGitHub

Platforma

  • Kategorie

Zasoby

  • Blog
  • O aplikacji
  • FAQ
  • Sugestie

Prawne

  • Polityka prywatności
  • Regulamin

© 2026 LetsGit.IT. Wszelkie prawa zastrzeżone.

LetsGit.IT/Kategorie/MongoDB
MongoDBeasy

Indeks TTL: co robi i kiedy się go używa?

Tagi
#mongo#ttl#index#expiration
Wróć do kategoriiPrzejdź do quizu

Odpowiedź

Indeks TTL automatycznie usuwa dokumenty po określonym czasie na podstawie pola daty. Używa się go do danych wygasających (sesje, OTP, tymczasowe logi), aby uniknąć ręcznego sprzątania.

db.sessions.createIndex({ expiresAt: 1 }, { expireAfterSeconds: 0 })

Odpowiedź zaawansowana

Głębiej

Rozwinięcie krótkiej odpowiedzi — co zwykle ma znaczenie w praktyce:

  • Kontekst (tagi): mongo, ttl, index, expiration
  • Model danych i dostęp: jakie zapytania dominują (read/write ratio, sortowanie, paginacja).
  • Indeksy: kiedy pomagają, a kiedy szkodzą (write amplification, pamięć).
  • Spójność i transakcje: co jest gwarantowane i gdzie trzeba uważać.
  • Wytłumacz "dlaczego", nie tylko "co" (intuicja + konsekwencje).
  • Trade-offy: co zyskujesz i co tracisz (czas, pamięć, złożoność, ryzyko).
  • Edge-case’y: puste dane, duże dane, błędne dane, współbieżność.

Przykłady

Poniżej dodatkowy przykład (bazuje na tym, co już jest w odpowiedzi):

db.sessions.createIndex({ expiresAt: 1 }, { expireAfterSeconds: 0 })

Typowe pułapki

  • Zbyt ogólna odpowiedź (brak konkretów, brak przykładów).
  • Brak rozróżnienia między "średnio" a "najgorzej" (np. złożoność).
  • Pomijanie ograniczeń: pamięć, współbieżność, koszty sieci/dysku.

Pytania uzupełniające na rozmowie

  • Kiedy zastosował(a)byś alternatywę i dlaczego?
  • Jakie są typowe problemy w produkcji i jak je diagnozować?
  • Jak byś przetestował(a) edge-case’y?

Powiązane pytania

MongoDB
Indeksy unique vs sparse vs partial: jaka jest różnica?
#mongo#indexes#unique
MongoDB
Indeksy tekstowe: kiedy ich użyć i jakie mają ograniczenie?
#mongo#text-index#search
MongoDB
`$lookup`: co robi i jaka jest typowa pułapka?
#mongo#lookup
#aggregation
MongoDB
Elekcje w replica secie: co się dzieje podczas elekcji?
#mongo#replica-set#election
MongoDB
Read preference w replica setach: co oznacza `primary` vs `secondary`?
#mongo#replica-set#read-preference
MongoDB
Read concern vs write concern: co kontrolują?
#mongo#consistency#read-concern