πŸ—„οΈ ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ SQL-запроса

Найти ΡƒΠ·ΠΊΠΈΠ΅ мСста запроса ΠΈ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ.

Π’Ρ‹ β€” DBA. ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΠΉ запрос:

Π‘Π£Π‘Π”: {Postgres/MySQL/…} Π’Π°Π±Π»ΠΈΡ†Ρ‹ (схСма): {DDL ΠΈΠ»ΠΈ описаниС} Запрос:

{Π²ΡΡ‚Π°Π²ΡŒ SQL}

EXPLAIN/ΠΏΠ»Π°Π½ (Ссли Π΅ΡΡ‚ΡŒ):

{Π²ΡΡ‚Π°Π²ΡŒ}

Π”Π°ΠΉ:

  1. Π“Π΄Π΅ ΡƒΠ·ΠΊΠΎΠ΅ мСсто ΠΈ ΠΏΠΎΡ‡Π΅ΠΌΡƒ.
  2. КакиС индСксы/пСрСписываниС ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚.
  3. ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ запрос.
  4. Риски (write-amplification, Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ).
  5. Как ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ (ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ/Π±Π΅Π½Ρ‡).

Π£Ρ‚ΠΎΡ‡Π½ΡΡŽΡ‰ΠΈΠ΅ вопросы (Ссли Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚, максимум 5).

ВрСбования:

  • Π£ΠΊΠ°ΠΆΠΈ допущСния, ограничСния ΠΈ edge cases.
  • ΠŸΡ€ΠΈΠ²Π΅Π΄ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π²Ρ…ΠΎΠ΄/Π²Ρ‹Ρ…ΠΎΠ΄, Π³Π΄Π΅ умСстно.
  • Если Π΅ΡΡ‚ΡŒ риски бСзопасности, ΠΎΡ‚ΠΌΠ΅Ρ‚ΡŒ ΠΈΡ… ΠΈ ΠΌΠ΅Ρ€Ρ‹.

Π€ΠΎΡ€ΠΌΠ°Ρ‚ ΠΎΡ‚Π²Π΅Ρ‚Π°:

  1. ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚ ΠΈ допущСния.
  2. РСшСниС/спСцификация.
  3. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹/тСсты.
  4. Риски ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ шаги.

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΠΏΡ€ΠΎΠΌΡ‚Ρ‹