ΠΠΎΠ±ΡΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°ΡΡ Π² Β«Databases 101Β» β ΡΡΠΎ Π·Π°ΠΌΠ΅ΡΠΊΠΈ, ΠΎΡ Π²Π°ΡΡΠ²Π°ΡΡΠΈΠ΅ ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ Π±Π°Π· Π΄Π°Π½Π½ΡΡ ΠΎΡ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π΄ΠΎ ΡΡΠ΅Π΄Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ. ΠΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ ΠΏΠΎΠ΄ΠΎΠΉΠ΄ΡΡ ΠΊΠ°ΠΊ Π½ΠΎΠ²ΠΈΡΠΊΠ°ΠΌ, ΡΡΡΠ΅ΠΌΡΡΠΈΠΌΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΡΠΎΡΠ½ΡΡ Π±Π°Π·Ρ, ΡΠ°ΠΊ ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΎΠΏΡΡΠ½ΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ, ΠΆΠ΅Π»Π°ΡΡΠΈΠΌ ΠΎΡΠ²Π΅ΠΆΠΈΡΡ ΡΠ²ΠΎΠΈ Π·Π½Π°Π½ΠΈΡ. ΠΠ°ΠΌΠ΅ΡΠΊΠΈ ΠΎΡ Π²Π°ΡΡΠ²Π°ΡΡ ΡΠ°ΠΊΠΈΠ΅ ΡΠ΅ΠΌΡ, ΠΊΠ°ΠΊ SQL-Π·Π°ΠΏΡΠΎΡΡ, ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΠΈ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ , ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅ΠΌΡ ΡΠ³ΡΡΠΏΠΏΠΈΡΠΎΠ²Π°Π½Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈ Π΄Π»Ρ Π»ΡΡΡΠ΅Π³ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ, Π° ΠΏΠ»Π°Π½, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ Π½ΠΈΠΆΠ΅, ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π»Π΅Π³ΠΊΠΎ ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Π² ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π°Ρ .
- ΠΠ°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΈ Π‘Π£ΠΠ // TBD
- ETL-ΠΏΡΠΎΡΠ΅ΡΡΡ // TBD
- ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ°
- ΠΠ»ΡΡΠΈ
- ΠΠΎΡΠΌΠ°Π»ΡΠ½ΡΠ΅ ΡΠΎΡΠΌΡ
- ΠΠ΅Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠΎΡΠΌ // TBD
- Π‘Ρ Π΅ΠΌΡ "Π·Π²Π΅Π·Π΄Π°" ΠΈ "ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°"
- SQL
- SELECT
- ΠΠ³ΡΠ΅Π³Π°ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
- WHERE ΠΈ HAVING
- ORDER BY
- CASE
- ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ
- ΠΠ»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ
- Π€ΡΠ½ΠΊΡΠΈΠΈ
- ΠΠ½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
- ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ // TBD
- Π₯ΡΠ°Π½ΠΈΠΌΡΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ // TBD
- Π’ΡΠΈΠ³Π³Π΅ΡΡ // TBD
- EXPLAIN
- ΠΠ½Π΄Π΅ΠΊΡΡ
- ΠΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
- ΠΠ°ΡΡΠΈΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
- Π¨Π°ΡΠ΄ΠΈΠ½Π³
- Π Π΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ
- ΠΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ // TBD
- Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ
- ACID
- Π£ΡΠΎΠ²Π½ΠΈ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ
- ΠΠ½ΠΎΠΌΠ°Π»ΠΈΠΈ
- ΠΠ»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ
- MVCC
- SELECT FOR UPDATE ΠΈ SELECT FOR SHARE
- Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎΡΡΡΠΏΠΎΠΌ // TBD
- Π¨ΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ // TBD
- ΠΡΠ΄ΠΈΡ ΠΈ ΠΆΡΡΠ½Π°Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ // TBD
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ°?
Π‘Ρ Π΅ΠΌΠ° Β«ΡΡΡΠ½ΠΎΡΡΡ-ΡΠ²ΡΠ·ΡΒ» (ΡΠ°ΠΊΠΆΠ΅ ERD ΠΈΠ»ΠΈ ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ°) β ΡΡΠΎ ΡΠ°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡΡ Π±Π»ΠΎΠΊ-ΡΡ Π΅ΠΌΡ, Π³Π΄Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΡΠ°Π·Π½ΡΠ΅ Β«ΡΡΡΠ½ΠΎΡΡΠΈΒ» (Π»ΡΠ΄ΠΈ, ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅) ΡΠ²ΡΠ·Π°Π½Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ Π²Π½ΡΡΡΠΈ ΡΠΈΡΡΠ΅ΠΌΡ. ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π΄Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ Π² ΡΡΠ΅ΡΠ΅ ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ, ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ Π΄Π»Ρ Π±ΠΈΠ·Π½Π΅ΡΠ°. ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ (ΠΈΠ»ΠΈ ER-ΠΌΠΎΠ΄Π΅Π»ΠΈ) ΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ Π½Π° ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ Π½Π°Π±ΠΎΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², Π²ΠΊΠ»ΡΡΠ°Ρ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΈ, ΡΠΎΠΌΠ±Ρ, ΠΎΠ²Π°Π»Ρ ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π»ΠΈΠ½ΠΈΠΈ, Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΡΡΠ½ΠΎΡΡΠ΅ΠΉ, ΠΈΡ Π°ΡΡΠΈΠ±ΡΡΠΎΠ² ΠΈ ΡΠ²ΡΠ·Π΅ΠΉ. ΠΡΠΈ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ ΡΡΡΡΠΎΠ΅Π½Ρ ΠΏΠΎ ΡΠΎΠΌΡ ΠΆΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ, ΡΡΠΎ ΠΈ Π³ΡΠ°ΠΌΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΡΡΠΊΡΡΡΡ: ΡΡΡΠ½ΠΎΡΡΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΠΎΠ»Ρ ΡΡΡΠ΅ΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΡ , Π° ΡΠ²ΡΠ·ΠΈ β Π³Π»Π°Π³ΠΎΠ»ΠΎΠ².
ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ β Β«ΡΠΎΠ΄ΡΡΠ²Π΅Π½Π½ΠΈΠΊΠΈΒ» ΡΡ Π΅ΠΌ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ (DSD), Π³Π΄Π΅ Π²ΠΌΠ΅ΡΡΠΎ ΡΠ²ΡΠ·Π΅ΠΉ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°ΠΌΠΈΠΌΠΈ ΡΡΡΠ½ΠΎΡΡΡΠΌΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ Π²Π½ΡΡΡΠΈ Π½ΠΈΡ .
ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠΈ Ρ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ°ΠΌΠΈ DFD, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡ Π΅ΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΠΎΠΊΠΎΠ² ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π² ΡΠ°ΠΌΠΊΠ°Ρ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΈΠ»ΠΈ ΡΠΈΡΡΠ΅ΠΌΡ.
Π ER-ΠΌΠΎΠ΄Π΅Π»ΡΡ ΠΈ ΠΌΠΎΠ΄Π΅Π»ΡΡ Π΄Π°Π½Π½ΡΡ ΠΎΠ±ΡΡΠ½ΠΎ Π²ΡΠ΄Π΅Π»ΡΡΡ Π΄ΠΎ ΡΡΠ΅Ρ ΡΡΠΎΠ²Π½Π΅ΠΉ Π΄Π΅ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ:
- ΠΠΎΠ½ΡΠ΅ΠΏΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ Π΄Π°Π½Π½ΡΡ β ΡΡ Π΅ΠΌΠ° Π½Π°ΠΈΠ²ΡΡΡΠ΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠ΅ΠΉ. ΠΠΎΡΡΠΎΠΈΠ½ΡΡΠ²ΠΎ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΠΎΠ±ΡΡΡ ΡΡΡΡΠΊΡΡΡΡ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈ Π²ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠ΅Π½Π΅Π΅ ΠΌΠ°ΡΡΡΠ°Π±Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠ³ΡΡ ΠΎΠ±ΠΎΠΉΡΠΈΡΡ ΠΈ Π±Π΅Π· ΡΡΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ°Π·Ρ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡΡ ΠΊ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ.
- ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ Π΄Π°Π½Π½ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, Π½Π΅ΠΆΠ΅Π»ΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ. ΠΠ° ΡΡΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΡΡΠ½ΠΎΡΡΠΈ. ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ Π½Π΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΠ½Π° Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ.
- Π€ΠΈΠ·ΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ Π΄Π°Π½Π½ΡΡ : Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡΡΠ°Π²ΠΈΡΡ ΠΎΠ΄Π½Ρ ΠΈΠ»ΠΈ Π΄Π²Π΅ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΌΠΎΠ΄Π΅Π»ΠΈ. Π ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡΠΈΡΡΡΡΡΠ²ΠΎΠ²Π°ΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠ΅ΠΉ Π΄Π»Ρ ΡΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ ΡΠ°ΠΌΠΎΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
ΠΠ±ΡΠ°ΡΠ°Π΅ΠΌ Π²Π°ΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΠΎΡ ΡΠ°ΠΊΡ, ΡΡΠΎ ΠΏΠΎΡ ΠΎΠΆΠΈΠ΅ ΡΡΠΎΠ²Π½ΠΈ ΠΌΠ°ΡΡΡΠ°Π±Π° ΠΈ Π΄Π΅ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ ΠΈ Π² Π΄ΡΡΠ³ΠΈΡ Π²ΠΈΠ΄Π°Ρ ΡΡ Π΅ΠΌ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ°Ρ DFD), ΠΎΠ΄Π½Π°ΠΊΠΎ Π΄Π°Π½Π½Π°Ρ ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ ΡΡΠ΅Ρ ΡΡ Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΠ, Π³Π΄Π΅ Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ½ΠΎΠΌΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ. ΠΡΠ°Π²Π΄Π°, ΠΈΠ½ΠΎΠ³Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΡΠΌΠΈ, Π΅ΡΠ»ΠΈ Π΄ΠΈΠ·Π°ΠΉΠ½ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΡΡΠ΅Π±ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΡΠΎΠ²Π½Π΅ΠΉ. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½ΠΎΠ²ΡΠ΅ Π³ΡΡΠΏΠΏΡ ΠΏΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Π²Π²Π΅ΡΡ (ΡΡΠΏΠ΅ΡΠΊΠ»Π°ΡΡΡ) ΠΈ Π²Π½ΠΈΠ· (ΠΏΠΎΠ΄ΠΊΠ»Π°ΡΡΡ).
Π’ΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅. Π‘Π»Π΅Π΄ΡΠ΅Ρ ΡΠ΅ΡΠΊΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ ΡΠ΅Π»Ρ ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌ β ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΡΠ²ΡΠ·ΠΈ ΠΈ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ½ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΡ ΡΡΡΡΠΊΡΡΡΡ.
Π’ΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ . ΠΠ°Π½Π½ΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠ΅ΡΠΊΠΎ ΡΠ°Π·Π±ΠΈΡΡ Π½Π° ΠΏΠΎΠ»Ρ, ΡΡΠΎΠ»Π±ΡΡ ΠΈ ΡΡΡΠΎΠΊΠΈ, ΠΈΠ½Π°ΡΠ΅ ΠΏΠΎΠ»ΡΠ·Ρ ΠΎΡ ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ Π±ΡΠ΄Π΅Ρ ΠΌΠ°Π»ΠΎ. ΠΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΠΈ ΡΠ°ΡΡΠΈΡΠ½ΠΎ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ , ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ Π±ΡΠ΄ΡΡ ΠΏΡΠΈΠ³ΠΎΠ΄Π½Ρ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ.
Π‘Π»ΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΉ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½ΡΡ . ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ER-ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π΄Π»Ρ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΉ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½ΡΡ β Π½Π΅ΠΏΡΠΎΡΡΠ°Ρ Π·Π°Π΄Π°ΡΠ° ΠΏΠΎ ΠΏΡΠΈΡΠΈΠ½Π΅ ΡΠ°Π·Π»ΠΈΡΠΈΡ Π² Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°Ρ .
Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ ΠΈ ΡΠΏΠΎΡΠΎΠ±Ρ Π½ΠΎΡΠ°ΡΠΈΠΈ ERD
ΠΠΎΠ½ΡΠ΅ΠΏΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄Π°Π½Π½ΡΡ Π΄Π°ΡΡ ΠΎΠ±ΡΠ΅Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²Ρ ΠΎΠ΄ΠΈΡΡ Π² ΡΠΎΡΡΠ°Π² ΠΌΠΎΠ΄Π΅Π»ΠΈ. ΠΠΎΠ½ΡΠ΅ΠΏΡΡΠ°Π»ΡΠ½ΡΠ΅ ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ°ΡΡ Π·Π° ΠΎΡΠ½ΠΎΠ²Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π΄Π°Π½Π½ΡΡ . ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΉ ΠΎΠ±ΡΠ½ΠΎΡΡΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π½ΡΠΌΠΈ ER-ΠΌΠΎΠ΄Π΅Π»ΡΠΌΠΈ, ΠΏΠΎΠ»ΠΎΠΆΠΈΠ² ΠΈΡ Π² ΠΎΡΠ½ΠΎΠ²Ρ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ. ΠΡΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠ΅ Π½ΠΈΠΆΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°Ρ Β«Π‘ΡΡΠ½ΠΎΡΡΡ-ΡΠ²ΡΠ·ΡΒ» Π΄Π»Ρ UMLΒ» ΠΈ Β«Π€ΠΈΠ³ΡΡΡ ΠΏΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΈ Β«ΡΡΡΠ½ΠΎΡΡΡ-ΡΠ²ΡΠ·ΡΒ» Π½Π° Lucidchart.
- Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ ERD-ΡΡΡΠ½ΠΎΡΡΠ΅ΠΉ
ΠΠΎΠ΄ ΠΏΠΎΠ½ΡΡΠΈΠ΅ΠΌ Β«ΡΡΡΠ½ΠΎΡΡΠΈΒ» ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°ΡΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈΠ»ΠΈ ΠΏΠΎΠ½ΡΡΠΈΡ, Π½Π΅ΡΡΡΠΈΠ΅ Π²Π°ΠΆΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ. Π‘ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ Π³ΡΠ°ΠΌΠΌΠ°ΡΠΈΠΊΠΈ, ΠΎΠ½ΠΈ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°ΡΡΡΡ ΡΡΡΠ΅ΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Β«ΡΠΎΠ²Π°ΡΒ», Β«ΠΊΠ»ΠΈΠ΅Π½ΡΒ», Β«Π·Π°Π²Π΅Π΄Π΅Π½ΠΈΠ΅Β» ΠΈΠ»ΠΈ Β«ΠΏΡΠΎΠΌΠΎΠ°ΠΊΡΠΈΡΒ». ΠΠΈΠΆΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ ΡΡΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ ΡΠΈΠΏΠ° ΡΡΡΠ½ΠΎΡΡΠ΅ΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π² ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ°Ρ .
- Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ ERD-ΡΠ²ΡΠ·Π΅ΠΉ
Π‘Π²ΡΠ·ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² ΡΡ Π΅ΠΌΠ°Ρ Β«ΡΡΡΠ½ΠΎΡΡΡ-ΡΠ²ΡΠ·ΡΒ» Π΄Π»Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΡΠΌΡ ΡΡΡΠ½ΠΎΡΡΡΠΌΠΈ. ΠΡΠ°ΠΌΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ²ΡΠ·ΠΈ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π²ΡΡΠ°ΠΆΠ°ΡΡΡΡ Π³Π»Π°Π³ΠΎΠ»Π°ΠΌΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Β«Π½Π°Π·Π½Π°ΡΠΈΡΡΒ», Β«Π·Π°ΠΊΡΠ΅ΠΏΠΈΡΡΒ», Β«ΠΎΡΡΠ»Π΅Π΄ΠΈΡΡΒ», ΠΈ Π½Π΅ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ, ΠΎΠΏΠΈΡΠ°ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΠΈΠΏΡ ΡΡΡΠ½ΠΎΡΡΠ΅ΠΉ.
- Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ ERD-Π°ΡΡΠΈΠ±ΡΡΠΎΠ²
ERD-Π°ΡΡΠΈΠ±ΡΡΡ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΠ·ΡΡΡ ΡΡΡΠ½ΠΎΡΡΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π»ΡΡΡΠ΅ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π² ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΡΡΠΈΠ±ΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΡΡΠ½ΠΎΡΡΡΡ , Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ΠΏΡΡΠ°Π»ΡΠ½ΠΎΠΉ ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ΅.
- Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΡ ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌ
Π€ΠΈΠ·ΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ Π΄Π°Π½Π½ΡΡ β ΡΠ°ΠΌΡΠΉ Π΄Π΅ΡΠ°Π»ΡΠ½ΡΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ER-ΡΡ Π΅ΠΌ, Π³Π΄Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ ΠΏΡΠΎΡΠ΅ΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . Π€ΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Β«ΡΡΡΠ½ΠΎΡΡΡ-ΡΠ²ΡΠ·ΡΒ» ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ Π²ΡΡ ΡΡΡΡΠΊΡΡΡΡ ΡΠ°Π±Π»ΠΈΡΡ, Π²ΠΊΠ»ΡΡΠ°Ρ Π½Π°Π·Π²Π°Π½ΠΈΡ ΡΡΠΎΠ»Π±ΡΠΎΠ², ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ , ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΡΡΠΎΠ»Π±ΡΠΎΠ², ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠ΅ ΠΈ Π²Π½Π΅ΡΠ½ΠΈΠ΅ ΠΊΠ»ΡΡΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ.
ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡ Β«ΡΡΡΠ½ΠΎΡΡΡ-ΡΠ²ΡΠ·ΡΒ»:
- ΠΠΎΠ»Ρ
ΠΠΎΠ»Ρ β ΡΡΠΎ ΡΡΠ°ΡΡΠΊΠΈ ΡΠ°Π±Π»ΠΈΡΡ, Π³Π΄Π΅ Π·Π°Π΄Π°ΡΡΡΡ Π°ΡΡΠΈΠ±ΡΡΡ ΡΡΡΠ½ΠΎΡΡΠ΅ΠΉ. ΠΠΎΠ΄ Π°ΡΡΠΈΠ±ΡΡΠ°ΠΌΠΈ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°ΡΡΡΡ ΡΡΠΎΠ»Π±ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠ΄Π΅Π»ΠΈΡΡΠ΅ΡΡΡ ΠΏΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ Β«ΡΡΡΠ½ΠΎΡΡΡ-ΡΠ²ΡΠ·ΡΒ».
- ΠΠ»ΡΡΠΈ
ΠΠ»ΡΡΠΈ β ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠ·Π°ΡΠΈΠΈ Π°ΡΡΠΈΠ±ΡΡΠΎΠ². ΠΠ°ΠΏΠΎΠΌΠΈΠ½Π°Π΅ΠΌ, ΡΡΠΎ ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ ΡΠ°Π±Π»ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ ΠΈΠΌ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ΅Π½Π½ΠΎΡΡΡ, ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ ΠΈ Π²ΡΡΠΎΠΊΡΡ ΡΠΊΠΎΡΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ. ΠΡ Π° ΠΊΠ»ΡΡΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Ρ ΡΠ΅Π»ΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠ²ΡΠ·Π°ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ ΡΠ°Π·Π½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ .
- ΠΠ΅ΡΠ²ΠΈΡΠ½ΡΠ΅ ΠΊΠ»ΡΡΠΈ
ΠΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ β ΡΡΠΎ Π°ΡΡΠΈΠ±ΡΡ ΠΈΠ»ΠΈ ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠ΅ Π°ΡΡΠΈΠ±ΡΡΠΎΠ², ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΡΡΡΠΈΡ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΡΡΡΠ½ΠΎΡΡΠΈ.
- ΠΠ½Π΅ΡΠ½ΠΈΠ΅ ΠΊΠ»ΡΡΠΈ
ΠΠ½Π΅ΡΠ½ΠΈΠΉ ΠΊΠ»ΡΡ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Π°ΡΡΠΈΠ±ΡΡ ΠΏΡΠΈΠ²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΊ ΡΡΡΠ½ΠΎΡΡΠΈ ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ Π΅Π΄ΠΈΠ½ΠΈΡΠ½ΠΎΠΉ ΠΈΠ»ΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠΉ ΡΠ²ΡΠ·ΠΈ.
Π ΠΏΡΠΈΠΌΠ΅ΡΡ, Π·Π°ΠΉΠΌ Π½Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΡΠ΄Π°Π½ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΈΠΌ Π±Π°Π½ΠΊΠΎΠΌ, ΠΏΠΎΡΡΠΎΠΌΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΊΠ»ΡΡΠ° FinancedBy (Β«ΠΊΠ΅ΠΌ Π²ΡΠ΄Π°Π½ Π·Π°ΠΉΠΌΒ») Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Car (Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»ΡΒ») ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΊΠ»ΡΡ BankId (Β«ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π±Π°Π½ΠΊΠ°Β»).ΠΡΠΈ ΡΡΠΎΠΌ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ BankId ΠΌΠΎΠΆΠ΅Ρ ΡΠ»ΡΠΆΠΈΡΡ Π²Π½Π΅ΡΠ½ΠΈΠΌ ΠΊΠ»ΡΡΠΎΠΌ ΡΡΠ°Π·Ρ Π΄Π»Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ.
- Π’ΠΈΠΏΡ
ΠΠΎΠ΄ ΡΠΈΠΏΠΎΠΌ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΡΡΡ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΌ ΠΏΠΎΠ»Π΅ ΡΠ°Π±Π»ΠΈΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈ ΡΠΈΠΏ ΡΡΡΠ½ΠΎΡΡΠΈ, ΡΠΎ Π΅ΡΡΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π΅Π΅ ΡΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΡ . ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ ΡΡΡΠ½ΠΎΡΡΠΈ Β«ΠΊΠ½ΠΈΠ³Π°Β» Π±ΡΠ΄ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠΈΠΏΡ: Β«Π°Π²ΡΠΎΡΒ», Β«Π½Π°Π·Π²Π°Π½ΠΈΠ΅Β» ΠΈ Β«Π΄Π°ΡΠ° ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈΒ».
ΠΠΎΡΠ°ΡΠΈΡ ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌ
Π₯ΠΎΡΡ Π½ΠΎΡΠ°ΡΠΈΡ Crow's Foot (Β«Π²ΠΎΡΠΎΠ½ΡΠΈ Π»Π°ΠΏΠΊΠΈΒ») ΡΠ°ΡΡΠΎ ΠΏΡΠΈΠ·Π½Π°Π΅ΡΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΈΠ½ΡΡΠΈΡΠΈΠ²Π½ΠΎΠΉ, Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΎΡΠ΄Π°ΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠ΅Π½ΠΈΠ΅ Π½ΠΎΡΠ°ΡΠΈΠΈ ΠΠ°Ρ ΠΌΠ°Π½Π°, OMT, IDEF ΠΈΠ»ΠΈ UML. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Β«Π²ΠΎΡΠΎΠ½ΡΠΈ Π»Π°ΠΏΠΊΠΈΒ» Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ Π½Π°Π³Π»ΡΠ΄Π½ΡΠΉ ΠΈΠ½ΡΡΠΈΡΠΈΠ²Π½ΡΠΉ ΡΠΎΡΠΌΠ°Ρ β Π²ΠΎΡ ΠΏΠΎΡΠ΅ΠΌΡ ΠΌΡ Π²ΡΠ±ΡΠ°Π»ΠΈ ΠΈΡ Π΄Π»Ρ Π½ΠΎΡΠ°ΡΠΈΠΈ ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌ Π² Lucidchart.
ΠΠ°ΡΠ΄ΠΈΠ½Π°Π»ΡΠ½ΠΎΡΡΡ ΠΈ ΠΎΡΠ΄ΠΈΠ½Π°Π»ΡΠ½ΠΎΡΡΡ
ΠΠΎΠ΄ ΠΊΠ°ΡΠ΄ΠΈΠ½Π°Π»ΡΠ½ΠΎΡΡΡΡ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΡΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠ²ΡΠ·Π΅ΠΉ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ°ΠΌΠΈ ΡΠ°Π·Π½ΡΡ ΡΡΡΠ½ΠΎΡΡΠ΅ΠΉ. ΠΡΠ΄ΠΈΠ½Π°Π»ΡΠ½ΠΎΡΡΡ, Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ, ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ²ΡΠ·Π΅ΠΉ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ°ΠΌΠΈ Π΄Π²ΡΡ ΡΡΡΠ½ΠΎΡΡΠ΅ΠΉ.
ΠΠ°ΡΠ΄ΠΈΠ½Π°Π»ΡΠ½ΠΎΡΡΡ ΠΈ ΠΎΡΠ΄ΠΈΠ½Π°Π»ΡΠ½ΠΎΡΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π½Π° ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π»ΠΈΠ½ΠΈΡΡ ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠΌΡ ΡΠΎΡΠΌΠ°ΡΡ Π½ΠΎΡΠ°ΡΠΈΠΈ.
(ΠΡΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠΈΡΡΠ°ΡΠΈΠΈ - ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡ, ΠΎΠ΄ΠΈΠ½ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ ΠΈ ΡΠ°ΠΌ ΠΏΠΎ ΡΠ΅Π±Π΅. Π‘ ΠΏΠ΅ΡΠ²ΡΠΌ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ Π²ΡΡ ΠΏΡΠΎΡΡΠΎ - ΠΎΠ΄Π½Π° Π·Π°ΠΏΠΈΡΡ Π² ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΠΎΠΎΡΠ½ΠΎΡΠΈΡΡΡ Ρ ΠΎΠ΄Π½ΠΎΠΉ Π·Π°ΠΏΠΈΡΡΡ Π² Π΄ΡΡΠ³ΠΎΠΉ ΠΈΠ»ΠΈ ΡΠ°Π±Π»ΠΈΡΠ° ΡΠ°ΠΌΠ° ΠΏΠΎ ΡΠ΅Π±Π΅ ΠΈ Π½ΠΈ ΠΊ ΡΠ΅ΠΌΡ Π½Π΅ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ. ΠΠ΄ΠΈΠ½ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ ΡΡΠΎ ΡΠ»ΡΡΠ°ΠΉ, ΠΊΠΎΠ³Π΄Π° Π·Π°ΠΏΠΈΡΡ ΡΠ°Π±Π»ΠΈΡΡ ΡΠΎΠΎΡΠ½ΠΎΡΠΈΡΡΡ Ρ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΌ ΠΎΠ΄Π½ΠΎΠΉ Π·Π°ΠΏΠΈΡΡΡ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ, ΡΡΠΎ (Π΅ΡΠ»ΠΈ ΠΏΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΌΡ) ΡΠ΅ΡΠ°Π΅ΡΡΡ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ)
ΠΠΎΠ»ΡΡΠ΅ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ: Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ER-Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ° ΠΈ ΠΊΠ°ΠΊ Π΅Π΅ ΡΠΎΠ·Π΄Π°ΡΡ?
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
ΠΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ ΠΏΡΠΎΡΠΈΠ² Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΊΠ»ΡΡΠ°
ΠΠ»ΡΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡ Π² ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΠΎΠΌ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ ΡΡΠΎΠ±Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠ²ΡΠ·Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ ΠΈΠ»ΠΈ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ Π΄Π°Π½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ. ΠΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΡΠ΅Ρ Π΄Π°Π½Π½ΡΠ΅, ΠΏΠΎΡΡΠΎΠΌΡ Π½ΠΈΠΊΠ°ΠΊΠΈΠ΅ Π΄Π²Π΅ ΡΡΡΠΎΠΊΠΈ Π½Π΅ ΠΈΠΌΠ΅ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ NULL. Π’ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Π²Π½Π΅ΡΠ½ΠΈΠΉ ΠΊΠ»ΡΡ ΡΠ²ΡΠ·ΡΠ²Π°Π΅Ρ Π΄Π²Π΅ ΡΠ°Π±Π»ΠΈΡΡ Π²ΠΌΠ΅ΡΡΠ΅.
ΠΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ, ΡΠ»ΡΠΆΠ°ΡΠΈΠΉ Π²Π½Π΅ΡΠ½ΠΈΠΌ ΠΊΠ»ΡΡΠΎΠΌ Π² Π΄ΡΡΠ³ΠΎΠΉ, ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ . ΠΡΠΎ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ, ΡΡΠΎ Π΄Π°Π½Π½ΡΠ΅ Π² ΡΡΡΠ»ΠΎΡΠ½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ (ΡΠΎΠΉ, ΡΡΠΎ Ρ Π²Π½Π΅ΡΠ½ΠΈΠΌ ΠΊΠ»ΡΡΠΎΠΌ) ΠΈΠΌΠ΅ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΡΡΠ»ΠΊΡ Π½Π° ΡΡΡΠ»ΠΎΡΠ½ΡΡ ΡΠ°Π±Π»ΠΈΡΡ (Ρ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΌ ΠΊΠ»ΡΡΠΎΠΌ). ΠΡΠΈ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ΅ΡΡΠ½Π½ΡΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ Π²ΡΠ΅ΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΊΠ»ΡΡ (Primary Key)
ΠΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΡΠ΅Ρ ΠΊΠ°ΠΆΠ΄ΡΡ ΡΡΡΠΎΠΊΡ ΡΠ°Π±Π»ΠΈΡΡ. ΠΠ½ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ Π² ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅. ΠΠ΅ΡΠ²ΠΈΡΠ½ΡΠΌ ΠΊΠ»ΡΡΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ ΠΈΠ»ΠΈ Π³ΡΡΠΏΠΏΠ° ΡΡΠΎΠ»Π±ΡΠΎΠ². Π§ΡΠΎΠ±Ρ Π²ΡΡΠ°Π²ΠΈΡΡ, ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ, Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΠΈΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΡΠ°Π±Π»ΠΈΡΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅ΡΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ.
ΠΠ°Π»ΠΈΡΠΈΠ΅ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ°:
- Π£Π½ΠΈΠΊΠ°Π»ΡΠ½Π°Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΡΡΡΠΎΠΊ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΈΠ»ΠΈ Π·Π°ΠΏΠΈΡΡΡ Π΄Π»Ρ Π±ΡΡΡΡΠΎΠ³ΠΎ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ, ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ.
- ΠΠ΅ΡΠ²ΠΈΡΠ½ΡΠΌ ΠΊΠ»ΡΡΠΎΠΌ Π² ΡΠ°ΠΊΠΈΡ Π‘Π£ΠΠ, ΠΊΠ°ΠΊ MySQL ΠΈ Oracle, ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΡΠ½ΠΎ Π°Π²ΡΠΎΠΈΠ½ΠΊΡΠ΅ΠΌΠ΅Π½ΡΠ½ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ. ΠΡΠΈ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π½ΠΎΠ²ΡΠΉ Π½ΠΎΠΌΠ΅Ρ, Π³Π°ΡΠ°Π½ΡΠΈΡΡΡ, ΡΡΠΎ ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΡΡΠΎΠΊΠ° ΠΈΠΌΠ΅Π΅Ρ ΡΠ²ΠΎΠΉ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ.
ΠΠ½Π΅ΡΠ½ΠΈΠΉ ΠΊΠ»ΡΡ (Foreign Key)
ΠΠ½Π΅ΡΠ½ΠΈΠΉ ΠΊΠ»ΡΡ β ΡΡΠΎ ΠΎΠΏΠΎΡΠ½Π°Ρ ΡΠΎΡΠΊΠ° Π² ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΠΎΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ , ΠΊΠ 3D11 ΎΡΠΎΡΠ°Ρ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠ²ΡΠ·ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΡΠΌΡ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Ρ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ ΠΈ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ . Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ°, ΠΎΠ½ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π² Π΄ΠΎΡΠ΅ΡΠ½Π΅ΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅.
ΠΠΎΠ³Π΄Π° Π²Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΊΠ»ΡΡΠ° ΠΊ ΡΡΠΎΠ»Π±ΡΡ ΡΠ°Π±Π»ΠΈΡΡ, ΠΎΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΡΡΠ»Π°ΡΡΡΡ Π½Π° ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ ΡΡΠΎΠ»Π±ΡΠ° Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ. ΠΡΠ° ΡΠ²ΡΠ·Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΡ ΡΡΡΡΠΊΡΡΡΡ, ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ΡΠ°Π·Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ ΡΡΠΈ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ Β«ΡΡΡΠ»ΠΊΠΈΒ», ΡΡΠΎΠ±Ρ ΡΠΈΠ³Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ (Π²Π½Π΅ΡΠ½ΠΈΠΉ ΠΊΠ»ΡΡ) Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠΌ ΠΊΠ»ΡΡΠ΅ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ. ΠΡΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΡΡΠ»ΠΎΡΠ½ΡΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ ΠΈ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΡΡΡ ΡΡΡΠ»ΠΎΠΊ Π½Π° Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Π² Π΄ΡΡΠ³ΡΡ.
ΠΠ½Π΅ΡΠ½ΠΈΠ΅ ΠΊΠ»ΡΡΠΈ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Ρ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΠ΅ΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ :
- ΠΠ°ΡΠ°Π½ΡΠΈΡΡΡΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Ρ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ, ΠΏΠΎΠ»Π½ΠΎΡΡ ΠΈ ΡΠΎΡΠ½ΠΎΡΡΡ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ.
- ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ², ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠ΅ ΠΏΠ»Π°Π½Ρ Π·Π°ΠΏΡΠΎΡΠΎΠ², ΡΡΠΊΠΎΡΡΡ ΠΏΠΎΠΈΡΠΊ Π΄Π°Π½Π½ΡΡ ΠΈ ΡΠ»ΡΡΡΠ°Ρ ΡΠ²ΡΠ·ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ.
- ΠΠ½Π΅ΡΠ½ΠΈΠ΅ ΠΊΠ»ΡΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠ²ΡΠ·Π΅ΠΉ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ Ρ ΡΠ°Π½ΠΈΡΡ ΠΈ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡ ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°Π±Π»ΠΈΡ.
Π‘ΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΡ ΠΊΠ»ΡΡΠ΅ΠΉ ΠΈ Π²Π½Π΅ΡΠ½ΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ
Π ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠ΅, ΠΈ Π²Π½Π΅ΡΠ½ΠΈΠ΅ ΠΊΠ»ΡΡΠΈ ΠΈΠ³ΡΠ°ΡΡ Π²Π°ΠΆΠ½ΡΡ, Π½ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠΎΠ»Ρ Π² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°Π½ΠΈΠΈ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ Π·Π½Π°ΡΠΈΠΌΡΡ ΡΠ²ΡΠ·Π΅ΠΉ Π² Π±Π°Π·Π°Ρ Π΄Π°Π½Π½ΡΡ . Π₯ΠΎΡΡ ΠΎΠ±Π° ΠΌΠ΅ΡΠΎΠ΄Π° ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ , ΠΎΠ½ΠΈ ΡΠ»ΡΠΆΠ°Ρ ΡΠ°Π·Π½ΡΠΌ ΡΠ΅Π»ΡΠΌ ΠΈ ΠΎΠ±Π»Π°Π΄Π°ΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ°ΠΌΠΈ. ΠΠΎΡ ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠ΅ ΠΈ Π²Π½Π΅ΡΠ½ΠΈΠ΅ ΠΊΠ»ΡΡΠΈ ΡΡΠ°Π²Π½ΠΈΠ²Π°ΡΡΡΡ ΠΏΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΡΠ°ΠΊΡΠΎΡΠ°ΠΌ:
- Π¦Π΅Π»Ρ:
ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½Π°Ρ ΡΠ΅Π»Ρ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° β ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½Π°Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ. ΠΠ°ΠΏΡΠΎΡΠΈΠ², Π²Π½Π΅ΡΠ½ΠΈΠΉ ΠΊΠ»ΡΡ ΡΡΡΠ»Π°Π΅ΡΡΡ Π½Π° ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ, ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Ρ ΡΠ²ΡΠ·Ρ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ΡΠ°Π·Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π°ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΡΠΎΠΏΡΡΡΡΠ²ΡΡΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π΅Π΄ΠΈΠ½ΡΠΉ ΠΎΠ±Π·ΠΎΡ Π² Π²Π°ΡΠ΅ΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ . - Π£Π½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΡΡΡ:
ΠΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ΅. ΠΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ² Π±ΡΡΡ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ β ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π½ΡΠΆΠ΅Π½ ΡΠ²ΠΎΠΉ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ.
Π£Π½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΡΡΡ Π²Π½ΡΡΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ Π΄Π»Ρ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΊΠ»ΡΡΠ°. ΠΠΎ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΡΡΠ»Π°ΡΡΡΡ Π½Π° ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠΌ ΠΊΠ»ΡΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΡ ΠΎΠ½ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ. ΠΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΊ ΠΎΠ΄Π½ΠΎΠΉ ΡΠ΅ΡΠΊΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΡΠΎΡΠΊΠ΅ Π½Π° Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Π΅. - ΠΠ±Π½ΡΠ»ΡΠ΅ΠΌΠΎΡΡΡ:
ΠΡΠ»Π΅Π²ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π΅ Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡΡΡ Π² ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠΌ ΠΊΠ»ΡΡΠ΅. ΠΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ°, ΡΡΠΎΠ±Ρ Π³Π°ΡΠ°Π½ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΠΏΡΠΎΠΏΡΡΠ΅Π½Π½ΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ² ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ ΠΏΡΡΠ°Π½ΠΈΡΡ ΠΏΡΠΈ ΡΡΡΠ»ΠΊΠ΅ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΡΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ .
Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠ²ΡΠ·ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ Π²Π½Π΅ΡΠ½ΠΈΠΉ ΠΊΠ»ΡΡ Π΄ΠΎΠΏΡΡΠΊΠ°Π΅Ρ Π½ΡΠ»Π΅Π²ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π°ΠΊΠ°Π· ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ Π²Π½Π΅ΡΠ½ΠΈΠΉ ΠΊΠ»ΡΡ, ΡΡΡΠ»Π°ΡΡΠΈΠΉΡΡ Π½Π° Β«Π°Π΄ΡΠ΅Ρ Π΄ΠΎΡΡΠ°Π²ΠΊΠΈΒ», Π½ΠΎ ΠΏΠΎΠ»Π΅ Π°Π΄ΡΠ΅ΡΠ° Π±ΡΠ΄Π΅Ρ ΠΏΡΡΡΡΠΌ, Π΅ΡΠ»ΠΈ Π·Π°ΠΊΠ°Π· Π΅ΡΠ΅ Π½Π΅ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½. - ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ
:
ΠΠΎ ΡΠ²ΠΎΠ΅ΠΉ ΠΏΡΠΈΡΠΎΠ΄Π΅ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ . ΠΎΠ΄Π½ΠΎΠΉ ΡΠ²ΠΎΠΉ ΡΡΠΎΠ». Π£Π½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΡΡΡ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠΈΡ ΡΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ, Π° ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ Π½ΡΠ»Π΅Π²ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ².
ΠΠ½Π΅ΡΠ½ΠΈΠ΅ ΠΊΠ»ΡΡΠΈ ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎ Π²Π°ΠΆΠ½Ρ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°Π½ΠΈΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ . ΡΠ΅ΡΠ΅Π· ΡΡΠΎΠ»Ρ. Π‘ΡΡΠ»ΠΊΠ° Π½Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π² Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ΅ΡΡΠ½Π½ΡΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ (Π·Π°ΠΏΠΈΡΠ΅ΠΉ Ρ Π²Π½Π΅ΡΠ½ΠΈΠΌΠΈ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ Π½ΠΈΠΊΠ°ΠΊΠΈΠΌ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΌ Π΄Π°Π½Π½ΡΠΌ Π² ΡΡΡΠ»ΠΎΡΠ½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅). ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ Π½Π°ΡΡΡΠ΅Π½ΠΈΠ΅ ΡΠ²ΡΠ·Π΅ΠΉ Π²Π½ΡΡΡΠΈ Π²Π°ΡΠ΅ΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . - ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ:
ΠΠ·-Π·Π° ΡΠ²ΠΎΠ΅ΠΉ ΡΠΎΠ»ΠΈ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ° ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΡΠΌΠ΅ΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ. ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π½Π°ΡΡΡΠΈΡΡ ΡΠ²ΡΠ·ΠΈ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ.
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΌΠΎΠ³ΡΡ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΊΠ»ΡΡΠ°, Π΅ΡΠ»ΠΈ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎΡΡΠ°Π΅ΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΌ ΠΊΠ»ΡΡΠΎΠΌ Π² ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π·Π°ΠΏΠΈΡΠΈ Π² ΡΡΡΠ»ΠΎΡΠ½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ²Π»ΠΈΡΡΡ Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΊΠ»ΡΡΠ° Π΄ΡΡΠ³ΠΈΡ ΡΠ°Π±Π»ΠΈΡ, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²ΡΠ±ΡΠ°Π½Π½ΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ ΡΡΡΠ»ΠΎΡΠ½ΠΎΠΉ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ.
ΠΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ ΠΈ Π²Π½Π΅ΡΠ½ΠΈΠΉ ΠΊΠ»ΡΡ: 9 Π²Π°ΠΆΠ½ΡΡ ΠΎΡΠ»ΠΈΡΠΈΠΉ
ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΊΠ»ΡΡ | ΠΠ½Π΅ΡΠ½ΠΈΠΉ ΠΊΠ»ΡΡ |
---|---|
Π‘ΡΠΎΠ»Π±Π΅Ρ ΠΈΠ»ΠΈ Π½Π°Π±ΠΎΡ ΡΡΠΎΠ»Π±ΡΠΎΠ², ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΡΡΡΠΈΠΉ ΠΊΠ°ΠΆΠ΄ΡΡ ΡΡΡΠΎΠΊΡ ΡΠ°Π±Π»ΠΈΡΡ. | Π‘ΡΠΎΠ»Π±Π΅Ρ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠΎΠ»Π±ΡΠΎΠ² Π² ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΡΠ»Π°Π΅ΡΡΡ Π½Π° ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π² Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅. |
ΠΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ; Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΡ Π½Π΅ Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡΡΡ. | ΠΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠΈΠ΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ; ΠΎΠ±ΡΡΠ½ΠΎ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° Π² Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅. |
Π ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΈΠΌΠ΅Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ. | Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΉ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π½Π΅ΡΠ½ΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ. |
ΠΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ ΠΈ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° (ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΡΡΠΎΠΊΠ° ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΡΠ΅ΡΡΡ). | Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΡΡΠ»ΠΎΡΠ½ΡΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ²ΡΠ·Π°Π½Π½ΡΠΌΠΈ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ. |
ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΠ΅ΡΡΡ (Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ Π‘Π£ΠΠ). | ΠΠΎΠΆΠ΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ, Π½ΠΎ ΡΡΠΎ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ; ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ. |
ΠΠ±ΡΡΠ½ΠΎ ΡΡΠΎ ΡΠΈΡΠ»ΠΎΠ²ΠΎΠΉ ΠΈΠ»ΠΈ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ. | Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ°, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ½ ΡΡΡΠ»Π°Π΅ΡΡΡ. |
ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΡΡΡ ΠΈ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π½ΡΠ»Π΅Π²ΡΠΌ. | ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΊΠ»ΡΡΠ° ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΡΡΠ»ΠΎΡΠ½ΡΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ (Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ Π² ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅). |
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΡΡΡΠΎΠΊ ΠΏΡΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΈ ΡΠ°Π±Π»ΠΈΡ. | ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠ²ΡΠ·Π΅ΠΉ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΠΎΠ±Π»ΡΠ΄Π΅Π½ΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ. |
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Ρ, Π΅ΡΠ»ΠΈ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π³Π΄Π΅-ΡΠΎ ΡΠΏΠΎΠΌΠΈΠ½Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ Π²Π½Π΅ΡΠ½ΠΈΠΉ ΠΊΠ»ΡΡ (Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΊΠ°ΡΠΊΠ°Π΄Π°). | ΠΠ½Π°ΡΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΡΡΡ, ΠΎΠ±ΡΡΠ½ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠ°ΡΠΊΠ°Π΄Π½ΡΡ ΠΎΠΏΡΠΈΠΉ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°Π½ΠΈΡ ΡΡΡΠ»ΠΎΡΠ½ΠΎΠΉ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ. |
Π’ΠΈΠΏ ΠΠ»ΡΡΠ΅ΠΉ Π² ΠΠΎΠ΄Π΅Π»Ρ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΠΎΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ (Π‘Π£ΠΠ)
ΠΠΎΠ²ΠΎΡΡ ΠΎ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΡ ΠΈ Π²Π½Π΅ΡΠ½ΠΈΡ ΠΊΠ»ΡΡΠ°Ρ , Π΅ΡΡΡ Π΅ΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΈΠΏΠΎΠ² ΠΊΠ»ΡΡΠ΅ΠΉ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ . ΠΡΠ°Π²ΠΈΠ»ΡΠ½Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΡΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ Π² SQL Π΄Π»Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΡΡΡΡΠ°Π½ΠΈΡΡ ΠΈΠ·Π±ΡΡΠΎΡΠ½ΠΎΡΡΡ ΠΈ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ Π°Π½Π°Π»ΠΈΠ· Π΄Π°Π½Π½ΡΡ . ΠΡΠ°Π²ΠΈΠ»ΡΠ½Π°Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΡΡΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ ΠΏΠΎΠ²ΡΡΠ°Π΅Ρ ΡΠΎΡΠ½ΠΎΡΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΡΠ»ΡΡΡΠ°Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ.
-
ΠΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ
ΠΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π² Π‘Π£ΠΠ β ΡΡΠΎ ΠΎΠ΄ΠΈΠ½ ΡΡΠΎΠ»Π±Π΅Ρ ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΡΡΠΎΠ»Π±ΡΠΎΠ² Π² ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΡΡΡ ΠΊΠ°ΠΆΠ΄ΡΡ Π·Π°ΠΏΠΈΡΡ Π² ΡΡΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅. Π’Π°Π±Π»ΠΈΡΠ° ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅ΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π±Π΅Π· ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΠΉ Π²ΠΎ Π²ΡΠ΅Ρ ΡΡΡΠΎΠΊΠ°Ρ . -
Π‘ΡΠΏΠ΅ΡΠΊΠ»ΡΡ
Π‘ΡΠΏΠ΅ΡΠΊΠ»ΡΡ β ΡΡΠΎ ΠΎΠ΄ΠΈΠ½ ΠΊΠ»ΡΡ ΠΈΠ»ΠΈ Π³ΡΡΠΏΠΏΠ° ΠΊΠ»ΡΡΠ΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΆΠ΄ΡΡ ΡΡΡΠΎΠΊΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π»ΡΠ±Π°Ρ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΡΡΠΎΠ»Π±ΡΠΎΠ², ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π²ΡΠ΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΊΠ²Π°Π»ΠΈΡΠΈΡΠΈΡΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ ΡΡΠΏΠ΅ΡΠΊΠ»ΡΡ. Π‘ΡΠΏΠ΅Ρ ΠΊΠ»ΡΡ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ ΠΊΠ»ΡΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΡΠΎΠΊΠΈ. ΠΠ· ΡΡΠΈΡ ΡΡΠΏΠ΅ΡΠΊΠ»ΡΡΠ΅ΠΉ Π²ΡΠ±ΠΈΡΠ°Π΅ΡΡΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΆΠ΄ΡΡ ΡΡΡΠΎΠΊΡ ΡΠ°Π±Π»ΠΈΡΡ. -
ΠΠ»ΡΡ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΠ°
ΠΠ»ΡΡΠΈ-ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΡ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΡΡΡ ΡΡΡΠΎΠΊΠΈ ΡΠ°Π±Π»ΠΈΡΡ, Π΄Π΅ΠΉΡΡΠ²ΡΡ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠ΅ ΠΊΠ»ΡΡΠΈ Ρ ΡΠ΅ΠΌΠΈ ΠΆΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π°ΠΌΠΈ. Π’Π°Π±Π»ΠΈΡΠ° Π²ΡΠ±ΠΈΡΠ°Π΅Ρ ΡΠ²ΠΎΠΉ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ ΠΈΠ· ΡΠΈΡΠ»Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΠΊΠ»ΡΡΠ΅ΠΉ. Π₯ΠΎΡΡ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΊΠ»ΡΡΠ΅ΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ, Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΡΡΡΠΌ, ΡΡΠΎ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ, ΡΡΠΎ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· Π½ΠΈΡ Π½Π΅ΡΠ΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈ ΡΠ΅Π½Π½ΠΎΡΡΡ. ΠΡΡΠΏΠΏΠ° Π°ΡΡΠΈΠ±ΡΡΠΎΠ² ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΌΠ΅ΡΡΠ΅ Π²ΡΡΡΡΠΏΠ°ΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΊΠ»ΡΡΠ΅ΠΉ. -
ΠΠ»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΉ ΠΊΠ»ΡΡ
Π’Π°Π±Π»ΠΈΡΠ° ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΠΎΠ² Π½Π° ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ, Π½ΠΎ Π²ΡΠ±ΠΈΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎΠ³ΠΎ. ΠΠ»ΡΡΠΈ, Π½Π΅ Π²ΡΠ±ΡΠ°Π½Π½ΡΠ΅ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ°, Π½Π°Π·ΡΠ²Π°ΡΡΡΡ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΌΠΈ ΠΊΠ»ΡΡΠ°ΠΌΠΈ. -
ΠΠ½Π΅ΡΠ½ΠΈΠΉ ΠΊΠ»ΡΡ
ΠΠ½Π΅ΡΠ½ΠΈΠ΅ ΠΊΠ»ΡΡΠΈ ΡΠ²ΡΠ·ΡΠ²Π°ΡΡ Π΄Π²Π΅ ΡΠ°Π±Π»ΠΈΡΡ, ΡΡΠ΅Π±ΡΡ, ΡΡΠΎΠ±Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² ΠΎΠ΄Π½ΠΎΠΌ ΡΡΠΎΠ»Π±ΡΠ΅ ΠΈΠ»ΠΈ ΡΡΠΎΠ»Π±ΡΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°Π»ΠΎ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠΌΡ ΠΊΠ»ΡΡΡ Π² Π΄ΡΡΠ³ΠΎΠΉ ΡΡΡΠ»ΠΎΡΠ½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅. ΠΠ½ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ ΡΠ²ΡΠ·ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠΉ, Π½ΠΎ Π½Π΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ. -
Π‘ΠΎΡΡΠ°Π²Π½ΠΎΠΉ ΠΊΠ»ΡΡ
Π‘ΠΎΡΡΠ°Π²Π½ΠΎΠΉ ΠΊΠ»ΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π°ΡΡΠΈΠ±ΡΡΠ° Π΄Π»Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΡΠ°Π±Π»ΠΈΡΡ. Π₯ΠΎΡΡ ΡΡΠΈ Π°ΡΡΠΈΠ±ΡΡΡ ΠΌΠΎΠ³ΡΡ Π F438 Έ Π½Π΅ Π±ΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ, ΠΈΡ ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠ΅ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΡΡΡ. ΠΡΠΎΡ ΠΊΠ»ΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΠΊΠ°ΠΊ ΡΠΎΡΡΠ°Π²Π½ΠΎΠΉ ΠΊΠ»ΡΡ. -
Π£Π½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ»ΡΡ
Π£Π½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ»ΡΡ, ΡΠΎΡΡΠΎΡΡΠΈΠΉ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΡΠΎΠ»Π±ΡΠΎΠ², ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΡΠ΅Ρ ΠΊΠ°ΠΆΠ΄ΡΡ ΡΡΡΠΎΠΊΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΏΠΎΡΡΠΎΠΌΡ Π²ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠ»ΡΡΠ° Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ. Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ°, ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ»ΡΡ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΠΎΠ΄Π½ΠΎ Π½ΡΠ»Π΅Π²ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΡΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π½Π΅ Π΄ΠΎΠΏΡΡΠΊΠ°Π΅Ρ Π½ΡΠ»Π΅Π²ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ.
Π Π‘Π£ΠΠ ΠΏΠΎΠΌΠΈΠΌΠΎ ΡΠ΅ΠΌΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΡΠΈΠΏΠΎΠ² ΠΊΠ»ΡΡΠ΅ΠΉ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π΅ΡΠ΅ ΡΠΈΠΏ, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ ΠΈΡΠΊΡΡΡΡΠ²Π΅Π½Π½ΡΠΌΠΈ ΠΊΠ»ΡΡΠ°ΠΌΠΈ. ΠΡΠΊΡΡΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΊΠ»ΡΡ ΠΈΠ»ΠΈ ΡΡΡΡΠΎΠ³Π°ΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ Π΄Π΅Π»ΠΎΠ²ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΎΠ½ ΡΠ΅ΡΠ°Π΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΠΌΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ³Π΄Π° Π½ΠΈ ΠΎΠ΄ΠΈΠ½ Π°ΡΡΠΈΠ±ΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΊΡΠΈΡΠ΅ΡΠΈΡΠΌ ΠΈΠ»ΠΈ ΠΊΠΎΠ³Π΄Π° ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠ΅ ΠΊΠ»ΡΡΠΈ ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΡΠ»ΠΎΠΆΠ½ΡΠΌΠΈ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠΎΠ»ΠΈ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΡ ΠΈ Π²Π½Π΅ΡΠ½ΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°Π½ΠΈΡ Ρ ΠΎΡΠΎΡΠΎ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠΉ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΠΎΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΡΡΠ΅ΠΊΡΠΈΠ²Π½Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΡΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½Π½ΠΎΠΉ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΡ, ΡΠΎΡΠ½ΠΎΡΡΡΡ ΠΈ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡΡ. ΠΠ½ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΡΠ»ΡΡΡΠ°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
ΠΠΎΠ»ΡΡΠ΅ ΠΎ ΠΊΠ»ΡΡΠ°Ρ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ PostgreSQL ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΈΜΡΠΈ Π·Π΄Π΅ΡΡ: https://habr.com/ru/articles/787374/
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
Π ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΡ Π±Π°Π·Π°Ρ Π΄Π°Π½Π½ΡΡ Π΅ΡΡΡ ΡΠ°ΠΊΠΎΠ΅ ΠΏΠΎΠ½ΡΡΠΈΡ, ΠΊΠ°ΠΊ Β«ΠΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡΒ».
ΠΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡ β ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΈΠ·Π±ΡΡΠΎΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ .
Π’Π°ΠΊΠΆΠ΅ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΈ Ρ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Π² ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΡΠΎΡΠΌΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ.
ΠΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡ β ΡΡΠΎ ΠΌΠ΅ΡΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΊ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΠΈΠ·Π±ΡΡΠΎΡΠ½ΠΎΡΡΠΈ.
ΠΠ·Π±ΡΡΠΎΡΠ½ΠΎΡΡΡ ΡΡΡΡΠ°Π½ΡΠ΅ΡΡΡ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π·Π° ΡΡΡΡ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΉ (ΡΠ°Π±Π»ΠΈΡ), Ρ.Π΅. ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ.
ΠΠ°ΡΠ΅ΠΌ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ?
ΠΠ·Π±ΡΡΠΎΡΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠ»ΠΊΠΈ Π΄Π»Ρ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΉ, ΡΠ½ΠΈΠΆΠ°Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΠΈ Π΄Π΅Π»Π°Π΅Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΠΌΠΈ Π½Π΅ Π³ΠΈΠ±ΠΊΠΈΠΌ ΠΈ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½ΡΠΌ. ΠΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½ΡΠΆΠ½Π° Π΄Π»Ρ:
- Π£ΡΡΡΠ°Π½Π΅Π½ΠΈΡ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΉ
- ΠΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ
- ΠΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΠΌΠΈ
ΠΠ·Π±ΡΡΠΎΡΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ β ΡΡΠΎ ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄Π½ΠΈ ΠΈ ΡΠ΅ ΠΆΠ΅ Π΄Π°Π½Π½ΡΠ΅ Ρ ΡΠ°Π½ΡΡΡΡ Π² Π±Π°Π·Π΅ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΌΠ΅ΡΡΠ°Ρ , ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΡΠΎ ΠΈ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π°Π½ΠΎΠΌΠ°Π»ΠΈΡΠΌ.
Π’Π°ΠΊ ΠΊΠ°ΠΊ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΡΡΡ ΠΎΠ΄Π½ΠΈ ΠΈ ΡΠ΅ ΠΆΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΌΠ΅ΡΡΠ°Ρ . ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π² ΠΊΠ°ΠΊΠΎΠΌ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅, ΡΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΡΠΈΡΡΠ°ΡΠΈΡ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄Π½ΠΈ Π΄Π°Π½Π½ΡΠ΅ Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ Π²ΡΠΎΠ΄Π΅ ΠΊΠ°ΠΊ ΡΠΎΡΠ½ΠΎ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅ Π΄Π°Π½Π½ΡΠΌ Π² Π΄ΡΡΠ³ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅.
ΠΡΠΈΠΌΠ΅Ρ. Π‘Π»Π΅Π΄ΡΡΡΠ°Ρ ΡΠ°Π±Π»ΠΈΡΠ° Ρ ΡΠ°Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ°Ρ ΠΌΠ΅Π±Π΅Π»ΠΈ (Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ° ΠΈ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π», ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΎΠ½ ΠΈΠ·Π³ΠΎΡΠΎΠ²Π»Π΅Π½).
ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ° | ΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ° | ΠΠ°ΡΠ΅ΡΠΈΠ°Π» |
---|---|---|
1 | Π‘ΡΡΠ» | ΠΠ΅ΡΠ°Π»Π» |
2 | Π‘ΡΠΎΠ» | ΠΠ°ΡΡΠΈΠ² Π΄Π΅ΡΠ΅Π²Π° |
3 | ΠΡΠΎΠ²Π°ΡΡ | ΠΠΠ‘Π |
4 | Π¨ΠΊΠ°Ρ | ΠΠ°ΡΡΠΈΠ² Π΄Π΅ΡΠ΅Π²Π° |
5 | ΠΠΎΠΌΠΎΠ΄ | ΠΠΠ‘Π |
ΠΠΎΠΏΡΡΡΠΈΠΌ, Ρ Π½Π°Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π°, Π²ΠΌΠ΅ΡΡΠΎ Β«ΠΠ°ΡΡΠΈΠ² Π΄Π΅ΡΠ΅Π²Π°Β» Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ Β«ΠΠ°ΡΡΡΠ°Π»ΡΠ½ΠΎΠ΅ Π΄Π΅ΡΠ΅Π²ΠΎΒ». Π§ΡΠΎΠ±Ρ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²Π½Π΅ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΠ°Π·Ρ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΡΠΎΠΊ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠΎΠ², ΠΈΠ·Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΡ ΠΈΠ· ΠΌΠ°ΡΡΠΈΠ²Π° Π΄Π΅ΡΠ΅Π²Π°, Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ.
ΠΠΎ ΠΊΠ°ΠΊΠΈΠΌ-ΡΠΎ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ ΠΌΡ Π²Π½Π΅ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΎΠ΄Π½Ρ ΡΡΡΠΎΠΊΡ. Π ΠΈΡΠΎΠ³Π΅ Π² Π½Π°ΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ Π±ΡΠ΄Π΅Ρ ΠΈ Β«ΠΠ°ΡΡΠΈΠ² Π΄Π΅ΡΠ΅Π²Π°Β», ΠΈ Β«ΠΠ°ΡΡΡΠ°Π»ΡΠ½ΠΎΠ΅ Π΄Π΅ΡΠ΅Π²ΠΎΒ».
ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ° | ΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ° | ΠΠ°ΡΠ΅ΡΠΈΠ°Π» |
---|---|---|
1 | Π‘ΡΡΠ» | ΠΠ΅ΡΠ°Π»Π» |
2 | Π‘ΡΠΎΠ» | ΠΠ°ΡΡΡΠ°Π»ΡΠ½ΠΎΠ΅ Π΄Π΅ΡΠ΅Π²ΠΎ |
3 | ΠΡΠΎΠ²Π°ΡΡ | ΠΠΠ‘Π |
4 | Π¨ΠΊΠ°Ρ | ΠΠ°ΡΡΠΈΠ² Π΄Π΅ΡΠ΅Π²Π° |
5 | ΠΠΎΠΌΠΎΠ΄ | ΠΠΠ‘Π |
Π’Π°ΠΊΠΆΠ΅ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π²Π½Π΅ΡΡΠΈ Π΅ΡΠ΅ ΠΊΠ°ΠΊΠΎΠ΅-ΡΠΎ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π½ΠΎΠ²ΡΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΎΡΡΠΎ Β«ΠΠ΅ΡΠ΅Π²ΠΎΒ».
Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π² Π½Π°ΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ Π² ΡΠΊΠΎΡΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π±ΡΠ΄Π΅Ρ ΠΈ Β«ΠΠ°ΡΡΠΈΠ² Π΄Π΅ΡΠ΅Π²Π°Β», ΠΈ Β«ΠΠ°ΡΡΡΠ°Π»ΡΠ½ΠΎΠ΅ Π΄Π΅ΡΠ΅Π²ΠΎΒ», ΠΈ ΠΏΡΠΎΡΡΠΎ Β«ΠΠ΅ΡΠ΅Π²ΠΎΒ».
ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ° | ΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ° | ΠΠ°ΡΠ΅ΡΠΈΠ°Π» |
---|---|---|
1 | Π‘ΡΡΠ» | ΠΠ΅ΡΠ°Π»Π» |
2 | Π‘ΡΠΎΠ» | ΠΠ°ΡΡΡΠ°Π»ΡΠ½ΠΎΠ΅ Π΄Π΅ΡΠ΅Π²ΠΎ |
3 | ΠΡΠΎΠ²Π°ΡΡ | ΠΠΠ‘Π |
4 | Π¨ΠΊΠ°Ρ | ΠΠ°ΡΡΠΈΠ² Π΄Π΅ΡΠ΅Π²Π° |
5 | ΠΠΎΠΌΠΎΠ΄ | ΠΠΠ‘Π |
6 | Π’ΡΠΌΠ±Π° | ΠΠ΅ΡΠ΅Π²ΠΎ |
ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΠΎ ΡΠ²ΠΎΠ΅ΠΉ ΡΡΡΠΈ ΡΡΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π», Ρ.ΠΊ. ΠΌΡ ΠΎΡΠΈΠ±Π»ΠΈΡΡ ΠΏΡΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π½ΠΎΠ²ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ. ΠΡΠΎ ΠΈ Π΅ΡΡΡ Π°Π½ΠΎΠΌΠ°Π»ΠΈΡ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄Π½ΠΈ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅ Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅ Π΄Π°Π½Π½ΡΠΌ Π² Π΄ΡΡΠ³ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅. ΠΡΠΎ Π²ΡΠ΅Π³ΠΎ Π»ΠΈΡΡ ΠΎΠ΄ΠΈΠ½ Π²ΠΈΠ΄ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ, Π½ΠΎ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΈΡ ΠΏΡΠΎΡΠΈΠ²ΠΎΡΠ΅ΡΠΈΠ²ΡΡ ΡΠΈΡΡΠ°ΡΠΈΠΉ (Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΉ).
ΠΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΡΡΡΠ°Π½ΡΡΡ ΠΈΠ·Π±ΡΡΠΎΡΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ Π² Π±Π°Π·Π΅, Ρ.Π΅. ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΡ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
Π Π΄Π°Π½Π½ΠΎΠΌ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π°, ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΈΠ·Π³ΠΎΡΠΎΠ²Π»Π΅Π½Ρ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΡ ΠΌΠ΅Π±Π΅Π»ΠΈ, Π²ΡΠ½Π΅ΡΡΠΈ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠ°Π±Π»ΠΈΡΡ, Π° Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Ρ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ°ΠΌΠΈ ΡΠΊΠ°Π·Π°ΡΡ ΡΡΡΠ»ΠΊΡ Π½Π° Π½ΡΠΆΠ½ΡΠΉ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π». Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΠΎΠΎΡΠ½Π΅ΡΡ ΡΡΡ ΡΡΡΠ»ΠΊΡ Ρ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΉ Π·Π°ΠΏΠΈΡΡΡ, ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΠΈΠ· ΠΊΠ°ΠΊΠΎΠ³ΠΎ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π° ΡΠ΄Π΅Π»Π°Π½ ΡΠΎΡ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΠΏΡΠ΅Π΄ΠΌΠ΅Ρ.
ΠΡΠ΅Π΄ΠΌΠ΅ΡΡ ΠΌΠ΅Π±Π΅Π»ΠΈ.
ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ° | ΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ° | ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π° |
---|---|---|
1 | Π‘ΡΡΠ» | 2 |
2 | Π‘ΡΠΎΠ» | 1 |
3 | ΠΡΠΎΠ²Π°ΡΡ | 3 |
4 | Π¨ΠΊΠ°Ρ | 1 |
5 | ΠΠΎΠΌΠΎΠ΄ | 3 |
ΠΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ, ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΠΈΠ·Π³ΠΎΡΠΎΠ²Π»Π΅Π½Ρ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΡ ΠΌΠ΅Π±Π΅Π»ΠΈ.
ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π° | ΠΠ°ΡΠ΅ΡΠΈΠ°Π» |
---|---|
1 | ΠΠ°ΡΡΠΈΠ² Π΄Π΅ΡΠ΅Π²Π° |
2 | ΠΠ΅ΡΠ°Π»Π» |
3 | ΠΠΠ‘Π |
Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΊΠΎΠ³Π΄Π° Π½Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π°, ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Π²Π½ΠΎΡΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅ ΠΈ ΡΡΡΡΠ°Π½ΠΈΠΌ ΠΎΠΏΠΈΡΠ°Π½Π½ΡΡ Π²ΡΡΠ΅ Π°Π½ΠΎΠΌΠ°Π»ΠΈΡ.
ΠΡΡΠ³ΠΈΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΡΡΠ½ΠΎΡΡΡ Π΄ΠΎΠ»ΠΆΠ½Π° Ρ ΡΠ°Π½ΠΈΡΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ, Π° Π² ΡΠ»ΡΡΠ°Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠΎΠΉ ΡΡΡΠ½ΠΎΡΡΠΈ Π² Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ Π½Π° Π½Π΅Π΅ Π΄Π°ΡΡΡΡ ΡΡΡΠ»ΠΊΠ°, Ρ.Π΅. Π²ΡΡΡΡΠ°ΠΈΠ²Π°Π΅ΡΡΡ ΡΠ²ΡΠ·Ρ.
ΠΠΎΡΠΌΠ°Π»ΡΠ½ΡΠ΅ ΡΠΎΡΠΌΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
Π ΡΠ΅Π»ΠΎΠΌ ΠΏΡΠΎΡΠ΅ΡΡ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ: ΠΌΡ, ΡΠ»Π΅Π΄ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠΌ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ ΠΈ ΡΠΎΠ±Π»ΡΠ΄Π°Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ, ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΡΠ΅ΠΌ ΡΠ°Π±Π»ΠΈΡΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ .
ΠΡΠΈ ΡΡΠΎΠΌ Π²ΡΠ΅ ΡΡΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ³ΡΡΠΏΠΏΠΈΡΠΎΠ²Π°ΡΡ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π½Π°Π±ΠΎΡΠΎΠ², ΠΈ Π΅ΡΠ»ΠΈ ΡΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Ρ ΡΠΎΠ±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ΠΌ Π²ΡΠ΅Ρ ΠΏΡΠ°Π²ΠΈΠ» ΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΊΠ»ΡΡΠ°ΡΡΡΡ Π² ΡΠΎΡ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ Π½Π°Π±ΠΎΡ, ΡΠΎ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ Π±ΡΠ΄Π΅Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ, Ρ.Π΅. ΡΠΎΡΠΌΠ΅.
ΠΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ β ΡΡΠΎ Π½Π°Π±ΠΎΡ ΠΏΡΠ°Π²ΠΈΠ» ΠΈ ΠΊΡΠΈΡΠ΅ΡΠΈΠ΅Π², ΠΊΠΎΡΠΎΡΡΠΌ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ .
ΠΠ°ΠΆΠ΄Π°Ρ ΡΠ»Π΅Π΄ΡΡΡΠ°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠΎΠ³ΠΈΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΈ ΠΊΡΠΈΡΠ΅ΡΠΈΠΈ, ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ ΠΏΡΠΈΠ²ΠΎΠ΄Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠ΅ ΠΌΡ ΡΡΡΡΠ°Π½ΡΠ΅ΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠΉ Π½Π°Π±ΠΎΡ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΉ.
ΠΡΡΡΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π²ΡΠ²ΠΎΠ΄, ΡΡΠΎ ΡΠ΅ΠΌ Π²ΡΡΠ΅ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ°, ΡΠ΅ΠΌ ΠΌΠ΅Π½ΡΡΠ΅ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΉ Π² Π±Π°Π·Π΅ Π±ΡΠ΄Π΅Ρ.
ΠΡΠΎΡΠ΅ΡΡ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ β ΡΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΈΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΊ ΡΡΠ°Π»ΠΎΠ½Π½ΠΎΠΌΡ Π²ΠΈΠ΄Ρ, Ρ.Π΅. ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ ΠΎΡ ΠΎΠ΄Π½ΠΎΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΡ ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ.
Π’Π°ΠΊ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° ΠΎΡ ΠΎΠ΄Π½ΠΎΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΡ ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ β ΡΡΠΎ ΡΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . Π’Π°ΠΊ ΠΊΠ°ΠΊ Π΅ΡΠ»ΠΈ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠ΅ β ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ Π²ΠΈΠ΄ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΉ.
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ 5 ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΡΡ ΡΠΎΡΠΌ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ :
- ΠΠ΅ΡΠ²Π°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (1NF)
- ΠΡΠΎΡΠ°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (2NF)
- Π’ΡΠ΅ΡΡΡ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (3NF)
- Π§Π΅ΡΠ²Π΅ΡΡΠ°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (4NF)
- ΠΡΡΠ°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (5NF)
ΠΠ΄Π½Π°ΠΊΠΎ Π²ΡΠ΄Π΅Π»ΡΡΡ Π΅ΡΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΡΠ΅ ΡΠΎΡΠΌΡ:
- ΠΠ΅Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Π°Ρ ΡΠΎΡΠΌΠ° ΠΈΠ»ΠΈ Π½ΡΠ»Π΅Π²Π°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (UNF)
- ΠΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° ΠΠΎΠΉΡΠ°-ΠΠΎΠ΄Π΄Π° (BCNF)
- ΠΠΎΠΌΠ΅Π½Π½ΠΎ-ΠΊΠ»ΡΡΠ΅Π²Π°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (DKNF)
- Π¨Π΅ΡΡΠ°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (6NF)
ΠΡΠ»ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΠΎΠ±Π° ΡΡΠΈΡ ΡΠΏΠΈΡΠΊΠ° ΠΈ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠΈΡΡ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΡΠ΅ ΡΠΎΡΠΌΡ ΠΎΡ ΠΌΠ΅Π½Π΅Π΅ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ Π΄ΠΎ ΡΠ°ΠΌΠΎΠΉ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ, Ρ.Π΅. Π½Π°ΡΠΈΠ½Π°Ρ Ρ ΡΠΎΡΠΌΡ, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΉ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ ΠΏΠΎ ΡΠ²ΠΎΠ΅ΠΉ ΡΡΡΠΈ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ, ΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Ρ ΡΠ°ΠΌΠΎΠΉ ΡΡΡΠΎΠ³ΠΎΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠΎΠΉ, ΡΠΎ ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΠ΅ΡΠ΅ΡΠ΅Π½Ρ:
- ΠΠ΅Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Π°Ρ ΡΠΎΡΠΌΠ° ΠΈΠ»ΠΈ Π½ΡΠ»Π΅Π²Π°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (UNF)
- ΠΠ΅ΡΠ²Π°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (1NF)
- ΠΡΠΎΡΠ°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (2NF)
- Π’ΡΠ΅ΡΡΡ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (3NF)
- ΠΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° ΠΠΎΠΉΡΠ°-ΠΠΎΠ΄Π΄Π° (BCNF)
- Π§Π΅ΡΠ²Π΅ΡΡΠ°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (4NF)
- ΠΡΡΠ°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (5NF)
- ΠΠΎΠΌΠ΅Π½Π½ΠΎ-ΠΊΠ»ΡΡΠ΅Π²Π°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (DKNF)
- Π¨Π΅ΡΡΠ°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (6NF)
ΠΠ°Π·Π° Π΄Π°Π½Π½ΡΡ ΡΡΠΈΡΠ°Π΅ΡΡΡ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ, Π΅ΡΠ»ΠΈ ΠΎΠ½Π° Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ Π² ΡΡΠ΅ΡΡΠ΅ΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠ΅ (3NF).
Π ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ ΠΌΠΈΡΠ΅ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π΄ΠΎ ΡΡΠ΅ΡΡΠ΅ΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΡ (3NF) ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΡΠ½ΠΎΠΉ, ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΎΠΉ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ 3NF ΡΡΡΡΠ°Π½ΡΠ΅Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΉ, ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ΄ΠΎΠ±ΡΡΠ²ΠΎ Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ ΡΠ½ΠΈΠΆΠ°Π΅ΡΡΡ, ΡΡΠΎ Π½Π΅Π»ΡΠ·Ρ ΡΠΊΠ°Π·Π°ΡΡ ΠΎ Π²ΡΠ΅Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΠΎΡΠΌΠ°Ρ .
Π‘ΠΈΡΡΠ°ΡΠΈΠΈ, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΡΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π΄ΠΎ ΡΠ΅ΡΠ²Π΅ΡΡΠΎΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΡ (4NF), Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ ΠΌΠΈΡΠ΅ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠ΅Π΄ΠΊΠΎ.
ΠΡΠ»ΠΈ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΎ Π²ΡΠ΅Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΡ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΡΡ ΡΠΎΡΠΌΠ°Ρ (5NF, DKNF, 6NF), ΡΠΎ Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΉ ΠΆΠΈΠ·Π½ΠΈ ΡΡΡΠ΄Π½ΠΎ Π΄Π°ΠΆΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π΄ΠΎ ΡΡΠΈΡ ΡΠΎΡΠΌ.
Π‘ΡΠΎΠΈΡ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΊ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠ΅, ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠ΅Π±ΡΠ΅Ρ, ΡΡΠΎΠ±Ρ ΡΡΠ° Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ ΡΠΆΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΠ»Π°ΡΡ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠ΅, Ρ.Π΅. Π½Π΅Π»ΡΠ·Ρ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π΄ΠΎ ΡΡΠ΅ΡΡΠ΅ΠΉ ΡΠΎΡΠΌΡ, Π΅ΡΠ»ΠΈ ΠΎΠ½Π° Π΅ΡΠ΅ Π½Π΅ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π΄ΠΎ Π²ΡΠΎΡΠΎΠΉ.
1. ΠΠ΅Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Π°Ρ ΡΠΎΡΠΌΠ° ΠΈΠ»ΠΈ Π½ΡΠ»Π΅Π²Π°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (UNF) Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
ΠΠ΅Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Π°Ρ ΡΠΎΡΠΌΠ° (UNF) Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΈΠ»ΠΈ Π½ΡΠ»Π΅Π²Π°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ°, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ , Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΡΡ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠ΅ΠΎΡΠΈΠΈ. Π ΡΠ°ΠΊΠΈΡ ΡΠ°Π±Π»ΠΈΡΠ°Ρ Π½Π°ΡΡΡΠ°ΡΡΡΡ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ : ΡΡΡΠΎΠΊΠΈ ΠΈ ΡΡΠΎΠ»Π±ΡΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ΅Π½Ρ, ΡΡΠΎ Π½Π΅Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎ Π² ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ.
ΠΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡΡ ΠΊ Π±Π°Π·ΠΎΠ²ΡΠΌ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ°ΠΌ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠ΅ΠΎΡΠΈΠΈ, ΡΡΡΡΠ°Π½ΠΈΠ² ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΡΡΠΎΠΊ ΠΈ ΡΡΠΎΠ»Π±ΡΠΎΠ².
ΠΡΠΈΠΌΠ΅Ρ: ΠΠΎ:
β | A | B |
---|---|---|
1 | ΠΠ²Π°Π½ | ΠΠ²Π°Π½ΠΎΠ² |
2 | Π‘Π΅ΡΠ³Π΅ΠΉ | Π‘Π΅ΡΠ³Π΅Π΅Π² |
ΠΠΎΡΠ»Π΅:
first_name | last_name |
---|---|
ΠΠ²Π°Π½ | ΠΠ²Π°Π½ΠΎΠ² |
Π‘Π΅ΡΠ³Π΅ΠΉ | Π‘Π΅ΡΠ³Π΅Π΅Π² |
ΠΠ΅ΡΠ²Π°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (1NF) ΡΡΠ΅Π±ΡΠ΅Ρ, ΡΡΠΎΠ±Ρ ΡΠ°Π±Π»ΠΈΡΠ° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°Π»Π° ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄Π°Π½Π½ΡΡ :
- ΠΠ΅Ρ Π΄ΡΠ±Π»ΠΈΡΡΡΡΠΈΡ ΡΡΡΠΎΠΊ.
- Π―ΡΠ΅ΠΉΠΊΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΠΎΠ»ΡΠΊΠΎ Π°ΡΠΎΠΌΠ°ΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ.
- ΠΠ°Π½Π½ΡΠ΅ Π² ΡΡΠΎΠ»Π±ΡΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°.
- ΠΠ΅Ρ ΡΠΏΠΈΡΠΊΠΎΠ² ΠΈΠ»ΠΈ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Π² ΡΡΠ΅ΠΉΠΊΠ°Ρ .
ΠΡΠΈΠΌΠ΅Ρ: ΠΠΎ (Π½Π΅ Π² 1NF):
Π‘ΠΎΡΡΡΠ΄Π½ΠΈΠΊ | ΠΠΎΠ½ΡΠ°ΠΊΡ |
---|---|
ΠΠ²Π°Π½ΠΎΠ² Π.Π. | 123-456-789, 987-654-321 |
Π‘Π΅ΡΠ³Π΅Π΅Π² Π‘.Π‘. | Π Π°Π±. 555-666-777, ΠΠΎΠΌ. 777-888-999 |
ΠΠΎΡΠ»Π΅ (Π² 1NF):
Π‘ΠΎΡΡΡΠ΄Π½ΠΈΠΊ | Π’Π΅Π»Π΅ΡΠΎΠ½ | Π’ΠΈΠΏ ΡΠ΅Π»Π΅ΡΠΎΠ½Π° |
---|---|---|
ΠΠ²Π°Π½ΠΎΠ² Π.Π. | 123-456-789 | |
ΠΠ²Π°Π½ΠΎΠ² Π.Π. | 987-654-321 | |
Π‘Π΅ΡΠ³Π΅Π΅Π² Π‘.Π‘. | 555-666-777 | Π Π°Π±ΠΎΡΠΈΠΉ |
Π‘Π΅ΡΠ³Π΅Π΅Π² Π‘.Π‘. | 777-888-999 | ΠΠΎΠΌΠ°ΡΠ½ΠΈΠΉ |
ΠΠ»Π°Π²Π½ΠΎΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ 1NF:
- Π‘ΡΡΠΎΠΊΠΈ Ρ ΡΠ°Π½ΡΡ Π΄Π°Π½Π½ΡΠ΅.
- Π‘ΡΠΎΠ»Π±ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΡΡΡΠΊΡΡΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ.
- Π―ΡΠ΅ΠΉΠΊΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΠΎΠ΄Π½ΠΎ Π°ΡΠΎΠΌΠ°ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
Π’Π°Π±Π»ΠΈΡΡ, ΡΠΎΠ·Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠ΅ΠΎΡΠΈΠΈ, ΡΠΆΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ 1NF.
ΠΠΎΡΠ»Π΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ ΠΊ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠ΅ (1NF), ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΡΠ°ΠΏ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ β Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΠΎΡΠΎΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΡ (2NF). Π’Π°Π±Π»ΠΈΡΡ Π²ΠΎ Π²ΡΠΎΡΠΎΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌ:
Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ 2NF:
- ΠΠ΅ΡΠ²Π°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (1NF): Π’Π°Π±Π»ΠΈΡΡ ΡΠΆΠ΅ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² ΠΏΠ΅ΡΠ²ΠΎΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠ΅.
- ΠΠ»ΡΡ: Π’Π°Π±Π»ΠΈΡΡ ΠΈΠΌΠ΅ΡΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ (ΠΏΡΠΎΡΡΠΎΠΉ ΠΈΠ»ΠΈ ΡΠΎΡΡΠ°Π²Π½ΠΎΠΉ), ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΡΠ΅Ρ ΠΊΠ°ΠΆΠ΄ΡΡ ΡΡΡΠΎΠΊΡ.
- ΠΠΎΠ»Π½Π°Ρ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΎΡ ΠΊΠ»ΡΡΠ°: ΠΡΠ΅ Π½Π΅ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ Π·Π°Π²ΠΈΡΡΡ ΠΎΡ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° (Π΅ΡΠ»ΠΈ ΠΎΠ½ ΡΠΎΡΡΠ°Π²Π½ΠΎΠΉ).
ΠΡΠ»ΠΈ Π½Π΅ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ Π·Π°Π²ΠΈΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡ ΡΠ°ΡΡΠΈ ΡΠΎΡΡΠ°Π²Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ°, ΡΠΎ ΡΠ°Π±Π»ΠΈΡΠ° Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π²ΡΠΎΡΠΎΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠ΅.
ΠΡΠ°Π²ΠΈΠ»ΠΎ 2NF:
Π’Π°Π±Π»ΠΈΡΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅ΡΡ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΡΠΉ ΠΊΠ»ΡΡ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΆΠ΄ΡΡ ΡΡΡΠΎΠΊΡ, ΠΈ Π²ΡΠ΅ Π½Π΅ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ Π·Π°Π²ΠΈΡΠΈΠΌΡ ΠΎΡ Π²ΡΠ΅Π³ΠΎ ΠΊΠ»ΡΡΠ°, Π° Π½Π΅ ΠΎΡ Π΅Π³ΠΎ ΡΠ°ΡΡΠΈ.
ΠΡΠΈΠΌΠ΅Ρ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡΡ ΠΊ 2NF Ρ ΠΏΡΠΎΡΡΡΠΌ ΠΊΠ»ΡΡΠΎΠΌ
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠ°Π±Π»ΠΈΡΡ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΎΠ²:
Π€ΠΠ | ΠΠΎΠ»ΠΆΠ½ΠΎΡΡΡ | ΠΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ |
---|---|---|---|
ΠΠ²Π°Π½ΠΎΠ² Π.Π. | ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ | ΠΡΠ΄Π΅Π» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ | Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈ ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ |
Π‘Π΅ΡΠ³Π΅Π΅Π² Π‘.Π‘. | ΠΡΡ Π³Π°Π»ΡΠ΅Ρ | ΠΡΡ Π³Π°Π»ΡΠ΅ΡΠΈΡ | ΠΠ΅Π΄Π΅Π½ΠΈΠ΅ Π±ΡΡ Π³Π°Π»ΡΠ΅ΡΡΠΊΠΎΠ³ΠΎ ΡΡΠ΅ΡΠ° |
John Smith | ΠΡΠΎΠ΄Π°Π²Π΅Ρ | ΠΡΠ΄Π΅Π» ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ | ΠΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΡΠ±ΡΡΠ° ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠΈ |
ΠΡΠ° ΡΠ°Π±Π»ΠΈΡΠ° Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² 1NF, Π½ΠΎ Ρ Π½Π΅Π΅ Π½Π΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ°. Π§ΡΠΎΠ±Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ Π΅Π΅ ΠΊΠΎ 2NF, Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΡΡΠΎΠ»Π±Π΅Ρ Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ ΡΠ°Π±Π΅Π»ΡΠ½ΡΠΌ Π½ΠΎΠΌΠ΅ΡΠΎΠΌ:
Π’Π°Π±Π΅Π»ΡΠ½ΡΠΉ Π½ΠΎΠΌΠ΅Ρ | Π€ΠΠ | ΠΠΎΠ»ΠΆΠ½ΠΎΡΡΡ | ΠΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ |
---|---|---|---|---|
1 | ΠΠ²Π°Π½ΠΎΠ² Π.Π. | ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ | ΠΡΠ΄Π΅Π» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ | Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈ ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ |
2 | Π‘Π΅ΡΠ³Π΅Π΅Π² Π‘.Π‘. | ΠΡΡ Π³Π°Π»ΡΠ΅Ρ | ΠΡΡ Π³Π°Π»ΡΠ΅ΡΠΈΡ | ΠΠ΅Π΄Π΅Π½ΠΈΠ΅ Π±ΡΡ Π³Π°Π»ΡΠ΅ΡΡΠΊΠΎΠ³ΠΎ ΡΡΠ΅ΡΠ° |
3 | John Smith | ΠΡΠΎΠ΄Π°Π²Π΅Ρ | ΠΡΠ΄Π΅Π» ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ | ΠΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΡΠ±ΡΡΠ° ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠΈ |
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠ»ΡΡ Π·Π΄Π΅ΡΡ ΠΏΡΠΎΡΡΠΎΠΉ, ΡΠ°Π±Π»ΠΈΡΠ° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌ 2NF.
ΠΡΠΈΠΌΠ΅Ρ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡΡ ΠΊ 2NF Ρ ΡΠΎΡΡΠ°Π²Π½ΡΠΌ ΠΊΠ»ΡΡΠΎΠΌ
ΠΠΎΠΏΡΡΡΠΈΠΌ, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Ρ ΡΠ°Π½ΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ ΠΈ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ°Ρ .
ΠΡΡ ΠΎΠ΄Π½Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ° (1NF):
ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° | Π£ΡΠ°ΡΡΠ½ΠΈΠΊ | ΠΠΎΠ»ΠΆΠ½ΠΎΡΡΡ | Π‘ΡΠΎΠΊ ΠΏΡΠΎΠ΅ΠΊΡΠ° (ΠΌΠ΅Ρ.) |
---|---|---|---|
ΠΠ½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ | ΠΠ²Π°Π½ΠΎΠ² Π.Π. | ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ | 8 |
ΠΠ½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ | Π‘Π΅ΡΠ³Π΅Π΅Π² Π‘.Π‘. | ΠΡΡ Π³Π°Π»ΡΠ΅Ρ | 8 |
ΠΠ½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ | John Smith | ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ | 8 |
ΠΡΠΊΡΡΡΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ°Π³Π°Π·ΠΈΠ½Π° | Π‘Π΅ΡΠ³Π΅Π΅Π² Π‘.Π‘. | ΠΡΡ Π³Π°Π»ΡΠ΅Ρ | 12 |
ΠΡΠΊΡΡΡΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ°Π³Π°Π·ΠΈΠ½Π° | John Smith | ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ | 12 |
ΠΡΠΎΠ±Π»Π΅ΠΌΠ°:
- ΠΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π΄Π²ΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ²: ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° + Π£ΡΠ°ΡΡΠ½ΠΈΠΊ.
- Π‘ΡΠΎΠ»Π±Π΅Ρ ΠΠΎΠ»ΠΆΠ½ΠΎΡΡΡ Π·Π°Π²ΠΈΡΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡ Π£ΡΠ°ΡΡΠ½ΠΈΠΊΠ°, Π° Π½Π΅ ΠΎΡ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ°.
Π Π΅ΡΠ΅Π½ΠΈΠ΅:
ΠΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΡ ΡΠ°Π±Π»ΠΈΡΡ:
ΠΠ΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΡ β ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ (ΡΠ°Π±Π»ΠΈΡΡ) Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ.
-
Π’Π°Π±Π»ΠΈΡΠ° "ΠΡΠΎΠ΅ΠΊΡΡ":
ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π‘ΡΠΎΠΊ ΠΏΡΠΎΠ΅ΠΊΡΠ° (ΠΌΠ΅Ρ.) 1 ΠΠ½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ 8 2 ΠΡΠΊΡΡΡΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ°Π³Π°Π·ΠΈΠ½Π° 12 -
Π’Π°Π±Π»ΠΈΡΠ° "Π£ΡΠ°ΡΡΠ½ΠΈΠΊΠΈ":
ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ° Π£ΡΠ°ΡΡΠ½ΠΈΠΊ ΠΠΎΠ»ΠΆΠ½ΠΎΡΡΡ 1 ΠΠ²Π°Π½ΠΎΠ² Π.Π. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ 2 Π‘Π΅ΡΠ³Π΅Π΅Π² Π‘.Π‘. ΠΡΡ Π³Π°Π»ΡΠ΅Ρ 3 John Smith ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ -
Π‘Π²ΡΠ·Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌΠΈ ΠΈ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ°ΠΌΠΈ:
ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ° 1 1 1 2 1 3 2 2 2 3
ΠΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ 3 ΡΠ°Π±Π»ΠΈΡΡ:
- ΠΡΠΎΠ΅ΠΊΡΡ, Π² Π½Π΅Π΅ ΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ ΠΈΡΠΊΡΡΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ
- Π£ΡΠ°ΡΡΠ½ΠΈΠΊΠΈ, Π² Π½Π΅Π΅ ΠΌΡ ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ ΠΈΡΠΊΡΡΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ
- Π‘Π²ΡΠ·Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌΠΈ ΠΈ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ°ΠΌΠΈ, ΠΎΠ½Π° Π½ΡΠΆΠ½Π° Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ²ΡΠ·ΠΈ Β«ΠΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌΒ», ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΠΈΠΌΠΈ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ ΡΠ²ΡΠ·Ρ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ°ΠΊΠ°Ρ
ΠΠΎΡΠ»Π΅ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΡΠ°Π±Π»ΠΈΡΡ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΡΡ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌ Π²ΡΠΎΡΠΎΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΡ:
- Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π°ΡΡΠΈΠ±ΡΡΠ° (ΡΡΠΎΠ»Π±ΡΠ°) Π΅ΡΡΡ ΠΏΠΎΠ»Π½Π°Ρ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΎΡ ΠΊΠ»ΡΡΠ°.
- ΠΡΠΊΠ»ΡΡΠ΅Π½Ρ ΡΠ°ΡΡΠΈΡΠ½ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ.
--
ΠΡΠ²ΠΎΠ΄
ΠΡΠΎΡΠ°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° ΡΡΡΡΠ°Π½ΡΠ΅Ρ ΡΠ°ΡΡΠΈΡΠ½ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ, ΡΡΠΎΠ±Ρ ΡΡΡΡΠΊΡΡΡΠ° ΡΠ°Π±Π»ΠΈΡ ΡΡΠ°Π»Π° Π»ΠΎΠ³ΠΈΡΠ½ΠΎΠΉ ΠΈ ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΠΉ ΠΊ Π°Π½ΠΎΠΌΠ°Π»ΠΈΡΠΌ. ΠΠ»Ρ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ 2NF ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ°Π³ΠΈ:
- ΠΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΊΠ»ΡΡΠΈ (ΠΏΡΠΎΡΡΡΠ΅ ΠΈΠ»ΠΈ ΡΠΎΡΡΠ°Π²Π½ΡΠ΅).
- Π Π°Π·Π΄Π΅Π»ΠΈΡΡ ΡΠ°Π±Π»ΠΈΡΡ, Π΅ΡΠ»ΠΈ Π΅ΡΡΡ ΡΠ°ΡΡΠΈΡΠ½Π°Ρ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ.
- ΠΠ²Π΅ΡΡΠΈ ΠΈΡΠΊΡΡΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΊΠ»ΡΡΠΈ Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΡΠ²ΡΠ·ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΡΠ½ΠΎΡΡΡΠΌΠΈ.
Π¦Π΅Π»Ρ: Π£ΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΡΠ°Π½Π·ΠΈΡΠΈΠ²Π½ΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ, ΡΡΠΎΠ±Ρ Π½Π΅ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ Π·Π°Π²ΠΈΡΠ΅Π»ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ°.
Π’ΡΠ°Π½Π·ΠΈΡΠΈΠ²Π½Π°Ρ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ β ΡΡΠΎ ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ Π·Π°Π²ΠΈΡΡΡ ΠΎΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π΄ΡΡΠ³ΠΈΡ Π½Π΅ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ².
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ 3NF:
- Π’Π°Π±Π»ΠΈΡΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π²ΠΎ Π²ΡΠΎΡΠΎΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠ΅ (2NF).
- ΠΡΠ΅ Π½Π΅ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π·Π°Π²ΠΈΡΠ΅ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° (Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ ΠΌΠ΅ΠΆΠ΄Ρ Π½Π΅ΠΊΠ»ΡΡΠ΅Π²ΡΠΌΠΈ ΡΡΠΎΠ»Π±ΡΠ°ΠΌΠΈ).
ΠΡΠΈΠΌΠ΅Ρ:
ΠΡΡ ΠΎΠ΄Π½Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ° (2NF):
Π’Π°Π±Π΅Π»ΡΠ½ΡΠΉ Π½ΠΎΠΌΠ΅Ρ | Π€ΠΠ | ΠΠΎΠ»ΠΆΠ½ΠΎΡΡΡ | ΠΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ |
---|---|---|---|---|
1 | ΠΠ²Π°Π½ΠΎΠ² Π.Π. | ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ | ΠΡΠ΄Π΅Π» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ | Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡΠ°ΠΉΡΠΎΠ² |
2 | Π‘Π΅ΡΠ³Π΅Π΅Π² Π‘.Π‘. | ΠΡΡ Π³Π°Π»ΡΠ΅Ρ | ΠΡΡ Π³Π°Π»ΡΠ΅ΡΠΈΡ | Π£ΡΠ΅Ρ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΠΎ-Ρ ΠΎΠ·ΡΠΉΡΡΠ²Π΅Π½Π½ΠΎΠΉ Π΄Π΅ΡΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ |
3 | John Smith | ΠΡΠΎΠ΄Π°Π²Π΅Ρ | ΠΡΠ΄Π΅Π» ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ | ΠΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΡΠ±ΡΡΠ° ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠΈ |
- ΠΡΠΎΠ±Π»Π΅ΠΌΠ°: "ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ" Π·Π°Π²ΠΈΡΠΈΡ Π½Π΅ ΠΎΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ°, Π° ΠΎΡ "ΠΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ" β ΡΡΠΎ ΡΡΠ°Π½Π·ΠΈΡΠΈΠ²Π½Π°Ρ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ.
Π Π΅ΡΠ΅Π½ΠΈΠ΅:
Π Π°Π·Π΄Π΅Π»ΡΠ΅ΠΌ ΡΠ°Π±Π»ΠΈΡΡ Π½Π° Π΄Π²Π΅:
-
Π‘ΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΈ:
Π’Π°Π±Π΅Π»ΡΠ½ΡΠΉ Π½ΠΎΠΌΠ΅Ρ Π€ΠΠ ΠΠΎΠ»ΠΆΠ½ΠΎΡΡΡ ΠΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ 1 ΠΠ²Π°Π½ΠΎΠ² Π.Π. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ 1 2 Π‘Π΅ΡΠ³Π΅Π΅Π² Π‘.Π‘. ΠΡΡ Π³Π°Π»ΡΠ΅Ρ 2 3 John Smith ΠΡΠΎΠ΄Π°Π²Π΅Ρ 3 -
ΠΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ:
ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ 1 ΠΡΠ΄Π΅Π» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡΠ°ΠΉΡΠΎΠ² 2 ΠΡΡ Π³Π°Π»ΡΠ΅ΡΠΈΡ Π£ΡΠ΅Ρ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΠΎ-Ρ ΠΎΠ·ΡΠΉΡΡΠ²Π΅Π½Π½ΠΎΠΉ Π΄Π΅ΡΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ 3 ΠΡΠ΄Π΅Π» ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΡΠ±ΡΡΠ° ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠΈ
Π’Π΅ΠΏΠ΅ΡΡ ΡΡΠ°Π½Π·ΠΈΡΠΈΠ²Π½ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΡΡΡΡΠ°Π½Π΅Π½Ρ, ΠΈ ΡΠ°Π±Π»ΠΈΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌ 3NF.
Π¦Π΅Π»Ρ: Π£ΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ, Π³Π΄Π΅ ΡΠ°ΡΡΡ ΡΠΎΡΡΠ°Π²Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ Π½Π΅ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΡΠΎΠ»Π±ΡΠ°.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ BCNF:
- Π’Π°Π±Π»ΠΈΡΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ Π² ΡΡΠ΅ΡΡΠ΅ΠΉ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΠ΅ (3NF).
- ΠΠΈΠΊΠ°ΠΊΠ°Ρ ΡΠ°ΡΡΡ ΡΠΎΡΡΠ°Π²Π½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π·Π°Π²ΠΈΡΠ΅ΡΡ ΠΎΡ Π½Π΅ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ².
ΠΠ»ΡΡΠ΅Π²Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°:
BCNF ΡΡΠ΅Π±ΡΠ΅ΡΡΡ, Π΅ΡΠ»ΠΈ Ρ ΡΠ°Π±Π»ΠΈΡΡ ΡΠΎΡΡΠ°Π²Π½ΠΎΠΉ ΠΊΠ»ΡΡ ΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°ΡΡΡΡ ΠΊΠ»ΡΡΠ° ΠΈ Π½Π΅ΠΊΠ»ΡΡΠ΅Π²ΡΠΌΠΈ ΡΡΠΎΠ»Π±ΡΠ°ΠΌΠΈ. ΠΠ»Ρ ΡΠ°Π±Π»ΠΈΡ Ρ ΠΏΡΠΎΡΡΡΠΌΠΈ ΠΊΠ»ΡΡΠ°ΠΌΠΈ, Π½Π°Ρ ΠΎΠ΄ΡΡΠΈΡ ΡΡ Π² 3NF, BCNF Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ.
ΠΡΠΈΠΌΠ΅Ρ: ΠΡΡ ΠΎΠ΄Π½Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ°:
ΠΡΠΎΠ΅ΠΊΡ | ΠΠ°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ | ΠΡΡΠ°ΡΠΎΡ |
---|---|---|
1 | Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° | ΠΠ²Π°Π½ΠΎΠ² Π.Π. |
1 | ΠΡΡ Π³Π°Π»ΡΠ΅ΡΠΈΡ | Π‘Π΅ΡΠ³Π΅Π΅Π² Π‘.Π‘. |
2 | Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° | ΠΠ²Π°Π½ΠΎΠ² Π.Π. |
2 | ΠΡΡ Π³Π°Π»ΡΠ΅ΡΠΈΡ | ΠΠ΅ΡΡΠΎΠ² Π.Π. |
2 | Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ | John Smith |
3 | Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° | ΠΠ½Π΄ΡΠ΅Π΅Π² Π.Π. |
- ΠΡΠΎΠ±Π»Π΅ΠΌΠ°: ΠΠ°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ "ΠΡΡΠ°ΡΠΎΡΠ°" β Π½Π°ΡΡΡΠ΅Π½ΠΈΠ΅ BCNF.
Π Π΅ΡΠ΅Π½ΠΈΠ΅:
Π Π°Π·Π΄Π΅Π»ΡΠ΅ΠΌ ΡΠ°Π±Π»ΠΈΡΡ Π½Π° Π΄Π²Π΅:
-
ΠΡΡΠ°ΡΠΎΡΡ ΠΈ ΠΈΡ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ:
ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΊΡΡΠ°ΡΠΎΡΠ° Π€ΠΠ ΠΠ°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ 1 ΠΠ²Π°Π½ΠΎΠ² Π.Π. Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° 2 Π‘Π΅ΡΠ³Π΅Π΅Π² Π‘.Π‘. ΠΡΡ Π³Π°Π»ΡΠ΅ΡΠΈΡ 3 ΠΠ΅ΡΡΠΎΠ² Π.Π. ΠΡΡ Π³Π°Π»ΡΠ΅ΡΠΈΡ 4 John Smith Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ 5 ΠΠ½Π΄ΡΠ΅Π΅Π² Π.Π. Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° -
ΠΡΠΎΠ΅ΠΊΡΡ ΠΈ ΠΈΡ ΠΊΡΡΠ°ΡΠΎΡΡ:
ΠΡΠΎΠ΅ΠΊΡ ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΊΡΡΠ°ΡΠΎΡΠ° 1 1 1 2 2 1 2 3 2 4 3 5
Π’Π΅ΠΏΠ΅ΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΡΡΡΡΠ°Π½Π΅Π½Π°, ΠΈ ΡΠ°Π±Π»ΠΈΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌ BCNF.
ΠΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΠΎΠ²ΡΡΠ°Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π³Π΄Π΅-ΡΠΎ Π΄ΠΎ 3 Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΡ. ΠΠ°ΡΠΈΠ½Π°Ρ Ρ 4 Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΡ, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡΡΡ Π½Π΅ Π±ΡΠ΄Π΅Ρ. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ ΡΠΎΡΠΌΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π±ΡΠ΄Π΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ½ΠΈΠΆΠ°ΡΡΡΡ, Π½Π΅ Π³ΠΎΠ²ΠΎΡΡ ΡΠΆΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Ρ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½ΡΡ Π΄ΠΎ 5 ΠΈΠ»ΠΈ 6 Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΡΠΌΡ Π±ΡΠ΄Π΅Ρ ΠΊΡΠ°ΠΉΠ½Π΅ ΡΠ»ΠΎΠΆΠ½ΠΎ ΠΈ Π½Π΅ΡΠ΄ΠΎΠ±Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈ ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π°ΡΡ Π΅Π΅, Π²Π΅Π΄Ρ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ ΡΠΎΡΠΌΠΎΠΉ ΠΌΡ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ°Π±Π»ΠΈΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ .
ΠΠΎΡΡΠΎΠΌΡ ΠΏΡΠΎΡΠ΅ΡΡ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΡΠΎΠ³ΠΎ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΌ, Ρ.Π΅. Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΠΎΠ½Π° Π±ΡΠ»Π° Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π°.
Π ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ Π·Π΄ΡΠ°Π²ΠΎΠΌΡ ΡΠΌΡΡΠ»Ρ ΠΈ Π½Π°ΠΉΡΠΈ Π±Π°Π»Π°Π½Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ΠΌ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΉ ΠΈ ΠΏΡΠΈΠ΅ΠΌΠ»Π΅ΠΌΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ.
ΠΠΎΠ»Π½ΠΎΡΡΡΡ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Π°Ρ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ β ΡΡΠΎ ΠΏΠ»ΠΎΡ Π°Ρ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ .
Π₯ΠΎΡΠΎΡΠ°Ρ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ β ΡΡΠΎ Π±Π°Π·Π°, ΠΊΠΎΡΠΎΡΠ°Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π°, ΡΡΠΎΠ±Ρ Π½Π΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΡΡΠΎΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΈ Π² ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ ΠΎΠ½Π° ΠΈΠΌΠ΅Π΅Ρ Ρ ΠΎΡΠΎΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ.
ΠΠΎΠ»ΡΡΠ΅ ΠΎ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΡΡ ΡΠΎΡΠΌΠ°Ρ :
- Π§Π΅ΡΠ²Π΅ΡΡΠ°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (4NF) Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
- ΠΡΡΠ°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (5NF) Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
- ΠΠΎΠΌΠ΅Π½Π½ΠΎ-ΠΊΠ»ΡΡΠ΅Π²Π°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (DKNF) Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
- Π¨Π΅ΡΡΠ°Ρ Π½ΠΎΡΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΎΡΠΌΠ° (6NF) Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
- ΠΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΉ. Π¨Π΅ΡΡΡ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΡΡ ΡΠΎΡΠΌ
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
ΠΠ°ΠΆΠ½ΡΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΡΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° Π΄Π°Π½Π½ΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ Π²ΡΠ±ΠΎΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡ Π΅ΠΌΠΎΠΉ Β«Π·Π²Π΅Π·Π΄Π°Β» ΠΈ ΡΡ Π΅ΠΌΠΎΠΉ Β«ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Β».
ΠΠ²Π΅Π·Π΄ΠΎΠΎΠ±ΡΠ°Π·Π½Π°Ρ ΡΡ Π΅ΠΌΠ° ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΡΡΡΠΊΡΡΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π·Π° ΡΡΠ΅Ρ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΊ ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΠ°ΠΊΡΠΎΠ². ΠΠ²Π΅Π·Π΄ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΠΉ Π΄ΠΈΠ·Π°ΠΉΠ½ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΠΏΠΎΠΈΡΠΊ ΠΈ Π°Π½Π°Π»ΠΈΠ· Π΄Π°Π½Π½ΡΡ Π·Π° ΡΡΠ΅Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈΠ΄Π°ΡΠΈΠΈ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ ΡΠΎΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ , ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ ΠΏΠΎΠ²ΡΡΠ°Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ ΠΈ ΡΡΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ . Π Π½Π°ΠΎΠ±ΠΎΡΠΎΡ, ΡΡ Π΅ΠΌΠ° Β«ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Β» ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π±ΠΎΠ»Π΅Π΅ Π΄Π΅ΡΠ°Π»ΡΠ½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄, ΡΠ°Π·Π±ΠΈΠ²Π°Ρ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ. Π² Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ, ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠΌ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡΠΌ, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄Π°Ρ Π²Π΅ΡΠ²Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ Π°ΡΠΏΠ΅ΠΊΡ Π΄Π°Π½Π½ΡΡ .
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Π·Π²Π΅Π·Π΄ΠΎΠΎΠ±ΡΠ°Π·Π½Π°Ρ ΡΡ Π΅ΠΌΠ° (Star Schema)?
Π‘Ρ Π΅ΠΌΠ° Π·Π²Π΅Π·Π΄Ρ β ΡΡΠΎ ΡΠΈΠΏ ΡΡ Π΅ΠΌΡ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°Π±Π»ΠΈΡ ΡΠ°ΠΊΡΠΎΠ², ΡΡΡΠ»Π°ΡΡΠΈΡ ΡΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π±Π»ΠΈΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ. ΠΡΠ° ΡΡ Π΅ΠΌΠ° Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π²ΠΎΠΊΡΡΠ³ ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠΎΠΉ Β«ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ ΡΠ°ΠΊΡΠΎΠ²Β». ΠΠ½ ΠΎΠΊΡΡΠΆΠ΅Π½ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ Π½Π°ΠΏΡΡΠΌΡΡ ΡΠ²ΡΠ·Π°Π½Π½ΡΠΌΠΈ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΌΠΈ Β«ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉΒ». ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΡΡΠ΅ΡΡΠ²ΡΡΡ Π²Π½Π΅ΡΠ½ΠΈΠ΅ ΠΊΠ»ΡΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ²ΡΠ·ΡΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Π² Π΄ΡΡΠ³ΡΡ, ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Ρ ΡΠ²ΡΠ·Ρ ΠΌΠ΅ΠΆΠ΄Ρ Π½ΠΈΠΌΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ. ΠΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ»ΡΠΆΠΈΡ ΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ ΠΏΠ΅ΡΠ΅ΠΊΡΠ΅ΡΡΠ½ΡΡ ΡΡΡΠ»ΠΎΠΊ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Ρ ΡΠ²ΡΠ·Π½ΠΎΡΡΡ ΠΈ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ Π² ΡΡΡΡΠΊΡΡΡΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
Π’Π°Π±Π»ΠΈΡΠ° ΡΠ°ΠΊΡΠΎΠ² ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, ΡΠ°ΡΡΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠ΅ ΠΌΠ΅ΡΠ°ΠΌΠΈ ΠΈΠ»ΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠ°ΠΌΠΈ. ΠΠ΅ΡΡ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΡΠΈΡΠ»ΠΎΠ²ΡΠ΅, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡΠΊΠΎΡΠΎΡΡΡ, ΡΡΠΎΠΈΠΌΠΎΡΡΡ, ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈ Π²Π΅Ρ, ΠΈ ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π°Π³ΡΠ΅Π³ΠΈΡΠΎΠ²Π°ΡΡ. Π’Π°Π±Π»ΠΈΡΠ° ΡΠ°ΠΊΡΠΎΠ² ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΡΠ»ΠΊΠΈ Π½Π° Π²Π½Π΅ΡΠ½ΠΈΠ΅ ΠΊΠ»ΡΡΠΈ Π½Π° ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ Π½Π΅ΡΠΈΡΠ»ΠΎΠ²ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ. ΠΡΠΎ ΠΎΠΏΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ΅ (Π½Π°Π·Π²Π°Π½ΠΈΠ΅, ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΡ, Π±ΡΠ΅Π½Π΄), ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠ΅ (ΠΈΠΌΡ, Π°Π΄ΡΠ΅Ρ, ΡΠ΅Π³ΠΌΠ΅Π½Ρ), ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ (Π΄Π°ΡΠ°, ΠΌΠ΅ΡΡΡ, Π³ΠΎΠ΄) ΠΈ Ρ. Π΄. ΠΠ°ΠΆΠ΄Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ° ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ Π°ΡΠΏΠ΅ΠΊΡ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ . ΠΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΠΌΠ΅Π΅Ρ ΡΡΠΎΠ»Π±Π΅Ρ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ°, ΠΈ Π½Π° Π½Π΅Π³ΠΎ ΡΡΡΠ»Π°Π΅ΡΡΡ ΡΠ°Π±Π»ΠΈΡΠ° ΡΠ°ΠΊΡΠΎΠ² ΡΠ΅ΡΠ΅Π· ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΊΠ»ΡΡΠ°.
Π Π·Π²Π΅Π·Π΄Π½ΠΎΠΉ ΡΡ Π΅ΠΌΠ΅:
- Π’Π°Π±Π»ΠΈΡΠ° ΡΠ°ΠΊΡΠΎΠ², ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΌΠ΅ΡΡΠΈΠΊΠΈ, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π° Π² ΡΠ΅Π½ΡΡΠ΅.
- ΠΠ°ΠΆΠ΄Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ° ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ Π½Π°ΠΏΡΡΠΌΡΡ ΡΠ²ΡΠ·Π°Π½Π° Ρ ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ ΡΠ°ΠΊΡΠΎΠ², Π½ΠΎ Π½Π΅ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΈΠΌΠ΅Π΅Ρ Π·Π²Π΅Π·Π΄ΡΠ°ΡΡΡ ΡΡΡΡΠΊΡΡΡΡ. ΠΡΠΎΡΡΠΎΡΠ° ΡΡ Π΅ΠΌΡ Β«Π·Π²Π΅Π·Π΄Π°Β» ΠΎΠ±Π»Π΅Π³ΡΠ°Π΅Ρ ΡΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π³ΡΠ΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΎΡΡΠ΅ΡΠΎΠ² ΠΈ Π°Π½Π°Π»ΠΈΠ·, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΠ΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ . ΠΡΠΎ ΡΠ²ΡΠ·Π°Π½ΠΎ Ρ ΡΠ΅ΠΌ, ΡΡΠΎ Π·Π°ΠΏΡΠΎΡΡ ΠΎΠ±ΡΡΠ½ΠΎ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΠΌΠ΅Π½ΡΡΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΌΠΈ ΡΡ Π΅ΠΌΠ°ΠΌΠΈ. Π£ΠΌΠ΅Π½ΡΡΠ΅Π½Π½Π°Ρ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΠΈ ΠΏΡΠΎΡΡΠ°Ρ ΡΡΡΡΠΊΡΡΡΠ° ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π΄Π°Π½Π½ΡΠΌ ΠΈ ΠΈΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ, ΡΡΠΎ Ρ ΠΎΡΠΎΡΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΠΎΠ±Π»Π°ΡΠ½ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ .
ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, ΡΠ΅ΡΠΊΠΎΠ΅ ΡΠ°Π·Π³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΈ ΡΠ°ΠΊΡΠ°ΠΌΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π»Π΅Π³ΠΊΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΏΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡΠΌ. ΠΡΠΎ Π΄Π΅Π»Π°Π΅Ρ Π·Π²Π΅Π·Π΄ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΡ ΡΡ Π΅ΠΌΡ ΡΠ°ΠΊΠΆΠ΅ ΠΎΡΠ½ΠΎΠ²ΠΎΠΏΠΎΠ»Π°Π³Π°ΡΡΠ΅ΠΉ ΠΌΠΎΠ΄Π΅Π»ΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ Π±ΠΈΠ·Π½Π΅Ρ-Π°Π½Π°Π»ΠΈΡΠΈΠΊΠΈ.
Π₯Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ Π·Π²Π΅Π·Π΄ΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎΠΉ ΡΡ Π΅ΠΌΡ:
- Π¦Π΅Π½ΡΡΠ°Π»ΡΠ½Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ° ΡΠ°ΠΊΡΠΎΠ²: Π ΡΠ΅Π½ΡΡΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΡΠ°Π±Π»ΠΈΡΠ° ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠ°ΠΊΡΠΎΠ², ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ. ΠΠ½ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ Π΄Π΅ΡΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΡΠΎΠ±ΡΡΠΈΡ ΠΈ Π±ΠΈΠ·Π½Π΅Ρ-ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ.
- Π’Π°Π±Π»ΠΈΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ²: ΠΠ½ΠΈ ΠΎΠΊΡΡΠΆΠ°ΡΡ ΡΠ°Π±Π»ΠΈΡΡ ΡΠ°ΠΊΡΠΎΠ² ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ Π°ΡΠΏΠ΅ΠΊΡ Π±ΠΈΠ·Π½Π΅Ρ-ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°. Π ΡΠ°Π±Π»ΠΈΡΠ°Ρ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ ΠΎΠΏΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ.
- ΠΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ-Π²Π½Π΅ΡΠ½ΠΈΠΉ ΠΊΠ»ΡΡ: Π‘Π²ΡΠ·Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ ΡΠ°ΠΊΡΠΎΠ² ΠΈ ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ-Π²Π½Π΅ΡΠ½ΠΈΠΉ ΠΊΠ»ΡΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ Π°Π³ΡΠ΅Π³ΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎ ΡΠ°Π·Π½ΡΠΌ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡΠΌ.
- Π‘Π²ΡΠ·Ρ Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ½ΡΠΌΠΈ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ: ΠΠ΅ΠΆΠ΄Ρ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ Π½Π΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΡΠ²ΡΠ·Π΅ΠΉ. ΠΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΊ ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΠ°ΠΊΡΠΎΠ².
- ΠΠ΅Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Π°Ρ ΡΡΡΡΠΊΡΡΡΠ°: ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ ΡΠ°ΡΡΠΎ Π΄Π΅Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ, ΡΡΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π² ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π·Π°ΠΏΡΠΎΡΠΎΠ², ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ Π²ΠΊΠ»ΡΡΠ°ΡΡΡΡ Π² ΠΎΠ΄Π½ΠΎ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅, Π° Π½Π΅ ΡΠ°Π·Π±ΠΈΠ²Π°ΡΡ ΠΈΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π±Π»ΠΈΡ.
- ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ²: Π’Π°ΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠ°ΠΊ ΠΏΡΡΠΌΡΠ΅ ΡΠ²ΡΠ·ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ ΡΠ°ΠΊΡΠΎΠ² ΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΈ Π΄Π΅Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Π°Ρ ΡΡΡΡΠΊΡΡΡΠ°, ΡΠΏΠΎΡΠΎΠ±ΡΡΠ²ΡΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ². ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π²Π΅Π·Π΄ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΠΌ ΡΡ Π΅ΠΌΠ°ΠΌ ΡΠ΅ΡΠ°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ Π°Π½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ ΠΈ, ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Ρ ΠΎΡΠΎΡΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ Π°Π½Π°Π»ΠΈΠ·Π° Π΄Π°Π½Π½ΡΡ ΠΈ ΡΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΎΡΡΠ΅ΡΠΎΠ².
ΠΠ²Π΅Π·Π΄ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΠ΅ ΡΡ Π΅ΠΌΡ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΡ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅ΡΠ½ΡΠΉ Π°Π½Π°Π»ΠΈΠ· Π΄Π°Π½Π½ΡΡ , ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ OLAP (ΠΎΠ½Π»Π°ΠΉΠ½-Π°Π½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°). ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ OLAP ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΡΡΡΠΊΡΡΡΡ Π·Π²Π΅Π·Π΄ΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎΠΉ ΡΡ Π΅ΠΌΡ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ, Π΄Π΅ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ, Π°Π³ΡΠ΅Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ Π΄ΡΡΠ³ΠΈΡ Π°Π½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡΡ .
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΡ Π΅ΠΌΠ° ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠΈ (Snowflake Schema)?
A ΡΡ Π΅ΠΌΠ° ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π·Π²Π΅Π·Π΄ΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎΠΉ ΡΡ Π΅ΠΌΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΡΡΡΡΡ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ, Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡΡΠΈΡ ΡΠΎΡΠΌΡ ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠΈ.
Π ΡΡ Π΅ΠΌΠ΅ Β«ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Β» Π΅ΡΡΡ ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ° ΡΠ°ΠΊΡΠΎΠ², ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ. ΠΡΠ° ΡΠ°Π±Π»ΠΈΡΠ° ΡΠ°ΠΊΡΠΎΠ² Π½Π°ΠΏΡΡΠΌΡΡ ΡΠ²ΡΠ·Π°Π½Π° Ρ ΡΠ°Π±Π»ΠΈΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ². ΠΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΡΡΡΡΡ Π² ΠΏΠΎΠ΄ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ Π²Π½ΡΡΡΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ. Π ΡΡΠ°Π²Π½Π΅Π½ΠΈΠΈ ΠΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠΎ ΡΡ Π΅ΠΌΠΎΠΉ Β«Π·Π²Π΅Π·Π΄Π°Β», ΡΡ Π΅ΠΌΠ° Β«ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Β» ΡΠΌΠ΅Π½ΡΡΠ°Π΅Ρ ΠΈΠ·Π±ΡΡΠΎΡΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ ΠΈ ΡΠ»ΡΡΡΠ°Π΅Ρ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ , Π½ΠΎ Π²Π½ΠΎΡΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ Π² Π·Π°ΠΏΡΠΎΡΡ ΠΈΠ·-Π·Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ. ΠΡΠ° ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°ΡΡΠΎ Π²Π»ΠΈΡΠ΅Ρ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈ ΠΏΠΎΠ½ΡΡΠ½ΠΎΡΡΡ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ.
Π₯Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ ΡΡ Π΅ΠΌΡ Β«ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Β»:
- ΠΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡ: Π ΡΡ Π΅ΠΌΠ΅ Β«ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Β» ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ, Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎ 10000 Ρ ΡΡ Π΅ΠΌΡ Β«Π·Π²Π΅Π·Π΄Π°Β», Π³Π΄Π΅ ΡΠ°Π±Π»ΠΈΡΡ Π΄Π΅Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π°ΡΡΠΈΠ±ΡΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ°Ρ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ ΡΠ°Π·Π±ΠΈΠ²Π°ΡΡΡΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ.
- ΠΠ΅ΡΠ°ΡΡ ΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΡΡΡΠΊΡΡΡΠ°: ΠΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ°Π±Π»ΠΈΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΡΠ΅ΡΠΊΡΡ ΡΡΡΡΠΊΡΡΡΡ, Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡΡΡΡ ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΡ.
- Π‘Π²ΡΠ·Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ: ΠΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΡΠ²ΡΠ·ΡΠΌ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΌΠΈ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ, ΡΡΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ².
- ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ: ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ Π² ΡΡ Π΅ΠΌΡ Β«ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Β» ΡΡΠ΅Π±ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠ΅ΠΉ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΌΠΎΡΠ½ΠΎΡΡΠΈ ΠΈΠ·-Π·Π° ΠΏΠΎΠ²ΡΡΠ΅Π½Π½ΠΎΠΉ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ², ΡΡΠΎ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ Π²Π»ΠΈΡΠ΅Ρ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ.
- Π¦Π΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ : Π‘Ρ Π΅ΠΌΡ Β«ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Β» ΡΠΌΠ΅Π½ΡΡΠ°ΡΡ ΠΈΠ·Π±ΡΡΠΎΡΠ½ΠΎΡΡΡ ΠΈ ΡΡΡΡΠ°Π½ΡΡΡ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ. ΠΡΠΎ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ, ΡΡΠΎ Π΄Π°Π½Π½ΡΠ΅ Π±ΡΠ΄ΡΡ Ρ ΡΠ°Π½ΠΈΡΡΡΡ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΈ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ.
- ΠΠΈΠ±ΠΊΠΎΡΡΡ: Π‘Ρ Π΅ΠΌΡ Β«ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Β» ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ Π³ΠΈΠ±ΠΊΠΎΡΡΡ Π² ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΡΠ»ΠΎΠΆΠ½ΡΠΌΠΈ ΡΠ²ΡΠ·ΡΠΌΠΈ Π΄Π°Π½Π½ΡΡ , ΡΡΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΊ Π°Π½Π°Π»ΠΈΠ·Ρ Π΄Π°Π½Π½ΡΡ .
ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡ Π΅ΠΌΠΎΠΉ Β«ΠΠ²Π΅Π·Π΄Π°Β» ΠΈ Β«Π‘Π½Π΅ΠΆΠΈΠ½ΠΊΠ°Β»
-
ΠΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°
Π’Π°Π±Π»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ Π΄Π΅Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ Π² Π·Π²Π΅Π·Π΄ΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎΠΉ ΡΡ Π΅ΠΌΠ΅. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠ½ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π² Π²ΠΈΠ΄Π΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠ°Π±Π»ΠΈΡ, Π² ΠΊΠΎΡΠΎΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ Π²ΡΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ. Π‘ΡΡΡΠΊΡΡΡΠ° ΡΡΠΎΠΉ ΡΡ Π΅ΠΌΡ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ Π·Π²Π΅Π·Π΄Ρ, Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΡ ΡΠ°Π±Π»ΠΈΡΡ ΡΠ°ΠΊΡΠΎΠ² Π² ΡΠ΅Π½ΡΡΠ΅ ΠΈ ΠΈΡΡ ΠΎΠ΄ΡΡΠΈΠ΅ ΠΎΡ Π½Π΅Π΅ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ.
Π‘ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΡΡ Π΅ΠΌΠ° Β«ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Β» ΠΈΠΌΠ΅Π΅Ρ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠ½ΠΈ ΡΠ°Π·Π±ΠΈΡΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ. Π’Π°ΠΊΠ°Ρ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΡΠ΅ΡΠΊΡΡ ΡΡΡΡΠΊΡΡΡΡ, Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡΡΡΡ ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΡ, Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΡΡΠΎΠ²Π½ΡΠΌΠΈ ΡΠ°Π±Π»ΠΈΡ, ΠΎΡΠ²Π΅ΡΠ²Π»ΡΡΡΠΈΠΌΠΈΡΡ ΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ. -
ΠΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡ
ΠΠ²Π΅Π·Π΄ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΠ΅ ΡΡ Π΅ΠΌΡ Π΄Π΅Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ, Π³Π΄Π΅ Π²ΡΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ. ΠΡΠ° Π΄Π΅Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ΄Π΅Π»Π°Π½Π° Π½Π°ΠΌΠ΅ΡΠ΅Π½Π½ΠΎ Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ. ΠΠ΄Π½Π°ΠΊΠΎ Π΅Π³ΠΎ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ ΠΈΠ·Π±ΡΡΠΎΡΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ , Ρ. Π΅. ΠΎΠ΄Π½ΠΈ ΠΈ ΡΠ΅ ΠΆΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°Π±Π»ΠΈΡΠ°Ρ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ, ΡΡΠΎ ΡΡΠ΅Π±ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΠΎΠ±ΡΠ΅ΠΌΠ° ΠΏΠ°ΠΌΡΡΠΈ.
Π‘Ρ Π΅ΠΌΠ° Β«ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Β» ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ Ρ Π°ΡΡΠΈΠ±ΡΡΠ°ΠΌΠΈ, ΡΠ°Π·Π±ΠΈΡΡΠΌΠΈ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ. Π‘Ρ Π΅ΠΌΠ° Β«ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Β» ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΈΠ·Π±ΡΡΠΎΡΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ , ΠΏΠΎΠ²ΡΡΠ°Π΅Ρ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠ΅Π½ΡΡΠ΅ ΠΌΠ΅ΡΡΠ° Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ, ΡΠ΅ΠΌ ΡΡ Π΅ΠΌΠ° Β«Π·Π²Π΅Π·Π΄Π°Β». -
ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ²
Π£ΡΠΈΡΡΠ²Π°Ρ ΠΌΠ΅Π½ΡΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΡΡΡΡ ΡΡΡΡΠΊΡΡΡΡ ΡΠ°Π±Π»ΠΈΡΡ Π² ΡΡ Π΅ΠΌΠ΅ Β«Π·Π²Π΅Π·Π΄Π°Β», ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΎΠ±ΡΡΠ½ΠΎ Π²ΡΡΠ΅ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠΎ ΡΡ Π΅ΠΌΠΎΠΉ Β«ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Β».
Π‘ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΡΡ Π΅ΠΌΠ° Β«ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Β» ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠ΅Π±ΡΡΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π΄Π°Π½Π½ΡΠΌ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΡΡ Π΅ΠΌΠ° Β«ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Β» ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ². -
Π’Π΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠ΅
Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°ΠΊΡΠΎΡΠΎΠ², ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ , ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΈ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΡ Π΅ΠΌ Β«Π·Π²Π΅Π·Π΄Π°Β» ΠΈ Β«ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Β» ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ.
ΠΠ΄Π½Π°ΠΊΠΎ ΡΡ Π΅ΠΌΡ Β«Π·Π²Π΅Π·Π΄Π°Β» ΠΎΠ±ΡΡΠ½ΠΎ Π»Π΅Π³ΡΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠΎ ΡΡ Π΅ΠΌΠ°ΠΌΠΈ Β«ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Β» ΠΈΠ·-Π·Π° ΠΌΠ΅Π½ΡΡΠ΅Π³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΏΡΠΎΡΠ°ΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ². ΠΠ΄Π½Π°ΠΊΠΎ Π΄Π΅Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Π°Ρ ΡΡΡΡΠΊΡΡΡΠ° ΡΠΏΠΎΡΠΎΠ±ΡΡΠ²ΡΠ΅Ρ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΡΡΠΎΠ²Π½Ρ ΠΈΠ·Π±ΡΡΠΎΡΠ½ΠΎΡΡΠΈ, ΡΡΠΎ ΡΡΠ΅Π±ΡΠ΅Ρ ΡΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΡΠΎΡΠ½ΠΎΡΡΠΈ Π°Π½Π°Π»ΠΈΠ·Π° Π΄Π°Π½Π½ΡΡ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ.
ΠΡΠΎΡΠ΅ΡΡ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π² ΡΡ Π΅ΠΌΠ°Ρ -ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Ρ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΠΈ Π·Π°ΡΡΡΠ΄Π½ΡΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ. Π‘ΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΡΡΠ΅Π±ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°Π½ΠΈΡ ΠΏΡΠΈΠ΅ΠΌΠ»Π΅ΠΌΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡΠΌΠΈ ΠΈ Π²ΡΡΠ°Π²ΠΊΠ°ΠΌΠΈ Π² ΡΡ Π΅ΠΌΠ΅ Β«ΡΠ½Π΅ΠΆΠΈΠ½ΠΊΠ°Β» Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΠΎΠ΅, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΡΠ²ΡΠ·Π°Π½Π½ΡΠΌ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌ. ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ°Π²Π½ΠΈΡΡ ΡΠΎ Π·Π²Π΅Π·Π΄ΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎΠΉ ΡΡ Π΅ΠΌΠΎΠΉ, Π³Π΄Π΅ Π΄Π°Π½Π½ΡΠ΅ ΡΠΊΠΎΠ½ΡΠ΅Π½ΡΡΠΈΡΠΎΠ²Π°Π½Ρ Π² ΠΌΠ΅Π½ΡΡΠ΅ΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅ ΡΠ°Π±Π»ΠΈΡ. ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎ Π·Π°ΡΡΠ°Π³ΠΈΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½Ρ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π±Π»ΠΈΡ, ΡΡΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠΌΠΈ.
Π‘Ρ Π΅ΠΌΠ° Β«ΠΠ²Π΅Π·Π΄Π°Β» | Π‘Ρ Π΅ΠΌΠ° Β«Π‘Π½Π΅ΠΆΠΈΠ½ΠΊΠ°Β» |
---|---|
ΠΠ΅ΡΠ°ΡΡ ΠΈΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² Ρ ΡΠ°Π½ΡΡΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ². | ΠΠ΅ΡΠ°ΡΡ ΠΈΠΈ ΡΠ°Π·Π΄Π΅Π»Π΅Π½Ρ Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ. |
Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ°Π±Π»ΠΈΡΡ ΡΠ°ΠΊΡΠΎΠ², ΠΎΠΊΡΡΠΆΠ΅Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ. | ΠΠ΄Π½Π° ΡΠ°Π±Π»ΠΈΡΠ° ΡΠ°ΠΊΡΠΎΠ², ΠΎΠΊΡΡΠΆΠ΅Π½Π½Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ, Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ, ΠΎΠΊΡΡΠΆΠ΅Π½Π° ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ. |
Π’ΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΠ²ΡΠ·Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ ΡΠ°ΠΊΡΠΎΠ² ΠΈ Π»ΡΠ±ΡΠΌΠΈ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ. | Π’ΡΠ΅Π±ΡΠ΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ . |
ΠΡΠΎΡΡΠΎΠΉ Π΄ΠΈΠ·Π°ΠΉΠ½ ΠΠ. | ΠΡΠ΅Π½Ρ ΡΠ»ΠΎΠΆΠ½Π°Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΠ. |
ΠΠ΅Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Π°Ρ ΡΡΡΡΠΊΡΡΡΠ° Π΄Π°Π½Π½ΡΡ , Π·Π°ΠΏΡΠΎΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π±ΡΡΡΡΠ΅Π΅. | ΠΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Π°Ρ ΡΡΡΡΠΊΡΡΡΠ° Π΄Π°Π½Π½ΡΡ . |
ΠΡΡΠΎΠΊΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΠΈΠ·Π±ΡΡΠΎΡΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ . | ΠΡΠ΅Π½Ρ Π½ΠΈΠ·ΠΊΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΠΈΠ·Π±ΡΡΠΎΡΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ . |
Π’Π°Π±Π»ΠΈΡΠ° ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π°Π³ΡΠ΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅. | ΠΠ°Π½Π½ΡΠ΅ ΡΠ°Π·Π΄Π΅Π»Π΅Π½Ρ Π½Π° ΡΠ°Π·Π½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ. |
ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΊΡΠ±Π° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π±ΡΡΡΡΠ΅Π΅. | ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΊΡΠ±Π° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΉ ΠΈΠ·-Π·Π° ΡΠ»ΠΎΠΆΠ½ΠΎΠ³ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ. |
Π’Π°Π±Π»ΠΈΡΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ²ΡΠ·Π°Π½Ρ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ. | ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° ββΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ ΡΠ°ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΡΡΠ΄ Π»ΠΈ ΡΠ²ΡΠ·Π°Π½Π° Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ. |
ΠΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² Star Join. |
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
SQL β ΡΠ·ΡΠΊ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² (SQL, Structured Query Language), ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΡΠΏΠΎΡΠΎΠ±Π° ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ , ΠΏΠΎΠΈΡΠΊΠ° ΠΈΡ ΡΠ°ΡΡΠ΅ΠΉ, ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ, ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
ΠΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΊ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΠΌ Π‘Π£ΠΠ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ SQL. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Π½Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π²ΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΈ Ρ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ , Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
- ΠΠ·Π²Π»Π΅ΠΊΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
- ΠΡΡΠ°Π²Π»ΡΡΡ Π·Π°ΠΏΠΈΡΠΈ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
- ΠΠ±Π½ΠΎΠ²Π»ΡΡΡ Π·Π°ΠΏΠΈΡΠΈ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ
- Π£Π΄Π°Π»ΡΡΡ Π·Π°ΠΏΠΈΡΠΈ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
- Π‘ΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
- Π‘ΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ
- Π‘ΠΎΠ·Π΄Π°Π²Π°ΡΡ Ρ ΡΠ°Π½ΠΈΠΌΡΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ
- Π‘ΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ
- Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡ, ΠΏΡΠΎΡΠ΅Π΄ΡΡ ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΉ
ΠΠΈΠ°Π»Π΅ΠΊΡΡ SQL (ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ SQL)
Π―Π·ΡΠΊ SQL β ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ·ΡΠΊ Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ , Π½ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π‘Π£ΠΠ Π²Π½ΠΎΡΡΡ ΡΠ²ΠΎΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ·ΡΠΊ, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΉ Π² Π½ΠΈΡ , ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ ΠΎΡΡΡΡΠΏΠ°Ρ ΠΎΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ°. Π’Π°ΠΊΠΈΠ΅ ΡΠ·ΡΠΊΠΈ Π½Π°Π·ΡΠ²Π°ΡΡ Π΄ΠΈΠ°Π»Π΅ΠΊΡΠ°ΠΌΠΈ ΠΈΠ»ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡΠΌΠΈ ΡΠ·ΡΠΊΠ°.
ΠΠΎΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ :
- T-SQL β Π΄ΠΈΠ°Π»Π΅ΠΊΡ Microsoft SQL Server
- PL/SQL β Π΄ΠΈΠ°Π»Π΅ΠΊΡ Oracle Database
- PL/pgSQL β Π΄ΠΈΠ°Π»Π΅ΠΊΡ PostgreSQL
Π‘ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ·ΡΠΊ SQL ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π½Π°Π±ΠΎΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π΄Π΅Π»ΡΡΡΡ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π³ΡΡΠΏΠΏΡ ΠΈ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π³ΡΡΠΏΠΏΡ Π΅ΡΡΡ ΡΠ²ΠΎΠ΅ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. Π ΡΠΎΠΊΡΠ°ΡΠ΅Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅ ΡΡΠΈ Π³ΡΡΠΏΠΏΡ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ DDL, DML, DCL ΠΈ TCL.
ΠΡΡΠΏΠΏΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² ΡΠ·ΡΠΊΠ° SQL
DDL β Data Definition Language
β ΡΡΠΎ Π³ΡΡΠΏΠΏΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ . ΠΡΡΠ³ΠΈΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ², Π²Ρ ΠΎΠ΄ΡΡΠΈΡ Π² ΡΡΡ Π³ΡΡΠΏΠΏΡ, ΠΌΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ ΡΡΡΡΠΊΡΡΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΈ ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ ΡΡΠΎΠΉ Π±Π°Π·Ρ, Ρ.Π΅. ΡΠΎΠ·Π΄Π°Π΅ΠΌ, ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌ ΠΈ ΡΠ΄Π°Π»ΡΠ΅ΠΌ ΠΈΡ .
Π ΡΡΡ Π³ΡΡΠΏΠΏΡ Π²Ρ ΠΎΠ΄ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ:
CREATE
β ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ;ALTER
β ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ;DROP
β ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
DML β Data Manipulation Language
β ΡΡΠΎ Π³ΡΡΠΏΠΏΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² Π΄Π»Ρ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ, ΡΠ΄Π°Π»ΡΡΡ ΠΈ Π²ΡΠ³ΡΡΠΆΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· Π±Π°Π·Ρ, Ρ.Π΅. ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠΌΠΈ.
Π ΡΡΡ Π³ΡΡΠΏΠΏΡ Π²Ρ ΠΎΠ΄ΡΡ ΡΠ°ΠΌΡΠ΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΡΠ·ΡΠΊΠ° SQL:
SELECT
β ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅Ρ Π²ΡΠ±ΠΎΡΠΊΡ Π΄Π°Π½Π½ΡΡ ;INSERT
β Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π½ΠΎΠ²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅;UPDATE
β ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅;DELETE
β ΡΠ΄Π°Π»ΡΠ΅Ρ Π΄Π°Π½Π½ΡΠ΅.
DCL β Data Control Language
β Π³ΡΡΠΏΠΏΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π΄Π°Π½Π½ΡΠΌ. ΠΠ½ΡΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΡΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π½ΠΈΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ°Π·ΡΠ΅ΡΠ°ΡΡ ΠΈΠ»ΠΈ Π·Π°ΠΏΡΠ΅ΡΠ°ΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π½Π°Π΄ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
Π‘ΡΠ΄Π° Π²Ρ ΠΎΠ΄ΡΡ:
GRANT
β ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠ»ΠΈ Π³ΡΡΠΏΠΏΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠΌ;REVOKE
β ΠΎΡΠ·ΡΠ²Π°Π΅Ρ Π²ΡΠ΄Π°Π½Π½ΡΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ;DENY
β Π·Π°Π΄Π°ΡΡ Π·Π°ΠΏΡΠ΅Ρ, ΠΈΠΌΠ΅ΡΡΠΈΠΉ ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ Π½Π°Π΄ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ.
TCL β Transaction Control Language
β Π³ΡΡΠΏΠΏΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌΠΈ. Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΡ β ΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΠ»ΠΈ Π±Π»ΠΎΠΊ ΠΊΠΎΠΌΠ°Π½Π΄ (ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ), ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π·Π°Π²Π΅ΡΡΠ°ΡΡΡΡ ΠΊΠ°ΠΊ Π΅Π΄ΠΈΠ½ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅, ΠΏΡΠΈ ΡΡΠΎΠΌ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ Π²ΡΠ΅ Π²Π½Π΅ΡΠ΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΈΠΊΡΠΈΡΡΡΡΡΡ Π½Π° ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠΉ ΠΎΡΠ½ΠΎΠ²Π΅ ΠΈΠ»ΠΈ ΠΎΡΠΌΠ΅Π½ΡΡΡΡΡ, Ρ.Π΅. Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, Π²Π½Π΅ΡΠ΅Π½Π½ΡΠ΅ Π»ΡΠ±ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ, Π²Ρ ΠΎΠ΄ΡΡΠ΅ΠΉ Π² ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ, Π±ΡΠ΄ΡΡ ΠΎΡΠΌΠ΅Π½Π΅Π½Ρ.
Π‘ΡΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠ½Π΅ΡΡΠΈ:
BEGIN TRANSACTION
β ΡΠ»ΡΠΆΠΈΡ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π½Π°ΡΠ°Π»Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ;COMMIT TRANSACTION
β ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ;ROLLBACK TRANSACTION
β ΠΎΡΠΊΠ°ΡΡΠ²Π°Π΅Ρ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΡΠ΄Π΅Π»Π°Π½Π½ΡΠ΅ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ;SAVE TRANSACTION
β ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΡ ΡΠΎΡΠΊΡ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ Π²Π½ΡΡΡΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ.
ΠΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ MS SQL ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ: Π£ΡΠ΅Π±Π½ΠΈΠΊ ΠΏΠΎ ΡΠ·ΡΠΊΡ SQL (DDL, DML) Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π΄ΠΈΠ°Π»Π΅ΠΊΡΠ° MS SQL Server. Π§Π°ΡΡΡ ΠΏΠ΅ΡΠ²Π°Ρ, Π£ΡΠ΅Π±Π½ΠΈΠΊ ΠΏΠΎ ΡΠ·ΡΠΊΡ SQL (DDL, DML) Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π΄ΠΈΠ°Π»Π΅ΠΊΡΠ° MS SQL Server. Π§Π°ΡΡΡ Π²ΡΠΎΡΠ°Ρ
ΠΠ±ΡΠ°Ρ ΡΡΡΡΠΊΡΡΡΠ° Π·Π°ΠΏΡΠΎΡΠ° Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
SELECT
(ΡΡΠΎΠ»Π±ΡΡ ΠΈΠ»ΠΈ *
Π΄Π»Ρ Π²ΡΠ±ΠΎΡΠ° Π²ΡΠ΅Ρ
ΡΡΠΎΠ»Π±ΡΠΎΠ²; ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ)
FROM
(ΡΠ°Π±Π»ΠΈΡΠ°; ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ)
WHERE
(ΡΡΠ»ΠΎΠ²ΠΈΠ΅/ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, city = Moscow
; Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ)
GROUP BY
(ΡΡΠΎΠ»Π±Π΅Ρ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌΡ Ρ
ΠΎΡΠΈΠΌ ΡΠ³ΡΡΠΏΠΏΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅; Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ)
HAVING
(ΡΡΠ»ΠΎΠ²ΠΈΠ΅/ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΡ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΠ³ΡΡΠΏΠΏΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
Π΄Π°Π½Π½ΡΡ
; Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ)
ORDER BY
(ΡΡΠΎΠ»Π±Π΅Ρ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌΡ Ρ
ΠΎΡΠΈΠΌ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ²ΠΎΠ΄; Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ)
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
SELECT
, FROM
β ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ Π²ΡΠ±ΡΠ°Π½Π½ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ, ΠΈΡ
ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΠΈ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ Π΄Π°Π½Π½ΡΡ
.
ΠΡΠ±ΡΠ°ΡΡ Π²ΡΠ΅ (ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅ΡΡΡ ΠΊΠ°ΠΊ *
) ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ Customers
:
SELECT * FROM Customers;
ΠΡΠ±ΡΠ°ΡΡ ΡΡΠΎΠ»Π±ΡΡ CustomerID
, CustomerName
ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ Customers
:
SELECT CustomerID, CustomerName FROM Customers
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
GROUP BY
GROUP BY
β Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π·Π°ΠΏΡΠΎΡΠ°, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°ΡΡ Π°Π³ΡΠ΅Π³Π°ΡΠΈΡ ΠΏΠΎ Π½ΡΠΆΠ½ΠΎΠΌΡ ΡΡΠΎΠ»Π±ΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π½ΡΠΆΠ½ΠΎ ΡΠ·Π½Π°ΡΡ ΠΊΠ°ΠΊΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΠΆΠΈΠ²Π΅Ρ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· Π³ΠΎΡΠΎΠ΄ΠΎΠ²).
ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ GROUP BY
ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ:
- ΠΏΠ΅ΡΠ΅ΡΠ΅Π½Ρ ΡΡΠΎΠ»Π±ΡΠΎΠ², ΠΏΠΎ ΠΊΠΎΡΠΎΡΡΠΌ Π΄Π΅Π»Π°Π΅ΡΡΡ ΡΠ°Π·ΡΠ΅Π·, Π±ΡΠ» ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΌ Π²Π½ΡΡΡΠΈ
SELECT
ΠΈ Π²Π½ΡΡΡΠΈGROUP BY
, - Π°Π³ΡΠ΅Π³Π°ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ (
SUM
,AVG
,COUNT
,MAX
,MIN
) Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠ°ΠΊΠΆΠ΅ ΡΠΊΠ°Π·Π°Π½Ρ Π²Π½ΡΡΡΠΈSELECT
Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ ΡΡΠΎΠ»Π±ΡΠ°, ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΡΠ°ΠΊΠ°Ρ ΡΡΠ½ΠΊΡΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ.
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π°Π³ΡΠ΅Π³Π°ΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ
Π€ΡΠ½ΠΊΡΠΈΡ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
---|---|
SUM (ΠΏΠΎΠ»Π΅_ΡΠ°Π±Π»ΠΈΡΡ) |
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΡΠΌΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ |
AVG (ΠΏΠΎΠ»Π΅_ΡΠ°Π±Π»ΠΈΡΡ) |
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΡΠ΅Π΄Π½Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ |
COUNT (ΠΏΠΎΠ»Π΅_ΡΠ°Π±Π»ΠΈΡΡ) |
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π·Π°ΠΏΠΈΡΠ΅ΠΉ |
MIN (ΠΏΠΎΠ»Π΅_ΡΠ°Π±Π»ΠΈΡΡ) |
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ |
MAX (ΠΏΠΎΠ»Π΅_ΡΠ°Π±Π»ΠΈΡΡ) |
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ |
ΠΠ³ΡΠ΅Π³Π°ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π΄Π»Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, Π½Π΅ ΡΠ°Π²Π½ΡΡ
NULL
. ΠΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ COUNT(*)
ΠΡΡΠΏΠΏΠΈΡΠΎΠ²ΠΊΠ° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΠΏΠΎ Π³ΠΎΡΠΎΠ΄Ρ:
SELECT City, count(CustomerID) FROM Customers
GROUP BY City
ΠΡΡΠΏΠΏΠΈΡΠΎΠ²ΠΊΠ° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΠΏΠΎ ΡΡΡΠ°Π½Π΅ ΠΈ Π³ΠΎΡΠΎΠ΄Ρ:
SELECT Country, City, count(CustomerID) FROM Customers
GROUP BY Country, City
ΠΡΡΠΏΠΏΠΈΡΠΎΠ²ΠΊΠ° ΠΏΡΠΎΠ΄Π°ΠΆ ΠΏΠΎ ID ΡΠΎΠ²Π°ΡΠ° Ρ ΡΠ°Π·Π½ΡΠΌΠΈ Π°Π³ΡΠ΅Π³Π°ΡΠ½ΡΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ: ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π·Π°ΠΊΠ°Π·ΠΎΠ² Ρ Π΄Π°Π½Π½ΡΠΌ ΡΠΎΠ²Π°ΡΠΎΠΌ ΠΈ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΠ΄Π°Π½Π½ΡΡ ΡΡΡΠΊ ΡΠΎΠ²Π°ΡΠ°:
SELECT ProductID, COUNT(OrderID), SUM(Quantity) FROM OrderDetails
GROUP BY ProductID
ΠΡΡΠΏΠΏΠΈΡΠΎΠ²ΠΊΠ° ΠΏΡΠΎΠ΄Π°ΠΆ Ρ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠ΅ΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ. Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π° Π²ΡΡ ΠΎΠ΄Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±Π»ΠΈΡΠ° Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΠΏΠΎ Π³ΠΎΡΠΎΠ΄Π°ΠΌ ΠΠ΅ΡΠΌΠ°Π½ΠΈΠΈ:
SELECT City, count(CustomerID) FROM Customers
WHERE Country = 'Germany'
GROUP BY City
ΠΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΎΠ»Π±ΡΠ° Ρ Π°Π³ΡΠ΅Π³Π°ΡΠΈΠ΅ΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° AS
. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΡΠΎΠ»Π±ΡΠ° Ρ Π°Π³ΡΠ΅Π³Π°ΡΠΈΠ΅ΠΉ ΡΠ°Π²Π½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½Π½ΠΎΠΉ Π°Π³ΡΠ΅Π³Π°ΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΡΠΎ Π΄Π°Π»Π΅Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½ΠΎ Π΄Π»Ρ Π²ΠΎΡΠΏΡΠΈΡΡΠΈΡ.
SELECT City, count(CustomerID) AS Number_of_clients FROM Customers
GROUP BY City
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
WHERE
WHERE
β Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π·Π°ΠΏΡΠΎΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, ΠΊΠΎΠ³Π΄Π° Π½ΡΠΆΠ½ΠΎ ΠΎΡΡΠΈΠ»ΡΡΡΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎ Π½ΡΠΆΠ½ΠΎΠΌΡ ΡΡΠ»ΠΎΠ²ΠΈΡ. ΠΡΠ΅Π½Ρ ΡΠ°ΡΡΠΎ Π²Π½ΡΡΡΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° WHERE
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ IN
/ NOT IN
Π΄Π»Ρ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ ΡΡΠΎΠ»Π±ΡΠ° ΠΏΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌ, AND
/ OR
Π΄Π»Ρ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ ΡΠ°Π±Π»ΠΈΡΡ ΠΏΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΡΡΠΎΠ»Π±ΡΠ°ΠΌ.
Π€ΠΈΠ»ΡΡΡΠ°ΡΠΈΡ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΈ ΠΎΠ΄Π½ΠΎΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ:
SELECT * FROM Customers
WHERE City = 'London'
Π€ΠΈΠ»ΡΡΡΠ°ΡΠΈΡ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌ Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ IN
(Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅) ΠΈΠ»ΠΈ NOT IN
(ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅):
SELECT * FROM Customers
WHERE City IN ('London', 'Berlin')
SELECT * FROM Customers
WHERE City NOT IN ('Madrid', 'Berlin','Bern')
Π€ΠΈΠ»ΡΡΡΠ°ΡΠΈΡ ΠΏΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΡΡΠ»ΠΎΠ²ΠΈΡΠΌ Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ AND
(Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π²ΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ) ΠΈΠ»ΠΈ OR
(Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Ρ
ΠΎΡΡ Π±Ρ ΠΎΠ΄Π½ΠΎ ΡΡΠ»ΠΎΠ²ΠΈΠ΅) ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌ:
SELECT * FROM Customers
WHERE Country = 'Germany' AND City NOT IN ('Berlin', 'Aachen') AND CustomerID > 15
SELECT * FROM Customers
WHERE City IN ('London', 'Berlin') OR CustomerID > 4
HAVING
HAVING
β Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π·Π°ΠΏΡΠΎΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΡ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΠ³ΡΡΠΏΠΏΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
Π΄Π°Π½Π½ΡΡ
(ΠΏΠΎ ΡΡΡΠΈ, WHERE
, Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ Π³ΡΡΠΏΠΏΠΈΡΠΎΠ²ΠΊΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² - Π½Π° ΡΡΠΎΠ²Π΅Π½Ρ Π²ΡΡΠ΅).
Π€ΠΈΠ»ΡΡΡΠ°ΡΠΈΡ Π°Π³ΡΠ΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΠΏΠΎ Π³ΠΎΡΠΎΠ΄Π°ΠΌ, Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌ Π² Π²ΡΠ³ΡΡΠ·ΠΊΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ Π³ΠΎΡΠΎΠ΄Π°, Π² ΠΊΠΎΡΠΎΡΡΡ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 5 ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ²:
SELECT City, count(CustomerID) FROM Customers
GROUP BY City
HAVING count(CustomerID) >= 5
Π ΡΠ»ΡΡΠ°Π΅ Ρ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΠΌ ΡΡΠΎΠ»Π±ΡΠΎΠΌ Π²Π½ΡΡΡΠΈ HAVING
ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΊΠ°ΠΊ ΠΈ ΡΠ°ΠΌΡ Π°Π³ΡΠ΅Π³ΠΈΡΡΡΡΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ count(CustomerID)
, ΡΠ°ΠΊ ΠΈ Π½ΠΎΠ²ΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΡΠΎΠ»Π±ΡΠ° number_of_clients
:
SELECT City, count(CustomerID) AS number_of_clients FROM Customers
GROUP BY City
HAVING number_of_clients >= 5
ΠΡΠΈΠΌΠ΅Ρ Π·Π°ΠΏΡΠΎΡΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π³ΠΎ WHERE
ΠΈ HAVING
. Π Π΄Π°Π½Π½ΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠ΅ ΡΠ½Π°ΡΠ°Π»Π° ΡΠΈΠ»ΡΡΡΡΠ΅ΡΡΡ ΠΈΡΡ
ΠΎΠ΄Π½Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ° ΠΏΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ, ΡΠ°ΡΡΡΠΈΡΡΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΠΏΠΎ Π³ΠΎΡΠΎΠ΄Π°ΠΌ ΠΈ ΠΎΡΡΠ°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ Π³ΠΎΡΠΎΠ΄Π°, Π³Π΄Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 5:
SELECT City, count(CustomerID) AS number_of_clients FROM Customers
WHERE CustomerName NOT IN ('Around the Horn','Drachenblut Delikatessend')
GROUP BY City
HAVING number_of_clients >= 5
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
ORDER BY
ORDER BY
β Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π·Π°ΠΏΡΠΎΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΡ ΡΠ°Π±Π»ΠΈΡΡ.
ΠΡΠΎΡΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΡΠΎΠ»Π±ΡΡ. Π Π΄Π°Π½Π½ΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΏΠΎ Π³ΠΎΡΠΎΠ΄Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΊΠ°Π·Π°Π» ΠΊΠ»ΠΈΠ΅Π½Ρ:
SELECT * FROM Customers
ORDER BY City
ΠΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈ ΠΏΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΡΡΠΎΠ»Π±ΡΠ°ΠΌ, Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΏΠΎ ΠΏΠΎΡΡΠ΄ΠΊΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ²:
SELECT * FROM Customers
ORDER BY Country, City
ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ ΠΏΠΎ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π½ΠΈΡ Π΄Π»Ρ ΡΠΈΡΠ΅Π» ΠΈ Π² Π°Π»ΡΠ°Π²ΠΈΡΠ½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅ Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ
Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. ΠΡΠ»ΠΈ Π½ΡΠΆΠ½Π° ΠΎΠ±ΡΠ°ΡΠ½Π°Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ°, ΡΠΎ Π² ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ ORDER BY
ΠΏΠΎΡΠ»Π΅ Π½Π°Π·Π²Π°Π½ΠΈΡ ΡΡΠΎΠ»Π±ΡΠ° Π½Π°Π΄ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ DESC
:
SELECT * FROM Customers
ORDER BY CustomerID DESC
ΠΠ±ΡΠ°ΡΠ½Π°Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΡΠΎΠ»Π±ΡΡ ΠΈ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΠΎ Π²ΡΠΎΡΠΎΠΌΡ:
SELECT * FROM Customers
ORDER BY Country DESC, City
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
CASE
Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² SQL ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠ»ΠΎΠ²Π½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ Π² Π·Π°ΠΏΡΠΎΡΠ°Ρ
. ΠΠ½ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΎ. ΠΠΎΡΡΠΎΠΌΡ ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ ΠΏΡΠ°Π²Π΄ΠΈΠ²ΠΎΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΠ΅, ΡΡΠ΅Π½ΠΈΠ΅ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ, ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ.
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π΄Π²Π΅ ΡΠΎΡΠΌΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ CASE
: ΠΏΡΠΎΡΡΠΎΠ΅ (simple) CASE ΠΈ ΠΏΠΎΠΈΡΠΊ Ρ ΡΡΠ»ΠΎΠ²ΠΈΡΠΌΠΈ (searched) CASE.
- ΠΡΠΎΡΡΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅
CASE
Π ΡΡΠΎΠΉ ΡΠΎΡΠΌΠ΅ SQL ΡΡΠ°Π²Π½ΠΈΠ²Π°Π΅Ρ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Ρ Π½Π°Π±ΠΎΡΠΎΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
END
ΠΡΠΈΠΌΠ΅Ρ:
SELECT
product_name,
CASE category_id
WHEN 1 THEN 'Electronics'
WHEN 2 THEN 'Books'
ELSE 'Other'
END AS category
FROM products;
ΠΠ΄Π΅ΡΡ, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ category_id, ΠΏΡΠΎΠ΄ΡΠΊΡΡ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ°Ρ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΡ. ΠΡΠ»ΠΈ Π½Π΅Ρ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠΉ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ELSE, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠ΅Π΅ 'Other'.
- ΠΠΎΠΈΡΠΊ Ρ ΡΡΠ»ΠΎΠ²ΠΈΡΠΌΠΈ CASE ΠΡΠ° ΡΠΎΡΠΌΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, >, <, =, !=), Π° Π½Π΅ ΠΏΡΠΎΡΡΠΎ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»ΡΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
END
ΠΡΠΈΠΌΠ΅Ρ:
SELECT
employee_name,
salary,
CASE
WHEN salary > 80000 THEN 'High'
WHEN salary BETWEEN 50000 AND 80000 THEN 'Medium'
ELSE 'Low'
END AS salary_range
FROM employees;
ΠΡΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ CASE
ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ Π΄Π»Ρ Π·Π°ΡΠΏΠ»Π°ΡΡ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π°ΡΠΏΠ»Π°ΡΡ.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΡ:
- Π£ΡΠ»ΠΎΠ²ΠΈΡ Π² Π±Π»ΠΎΠΊΠ°Ρ
WHEN
ΠΏΡΠΎΠ²Π΅ΡΡΡΡΡΡ ΠΏΠΎ ΠΏΠΎΡΡΠ΄ΠΊΡ, ΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡTRUE
, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ. - ΠΠ»ΠΎΠΊ
ELSE
Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»Π΅Π½ ΠΈ Π·Π°Π΄Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Π΅ΡΠ»ΠΈ Π½ΠΈ ΠΎΠ΄Π½ΠΎ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π½Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΎ. CASE
ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ΅SELECT
, Π½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π²UPDATE
,DELETE
ΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΠ°ΡΡΡΡ Π·Π°ΠΏΡΠΎΡΠ°.
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ ΠΎΡΠ½ΠΎΠ²Π°Π½Ρ Π½Π° ΠΏΡΠΈΠ½ΡΠΈΠΏΠ΅ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΡ ΠΈ Π²ΡΠΎΡΠΈΡΠ½ΡΡ ΠΊΠ»ΡΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡ ΠΈ ΡΠ²Π»ΡΡΡΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΠΎΡΠ½ΠΎΠ² ΡΠ°Π±ΠΎΡΡ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΡ Π‘Π£ΠΠ.
INNER JOIN
CΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΌ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ ΠΏΠ°ΡΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΈΠ· Π΄Π²ΡΡ ΡΠ°Π±Π»ΠΈΡ, ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΡΡΠΈΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ, ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ ΠΎΠ±ΡΠ°Π·ΡΡ Π½ΠΎΠ²ΡΡ ΡΠ°Π±Π»ΠΈΡΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ ΠΏΠΎΠ»Ρ ΠΈΠ· ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΈ Π²ΡΠΎΡΠΎΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ.
LEFT JOIN
Π‘ΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π²ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· Π»Π΅Π²ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ, ΡΠΎΠ΅Π΄ΠΈΠ½ΡΠ½Π½ΡΠ΅ Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΈΠ· ΠΏΡΠ°Π²ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ, ΠΈΠ»ΠΈ Π·Π°ΠΌΠ΅Π½ΡΠ΅Ρ ΠΈΡ Π½Π° NULL Π² ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅.
RIGHT JOIN
Π‘ΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π²ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· ΠΏΡΠ°Π²ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ, ΡΠΎΠ΅Π΄ΠΈΠ½ΡΠ½Π½ΡΠ΅ Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΈΠ· Π»Π΅Π²ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ, ΠΈΠ»ΠΈ Π·Π°ΠΌΠ΅Π½ΡΠ΅Ρ ΠΈΡ Π½Π° NULL Π² ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅.
FULL JOIN
Π‘ΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΈΡ Π»Π΅Π²ΡΠΌ Π²Π½Π΅ΡΠ½ΠΈΠΌ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ΠΌ ΠΈ ΠΏΡΠ°Π²ΡΠΌ Π²Π½Π΅ΡΠ½ΠΈΠΌ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ΠΌ.
ΠΠ»Π³ΠΎΡΠΈΡΠΌ ΡΠ°Π±ΠΎΡΡ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ:
- Π€ΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ ΡΠ°Π±Π»ΠΈΡΠ° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ (INNER JOIN)
- Π ΡΠ°Π±Π»ΠΈΡΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π΅ Π²ΠΎΡΠ΅Π΄ΡΠΈΠ΅ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ· Π»Π΅Π²ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ (LEFT OUTER JOIN)
- Π ΡΠ°Π±Π»ΠΈΡΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π΅ Π²ΠΎΡΠ΅Π΄ΡΠΈΠ΅ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ· ΠΏΡΠ°Π²ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ (RIGHT OUTER JOIN)
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
ΠΠ»ΠΎΠΆΠ΅Π½Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ β ΡΡΠΎ Π·Π°ΠΏΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ Π²Π½ΡΡΡΠΈ Π΄ΡΡΠ³ΠΎΠ³ΠΎ SQL Π·Π°ΠΏΡΠΎΡΠ° ΠΈ Π²ΡΡΡΠΎΠ΅Π½ Π²Π½ΡΡΡΠΈ ΡΡΠ»ΠΎΠ²Π½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° WHERE
.
ΠΠ°Π½Π½ΡΠΉ Π²ΠΈΠ΄ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠ΅, ΠΊΠ°ΠΊ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π΄Π»Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌΡΡ Π΄Π°Π½Π½ΡΡ .
ΠΡΠ°Π²ΠΈΠ»Π° Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ²
ΠΠ° Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ:
- Π‘ΠΏΠΈΡΠΎΠΊ Π²ΡΠ±ΠΎΡΠ° Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°, Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠΉΡΡ Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ, ΠΌΠΎΠΆΠ΅Ρ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΈΠΌΡ ΡΡΠΎΠ»Π±ΡΠ° (Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ²
EXISTS
ΠΈIN
Π² ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈSELECT *
ΠΈΠ»ΠΈ Π² ΡΠΏΠΈΡΠΊΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ). - ΠΡΠ»ΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅
WHERE
Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΈΠΌΡ ΡΡΠΎΠ»Π±ΡΠ°, ΠΎΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎ Π΄Π»Ρ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΡΠΎ ΡΡΠΎΠ»Π±ΡΠΎΠΌ Π² ΡΠΏΠΈΡΠΊΠ΅ Π²ΡΠ±ΠΎΡΠ° Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°. - Π’ΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ
ntext
, ΡΠ΅ΠΊΡΡΠ° ΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π½Π΅Π»ΡΠ·Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΡΠΏΠΈΡΠΊΠ΅ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ². - Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ ΠΎΠ΄Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ Π½Π΅ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ (ΠΎΠ΄ΠΈΠ½ Π½Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠΌΡ ΡΠ»ΠΎΠ²Ρ
ANY
ΠΈΠ»ΠΈALL
) Π½Π΅ ΠΌΠΎΠ³ΡΡ Π²ΠΊΠ»ΡΡΠ°ΡΡGROUP BY
ΠΈHAVING
ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ. - ΠΠ»ΡΡΠ΅Π²ΠΎΠ΅
DISTINCT
ΡΠ»ΠΎΠ²ΠΎ Π½Π΅Π»ΡΠ·Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Ρ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠΌΠΈ Π·Π°ΠΏΡΠΎΡΠ°ΠΌΠΈ, Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΌΠΈGROUP BY
. - ΠΠ΅
COMPUTE
ΡΠ΄Π°Π΅ΡΡΡ ΡΠΊΠ°Π·Π°ΡΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈINTO
ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ. - ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅
ORDER BY
ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΊΠ°Π·Π°Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌTOP
. - ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ², Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΎ.
- Π‘ΠΏΠΈΡΠΎΠΊ Π²ΡΠ±ΠΎΡΠ° Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°, Π½Π°ΡΠΈΠ½Π°ΡΡΠ΅Π³ΠΎΡΡ Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ
EXISTS
, ΠΏΠΎ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π·Π²Π΅Π·Π΄ΠΎΡΠΊΡ*
Π²ΠΌΠ΅ΡΡΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΡΡΠΎΠ»Π±ΡΠ°. ΠΡΠ°Π²ΠΈΠ»Π° Π΄Π»Ρ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°, Π½Π°ΡΠΈΠ½Π°ΡΡΠ΅Π³ΠΎΡΡ Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡEXISTS
, ΡΠ²Π»ΡΡΡΡΡ ΡΠ°ΠΊΠΈΠΌΠΈ ΠΆΠ΅, ΠΊΠ°ΠΊ Π΄Π»Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ° Π²ΡΠ±ΠΎΡΠ°, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ, Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠΉΡΡ Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡEXISTS
, ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ Π½Π° ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡTRUE
ΠΈΠ»ΠΈFALSE
Π²ΠΌΠ΅ΡΡΠΎ Π΄Π°Π½Π½ΡΡ .
ΠΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ: ΠΠ»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ (SQL Server)
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΉ
ΠΡΠΈ ΡΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ SQL Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π°Π΄ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ. ΠΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΡΡΠΎΠΊ, ΡΠΈΡΠ΅Π», Π΄Π°Ρ, Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π°Π³ΡΠ΅Π³Π°ΡΠ½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, ΠΊΠ°ΠΊ Π² ΠΎΠ΄Π½ΠΎΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠΈ, ΡΠ°ΠΊ ΠΈ Π½Π° Π½Π°Π±ΠΎΡΠ΅ ΡΡΡΠΎΠΊ.
Π€ΡΠ½ΠΊΡΠΈΠΈ Π² SQL ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΉ:
ΠΠ³ΡΠ΅Π³Π°ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
ΠΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎΠΌ ΡΡΡΠΎΠΊ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ ΠΎΠ΄Π½ΠΎ Π°Π³ΡΠ΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. ΠΡ
ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ΅ΠΉ GROUP BY
.
-
COUNT(): ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠΎΠΊ.
SELECT COUNT(*) FROM users;
-
SUM(): ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΡΠΌΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ.
SELECT SUM(salary) FROM employees;
-
AVG(): ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΡΠ΅Π΄Π½Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
SELECT AVG(age) FROM users;
-
MIN(): ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
SELECT MIN(salary) FROM employees;
-
MAX(): ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
SELECT MAX(salary) FROM employees;
Π‘ΡΡΠΎΠΊΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
ΠΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΡΡΠΎΠΊΠΈ, Π½Π°Ρ ΠΎΠ΄ΠΈΡΡ ΠΏΠΎΠ΄ΡΡΡΠΎΠΊΠΈ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΡΠ΅ΠΊΡΡΠΎΠΌ.
-
LENGTH(): ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π΄Π»ΠΈΠ½Ρ ΡΡΡΠΎΠΊΠΈ.
SELECT LENGTH('Hello World');
-
LOWER() / UPPER(): ΠΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΡΡ ΡΡΡΠΎΠΊΡ ΠΊ Π½ΠΈΠΆΠ½Π΅ΠΌΡ ΠΈΠ»ΠΈ Π²Π΅ΡΡ Π½Π΅ΠΌΡ ΡΠ΅Π³ΠΈΡΡΡΡ.
SELECT LOWER('HELLO'), UPPER('hello');
-
SUBSTRING(): ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΏΠΎΠ΄ΡΡΡΠΎΠΊΡ.
SELECT SUBSTRING('Hello World', 1, 5); -- ΠΠ΅ΡΠ½Π΅Ρ 'Hello'
-
CONCAT(): ΠΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ ΡΡΡΠΎΠΊΠΈ.
SELECT CONCAT(first_name, ' ', last_name) FROM users;
-
TRIM(): Π£Π΄Π°Π»ΡΠ΅Ρ ΠΏΡΠΎΠ±Π΅Π»Ρ Π² Π½Π°ΡΠ°Π»Π΅ ΠΈ ΠΊΠΎΠ½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ.
SELECT TRIM(' Hello World ');
Π§ΠΈΡΠ»ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
Π Π°Π±ΠΎΡΠ 10000 °ΡΡ Ρ ΡΠΈΡΠ»ΠΎΠ²ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ.
-
ROUND(): ΠΠΊΡΡΠ³Π»ΡΠ΅Ρ ΡΠΈΡΠ»ΠΎ Π΄ΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° Π·Π½Π°ΠΊΠΎΠ² ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΎΠΉ.
SELECT ROUND(123.456, 2); -- ΠΠ΅ΡΠ½Π΅Ρ 123.46
-
CEIL() / FLOOR(): ΠΠΊΡΡΠ³Π»ΡΡΡ ΡΠΈΡΠ»ΠΎ Π²Π²Π΅ΡΡ ΠΈΠ»ΠΈ Π²Π½ΠΈΠ· Π΄ΠΎ Π±Π»ΠΈΠΆΠ°ΠΉΡΠ΅Π³ΠΎ ΡΠ΅Π»ΠΎΠ³ΠΎ.
SELECT CEIL(1.2), FLOOR(1.8); -- ΠΠ΅ΡΠ½Π΅Ρ 2 ΠΈ 1 ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ
-
ABS(): ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΡΠ»Π°.
SELECT ABS(-10); -- ΠΠ΅ΡΠ½Π΅Ρ 10
-
MOD(): ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΡΡΠ°ΡΠΎΠΊ ΠΎΡ Π΄Π΅Π»Π΅Π½ΠΈΡ.
SELECT MOD(10, 3); -- ΠΠ΅ΡΠ½Π΅Ρ 1
ΠΠ°ΡΠ° ΠΈ Π²ΡΠ΅ΠΌΡ ΡΡΠ½ΠΊΡΠΈΠΈ
ΠΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π΄Π°ΡΠ°ΠΌΠΈ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡ ΡΠ°ΡΡΠΈ Π΄Π°ΡΡ, Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΈΠ»ΠΈ Π²ΡΡΠΈΡΠ°ΡΡ Π΄Π½ΠΈ, ΠΌΠ΅ΡΡΡΡ ΠΈ Ρ.Π΄.
-
NOW(): ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ΅ΠΊΡΡΡΡ Π΄Π°ΡΡ ΠΈ Π²ΡΠ΅ΠΌΡ.
SELECT NOW();
-
CURDATE(): ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ΅ΠΊΡΡΡΡ Π΄Π°ΡΡ.
SELECT CURDATE();
-
DATE_ADD(): ΠΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΊ Π΄Π°ΡΠ΅ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π».
SELECT DATE_ADD('2024-01-01', INTERVAL 7 DAY); -- ΠΠ΅ΡΠ½Π΅Ρ '2024-01-08'
-
DATEDIFF(): ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ°Π·Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΡΠΌΡ Π΄Π°ΡΠ°ΠΌΠΈ Π² Π΄Π½ΡΡ .
SELECT DATEDIFF('2024-12-31', '2024-01-01'); -- ΠΠ΅ΡΠ½Π΅Ρ 364
-
YEAR(), MONTH(), DAY(): ΠΠ·Π²Π»Π΅ΠΊΠ°ΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΡΡ ΡΠ°ΡΡΡ Π΄Π°ΡΡ.
SELECT YEAR(NOW()), MONTH(NOW()), DAY(NOW());
ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
ΠΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π±ΡΠ»Π΅Π²ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ.
-
IF(): ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΠ΄Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, Π΅ΡΠ»ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΈΡΡΠΈΠ½Π½ΠΎ, ΠΈ Π΄ΡΡΠ³ΠΎΠ΅ β Π΅ΡΠ»ΠΈ Π»ΠΎΠΆΠ½ΠΎ.
SELECT IF(salary > 5000, 'High', 'Low') FROM employees;
-
COALESCE(): ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΏΠ΅ΡΠ²ΠΎΠ΅ Π½Π΅Π½ΡΠ»Π΅Π²ΠΎΠ΅ (Π½Π΅
NULL
) Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.SELECT COALESCE(NULL, NULL, 'Value'); -- ΠΠ΅ΡΠ½Π΅Ρ 'Value'
-
NULLIF(): ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ
NULL
, Π΅ΡΠ»ΠΈ Π΄Π²Π° Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ°Π²Π½Ρ, ΠΈΠ½Π°ΡΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΏΠ΅ΡΠ²ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅.SELECT NULLIF(10, 10); -- ΠΠ΅ΡΠ½Π΅Ρ NULL
ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ:
SELECT CONCAT(first_name, ' ', last_name) AS full_name,
YEAR(NOW()) - YEAR(birthdate) AS age,
IF(salary > 5000, 'High Salary', 'Low Salary') AS salary_status
FROM employees;
ΠΡΠΎΡ Π·Π°ΠΏΡΠΎΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΠΈΠΌΡ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ°, Π²ΠΎΠ·ΡΠ°ΡΡ ΠΈ ΡΡΠ°ΡΡΡ Π·Π°ΡΠΏΠ»Π°ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΡΠ»ΠΎΠ²ΠΈΡ.
Π€ΡΠ½ΠΊΡΠΈΠΈ Π² SQL ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ, ΡΠ»ΡΡΡΠ°Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΈ ΡΠΈΡΠ»Π°ΠΌΠΈ, ΡΡΡΠΎΠΊΠ°ΠΌΠΈ ΠΈ Π΄Π°ΡΠ°ΠΌΠΈ.
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
ΠΠ½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π² SQL (ΡΠ°ΠΊΠΆΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠ΅ ΠΊΠ°ΠΊ ΠΎΠΊΠΎΠ½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ) ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΏΠΎ Π½Π°Π±ΠΎΡΡ ΡΡΡΠΎΠΊ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Π°Π³ΡΠ΅Π³Π°ΡΠ½ΡΠΌ ΡΡΠ½ΠΊΡΠΈΡΠΌ, Π½ΠΎ Ρ ΡΠ΅ΠΌ ΠΎΡΠ»ΠΈΡΠΈΠ΅ΠΌ, ΡΡΠΎ ΠΎΠ½ΠΈ Π½Π΅ Π³ΡΡΠΏΠΏΠΈΡΡΡΡ ΡΡΡΠΎΠΊΠΈ Π² ΠΎΠ΄Π½Ρ Π·Π°ΠΏΠΈΡΡ, Π° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ. ΠΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΠΎΠ»Π΅Π·Π½Ρ, ΠΊΠΎΠ³Π΄Π° Π½ΡΠΆΠ½ΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅, ΡΠΎΡ ΡΠ°Π½ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡΠ° Π΄Π°Π½Π½ΡΡ .
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π°Π½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ
ΠΠ±ΡΡΠ½ΠΎ Π°Π½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΠΈΡΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
<ΡΡΠ½ΠΊΡΠΈΡ>([Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ]) OVER ([PARTITION BY] [ORDER BY])
- Π€ΡΠ½ΠΊΡΠΈΡ β ΡΡΠΎ Π°Π½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΡΠ½ΠΊΡΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
ROW_NUMBER()
,RANK()
,SUM()
,AVG()
ΠΈ Π΄ΡΡΠ³ΠΈΠ΅. - OVER β ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΊΠΎΠ½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ.
- PARTITION BY β ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ Π½Π°Π±ΠΎΡ Π΄Π°Π½Π½ΡΡ
Π½Π° Π³ΡΡΠΏΠΏΡ, Π² ΠΏΡΠ΅Π΄Π΅Π»Π°Ρ
ΠΊΠΎΡΠΎΡΡΡ
Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡΡ ΡΠ°ΡΡΠ΅Ρ ΡΡΠ½ΠΊΡΠΈΠΈ (Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ
GROUP BY
). - ORDER BY β ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΏΠΎΡΡΠ΄ΠΎΠΊ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΡΡΠΎΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ΅Π½Ρ Π΄Π»Ρ ΡΠ°ΡΡΠ΅ΡΠΎΠ².
Π§Π°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π°Π½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
-
ROW_NUMBER()
: Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π½ΠΎΠΌΠ΅Ρ ΡΡΡΠΎΠΊΠΈ Π² ΠΏΡΠ΅Π΄Π΅Π»Π°Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π³ΡΡΠΏΠΏΡ Π² ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅.SELECT ROW_NUMBER() OVER (ORDER BY salary DESC) AS row_num, employee_name, salary FROM employees;
-
RANK()
: ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ Π½ΠΎΠΌΠ΅ΡΠ° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ°, ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΡΡΠΎΠΊΠΈ Ρ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΉ ΡΠ°Π½Π³.SELECT RANK() OVER (ORDER BY salary DESC) AS rank, employee_name, salary FROM employees;
-
DENSE_RANK()
: ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡRANK()
, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΡΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡΡ ΡΡΡΠΎΠΊΠΈ ΠΏΡΠΎΠΏΡΡΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π½Π³Π°ΠΌΠΈ Π½Π΅ ΠΎΠ±ΡΠ°Π·ΡΡΡΡΡ.SELECT DENSE_RANK() OVER (ORDER BY salary DESC) AS dense_rank, employee_name, salary FROM employees;
-
NTILE(n)
: Π΄Π΅Π»ΠΈΡ ΡΡΡΠΎΠΊΠΈ Π½Π° n ΡΠ°Π²Π½ΡΡ ΡΠ°ΡΡΠ΅ΠΉ (ΠΊΡΡΠΊΠΎΠ²).SELECT NTILE(4) OVER (ORDER BY salary DESC) AS quartile, employee_name, salary FROM employees;
-
SUM()
,AVG()
,MIN()
,MAX()
: ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊ ΠΎΠΊΠΎΠ½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΡΠ°ΡΡΠ΅ΡΠ° ΠΊΡΠΌΡΠ»ΡΡΠΈΠ²Π½ΠΎΠΉ ΡΡΠΌΠΌΡ.SELECT employee_name, salary, SUM(salary) OVER (ORDER BY salary DESC) AS running_total FROM employees;
-
FIRST_VALUE()
: Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΏΠ΅ΡΠ²ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² ΠΎΠΊΠ½Π΅, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌOVER()
.SELECT name, salary, FIRST_VALUE(salary) OVER (ORDER BY salary DESC) AS first_salary FROM employees;
ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΡΡΠΎΡ Π·Π°ΠΏΡΠΎΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ°ΠΌΠΎΠ΅ Π²ΡΡΠΎΠΊΠΎΠ΅ (ΠΏΠ΅ΡΠ²ΠΎΠ΅) Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π·Π°ΡΠΏΠ»Π°ΡΡ Π² ΠΎΠΊΠ½Π΅.
-
LAST_VALUE()
: Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² ΠΎΠΊΠ½Π΅.SELECT name, salary, LAST_VALUE(salary) OVER (ORDER BY salary DESC ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING) AS last_salary FROM employees;
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ LAST_VALUE()
Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π·Π°ΡΠΏΠ»Π°ΡΡ Π² ΠΎΠΊΠ½Π΅. ΠΠ°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΠ»Ρ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ Π½ΡΠΆΠ½ΠΎ ΡΠ²Π½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ Π³ΡΠ°Π½ΠΈΡΡ ΠΎΠΊΠ½Π°.
-
LAG()
: ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ· ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΉ ΡΡΡΠΎΠΊΠΈ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅ΠΊΡΡΠ΅ΠΉ.SELECT name, salary, LAG(salary, 1) OVER (ORDER BY salary DESC) AS prev_salary FROM employees;
ΠΡΠΎΡ Π·Π°ΠΏΡΠΎΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π·Π°ΡΠΏΠ»Π°ΡΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΉ ΡΡΡΠΎΠΊΠΈ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΡΡΠΎΠΊΠΈ. ΠΡΠ»ΠΈ ΡΡΠΎ ΠΏΠ΅ΡΠ²Π°Ρ ΡΡΡΠΎΠΊΠ°, Π²Π΅ΡΠ½Π΅ΡΡΡ NULL
.
-
LEAD()
: ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΡΡΠΎΠΊΠΈ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅ΠΊΡΡΠ΅ΠΉ.SELECT name, salary, LEAD(salary, 1) OVER (ORDER BY salary DESC) AS next_salary FROM employees;
ΠΡΠΎΡ Π·Π°ΠΏΡΠΎΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π·Π°ΡΠΏΠ»Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΡΡΠΎΠΊΠΈ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΡΡΠΎΠΊΠΈ. ΠΡΠ»ΠΈ ΡΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΡΡΡΠΎΠΊΠ°, Π²Π΅ΡΠ½Π΅ΡΡΡ NULL
.
ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π°Π½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ:
ΠΡΠΆΠ½ΠΎ Π²ΡΠ²Π΅ΡΡΠΈ ΡΠΏΠΈΡΠΎΠΊ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΎΠ² Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ ΠΈΡ ΡΠ°Π½Π³Π°, ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π·Π°ΡΠΏΠ»Π°ΡΡ, Π·Π°ΡΠΏΠ»Π°ΡΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ° ΠΈ ΡΠ°ΠΌΠΎΠ³ΠΎ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π·Π°ΡΠΏΠ»Π°ΡΡ.
SELECT name,
salary,
RANK() OVER (ORDER BY salary DESC) AS rank,
LAG(salary) OVER (ORDER BY salary DESC) AS prev_salary,
FIRST_VALUE(salary) OVER (ORDER BY salary DESC) AS highest_salary
FROM employees;
ΠΡΠΎΡ Π·Π°ΠΏΡΠΎΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ° Π²ΡΠ²ΠΎΠ΄ΠΈΡ Π΅Π³ΠΎ ΠΈΠΌΡ, Π·Π°ΡΠΏΠ»Π°ΡΡ, ΡΠ°Π½Π³, Π·Π°ΡΠΏΠ»Π°ΡΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ° ΠΈ ΡΠ°ΠΌΡΡ Π²ΡΡΠΎΠΊΡΡ Π·Π°ΡΠΏΠ»Π°ΡΡ Π² Π½Π°Π±ΠΎΡΠ΅.
PARTITION BY
PARTITION BY
ΡΠ°Π·Π΄Π΅Π»ΡΠ΅Ρ Π½Π°Π±ΠΎΡ Π΄Π°Π½Π½ΡΡ
Π½Π° Π³ΡΡΠΏΠΏΡ, Π²Π½ΡΡΡΠΈ ΠΊΠΎΡΠΎΡΡΡ
Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΡΠΎ ΠΏΠΎΡ
ΠΎΠΆΠ΅ Π½Π° GROUP BY
, Π½ΠΎ Π±Π΅Π· Π°Π³ΡΠ΅Π³Π°ΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ
Π² ΠΎΠ΄Π½Ρ ΡΡΡΠΎΠΊΡ.
ΠΡΠΈΠΌΠ΅Ρ: ΠΏΠΎΠ΄ΡΡΠ΅Ρ ΡΠ°Π½Π³Π° Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π³ΡΡΠΏΠΏΠ΅ Π΄Π΅ΠΏΠ°ΡΡΠ°ΠΌΠ΅Π½ΡΠΎΠ².
SELECT department, employee_name, salary,
RANK() OVER (PARTITION BY department ORDER BY salary DESC) AS rank_in_dept
FROM employees;
ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅
-
ΠΡΠΌΡΠ»ΡΡΠΈΠ²Π½ΡΠ΅ ΡΡΠΌΠΌΡ ΠΈ ΡΠΊΠΎΠ»ΡΠ·ΡΡΠΈΠ΅ ΡΡΠ΅Π΄Π½ΠΈΠ΅: ΠΠ½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΡΠ°ΡΡΠ΅ΡΠ° ΠΊΡΠΌΡΠ»ΡΡΠΈΠ²Π½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ Π΄Π»Ρ Π°Π½Π°Π»ΠΈΠ·Π° Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ², Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΡΠΊΠΎΠ»ΡΠ·ΡΡΠ΅Π³ΠΎ ΡΡΠ΅Π΄Π½Π΅Π³ΠΎ.
-
Π‘ΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΡΡΡΠΎΠΊ: Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ°Π²Π½ΠΈΠ²Π°ΡΡ ΡΠ΅ΠΊΡΡΡΡ ΡΡΡΠΎΠΊΡ Ρ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΉ ΠΈΠ»ΠΈ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ°ΠΊΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΊΠ°ΠΊ
LAG()
ΠΈLEAD()
.SELECT employee_name, salary, LAG(salary) OVER (ORDER BY salary) AS prev_salary, LEAD(salary) OVER (ORDER BY salary) AS next_salary FROM employees;
ΠΠΊΠΎΠ½Π½ΡΠ΅ ΡΠ°ΠΌΠΊΠΈ (Window Frames)
ΠΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Π²Π°ΡΡ ΡΠ°ΠΌΠΊΠΈ Π΄Π»Ρ ΠΎΠΊΠ½Π°, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΡΡΡΠΎΠΊ Π΄Π»Ρ Π°Π½Π°Π»ΠΈΠ·Π°:
-
ROWS BETWEEN: ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠ°ΠΌΠΊΡ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΡΡΠΎΠΊΠΈ.
SUM(salary) OVER (ORDER BY salary ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING)
ΠΡΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ ΡΠ°ΡΡΠ΅ΡΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠΎΡΠ΅Π΄Π½ΠΈΡ ΡΡΡΠΎΠΊ.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π°Π½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π² SQL β ΡΡΠΎ ΠΌΠΎΡΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ»ΠΎΠΆΠ½ΡΡ Π°Π½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π±Π΅Π· Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π² ΠΏΠΎΠ΄Π·Π°ΠΏΡΠΎΡΠ°Ρ ΠΈ Π³ΡΡΠΏΠΏΠΈΡΠΎΠ²ΠΊΠ°Ρ , ΡΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ°Π±ΠΎΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ Π² ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΡ Π±Π°Π·Π°Ρ .
Π‘ΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊ ΠΏΠΎ ΡΡΠ½ΠΊΡΠΈΡΠΌ SQL
ΠΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ: ΠΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ OLAP-Π·Π°ΠΏΡΠΎΡΠΎΠ² Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π°Π½Π°Π»ΠΈΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ, Π£ΡΠΈΠΌΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΎΠΊΠΎΠ½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
EXPLAIN
β ΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π² SQL, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ
ΠΏΠ»Π°Π½ΠΈΡΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ. ΠΠ½Π° ΠΏΠΎΠ»Π΅Π·Π½Π° Π΄Π»Ρ Π°Π½Π°Π»ΠΈΠ·Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΡΠ°Π±ΠΎΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
. Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ
(Π‘Π£ΠΠ), Π²ΡΠ²ΠΎΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΌΠΎΠΆΠ΅Ρ Π²Π°ΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ, Π½ΠΎ ΠΎΠ±ΡΠ°Ρ ΡΠ΅Π»Ρ β Π΄Π°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ Π·Π°ΠΏΡΠΎΡ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π±ΡΠ΄ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ Π±ΡΠ΄ΡΡ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ°Π³ΠΈ Π±ΡΠ΄ΡΡ ΠΏΡΠ΅Π΄ΠΏΡΠΈΠ½ΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ
.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ Π°ΡΠΏΠ΅ΠΊΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ EXPLAIN
:
-
ΠΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ°: ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, Π² ΠΊΠ°ΠΊΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΡΠ°Π±Π»ΠΈΡΡ Π±ΡΠ΄ΡΡ ΡΡΠ°ΡΡΠ²ΠΎΠ²Π°ΡΡ Π² Π·Π°ΠΏΡΠΎΡΠ΅, ΠΊΠ°ΠΊ Π‘Π£ΠΠ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅Ρ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡΡ Π΄Π°Π½Π½ΡΠ΅ (Π΅ΡΠ»ΠΈ Π΅ΡΡΡ
JOIN
). -
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²: ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΠΌ, Π±ΡΠ΄ΡΡ Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ, ΠΈ Π΅ΡΠ»ΠΈ Π΄Π°, ΡΠΎ ΠΊΠ°ΠΊΠΈΠ΅.
-
Π’ΠΈΠΏΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ (JOIN): Π£ΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΡΠΈΠΏΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ:
- ALL β ΠΏΠΎΠ»Π½ΡΠΉ ΠΏΠ΅ΡΠ΅Π±ΠΎΡ ΡΠ°Π±Π»ΠΈΡΡ (table scan), ΡΡΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ ΠΈ ΠΌΠ΅Π½Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ.
- INDEX β ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ, ΡΡΠΎ Π±ΡΡΡΡΠ΅Π΅, ΡΠ΅ΠΌ ΠΏΠΎΠ»Π½ΡΠΉ ΠΏΠ΅ΡΠ΅Π±ΠΎΡ.
- RANGE β ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΈΠ½Π΄Π΅ΠΊΡΠ°.
- REF β ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ Π²Π½Π΅ΡΠ½Π΅ΠΌΡ ΠΊΠ»ΡΡΡ.
- EQ_REF β ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ.
-
ΠΡΠ΅Π½ΠΊΠ° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΡΡΠΎΠΊ: ΠΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠΎΠΊ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½ΠΎ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΡΠ°ΠΏΠ΅ Π·Π°ΠΏΡΠΎΡΠ°. ΠΡΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΏΠΎΠ½ΡΡΡ, ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π°Π½Π½ΡΡ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½ΠΎ.
-
ΠΠΎΡΡΠ΄ΠΎΠΊ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ: ΠΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ, Π±ΡΠ΄Π΅Ρ Π»ΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΈ ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΈ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π»ΠΈ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ.
ΠΡΠΈΠΌΠ΅Ρ (Π΄Π»Ρ MySQL):
EXPLAIN SELECT * FROM users WHERE age > 25;
ΠΡΠΎΡ Π·Π°ΠΏΡΠΎΡ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ ΠΏΠ»Π°Π½ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ° ΠΏΠΎ Π²ΡΠ±ΠΎΡΡ Π²ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΡΡΠ°ΡΡΠ΅ 25 Π»Π΅Ρ.
ΠΡΠΈΠΌΠ΅Ρ Π²ΡΠ²ΠΎΠ΄Π° (MySQL):
id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
---|---|---|---|---|---|---|---|---|---|
1 | SIMPLE | users | ALL | NULL | NULL | NULL | NULL | 1000 | Using where |
- id: ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π·Π°ΠΏΡΠΎΡΠ° ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Π·Π°ΠΏΡΠΎΡΠ°.
- select_type: ΡΠΈΠΏ Π·Π°ΠΏΡΠΎΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΎΡΡΠΎΠΉ ΠΈΠ»ΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠΉ).
- table: ΡΠ°Π±Π»ΠΈΡΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΡΠ°Π³Π΅.
- type: ΡΠΈΠΏ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ (Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΠΎΠ»Π½ΡΠΉ ΠΏΠ΅ΡΠ΅Π±ΠΎΡ ΡΠ°Π±Π»ΠΈΡΡ β
ALL
). - possible_keys: Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ.
- key: ΠΈΠ½Π΄Π΅ΠΊΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ» ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ (Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΈΠ½Π΄Π΅ΠΊΡ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ).
- rows: ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠΎΠΊ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½ΠΎ.
- Extra: Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ
Using where
, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠ΅, ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠ΅.
ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ EXPLAIN
-
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²: ΠΡΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΈΠΏ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ
ALL
, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠ·Π½Π°ΡΠ°ΡΡ, ΡΡΠΎ ΠΈΠ½Π΄Π΅ΠΊΡ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ. ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠΊΠΎΡΠΈΡΡ Π·Π°ΠΏΡΠΎΡ. -
ΠΠ·Π±Π΅Π³Π°ΠΉΡΠ΅ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡΡ: ΠΠΎΠ»Π½ΡΠΉ ΠΏΠ΅ΡΠ΅Π±ΠΎΡ ΡΠ°Π±Π»ΠΈΡΡ (table scan) ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π΄ΠΎΡΠΎΠ³ΠΈΠΌ Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ. EXPLAIN ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ Π²ΡΡΠ²ΠΈΡΡ ΡΠ°ΠΊΠΈΠ΅ ΡΠ»ΡΡΠ°ΠΈ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π·Π°ΠΏΡΠΎΡΡ.
-
JOIN: ΠΡΠΎΠ²Π΅ΡΡΡΠ΅, ΠΊΠ°ΠΊ Π‘Π£ΠΠ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ ΡΠ°Π±Π»ΠΈΡΡ, ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΠΉΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ, Π΄ΠΎΠ±Π°Π²Π»ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π½Π° ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΠΏΠΎΠ»Ρ Π΄Π»Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, EXPLAIN
ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠΎΡΠ½ΡΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ Π΄Π»Ρ Π°Π½Π°Π»ΠΈΠ·Π° ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π² SQL.
ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ
EXPLAIN
ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΊ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΠ΅ΠΌΡΠΌ Π·Π°ΠΏΡΠΎΡΠ°ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌΡΠ΅ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ΡEXPLAIN
. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΡEXPLAIN
ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅. ΠΡΠΈ ΠΏΠΎΠΏΡΡΠΊΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡEXPLAIN
Ρ Π½Π΅ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠΌ ΡΠΈΠΏΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠ° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΎΡΠΈΠ±ΠΊΠ° ΠΈΠ»ΠΈ ΡΠ°ΠΌ Π·Π°ΠΏΡΠΎΡ.EXPLAIN
Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΉ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ.
ΠΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ: Π§ΠΈΡΠ°Π΅ΠΌ EXPLAIN Π½Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΠΊΠ°Ρ , ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ EXPLAIN. Π£Π»ΡΡΡΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΠΎΠ²
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
ΠΠ½Π΄Π΅ΠΊΡ (Index) β ΡΡΠΎ ΠΎΡΠΎΠ±Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ° (Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅Ρ, ΡΡΠΎ ΡΠΊΠΎΡΠ΅Π΅ ΠΌΠ΅ΡΠ°ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, Π½ΠΎ ΠΎΡΠ΅Π½Ρ ΡΡΠ»ΠΎΠ²Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΠ°Π±Π»ΠΈΡ), ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ ΠΏΠΎΠΈΡΠΊΠΎΠ²ΡΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° Π΄Π°Π½Π½ΡΡ . ΠΠ³ΠΎ Π°ΠΊΡΠΈΠ²Π½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ³ΡΠ°Π΅Ρ Π²Π°ΠΆΠ½Π΅ΠΉΡΡΡ ΡΠΎΠ»Ρ Π² ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ sql ΡΠ΅ΡΠ²Π΅ΡΠΎΠ².
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΠΎΠΈΡΠΊΠ° Π΄Π°Π½Π½ΡΡ ΡΠΎΠΊΡΠ°ΡΠ°Π΅ΡΡΡ Π·Π° ΡΡΠ΅Ρ ΠΈΡ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠΈΠ²Π°Π½ΠΈΡ ΠΊΠ°ΠΊ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ, ΡΠ°ΠΊ ΠΈ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΎΠ½ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΊΠ°ΠΊ Π½Π°Π±ΠΎΡ ΡΡΡΠ»ΠΎΠΊ Π½Π° Π΄Π°Π½Π½ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ΅Π½Ρ ΠΏΠΎ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠΌΡ ΡΡΠΎΠ»Π±ΡΡ ΡΠ°Π±Π»ΠΈΡΡ. Π’Π°ΠΊΠΎΠΉ ΡΡΠΎΠ»Π±Π΅Ρ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ. ΠΠ½Π΄Π΅ΠΊΡΡ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΈ ΠΏΠΎ ΡΡΡΠΈ Π²ΡΡΡΡΠΏΠ°ΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌΠΈ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΌΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ°ΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΡ sql-ΡΠ΅ΡΠ²Π΅ΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΡΠ΄Π΅Π»Π°ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π΄Π°Π½Π½ΡΠΌ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ.
Π ΡΠ΅Π»ΠΎΠΌ, ΡΠΎΠ·Π΄Π°Π²Π°Ρ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠ°Π±Π»ΠΈΡΡ, ΠΌΡ ΡΠ΅ΡΡΠ΅ΠΌ ΠΌΠ΅ΡΡΠΎ, Π½ΠΎ ΠΏΡΠΈΠΎΠ±ΡΠ΅ΡΠ°Π΅ΠΌ ΡΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎΠΈΡΠΊΠ°. ΠΡΠ±ΠΎΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ Π°ΠΊΡΡΠ°Π»Π΅Π½ Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΡ, ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΌΡ ΠΎΠΏΡΡΡ ΡΠ΅ΡΡΠ΅ΠΌ, Π½ΠΎ ΡΠΆΠ΅ ΡΠ΅ΡΡΡΡΡ Π½Π° ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΠ°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ ΠΎΡ Π²ΡΠ±ΠΎΡΠ° ΡΠΈΠΏΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΈ ΠΏΠΎΠ»Π΅ΠΉ Π·Π°Π²ΠΈΡΠΈΡ Π΅Π³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΡΡΡ - ΠΈΠ½Π΄Π΅ΠΊΡ Π½Π° ΠΏΠΎΠ»Π΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ Π² Π·Π°ΠΏΡΠΎΡΡ, Π±ΡΠ΄Π΅Ρ Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π΅Π½.
ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°Π±Π»ΠΈΡΠ° ΡΠΎΠ·Π΄Π°Π½Π° ΠΈ Π² Π½Π΅ΠΉ Π΅ΡΠ΅ Π½Π΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², ΠΎΠ½Π° Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΊΠ°ΠΊ ΠΊΡΡΠ° Π΄Π°Π½Π½ΡΡ (Heap). Π Π½Π΅ΠΉ Π²ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ Ρ ΡΠ°Π½ΡΡΡΡ Ρ Π°ΠΎΡΠΈΡΠ½ΠΎ, Π±Π΅Π· ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ°.
ΠΡΠ»ΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΉΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, sql server ΠΏΡΠΎΡΠΊΠ°Π½ΠΈΡΡΠ΅Ρ Π΅Π΅ (Table scan). ΠΠΎΠΊΠ° Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π½Π΅ Π·Π°Π΄Π°Π½Ρ ΠΈΠ½Π΄Π΅ΠΊΡΡ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ (UNIQUE CONSTRAINT
, UNIQUE INDEX
ΠΈΠ»ΠΈ PRIMARY KEY
), ΡΠ΅ΡΠ²Π΅Ρ ΠΏΡΠΎΡΠΈΡΠ°Π΅Ρ Π²ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΠ½ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ (Ρ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ) ΠΈ Π²ΡΠ±Π΅ΡΠ΅Ρ ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡΠΌ ΠΏΠΎΠΈΡΠΊΠ°.
ΠΡΠΎ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅Ρ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ indexes:
- ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΏΠΎΠΈΡΠΊΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ²;
- ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ ΡΠ΅ΡΠ΅Π· ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΡΡΠΈ ΡΡΡΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ.
ΠΠΎ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΡΡΠΊΠΎΡΠΈΡΡ ΠΏΠΎΠΈΡΠΊ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ. ΠΠ»Ρ ΡΠ°Π±Π»ΠΈΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² ΠΎΠ±ΡΡΠ½ΡΠΉ ΠΏΠ΅ΡΠ΅Π±ΠΎΡ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½Π΅Π΅ Π²ΡΠ±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ ΠΏΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌ.
Indexes ΠΈΠΌΠ΅ΡΡ ΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ:
- ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ° Π½Π° Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΈ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ. Π§Π΅ΠΌ Π΄Π»ΠΈΠ½Π½Π΅Π΅ ΠΊΠ»ΡΡ, ΡΠ΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈ ΠΌΠ΅ΡΡΠΎ Π΄Π»Ρ Π΅Π³ΠΎ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ;
- Π·Π°ΠΌΠ΅Π΄Π»ΡΠ΅ΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ (ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π²ΡΡΠ°Π²ΠΎΠΊ, ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π»ΠΈΠ±ΠΎ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ).
ΠΠΎ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΈΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ½ΠΈΠΆΠ°ΡΡ Π½Π΅Π³Π°ΡΠΈΠ²Π½ΡΠΉ ΡΡΡΠ΅ΠΊΡ Π΄Π»Ρ Π²ΡΡΠ΅ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, Π½ΠΎ ΠΈ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡ ΡΠΊΠΎΡΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
Π‘ΡΡΡΠΊΡΡΡΠ°
ΠΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΈΠΌΠ΅ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΡ ΡΡΡΡΠΊΡΡΡΡ. ΠΠ½ΠΈ ΡΠΎΡΡΠΎΡΡ ΠΈΠ·:
- Π½Π°Π±ΠΎΡΠΎΠ² ΡΡΡΠ°Π½ΠΈΡ;
- ΡΠ·Π»ΠΎΠ², ΠΈΠΌΠ΅ΡΡΠΈΡ Π΄ΡΠ΅Π²ΠΎΠ²ΠΈΠ΄Π½ΡΡ ΡΡΡΡΠΊΡΡΡΡ, ΠΈΠ΅ΡΠ°ΡΡ ΠΈΡΠ΅ΡΠΊΡΡ ΠΏΠΎ ΠΏΡΠΈΡΠΎΠ΄Π΅.
ΠΡΠ΅ ΠΎΠ½ΠΈ Ρ ΡΠ°Π½ΡΡΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΠ±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ B-Π΄Π΅ΡΠ΅Π²ΡΠ΅Π² (B-tree). ΠΠ°ΡΠ°Π»ΠΎ ΡΠ°ΠΊΠΎΠ³ΠΎ Π΄Π΅ΡΠ΅Π²Π° ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΎ Π² ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΌ ΡΠ·Π»Π΅ (Π½Π°Ρ ΠΎΠ΄ΡΡΠΈΠΌΡΡ Π½Π° Π²Π΅ΡΡΠΈΠ½Π΅ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΠΈ) ΠΈ ΠΏΠΎ ΡΡΡΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ Β«Π²Ρ ΠΎΠ΄Π½ΠΎΠΉ Π΄Π²Π΅ΡΡΡΒ». ΠΡΠΎΡ ΡΠ·Π΅Π» ΠΈΠΌΠ΅Π΅Ρ ΠΎΠ΄Π½Ρ ΡΡΡΠ°Π½ΠΈΡΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π½Π° ΠΊΠ»ΡΡΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΡΠΎΠ²Π½Π΅ΠΉ.
Π Π½ΠΈΠΆΠ½Π΅ΠΉ ΡΠ°ΡΡΠΈ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΠΈ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Ρ Π»ΠΈΡΡΡΡ Π΄Π΅ΡΠ΅Π²Π° (ΡΠ²Π»ΡΡΡΠΈΠ΅ΡΡ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΌΠΈ ΡΠ·Π»Π°ΠΌΠΈ). ΠΠ»ΠΈΠ½Ρ Π²Π΅ΡΠΎΠΊ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ.
Π ΡΠ°ΠΊΠΎΠΌ Π΄Π΅ΡΠ΅Π²Π΅ ΡΠ±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²Π°Π½Π° ΠΊΠ°ΠΆΠ΄Π°Ρ Π²Π΅ΡΠΊΠ°. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΌΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ ΠΏΡΠΈ Π»ΡΠ±ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π΄Π΅ΡΠ΅Π²ΠΎ ΡΠ½ΠΎΠ²Π° ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΡΠ±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ.
ΠΡΠΈ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌΡ ΡΡΠΎΠ»Π±ΡΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Π½Π°ΡΠΈΠ½Π°Π΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΠΎΠΈΡΠΊΠ° Ρ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΠ·Π»Π° ΠΊ Π½ΠΈΠΆΠ½ΠΈΠΌ, ΠΏΡΠΎΡ ΠΎΠ΄Ρ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠ΅ ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Ρ ΠΈΡ . ΠΠ° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ Π²ΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΠΌΡΡ Π΄Π°Π½Π½ΡΡ . ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΡΡΠΈΠ³Π°Π΅ΡΡΡ Π½ΠΈΠΆΠ½ΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ Π»ΠΈΡΡΡΠ΅Π² (leaf level) ΠΏΠΎΠΈΡΠΊ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ°Π΅ΡΡΡ, Ρ.ΠΊ. ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π°ΠΏΡΠΎΡΠΎΠ² Π½Π°Ρ ΠΎΠ΄ΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
Π’ΠΈΠΏΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² (Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ MS SQL)
Π Microsoft SQL Server ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ: ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠ΅ ΠΈ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠ΅.
ΠΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ
ΠΡΠ½ΠΎΠ²Π½Π°Ρ Π΅Π³ΠΎ Π·Π°Π΄Π°ΡΠ° β ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ Π² Π²ΠΈΠ΄Π΅, ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΏΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠ»ΡΡΠ°. Π’Π°Π±Π»ΠΈΡΠ΅ ΠΈΠ»ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΈΡΡΡ Π»ΠΈΡΡ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ (Clustered index), ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΠ°Π±Π»ΠΈΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²ΡΠ²Π°ΡΡΡΡ Π² Π΅Π΄ΠΈΠ½ΠΎΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅ β Π»ΠΈΠ±ΠΎ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π½ΠΈΡ, Π»ΠΈΠ±ΠΎ ΡΠ±ΡΠ²Π°Π½ΠΈΡ. ΠΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Clustered index.
Π’Π°Π±Π»ΠΈΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π±ΡΠ΄ΡΡ Ρ ΡΠ°Π½ΠΈΡΡΡΡ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ Π»ΠΈΡΡ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, ΠΊΠΎΠ³Π΄Π° ΡΠ°Π±Π»ΠΈΡΠ° ΠΈΠΌΠ΅Π΅Ρ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ. Π‘ΡΡΠΎΠΊΠΈ ΡΠ°Π±Π»ΠΈΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ Clustered index Ρ ΡΠ°Π½ΠΈΡ Π² ΡΡΠΎΠ²Π½ΡΡ Π»ΠΈΡΡΡΠ΅Π².
ΠΡΠ»ΠΈ Ρ ΡΠ°Π±Π»ΠΈΡΡ Π½Π΅Ρ Clustered index, Π² ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ PRIMARY KEY
ΠΈ UNIQUE
, ΠΎΠ½ ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ. ΠΠΎΠ³Π΄Π° Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡ/ΠΊΡΡ ΡΠΎΠ·Π΄Π°Π½Ρ Nonclustered indexes, ΡΠΎ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Clustered index Π²ΡΠ΅ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½Ρ.
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ Π»ΠΈΡΡΡΠ΅Π² Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΈΠ½Π΄Π΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΉ ΠΈΠ»ΠΈ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΉ. ΠΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΊΠ°ΠΊ ΡΠ°Π±Π»ΠΈΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, ΡΠ°ΠΊ ΠΈ ΡΡΡΠ»ΠΊΠΈ, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠ΅ Π½Π° ΡΡΡΠΎΠΊΠΈ Ρ Π½ΠΈΠΌΠΈ.
ΠΠ΅ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ
ΠΠ΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΌΠΈ (Nonclustered) Π½Π°Π·ΡΠ²Π°ΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ:
- Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ β ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΡΠΌ ΠΎΠ½ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ;
- ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π½Π° ΡΡΡΠΎΠΊΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ΅, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ ΡΠ΅Π°Π»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ (Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠ»ΡΡΠ°).
Π§ΡΠΎΠ±Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΡ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΠΎΠ΄Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ. Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ Π½Π° Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Ρ ΡΠ°Π½ΡΡΡΡ.
ΠΠ½ ΠΌΠΎΠΆΠ΅Ρ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π°:
- ΠΊΡΡΡ ΠΈ ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡ ΠΊ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ ΡΡΡΠΎΠΊΠΈ Ρ ΠΈΡΠΊΠΎΠΌΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ;
- ΡΠ°Π±Π»ΠΈΡΡ Ρ Clustered index, ΡΠΊΠ°Π·ΡΠ²Π°Ρ, ΡΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΡΠΎ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ .
Nonclustered indexes ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΡΡΠΎΠ»Π±ΡΠ°ΠΌΠΈ (included column). Π Π·Π½Π°ΡΠΈΡ, Π»ΠΈΡΡΡΡ Π±ΡΠ΄ΡΡ ΡΠΎΡ ΡΠ°Π½ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π½Π΅ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ². ΠΡΠΎ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ Π΄Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΠ±ΠΎΠΉΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ, Π²ΠΎΠ·Π»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ Π½Π° ΠΈΠ½Π΄Π΅ΠΊΡ. ΠΠ°Π½Π½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π½Π΅ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΠ΅ΠΌΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ Π»ΠΈΠ±ΠΎ ΠΎΠ±Ρ ΠΎΠ΄ΠΈΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π½Π° Π΄Π»ΠΈΠ½Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ°.
ΠΠ»Π°Π²Π½ΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° Nonclustered indexes:
- ΠΈΡ Π½Π΅Π»ΡΠ·Ρ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ;
- Π½Π° ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ»ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΡΡΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ (Π΄ΠΎ 999) Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ². ΠΠΎ Π½Π΅ ΡΡΠΎΠΈΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Nonclustered indexes. ΠΡΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ ΠΎΠ½ΠΈ ΡΠΏΠΎΡΠΎΠ±Π½Ρ ΠΊΠ°ΠΊ ΠΏΠΎΠ²ΡΡΠΈΡΡ, ΡΠ°ΠΊ ΠΈ ΠΏΠΎΠ½ΠΈΠ·ΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ.
- Nonclustered indexes ΠΌΠΎΠ³ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡΡΡ Π½Π° Π»ΡΠ±ΡΡ ΡΠ°Π±Π»ΠΈΡΠ°Ρ , Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΈ ΠΈΠΌΠ΅ΡΡΠΈΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ.
Π‘ΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΡΠΈΠΏΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΊΠ°ΠΊ ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΌΠΈ, ΡΠ°ΠΊ ΠΈ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΌΠΈ. ΠΠΈΠΆΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ .
Π€ΠΈΠ»ΡΡΡΡΠ΅ΠΌΡΠΉ
Π€ΠΈΠ»ΡΡΡΡΠ΅ΠΌΡΠΌ (Filtered) ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ Π½Π°Π·ΡΠ²Π°ΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Nonclustered index, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½ ΠΏΡΠ΅Π΄ΠΈΠΊΠ°Ρ ΡΠΈΠ»ΡΡΡΠ° Π΄Π»Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΡΠΈΠΈ ΡΠ°ΡΡΠΈ ΡΡΡΠΎΠΊ Π² ΡΠ°Π±Π»ΠΈΡΠ΅.
Π’ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Filtered index ΡΠΏΠΎΡΠΎΠ±Π΅Π½:
- ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ;
- ΡΠΌΠ΅Π½ΡΡΠΈΡΡ Π·Π°ΡΡΠ°ΡΡ Π½Π° ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ².
Π‘ΠΎΡΡΠ°Π²Π½ΠΎΠΉ
Π‘ΠΎΡΡΠ°Π²Π½ΡΠΌ Π½Π°Π·ΡΠ²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ, ΠΊΠΎΡΠΎΡΡΠΉ:
- ΠΌΠΎΠΆΠ΅Ρ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ (Π΄ΠΎ 16) ΡΡΠΎΠ»Π±ΡΠΎΠ², Π²ΡΡΡΡΠΏΠ°ΡΡΠΈΡ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ;
- ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ ΠΎΠ±ΡΠ΅ΠΉ Π΄Π»ΠΈΠ½ΠΎΠΉ (Π½Π΅ ΠΏΡΠ΅Π²ΡΡΠ°ΡΡΠ΅ΠΉ 900 Π±Π°ΠΉΡ);
- ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΠΎΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ Π΅Π΄ΠΈΠ½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅.
ΠΡΠΎΡΡΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ, Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΡΠΎΡΡΠ°Π²Π½ΡΡ , ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π»ΠΈΡΡ ΠΏΠΎ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠΌΡ ΡΡΠΎΠ»Π±ΡΡ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠΎΡΡΠ°Π²Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΡΠ΅Π»Π΅ΡΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎ, ΠΊΠΎΠ³Π΄Π°:
- Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠΎΠ²ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° ΠΊΠ»ΡΡΠ°ΠΌΠΈ Π²ΡΡΡΡΠΏΠ°ΡΡ Π΄Π²Π° ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΡΠΎΠ»Π±ΡΠΎΠ²;
- Π² ΠΏΠΎΠΈΡΠΊΠΎΠ²ΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π²ΡΠ΅ ΠΏΠΎΠ»Ρ ΡΠΎΡΡΠ°Π²Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΠΎΠΈΡΠΊΠΎΠ²ΡΠΉ Π·Π°ΠΏΡΠΎΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π½Π΅ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½Ρ Π²ΡΠ΅ ΠΏΠΎΠ»Ρ, Π²Π΅ΡΠΎΡΡΠ½Π΅Π΅ Π²ΡΠ΅Π³ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π½Π΅ Π±ΡΠ΄Π΅Ρ.
ΠΡΠ»ΠΈΡΠ½ΡΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ ΡΠ»ΡΠΆΠΈΡΡ ΡΠ΅Π»Π΅ΡΠΎΠ½Π½ΡΠΉ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊ. ΠΠ½ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ ΠΏΠΎ ΡΠ°ΠΌΠΈΠ»ΠΈΠΈ ΠΈ ΠΈΠΌΠ΅Π½ΠΈ, Ρ.ΠΊ. ΠΌΠ½ΠΎΠ³ΠΎ Π»ΡΠ΄Π΅ΠΉ ΠΈΠΌΠ΅ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΡ ΡΠ°ΠΌΠΈΠ»ΠΈΡ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π»ΠΎΠ³ΠΈΡΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΈ ΠΏΠΎ ΡΠ°ΠΌΠΈΠ»ΠΈΠΈ, ΠΈ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ.
ΠΡΠΌΠ΅ΡΠΈΠΌ, ΡΡΠΎ Π½Π°ΠΈΠ²ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ ΠΏΠ΅ΡΠ²ΡΠΌ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌ, ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΠΌΡΠΌ Π² CREATE INDEX
. ΠΠΎΡΠΎΠΌΡ, Π² ΡΠΈΡΠ»Π΅ ΠΏΠ΅ΡΠ²ΡΡ
Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅. Π§ΡΠΎΠ±Ρ ΠΈΠ½Π΄Π΅ΠΊΡ Π±ΡΠ» Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½ ΠΏΡΠΈ Π²ΡΠ±ΠΎΡΠΊΠ΅ Π΄Π°Π½Π½ΡΡ
Π² ΡΠ°Π±Π»ΠΈΡΠ΅, ΡΠ°ΠΌ Π·Π°ΠΏΡΠΎΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΡΡΠ»Π°ΡΡΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° ΠΊΠΎΠ»ΠΎΠ½ΠΊΡ, ΡΠΊΠ°Π·Π°Π½Π½ΡΡ ΠΏΠ΅ΡΠ²ΠΎΠΉ.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΎΡΡΠ°Π²Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π·Π° ΡΡΠ΅Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠΎΠΈΡΠΊΠ° Π΄Π°Π½Π½ΡΡ ΡΠ΅ΡΠ²Π΅Ρ Π±ΡΠ΄Π΅Ρ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΅Π³ΠΎ, ΡΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΡΠ½ΠΈΠ·ΠΈΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΠΈΡΠ»ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ².
Query Optimizer ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΈΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΡΡΡΠΊΡΡΡΡ Π·Π°ΠΏΡΠΎΡΠ°.
ΠΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ± ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ: ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ Π·Π°ΠΏΡΠΎΡΠ°. Π§Π°ΡΡΡ ΠΏΠ΅ΡΠ²Π°Ρ, ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ Π·Π°ΠΏΡΠΎΡΠΎΠ². ΠΡΠΎΡΠ°Ρ ΡΠ°ΡΡΡ
Π£Π½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ
Π£Π½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ (Unique) Π½Π°Π·ΡΠ²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠΈΠΉ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Ρ ΡΡΡΠΎΠΊ ΠΏΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ ΠΊΠ»ΡΡΡ ΠΈ Π³Π°ΡΠ°Π½ΡΠΈΡΡΡΡΠΈΠΉ, ΡΡΠΎ Π² ΠΊΠ»ΡΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. ΠΠ»Ρ ΡΠΎΡΡΠ°Π²Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° ΠΏΠΎΠ½ΡΡΠΈΠ΅ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΡΡΠΈ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Π²ΡΠ΅Ρ index columns, Π½ΠΎ Π½Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ Π½Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΡΠ»ΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ Unique index ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎ ΡΡΠ΄Ρ ΡΡΠΎΠ»Π±ΡΠΎΠ², ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ ΠΊΠ°ΠΆΠ΄Π°Ρ Π²Π°ΡΠΈΠ°ΡΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π² ΠΊΠ»ΡΡΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΉ.
SQL ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Unique index Π΄Π»Ρ ΠΊΠ»ΡΡΠ΅Π²ΡΡ
ΡΡΠΎΠ»Π±ΡΠΎΠ² ΠΏΡΠΈ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ UNIQUE
Π»ΠΈΠ±ΠΎ PRIMARY KEY
. ΠΠΎ ΠΎΠ½ ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ Π»ΠΈΡΡ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΎΡΡΡΡΡΡΠ²ΠΈΡ Π΄ΡΠ±Π»Π΅ΠΉ Π² ΠΊΠ»ΡΡΠ΅Π²ΡΡ
ΡΡΠΎΠ»Π±ΡΠ°Ρ
ΡΠ°Π±Π»ΠΈΡΡ.
Π£Π½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ ΡΡΠΎΠ»Π±ΡΠ°:
- ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΌ ΠΊΠ»ΡΡΠΎΠΌ (Π½Π° ΠΎΠ΄ΠΈΠ½ ΡΡΠΎΠ»Π±Π΅Ρ Π»ΠΈΠ±ΠΎ ΡΡΠ°Π·Ρ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ), ΠΏΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΈ, ΡΡΠΎ ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠ°Π½Π΅Π΅ Π½Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Π»ΡΡ. Π ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Π²ΡΠ΅-ΡΠ°ΠΊΠΈ ΡΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π½, ΡΠ΅ΡΠ²Π΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠΌΡ ΠΊΠ»ΡΡΡ;
- ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ Π½Π° ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ β ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Unique Nonclustered index. ΠΠΎΠ³Π΄Π° ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ Π½Π΅ Π±ΡΠ» ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ Π·Π°ΡΠ°Π½Π΅Π΅, Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Unique Clustered index.
ΠΠΎΠ»ΠΎΠ½ΠΎΡΠ½ΡΠΉ
ΠΠΎΠ»ΠΎΠ½ΠΎΡΠ½ΡΠΌ (Columnstore) Π½Π°Π·ΡΠ²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π΄Π°Π½Π½ΡΠ΅ Ρ ΡΠ°Π½ΡΡΡΡ Π² ΡΡΠΎΠ»Π±ΡΠ°Ρ . ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Columnstore indexes Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ΅Π»Π΅ΡΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π΄Π»Ρ ΠΊΡΡΠΏΠ½ΡΡ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡ, Ρ.ΠΊ. ΠΎΠ½ΠΈ ΠΏΠΎΠΌΠΎΠ³ΡΡ:
- ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·;
- ΡΠ°Π·ΠΌΠ΅ΡΡ Π΄Π°Π½Π½ΡΡ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ (Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΈΡ ΡΠΆΠ°ΡΠΈΡ).
ΠΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅Π½Π½ΡΠΉ
ΠΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅Π½Π½ΡΠΌ (Spatial) Π½Π°Π·ΡΠ²Π°ΡΡ ΡΠΈΠΏ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅Π³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎΠ»Π±ΡΡ Ρ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅Π½Π½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ (ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠ΅ Π² ΡΠΈΠΏΠ°Ρ Geography ΠΈΠ»ΠΈ Geometry). Spatial index ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΈΠ»ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅Π½Π½ΡΡ ΡΡΠΎΠ»Π±ΡΠΎΠ² ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π½ΠΈΡ .
ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° β Π½Π°Π»ΠΈΡΠΈΠ΅ PRIMARY KEY
Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡ.
ΠΠΎΠ»Π½ΠΎΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ
ΠΠΎΠ»Π½ΠΎΡΠ΅ΠΊΡΡΠΎΠ²ΡΠ΅ (Full-text) ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΠΏΠΎΠΈΡΠΊΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΠ»ΠΎΠ² Π² ΡΡΡΠΎΠΊΠ°Ρ , Π³Π΄Π΅ Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π² ΡΠΈΠΌΠ²ΠΎΠ»Π°Ρ .
ΠΠ΅ΠΉΡΡΠ²ΠΈΡ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ Full-text indexes Π½Π°Π·ΡΠ²Π°ΡΡΡΡ Β«Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡΠΌΠΈΒ». ΠΡΡΡΠ΅ΡΠ°ΡΡΡΡ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ:
- ΠΏΠΎΠ»Π½ΠΎΠ΅ β ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ SQL ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ Full-text index. Π Π°Π·ΠΌΠ΅Ρ ΡΠ°Π±Π»ΠΈΡΡ Π²Π»ΠΈΡΠ΅Ρ Π½Π° Π·Π°ΡΡΠ΅Π±ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΡΠ΅ΡΡΡΡΠΎΠ². ΠΡΠΈ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΡΡΠ΅Π±ΡΡΡΡΡ ΡΠ΅ΡΡΡΡΡ Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°. ΠΠΎΡΠΎΠΌΡ ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΡΠΊΠ»Π°Π΄ΡΠ²Π°Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ°;
- ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π½Π° ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ β ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°ΡΡ Full-text index ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ (ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ).
ΠΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠΉ
ΠΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠΌ (Covering) Π½Π°Π·ΡΠ²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ Π½Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ Π·Π°ΠΏΡΠΎΡ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΠΌΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² ΠΏΠΎΠ»Π½ΠΎΠΌ ΠΎΠ±ΡΠ΅ΠΌΠ΅ Ρ Π»ΠΈΡΡΡΠ΅Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ°, Π½Π΅ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡ ΠΊ Π·Π°ΠΏΠΈΡΡΠΌ ΡΠ°Π±Π»ΠΈΡΡ. Π Π·Π½Π°ΡΠΈΡ, Π² Covering index Ρ ΡΠ°Π½ΠΈΡΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΎΡΠ²Π΅ΡΠ° Π½Π° Π·Π°ΠΏΡΠΎΡ. ΠΠΎΡΠΎΠΌΡ Π½Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅.
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠΎΠΌΡ, ΡΡΠΎ ΠΎΡΠ²Π΅Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π±Π΅Π· ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡΡ, ΠΏΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π±ΡΡΡΡΠ΅Π΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ . ΠΠ΄Π½Π°ΠΊΠΎ, ΠΎΠ½ΠΈ ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π±ΠΎΠ»ΡΡΠΈΠΌΠΈ, ΠΏΠΎΡΠΎΠΌΡ Π·Π»ΠΎΡΠΏΠΎΡΡΠ΅Π±Π»ΡΡΡ ΠΈΠΌΠΈ Π½Π΅ ΡΡΠΎΠΈΡ.
XML-ΠΈΠ½Π΄Π΅ΠΊΡ
XML β ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠΈΠΏ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΉ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ Π² ΡΡΠΎΠ»Π±ΡΠ°Ρ ΡΠ°Π±Π»ΠΈΡΡ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΌΠΈ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅. ΠΠ½ Π΄Π΅Π»Π°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΠΏΠΎΠΈΡΠΊΠΎΠ²ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΊ Π½ΠΈΠΌ.
ΠΡΡΡΠ΅ΡΠ°ΡΡΡΡ XML-indexes:
- ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠ΅ β ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΡΡ, Ρ ΡΠ°Π½ΡΡ Π² ΡΡΠΎΠ»Π±ΡΠ°Ρ XML ΡΠ΅Π³ΠΈ, ΠΏΡΡΠΈ, Π·Π½Π°ΡΠ΅Π½ΠΈΡ. Π¦Π΅Π»Π΅ΡΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ, ΠΊΠΎΠ³Π΄Π° ΡΠ°Π±Π»ΠΈΡΠ° ΠΏΠΎ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠΌΡ ΠΊΠ»ΡΡΡ ΠΈΠΌΠ΅Π΅Ρ ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ;
- Π²ΡΠΎΡΠΈΡΠ½ΡΠ΅ β ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π»ΠΈΡΡ Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡ Ρ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΌ XML-index. ΠΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π΄Π»Ρ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ ΡΠΈΠΏΡ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ XML-ΡΡΠΎΠ»Π±ΡΠ°ΠΌ. ΠΡΡΡΠ΅ΡΠ°ΡΡΡΡ ΡΠΈΠΏΡ XML-indexes:
PATH
,VALUE
,PROPERTY
.
ΠΠ½Π΄Π΅ΠΊΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π² ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡΠ°Ρ
ΠΠΊΡΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡ Π΄Π°Π½Π½ΡΡ :
- ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ (In-Memory OLTP). Π ΡΠ°ΠΊΠΎΠ²ΡΠΌ ΠΎΡΠ½ΠΎΡΡΡΡΡ Π₯ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ (Hash);
- Nonclustered indexes, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π΄Π»Ρ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ (ΠΊΠ°ΠΊ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ΅Π½Π½ΠΎΠ³ΠΎ, ΡΠ°ΠΊ ΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π½ΠΎΠ³ΠΎ) ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΡΡΡΡ Π΄Π»Ρ ΠΏΠ°ΠΌΡΡΠΈ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² ms sql server
ΠΠΎΠ»ΡΠ·Π° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΎΡΠ΅Π²ΠΈΠ΄Π½Π°, ΠΏΠΎΡΠΎΠΌΡ ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΊΡΠ°ΠΉΠ½Π΅ Π°ΠΊΠΊΡΡΠ°ΡΠ½ΠΎ. Π‘ΠΎΠ·Π΄Π°Π½Π½ΡΠ΅ ΡΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΠΏΠΎΡΠΎΠ±Π½Ρ ΡΠ»ΡΡΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, Π° Π½Π΅ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ β ΠΏΠΎΠ½ΠΈΠ·ΠΈΡΡ.
ΠΠ½Π΄Π΅ΠΊΡΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ°, ΠΏΠΎΡΠΎΠΌΡ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ ΡΠΌΡΡΠ»Π° ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈΡ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ Π½ΡΠΆΠ½ΠΎ. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΡΡΡΠΎΠΊ, Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡΡΡ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΡ. ΠΡΠΎ Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ ΡΠ΅ΡΡΡΡΠΎΠ² ΠΈ Π³ΡΠΎΠ·ΠΈΡΡ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎ ΠΏΡΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΠΎΠ±Π»ΡΠ΄Π°ΡΡ ΡΡΠ΄ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΊΠ°ΠΊ ΠΊ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½ΡΡ , ΡΠ°ΠΊ ΠΈ ΠΊ Π·Π°ΠΏΡΠΎΡΠ°ΠΌ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½ΡΠΌ ΠΊ Π½ΠΈΠΌ.
ΠΠ°Π·Ρ Π΄Π°Π½Π½ΡΡ
ΠΠ°ΠΊ ΡΠΊΠ°Π·Π°Π½ΠΎ Π²ΡΡΠ΅, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π½Π°ΠΏΡΡΠΌΡΡ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ². ΠΡΠΈ ΠΏΠΎΡΡΡΠΏΠ»Π΅Π½ΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠ° ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡ Π΅Π΅, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Ρ Π±ΡΡΡΡΡΠΉ ΠΏΠΎΠΈΡΠΊ Π΄Π°Π½Π½ΡΡ Π»ΠΈΠ±ΠΎ ΡΠ½ΠΈΠΆΠ°ΡΡ, Ρ.ΠΊ. ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ Π±ΡΠ΄ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ ΠΈ ΠΎΠ½ΠΈ, Π΄Π°Π±Ρ ΠΎΡΡΠ°ΠΆΠ°ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΡΠ΅ Π½Π°Π΄ Π΄Π°Π½Π½ΡΠΌΠΈ. Π Π½Π΅ Π²Π°ΠΆΠ½ΠΎ, ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Ρ Π½ΠΈΠΌΠΈ β Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅, ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅.
ΠΠΎΡΠΎΠΌΡ, ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΠ»Π°Π½Π° ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ ΠΏΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΈΠ΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ ΡΠΎΠ²Π΅ΡΠΎΠ² ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠΎΠ²:
- ΠΡΠ»ΠΈ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ ΡΠ°ΡΡΠΎΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅, ΡΠΎ Π΄Π»Ρ Π½Π΅Π΅ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ².
- ΠΠ»Ρ ΡΠ°Π±Π»ΠΈΡΡ ΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎ Π±ΡΠ΄ΡΡ ΡΠ΅Π΄ΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎ ΡΠΈΡΠ»ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠ»ΡΡΡΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ². ΠΠΎ Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΌΠ° Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ΅Π»Π΅ΡΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎ Π²ΠΎΠΎΠ±ΡΠ΅ ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠΈΡΠΊ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π΄ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ ΠΎΠ±ΡΡΠ½ΠΎΠ΅ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ.
- ΠΠ»Ρ Clustered indexes ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ°ΠΌΡΠ΅ ΠΊΠΎΡΠΎΡΠΊΠΈΠ΅ ΠΏΠΎΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΠΏΡΡΡΠΈΠΌΡ. ΠΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΈΡ
ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π½Π° ΡΡΠΎΠ»Π±ΡΠ°Ρ
Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΈ Π² ΠΊΠΎΡΠΎΡΡΡ
Π½Π΅ Π΄ΠΎΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅
NULL
. ΠΠΎ ΡΡΠΎΠΉ ΠΏΡΠΈΡΠΈΠ½Π΅ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎPRIMARY KEY
Π²ΡΡΡΡΠΏΠ°Π΅Ρ Π² ΡΠΎΠ»ΠΈ Clustered index. - ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π½Π°ΠΏΡΡΠΌΡΡ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠΎΠ³ΠΎ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² ΡΡΠΎΠ»Π±ΡΠ΅. ΠΠ½Π° ΡΠ½ΠΈΠΆΠ°Π΅ΡΡΡ Ρ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ Π΄ΡΠ±Π»Π΅ΠΉ Π΅ΡΠ»ΠΈ Π² ΡΡΠΎΠ»Π±ΡΠ΅ ΠΈ ΡΠ°ΡΡΠ΅Ρ Ρ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΠ΅ΠΌ. ΠΠΎΡΠΎΠΌΡ, ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ.
- ΠΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΡΡΠ°Π²Π½ΠΎΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ, ΡΠΎ Π² Π½Π΅ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΡΠΎΠ»Π±ΡΠΎΠ². ΠΠ΅ΡΠ²ΡΠΌΠΈ ΠΈΠ΄ΡΡ ΡΠ΅, Π² ΠΊΠΎΡΠΎΡΡΡ
Π² Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΡ
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ
WHERE
. ΠΠ° Π½ΠΈΠΌΠΈ β ΡΡΠΎΠ»Π±ΡΡ Ρ Π½Π°ΠΈΠ²ΡΡΡΠΈΠΌΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌΠΈ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. ΠΡΡΠ°Π»ΡΠ½ΡΠ΅ Π²ΡΡΡΡΠ°ΠΈΠ²Π°ΡΡΡΡ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ ΠΏΠΎΠ½ΠΈΠΆΠ΅Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Ρ. - ΠΠΎΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π½Π° Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΡΡ ΡΡΠΎΠ»Π±ΡΠ°Ρ ΡΠ°Π±Π»ΠΈΡΡ, Π½ΠΎ Π»ΠΈΡΡ ΠΏΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΈ ΡΠΎΠ±Π»ΡΠ΄Π΅Π½ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ (Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ»Π±ΡΠ° ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ, Ρ.Π΅. ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡΠ° Π²Ρ ΠΎΠ΄ΡΡΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Π²ΡΠ 10000 ΅Π³Π΄Π° Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΌ).
ΠΠ°ΠΏΡΠΎΡΡ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ
ΠΡΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π²ΡΠΎΡΡΠΌ Π²Π°ΠΆΠ½ΡΠΌ ΠΏΡΠ½ΠΊΡΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈ ΡΡΠ΅Ρ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π·Π°ΠΏΡΠΎΡΡ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ . ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡ ΡΠ°ΡΡΠΎΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ , Π° ΡΠ°ΠΊΠΆΠ΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΎΠ²:
- ΠΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Π΅Π΅, ΡΡΠΎΠ±Ρ ΠΎΠ΄ΠΈΠ½ Π·Π°ΠΏΡΠΎΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π» Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅Π΅ ΡΠΈΡΠ»ΠΎ ΡΡΡΠΎΠΊ, Π½Π΅ΠΆΠ΅Π»ΠΈ ΡΠ°Π·Π±ΠΈΠ²Π°ΡΡ ΠΈΡ Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π΅ ΡΠΈΡΠ»ΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ².
- ΠΠ° ΡΡΠΎΠ»Π±ΡΠ°Ρ
, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ
Π² Π·Π°ΠΏΡΠΎΡΠ°Ρ
Ρ
WHERE
ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ, ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Π΅Π΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Nonclustered index Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΏΠΎΠΈΡΠΊΠ° ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π²JOIN
. - Π‘Π»Π΅Π΄ΡΠ΅Ρ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΠΎΠ»Π±ΡΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π² ΠΏΠΎΠΈΡΠΊΠΎΠ²ΡΡ Π·Π°ΠΏΡΠΎΡΠ°Ρ Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌ.
ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²
ΠΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π»ΡΠ±ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Ρ ΡΠ°Π±Π»ΠΈΡΠ½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ sql ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ Π² ΡΠΎΡ ΠΆΠ΅ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΡΠ°Π²ΠΊΠΈ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ . Π‘ΠΏΡΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π²ΡΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΡΠΏΡΠΎΠ²ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ . Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅, ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π·Π±ΡΠΎΡΠ°ΡΡ ΠΏΠΎ Π²ΡΠ΅ΠΉ Π±Π°Π·Π΅.
ΠΠΎΠ΄ΠΎΠ±Π½Π°Ρ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ°ΡΡ ΠΏΡΠΈΡΠΈΠ½ΠΎΠΉ ΠΏΠΎΠ½ΠΈΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ. ΠΠΎΡΠΎΠΌΡ ΠΊΡΠ°ΠΉΠ½Π΅ Π²Π°ΠΆΠ½ΠΎ Π²ΡΠ΅ΠΌΡ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡ Π΄Π΅ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ. Π ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌ ΠΏΠΎ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΎΡΠ½ΠΎΡΡΡ ΡΠ΅ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΠΈ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ².
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΡΠΈ β ΡΠ΅ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅, ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΡΡΡΠ½ΠΈΡΡ ΡΡΠ΅ΠΏΠ΅Π½Ρ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ . ΠΠ½Π° ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± Π΄Π΅ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π±ΡΠ΄Π΅Ρ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌ ΠΈ ΡΡΠΎ Π²ΡΠ±ΡΠ°ΡΡ.
Π‘ΠΎΠ³Π»Π°ΡΠ½ΠΎ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡΠΌ Microsoft, ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π±ΡΠ΄ΡΡ Π·Π°Π²ΠΈΡΠ΅ΡΡ ΠΎΡ ΡΡΠΎΠ²Π½Ρ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ:
- ΠΌΠ΅Π½ΡΡΠ΅ 5% β ΠΎ Π΄Π΅ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΠΎΠΊΠ° Π·Π°Π±ΡΡΡ;
- ΠΎΡ 5 Π΄ΠΎ 30% β ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ΅ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΡΠΎ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠ΅ΡΡΡΡΠΎΠ² ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΠΈ Π±Π΅Π· Π΄ΠΎΠ»Π³ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ;
- ΡΠ²ΡΡΠ΅ 30% β ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΡΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΡΡΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ.
Π Π΅ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°
Π Π΅ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ Π½Π°Π·ΡΠ²Π°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. Π Π΅Π³ΠΎ Ρ ΠΎΠ΄Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π΄Π΅ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΡ ΠΈ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΏΠΎ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌ ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡΠΌ. ΠΠΎΠ²ΠΎΡΡ ΠΏΡΠΎΡΡΡΠΌ ΡΠ·ΡΠΊΠΎΠΌ β Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΡΠΎΡΡΠΎΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΏΠΎΡΡΠ΄ΠΎΡΠΈΠ²Π°Π½ΠΈΠ΅ ΡΡΡΠ°Π½ΠΈΡ. Π ΠΎΡΠ½ΠΎΠ²Π΅ ΠΏΠ΅ΡΠ΅ΡΠΏΠΎΡΡΠ΄ΠΎΡΠΈΠ²Π°Π½ΠΈΡ Π»Π΅ΠΆΠΈΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ ΡΠ·Π»ΠΎΠ² (Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΠ΅ ΡΠ»Π΅Π²Π° Π½Π°ΠΏΡΠ°Π²ΠΎ).
ΠΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°
ΠΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅ΠΌ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΠΏΠΎ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΠ½ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΡΡΡΠ°Π½Π΅Π½ΠΈΠΈ ΡΡΠ°ΡΠΎΠ³ΠΎ ΠΈ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ.
ΠΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π² ΠΡΠ΅, ΡΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π½Π°ΡΡ ΠΏΡΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΡ MS SQL
ΠΠ±ΡΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ
ΠΠ±Π»Π°ΡΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ | ΠΠ°ΡΡΠΈΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ | Π¨Π°ΡΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ | Π Π΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ |
---|---|---|---|
ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ | ΠΠΎΠ²ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ | Π£ΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ | ΠΠΎΠ²ΡΡΠ΅Π½ΠΈΠ΅ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΡΡΠΈ |
ΠΠ΅ΡΠΎΠ΄ | Π Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ | Π Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΎΠ±ΡΠ΅ΠΌΡ | ΠΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅ΡΠ²Π΅ΡΠ°ΠΌΠΈ |
Π Π°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ | ΠΠΎΡΠΎΠΊΠΎΠ²ΠΎΠ΅ | Π€ΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ΅ | ΠΠΎ Π²Π΅Π΄ΡΡΠΈΠΌ ΠΈ Π²Π΅Π΄ΠΎΠΌΡΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ°ΠΌ |
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
ΠΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ β ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠ΅ΡΡΡΡΠΎΠ² ΡΠΈΡΡΠ΅ΠΌΡ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π±ΠΎΠ»ΡΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΌΠΎΠ² Π΄Π°Π½Π½ΡΡ ΠΈ Π½Π°Π³ΡΡΠ·ΠΊΠΈ. ΠΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΡΠ²Π°Π΅Ρ Π΄Π²ΡΡ ΡΠΈΠΏΠΎΠ²:
- ΠΠ΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ΅ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ (Vertical Scaling, Scale-Up): Π£Π²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΡΠ½ΠΎΡΡΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ², ΠΏΠ°ΠΌΡΡΠΈ ΠΈΠ»ΠΈ Π΄ΠΈΡΠΊΠΎΠ²).
ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°: Π£Π²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π±Π΅Π· Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ.
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ: ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΡ.
- ΠΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ (Horizontal Scaling, Scale-Out): ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² Π΄Π»Ρ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π½Π°Π³ΡΡΠ·ΠΊΠΈ.
ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°: ΠΠ΅Π³ΠΊΠΎ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΡΡΡ, ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π½Π΅ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ².
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ: Π’ΡΠ΅Π±ΡΠ΅Ρ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΠΎΠ³ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°Π½ΠΈΡ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ ΠΈ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π½Π°Π³ΡΡΠ·ΠΊΠΈ.
ΠΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ: ΠΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΈ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ΅ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
Π Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ β ΡΡΠΎ ΠΌΠ΅ΡΠΎΠ΄ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π½Π° Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π»ΠΊΠΈΠ΅ ΡΠ°ΡΡΠΈ, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠ΅ ΡΠ°Π·Π΄Π΅Π»Π°ΠΌΠΈ (partitions). ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·Π΄Π΅Π» ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ, ΡΡΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΠΌΠΈ.
Π¦Π΅Π»Ρ: Π£Π²Π΅Π»ΠΈΡΠΈΡΡ ΡΠΊΠΎΡΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ², ΡΠΌΠ΅Π½ΡΡΠΈΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ ΡΠΏΡΠΎΡΡΠΈΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΠΌΠΈ.
Π’ΠΈΠΏΡ ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΡ:
- ΠΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ (horizontal partitioning) β ΡΡΡΠΎΠΊΠΈ ΡΠ°Π±Π»ΠΈΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΠΏΠΎ ΡΠ°Π·Π½ΡΠΌ ΡΠ°Π·Π΄Π΅Π»Π°ΠΌ.
- ΠΠ΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ (vertical partitioning) β ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΡΠ°Π±Π»ΠΈΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΠΏΠΎ ΡΠ°Π·Π½ΡΠΌ ΡΠ°Π·Π΄Π΅Π»Π°ΠΌ.
ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°: ΠΡΡΡΡΠ°Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π±ΠΎΠ»ΡΡΠΈΡ Π½Π°Π±ΠΎΡΠΎΠ² Π΄Π°Π½Π½ΡΡ , ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΠΌΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΡΠ°ΡΡΡ ΡΠ°Π·Π΄Π΅Π»ΠΎΠ²).
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ: Π½Π΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π² ΡΠ»ΡΡΠ°ΡΡ , ΠΊΠΎΠ³Π΄Π° Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π±ΡΠΊΠ°ΠΏ ΠΈΠ»ΠΈ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΈΠ· Π±ΡΠΊΠ°ΠΏΠ°, ΠΈ Π½Π΅ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ ΠΌΠ΅ΡΡΠΎ Π½Π° Π΄ΠΈΡΠΊΠ΅.
ΠΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Ρ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ ΠΏΠ°ΡΡΠΈΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π»Ρ PostgreSQL ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ: ΠΠ°ΡΡΠΈΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡ Π² PostgreSQL
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
Π¨Π°ΡΠ΄ΠΈΠ½Π³ β ΡΡΠΎ ΠΌΠ΅ΡΠΎΠ΄ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±Π°Π· Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² (ΡΠ°ΡΠ΄ΠΎΠ²), ΡΡΠΎΠ±Ρ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° ΠΎΠ΄ΠΈΠ½ ΡΠ΅ΡΠ²Π΅Ρ ΠΈ ΠΏΠΎΠ²ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠ°ΠΆΠ΄ΡΠΉ "ΡΠ°ΡΠ΄" Ρ ΡΠ°Π½ΠΈΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ Π½Π°Π±ΠΎΡ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΠΏΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ°ΠΌ ΠΏΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎ Π³Π΅ΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΠ΅Π³ΠΈΠΎΠ½Π°ΠΌ ΠΈΠ»ΠΈ ΠΏΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ°ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ).
Π¦Π΅Π»Ρ: ΠΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ ΡΠΎΡΡΠ° Π΄Π°Π½Π½ΡΡ ΠΈ Π½Π°Π³ΡΡΠ·ΠΊΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΡ, ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΡ ΠΈΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ².
ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°: ΠΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, ΡΠ½ΠΈΠΆΠ°Π΅Ρ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° ΠΎΠ΄ΠΈΠ½ ΡΠ΅ΡΠ²Π΅Ρ, ΡΠ»ΡΡΡΠ°Π΅Ρ ΠΎΡΠΊΠ°Π·ΠΎΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡΡ ΠΈ ΡΠΊΠΎΡΠΎΡΡΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π΄Π°Π½Π½ΡΠΌ.
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ: ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ (ΠΏΠΎΡΠ΅ΡΡ ΡΠ°ΡΡΠΈ Π΄Π°Π½Π½ΡΡ , ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°), Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΡΠΈΡΠΊ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΌΠ΅Π½Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ. ΠΠ΅ΡΠ±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ (ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΠ΅ΡΠ²Π΅Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ Π±ΠΎΠ»Π΅Π΅ Π·Π°Π³ΡΡΠΆΠ΅Π½Π½ΡΠΌ). ΠΠΎΡΠ΅ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈ ΡΠ»ΠΎΠΆΠ½ΡΡ Π·Π°ΠΏΡΠΎΡΠ°Ρ (ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΊ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΡΠ°ΡΠ΄Π°ΠΌ).
ΠΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ: Π¨Π°ΡΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
Π Π΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ β ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π½Π° Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ΅ΡΠ²Π΅ΡΡ Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΎΡΠΊΠ°Π·ΠΎΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡΠΈ ΡΠΈΡΡΠ΅ΠΌΡ. Π Π΅ΠΏΠ»ΠΈΠΊΠΈ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠ³ΡΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π½Π° ΡΠ΅Ρ ΠΆΠ΅ ΠΈΠ»ΠΈ Π½Π° ΡΠ°Π·Π½ΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ°Ρ , ΠΈ ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π½Π°Π³ΡΡΠ·ΠΊΠΈ Π½Π° ΡΡΠ΅Π½ΠΈΠ΅, ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ»ΠΈ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎΠ³ΠΎ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ.
Π¦Π΅Π»Ρ: ΠΠΎΠ²ΡΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ , ΡΠ»ΡΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΡΠ΅Π½ΠΈΡ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈ ΡΠ±ΠΎΡΡ (failover).
Π’ΠΈΠΏΡ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ:
- Π‘ΠΈΠ½Ρ ΡΠΎΠ½Π½Π°Ρ β ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΠΊΠΎ Π²ΡΠ΅ΠΌ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΠΌ.
- ΠΡΠΈΠ½Ρ ΡΠΎΠ½Π½Π°Ρ β Π΄Π°Π½Π½ΡΠ΅ ΠΊΠΎΠΏΠΈΡΡΡΡΡΡ Ρ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠΉ Π·Π°Π΄Π΅ΡΠΆΠΊΠΎΠΉ.
ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°: ΠΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π²ΡΡΠΎΠΊΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡ, Π·Π°ΡΠΈΡΡ ΠΎΡ ΠΏΠΎΡΠ΅ΡΠΈ Π΄Π°Π½Π½ΡΡ , Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΠΊΡ Π½Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΡΠΈ Π±ΠΎΠ»ΡΡΠΎΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΡΠ΅Π½ΠΈΡ.
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ: Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΠΈΠ΅ Π·Π°ΡΡΠ°ΡΡ Π½Π° Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ² ΠΎΠ΄Π½ΠΈΡ ΠΈ ΡΠ΅Ρ ΠΆΠ΅ Π΄Π°Π½Π½ΡΡ , Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΠΏΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠ° Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ ΡΡΠ°ΡΠΈΠΊ, Π½Π΅ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅.
ΠΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ: Π Π΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΡ β ΡΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ ΠΊΠ°ΠΊ Π΅Π΄ΠΈΠ½ΠΎΠ΅ ΡΠ΅Π»ΠΎΠ΅. ΠΡΠ»ΠΈ Ρ ΠΎΡΡ Π±Ρ ΠΎΠ΄Π½Π° ΠΈΠ· ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π½Π΅ ΡΠ΄Π°ΡΡΡΡ, Π²ΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ ΠΎΡΠΊΠ°ΡΡΠ²Π°Π΅ΡΡΡ, ΡΡΠΎΠ±Ρ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ . ΠΠ½Π° Π·Π°ΡΠΈΡΠ°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ Β«Π²ΡΡ, ΠΈΠ»ΠΈ Π½ΠΈΡΠ΅Π³ΠΎΒ».
ΠΡΠΈΠΌΠ΅Ρ:
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π΄Π»Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΡΠ°ΡΡΡΠ° Π·Π°ΠΊΠ°Π·Π° ΠΈ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠΎΠ²Π°ΡΠ° Π² ΡΠ°Π±Π»ΠΈΡΠ΅ inventory
.
BEGIN TRANSACTION;
-- ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ orders
UPDATE orders
SET status = 'shipped'
WHERE order_id = 123;
--ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ inventory
UPDATE inventory
SET quantity = quantity - 1
WHERE product_id = 456;
COMMIT TRANSACTION;
ΠΡΠ»ΠΈ ΠΎΠ±Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° Π·Π°Π²Π΅ΡΡΠ°ΡΡΡΡ ΡΡΠΏΠ΅ΡΠ½ΠΎ, ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ ΡΠΈΠΊΡΠΈΡΡΠ΅ΡΡΡ, ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠΌΠΈ.
ΠΡΠΎΡΡΠΎΠ΅ ΠΎΠ±ΡΡΡΠ½Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ: Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
Π‘Π²ΠΎΠΉΡΡΠ²Π° ACID ΠΈ Π Π‘Π£ΠΠ
Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΡΠ΅ΡΡΡΡΠΌΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π°ΠΌΠΈ: Π°ΡΠΎΠΌΠ°ΡΠ½ΠΎΡΡΡ, ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ, ΠΈΠ·ΠΎΠ»ΡΡΠΈΡ ΠΈ Π΄ΠΎΠ»Π³ΠΎΠ²Π΅ΡΠ½ΠΎΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±ΡΡΠ½ΠΎ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°ΡΡΡΡ Π°Π±Π±ΡΠ΅Π²ΠΈΠ°ΡΡΡΠΎΠΉ ACID ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡΡ ΠΈ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ Π² ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ .
- ΠΠ΅ΡΠ°Π·ΡΡΠ²Π½ΠΎΡΡΡ ΠΈΠ»ΠΈ Π°ΡΠΎΠΌΠ°ΡΠ½ΠΎΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π²ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡ Π΄Π»Ρ ΡΠΎΠ²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ - ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ, Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΎΡΠΊΠ°ΡΡΠ²Π°Π΅ΡΡΡ.
- Π‘ΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ ΠΈΠ»ΠΈ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΏΡΠ°Π²ΠΈΠ»Π° ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΏΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ - ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π² Π΄ΡΡΠ³ΠΎΠ΅.
- ΠΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ, ΡΡΠΎ Π²ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Π½ΠΈΠ΅ ΠΏΡΡΠ°Π½ΠΈΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π½Π΅ ΠΏΠΎΠ²Π»ΠΈΡΠ΅Ρ Π½Π° Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π΄ΠΎ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ - ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²Π»ΠΈΡΡΡ Π½Π° ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ.
- ΠΠ΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΡΡΡ ΠΈΠ»ΠΈ Π΄ΠΎΠ»Π³ΠΎΠ²Π΅ΡΠ½ΠΎΡΡΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ ΠΏΠΎΡΠ»Π΅ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ - ΠΏΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠΎΡ ΡΠ°Π½Π΅Π½Ρ Π΄Π°ΠΆΠ΅ Π² ΡΠ»ΡΡΠ°Π΅ ΡΠ±ΠΎΡ ΡΠΈΡΡΠ΅ΠΌΡ.
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
Π£ΡΠΎΠ²Π½ΠΈ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ
Π£ΡΠΎΠ²Π½ΠΈ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ, ΠΊΠ°ΠΊ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΡΡ Π΄ΡΡΠ³ Ρ Π΄ΡΡΠ³ΠΎΠΌ, ΠΈ ΡΠΊΠΎΠ»ΡΠΊΠΎ "Π³ΡΡΠ·Π½ΡΡ " Π΄Π°Π½Π½ΡΡ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π²ΠΈΠ΄Π΅ΡΡ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ. Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠ΅ΡΡΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΡΠΎΠ²Π½Ρ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ:
Serializable (Π‘Π΅ΡΠΈΠ°Π»ΠΈΠ·ΡΠ΅ΠΌΡΠΉ):
- ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅: Π‘Π°ΠΌΡΠΉ Π²ΡΡΠΎΠΊΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ.
- ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°: ΠΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ Π²ΡΠ΅ ΡΠΈΠΏΡ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΉ (Π³ΡΡΠ·Π½ΠΎΠ΅ ΡΡΠ΅Π½ΠΈΠ΅, Π½Π΅ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠ΅Π΅ΡΡ ΡΡΠ΅Π½ΠΈΠ΅, ΡΠ°Π½ΡΠΎΠΌΠ½ΠΎΠ΅ ΡΡΠ΅Π½ΠΈΠ΅).
- ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ: ΠΠΎΠΆΠ΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ½ΠΈΠ·ΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ.
Repeatable Read (ΠΠΎΠ²ΡΠΎΡΡΠ΅ΠΌΠΎΠ΅ ΡΡΠ΅Π½ΠΈΠ΅):
- ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅: ΠΠ°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ, ΡΡΠΎ Π΄Π°Π½Π½ΡΠ΅, ΠΏΡΠΎΡΠΈΡΠ°Π½Π½ΡΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠ΅ΠΉ, Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡ Π΄ΠΎ Π΅Ρ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ.
- ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°: ΠΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ Π³ΡΡΠ·Π½ΠΎΠ΅ ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ Π½Π΅ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠ΅Π΅ΡΡ ΡΡΠ΅Π½ΠΈΠ΅.
- ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ: ΠΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ ΡΠ°Π½ΡΠΎΠΌΠ½ΠΎΠ΅ ΡΡΠ΅Π½ΠΈΠ΅.
Read Committed (Π€ΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΡΡΠ΅Π½ΠΈΠ΅):
- ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅: Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΡ ΡΠΈΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅.
- ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°: ΠΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ Π³ΡΡΠ·Π½ΠΎΠ΅ ΡΡΠ΅Π½ΠΈΠ΅.
- ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ: ΠΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ Π½Π΅ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠ΅Π΅ΡΡ ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠ°Π½ΡΠΎΠΌΠ½ΠΎΠ΅ ΡΡΠ΅Π½ΠΈΠ΅.
Read Uncommitted (ΠΠ΅ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΡΡΠ΅Π½ΠΈΠ΅):
- ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅: Π‘Π°ΠΌΡΠΉ Π½ΠΈΠ·ΠΊΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ. Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠΈΡΠ°ΡΡ Π½Π΅Π·Π°Π²Π΅ΡΡΡΠ½Π½ΡΠ΅ (Π½Π΅ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅) Π΄Π°Π½Π½ΡΠ΅ Π΄ΡΡΠ³ΠΈΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ.
- ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°: ΠΠ°ΠΈΠ²ΡΡΡΠ°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ.
- ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ: ΠΠΎΠ·ΠΌΠΎΠΆΠ½Ρ Π²ΡΠ΅ ΡΠΈΠΏΡ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΉ (Π³ΡΡΠ·Π½ΠΎΠ΅ ΡΡΠ΅Π½ΠΈΠ΅, Π½Π΅ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠ΅Π΅ΡΡ ΡΡΠ΅Π½ΠΈΠ΅, ΡΠ°Π½ΡΠΎΠΌΠ½ΠΎΠ΅ ΡΡΠ΅Π½ΠΈΠ΅).
Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌΠΈ
Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌΠΈ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΈ ΡΠ΅Ρ Π½ΠΈΠΊΠΈ Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ACID-ΡΠ²ΠΎΠΉΡΡΠ²Π°ΠΌΠΈ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΊΠ»ΡΡΠ°ΡΡ:
- ΠΠ°ΡΠ°Π»ΠΎ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ.
- Π€ΠΈΠΊΡΠ°ΡΠΈΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ (COMMIT): Π‘ΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π²ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΡΠ΄Π΅Π»Π°Π½Π½ΡΡ Π² ΡΠ°ΠΌΠΊΠ°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ.
- ΠΡΠΊΠ°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ (ROLLBACK): ΠΡΠΌΠ΅Π½Π° Π²ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΡΠ΄Π΅Π»Π°Π½Π½ΡΡ Π² ΡΠ°ΠΌΠΊΠ°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ.
- ΠΡΡΠ½Π°Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ (Logging): ΠΠ°ΠΏΠΈΡΡ Π²ΡΠ΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π½ΡΡ Π² ΡΠ°ΠΌΠΊΠ°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ, Π΄Π»Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π² ΡΠ»ΡΡΠ°Π΅ ΡΠ±ΠΎΡ.
ΠΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΈΜΡΠΈ Π·Π΄Π΅ΡΡ: Π£ΡΠΎΠ²Π½ΠΈ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ Π½Π° PostgreSQL, Π£ΡΠΎΠ²Π½ΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΡΡΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ Π΄Π»Ρ ΡΠ°ΠΌΡΡ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΡ
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
ΠΠ½ΠΎΠΌΠ°Π»ΠΈΠΈ ΠΏΡΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ Π±Π°Π· Π΄Π°Π½Π½ΡΡ ΠΈ ΡΠΈΡΡΠ΅ΠΌ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌΠΈ β ΡΡΠΎ ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π½Π°ΡΡΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΠΈ ΠΈ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ .
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠΈΠΏΡ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΉ Π²ΠΊΠ»ΡΡΠ°ΡΡ:
- ΠΠΎΡΠ΅ΡΡΠ½Π½ΠΎΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ (Lost Update): ΠΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ, ΠΊΠΎΠ³Π΄Π° Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ ΠΏΡΡΠ°ΡΡΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΠΎΠ΄Π½Ρ ΠΈ ΡΡ ΠΆΠ΅ Π·Π°ΠΏΠΈΡΡ. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΡΠ΅ΡΡΠ½ΠΎ.
-- Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΡ 1
UPDATE accounts SET balance = balance - 100 WHERE account_id = 1;
-- Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΡ 2
UPDATE accounts SET balance = balance + 200 WHERE account_id = 1;
- ΠΡΡΠ·Π½ΠΎΠ΅ ΡΡΠ΅Π½ΠΈΠ΅ (Dirty Read): ΠΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ ΡΠΈΡΠ°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠ΅ΠΉ, Π½ΠΎ Π΅ΡΠ΅ Π½Π΅ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Ρ. ΠΡΠ»ΠΈ Π΄ΡΡΠ³Π°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ ΠΎΡΠΊΠ°ΡΡΠ²Π°Π΅ΡΡΡ, Π΄Π°Π½Π½ΡΠ΅, ΡΡΠΈΡΠ°Π½Π½ΡΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠ΅ΠΉ, ΠΎΠΊΠ°ΠΆΡΡΡΡ Π½Π΅Π²Π΅ΡΠ½ΡΠΌΠΈ.
-- Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΡ 1
UPDATE accounts SET balance = balance - 100 WHERE account_id = 1;
-- ΠΠ΅ ΡΠΈΠΊΡΠΈΡΡΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ
-- Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΡ 2
SELECT balance FROM accounts WHERE account_id = 1;
-- Π§ΠΈΡΠ°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠΉ Π±Π°Π»Π°Π½Ρ
- ΠΠ΅ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠ΅Π΅ΡΡ ΡΡΠ΅Π½ΠΈΠ΅ (Non-repeatable Read): ΠΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ, ΠΊΠΎΠ³Π΄Π° Π΄Π°Π½Π½ΡΠ΅, ΠΏΡΠΎΡΠΈΡΠ°Π½Π½ΡΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠ΅ΠΉ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠ΅ΠΉ Π΄ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΏΠ΅ΡΠ²Π°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π²ΠΈΠ΄ΠΈΡ ΡΠ°Π·Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠΌ ΡΡΠ΅Π½ΠΈΠΈ.
-- Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΡ 1
SELECT balance FROM accounts WHERE account_id = 1;
-- Π§ΠΈΡΠ°Π΅Ρ Π±Π°Π»Π°Π½Ρ
-- Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΡ 2
UPDATE accounts SET balance = balance + 200 WHERE account_id = 1;
COMMIT;
-- Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΡ 1
SELECT balance FROM accounts WHERE account_id = 1;
-- Π§ΠΈΡΠ°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠΉ Π±Π°Π»Π°Π½Ρ
- Π€Π°Π½ΡΠΎΠΌΠ½ΠΎΠ΅ ΡΡΠ΅Π½ΠΈΠ΅ (Phantom Read): ΠΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π· Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ Π·Π°ΠΏΡΠΎΡ, ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΠΈΠΌΠΈ Π·Π°ΠΏΡΠΎΡΠ°ΠΌΠΈ Π΄ΡΡΠ³Π°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΡΠ΅Ρ ΡΡΡΠΎΠΊΠΈ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΡΡΠΎΠΌΡ Π·Π°ΠΏΡΠΎΡΡ. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΏΠ΅ΡΠ²Π°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΠ°Π·Π½ΡΠ΅ Π½Π°Π±ΠΎΡΡ ΡΡΡΠΎΠΊ.
-- Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΡ 1
SELECT * FROM accounts WHERE balance > 1000;
-- ΠΠΎΠ»ΡΡΠ°Π΅Ρ Π½Π°Π±ΠΎΡ ΡΡΡΠΎΠΊ
-- Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΡ 2
INSERT INTO accounts (account_id, balance) VALUES (3, 1500);
COMMIT;
-- Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΡ 1
SELECT * FROM accounts WHERE balance > 1000;
-- ΠΠΎΠ»ΡΡΠ°Π΅Ρ Π΄ΡΡΠ³ΠΎΠΉ Π½Π°Π±ΠΎΡ ΡΡΡΠΎΠΊ
ΠΠ»Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ ΡΡΠΈΡ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΡΠΎΠ²Π½ΠΈ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ (Read Uncommitted, Read Committed, Repeatable Read, Serializable). ΠΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π±ΠΎΠ»ΡΡΡΡ Π·Π°ΡΠΈΡΡ ΠΎΡ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΉ, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΠ½ΠΈΠΆΠ°ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ.
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
ΠΠ»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ
Π² ΡΠ»ΡΡΠ°Π΅ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ Π΄Π°Π½Π½ΡΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ, Π‘Π£ΠΠ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ. ΠΠ»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΠΈΠ³ΡΠ°ΡΡ Π²Π°ΠΆΠ½ΡΡ ΡΠΎΠ»Ρ Π² ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠΈ ΡΠ²ΠΎΠΉΡΡΠ² ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ACID. Π Π°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ SELECT
, DML ΠΈ DDL Π³Π΅Π½Π΅ΡΠΈΡΡΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π½Π° ΡΠ΅ΡΡΡΡΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΡΡΠΎΠΊΠΈ ΡΠ°Π±Π»ΠΈΡΡ Π½Π°ΠΊΠ»Π°Π΄ΡΠ²Π°Π΅ΡΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ°, Π³Π°ΡΠ°Π½ΡΠΈΡΡΡΡΠ°Ρ, ΡΡΠΎ ΡΠ΅ ΠΆΠ΅ ΡΠ°ΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π½Π΅ ΠΌΠΎΠ³ΡΡ ΡΠΈΡΠ°ΡΡΡΡ ΠΈΠ»ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Π² ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ. ΠΡΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
Π΄Π°Π½Π½ΡΡ
Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ
. ΠΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΠΌΠ΅ΡΡΠΎ ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ, Π½Π΅ ΠΎΠ½ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡΡ ΠΊΠΎΠ½ΠΊΡΡΠΈΡΠΎΠ²Π°ΡΡ. ΠΠ°ΠΆΠ΄Π°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π·Π°Π²Π΅ΡΡΠΈΡΡΡΡ ΠΈΠ»ΠΈ ΠΎΡΠΊΠ°ΡΠΈΡΡΡΡ, Π½ΠΈΠΊΠ°ΠΊΠΈΡ
ΠΏΠΎΠ»ΡΠΌΠ΅Ρ.
Π‘Π»Π΅Π΄ΡΠ΅Ρ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΡΡΠΎΠ²Π½ΠΈ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ ΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ Π²Π»ΠΈΡΠ½ΠΈΠ΅ Π½Π° ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΡΠ΅Π½ΠΈΡ ΠΈ Π·Π°ΠΏΠΈΡΠΈ, Π½ΠΎ ΡΠ°ΠΊ ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠ΅ Π²ΡΡΠ΅ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, ΠΊΠΎΠ³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΡΠΎΠ²Π΅Π½Ρ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
ΠΠ»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° ΠΈΠΌΠ΅Π΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·Π½ΡΡ ΡΠ²ΠΎΠΉΡΡΠ²: Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ, ΡΠ΅ΠΆΠΈΠΌ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΠΈ Π³ΡΠ°Π½ΡΠ»ΡΡΠ½ΠΎΡΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ. ΠΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ - ΡΡΠΎ ΠΏΠ΅ΡΠΈΠΎΠ΄ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠ΅ΡΡΡΡ ΡΠ΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ. ΠΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π·Π°Π²ΠΈΡΠΈΡ, ΡΡΠ΅Π΄ΠΈ ΠΏΡΠΎΡΠ΅Π³ΠΎ, ΠΎΡ ΡΠ΅ΠΆΠΈΠΌΠ° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΠΈ Π²ΡΠ±ΠΎΡΠ° ΡΡΠΎΠ²Π½Ρ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ.
ΠΡΠ°Π½ΡΠ»ΡΡΠ½ΠΎΡΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ
-
Π’Π°Π±Π»ΠΈΡΠ½ΡΠ΅: ΠΠ»ΠΎΠΊΠΈΡΡΡΡ Π²ΡΡ ΡΠ°Π±Π»ΠΈΡΡ. ΠΡΠΈΠΌΠ΅ΡΡ: ΡΠ°Π±Π»ΠΈΡΡ Π² ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΡ Π±Π°Π·Π°Ρ Π΄Π°Π½Π½ΡΡ .
-
Π‘ΡΡΠΎΡΠ½ΡΠ΅: ΠΠ»ΠΎΠΊΠΈΡΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ΅. ΠΠΎΠ»Π΅Π΅ Π³ΡΠ°Π½ΡΠ»ΡΡΠ½ΡΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ ΡΠ΅ΡΡΡΡΠΎΠ².
-
Π‘ΡΡΠ°Π½ΠΈΡΠ½ΡΠ΅: ΠΠ»ΠΎΠΊΠΈΡΡΡΡ ΡΡΡΠ°Π½ΠΈΡΡ Π΄Π°Π½Π½ΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅. ΠΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Π΄Π»Ρ Π»ΡΡΡΠ΅Π³ΠΎ Π±Π°Π»Π°Π½ΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ ΠΈ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠ΅ΠΉ.
Π’ΠΈΠΏΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ
Shared Lock (S-Π»ΠΎΠΊ):
- ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌ ΡΠΈΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ, Π½ΠΎ Π·Π°ΠΏΡΠ΅ΡΠ°Π΅Ρ Π·Π°ΠΏΠΈΡΡ.
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΡΠ΅Π½ΠΈΡ, Π³Π΄Π΅ Π΄Π°Π½Π½ΡΠ΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ Π΄ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΡΠ΅Π½ΠΈΡ.
Exclusive Lock (X-Π»ΠΎΠΊ):
- ΠΠ°ΠΏΡΠ΅ΡΠ°Π΅Ρ Π΄ΡΡΠ³ΠΈΠΌ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌ ΠΊΠ°ΠΊ ΡΡΠ΅Π½ΠΈΠ΅, ΡΠ°ΠΊ ΠΈ Π·Π°ΠΏΠΈΡΡ Π΄Π°Π½Π½ΡΡ .
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π·Π°ΠΏΠΈΡΠΈ, ΡΡΠΎΠ±Ρ Π΄Π°Π½Π½ΡΠ΅ Π½Π΅ Π±ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌΠΈ Π΄ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ Π·Π°ΠΏΠΈΡΠΈ.
Intent Locks (I-Π»ΠΎΠΊΠΈ):
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ Π½Π° Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ Π³ΡΠ°Π½ΡΠ»ΡΡΠ½ΠΎΡΡΠΈ.
Π’ΠΈΠΏΡ: Intent Shared (IS), Intent Exclusive (IX), and Shared Intent Exclusive (SIX) ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ Π΄Π΅Π΄Π»ΠΎΠΊΠΎΠ².
ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΊΡΠΊΠ»ΡΠ·ΠΈΠ²Π½ΠΎΠΉ ΠΈ ΠΎΠ±ΡΠ΅ΠΉ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ:
BEGIN TRANSACTION;
-- Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΠΊΡΠΊΠ»ΡΠ·ΠΈΠ²Π½ΠΎΠΉ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π½Π° ΡΡΡΠΎΠΊΡ
UPDATE accounts
SET balance = balance - 100
WHERE account_id = 1;
-- Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΎΠ±ΡΠ΅ΠΉ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π½Π° ΡΡΡΠΎΠΊΡ
SELECT balance
FROM accounts WITH (HOLDLOCK)
WHERE account_id = 2;
COMMIT TRANSACTION;
ΠΠ·Π°ΠΈΠΌΠΎΠ±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° (deadlock) - ΡΡΠΎ ΠΎΡΠΎΠ±Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠ½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ°, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π΄Π²Π΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ Π±Π»ΠΎΠΊΠΈΡΡΡΡ Π΄ΡΡΠ³ Π΄ΡΡΠ³Π°. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, ΠΏΠ΅ΡΠ²Π°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΌΡ Ρ ΠΎΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΡΡΠ³Π°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ, ΠΈ Π½Π°ΠΎΠ±ΠΎΡΠΎΡ. (Π ΠΎΠ±ΡΠ΅ΠΌ, Π²Π·Π°ΠΈΠΌΠΎΠ±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΡΠ·Π²Π°Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΈΠΊΠ» Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ.) Π ΡΡΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π±Π΅Π· Π²ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΡΡΠ²Π° ΠΈΠ·Π²Π½Π΅.
Π‘ΠΈΡΡΠ΅ΠΌΠ° Π±Π°Π· Π΄Π°Π½Π½ΡΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ Π²Π·Π°ΠΈΠΌΠΎΠ±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ, Π²ΡΠ±ΠΈΡΠ°Ρ ΠΎΠ΄Π½Ρ ΠΈΠ· ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ (Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π·Π°ΠΌΡΠΊΠ°Π΅Ρ ΡΠΈΠΊΠ» Π² Π·Π°ΠΏΡΠΎΡΠ°Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ) Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ "ΠΆΠ΅ΡΡΠ²Ρ" ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡ Π΅Π΅ ΠΎΡΠΊΠ°Ρ. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π΄ΡΡΠ³Π°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ. ΠΡΠΎ Π΄Π°Π»Π΅ΠΊΠΎ ΠΎΡ ΠΈΠ΄Π΅Π°Π»Π°, ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡΠΌ ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠ·Π½Π°ΡΠ°ΡΡ, ΡΡΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠ΅ Π΄Π»Ρ Π²Π°ΡΠ΅ΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Π½ΠΈΠΊΠΎΠ³Π΄Π° Π² Π½Π΅Ρ Π½Π΅ ΠΏΠΎΠΏΠ°Π΄ΡΡ.
ΠΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠ»ΠΎΠ²ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠΈΡΡΡΡΡΠ²ΠΎΠ²Π°ΡΡ Π΄Π»Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ Π²Π·Π°ΠΈΠΌΠ½ΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ (ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΠΎΡΠΌΠ°Π½Π°) - ΠΎΡΠ½ΠΎΠ²Π° Π΄Π»Ρ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°ΡΡ, ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°ΡΡ ΠΈ ΠΈΡΠΏΡΠ°Π²Π»ΡΡΡ Π²Π·Π°ΠΈΠΌΠ½ΡΠ΅ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ.
Π£ΡΠ»ΠΎΠ²ΠΈΡ ΠΠΎΡΡΠΌΠ°Π½Π°
- Π£ΡΠ»ΠΎΠ²ΠΈΠ΅ Π²Π·Π°ΠΈΠΌΠ½ΠΎΠ³ΠΎ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ. ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ΅ΡΡΡΡ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΈΠ»ΠΈ ΠΎΡΠ΄Π°Π½ ΡΠΎΠ²Π½ΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΏΡΠΎΡΠ΅ΡΡΡ, ΠΈΠ»ΠΈ Π΄ΠΎΡΡΡΠΏΠ΅Π½.
- Π£ΡΠ»ΠΎΠ²ΠΈΠ΅ ΡΠ΄Π΅ΡΠΆΠ°Π½ΠΈΡ ΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ. ΠΡΠΎΡΠ΅ΡΡΡ, Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠ΄Π΅ΡΠΆΠΈΠ²Π°ΡΒΡΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ ΡΠ°Π½Π΅Π΅ ΡΠ΅ΡΡΡΡΡ, ΠΌΠΎΠ³ΡΡ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΠ΅ΡΡΡΡΡ.
- Π£ΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΎΡΡΡΡΡΡΠ²ΠΈΡ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π²ΡΠ³ΡΡΠ·ΠΊΠΈ ΡΠ΅ΡΡΡΡΠ°. Π£ ΠΏΡΠΎΡΠ΅ΡΡΠ° Π½Π΅Π»ΡΠ·Ρ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π·Π°Π±ΡΠ°ΡΡ ΡΠ°Π½Π΅Π΅ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ. ΠΡΠΎΡΠ΅ΡΡ, Π²Π»Π°Π΄Π΅ΡΡΠΈΠΉ ΠΈΠΌΠΈ, Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ°ΠΌ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡΡ ΡΠ΅ΡΡΡΡΡ.
- Π£ΡΠ»ΠΎΠ²ΠΈΠ΅ ΡΠΈΠΊΠ»ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ. ΠΠΎΠ»ΠΆΠ½Π° ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΊΡΡΠ³ΠΎΠ²Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈΠ· Π΄Π²ΡΡ ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΠΆΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ΅ΡΡΡΡΡ, ΡΠ΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠΌΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠ»Π΅Π½ΠΎΠΌ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
Π£ΠΊΠ°Π·Π°Π½Π½ΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ ΡΠ²Π»ΡΡΡΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΌΠΈ. Π’ΠΎ Π΅ΡΡΡ, Π΅ΡΠ»ΠΈ Ρ ΠΎΡΡ ΠΎΠ΄Π½ΠΎ ΠΈΠ· Π½ΠΈΡ Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ, ΡΠΎ Π²Π·Π°ΠΈΠΌΠ½ΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ.
ΠΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ Π₯ΠΎΠ»ΡΠ° (Holt)
ΠΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ Π²Π·Π°ΠΈΠΌΠ½ΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ ΡΠ΄ΠΎΠ±Π½ΠΎ Π½Π° Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ°Ρ Π₯ΠΎΠ»ΡΠ° (Holt). ΠΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ° Π₯ΠΎΠ»ΡΠ° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ Π³ΡΠ°Ρ, ΠΈΠΌΠ΅ΡΡΠΈΠΉ Π΄Π²Π° ΡΠΈΠΏΠ° ΡΠ·Π»ΠΎΠ²: ΠΏΡΠΎΡΠ΅ΡΡΡ (ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΠΊΡΡΠΆΠΎΡΠΊΠ°ΠΌΠΈ) ΠΈ ΡΠ΅ΡΡΡΡΡ (ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΠΊΠ²Π°Π΄ΡΠ°ΡΠΈΠΊΠ°ΠΌΠΈ). Π’ΠΎΡ ΡΠ°ΠΊΡ, ΡΡΠΎ ΡΠ΅ΡΡΡΡ ΠΏΠΎΠ»ΡΡΠ΅Π½ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠΌ ΠΈ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π·Π°Π½ΡΡ ΡΡΠΈΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠΌ, ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠ΅Π±ΡΠΎΠΌ (ΡΡΡΠ΅Π»ΠΊΠΎΠΉ) ΠΎΡ ΡΠ΅ΡΡΡΡΠ° ΠΊ ΠΏΡΠΎΡΠ΅ΡΡΡ. Π Π΅Π±ΡΠΎ, Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½ΠΎΠ΅ ΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡΠ°, ΠΊ ΡΠ΅ΡΡΡΡΡ, ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ ΠΈ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΌΡ ΡΠ΅ΡΡΡΡΡ.
ΠΠ΅Π΄Π»ΠΎΠΊ ΠΈΠΌΠ΅Π΅Ρ ΠΌΠ΅ΡΡΠΎ Π±ΡΡΡ, ΡΠΎΠ³Π΄Π° ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΠ° Π₯ΠΎΠ»ΡΠ°, ΠΎΡΡΠ°ΠΆΠ°ΡΡΠ°Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² ΠΈ ΡΠ΅ΡΡΡΡΠΎΠ², ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠΈΠΊΠ».
Π‘Π£ΠΠ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ Π΄Π»Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π΅Π΄Π»ΠΎΠΊΠΎΠ². ΠΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΎΠ² - ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ Π³ΡΠ°ΡΠ° ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ (wait-for graph) ΠΈ Π²ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠΈΠΊΠ»ΠΎΠ² Π² ΡΡΠΎΠΌ Π³ΡΠ°ΡΠ΅.
Π§ΡΠΎΠ±Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ Π΄ΠΎΠ»Π³ΠΈΠ΅ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ, ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠ°ΠΉΠΌ-Π°ΡΡΡ Π΄Π»Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ. ΠΡΠ»ΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠ΅ΡΠ²Π°Π½Π°.
ΠΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΡΠΏΠΈΠΊ (Livelock)
ΠΠ°ΠΉΠ²Π»ΠΎΠΊ - ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π°ΠΊΡΠΈΠ²Π½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, Π½ΠΎ ΡΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ Π²Π»ΠΈΡΡΡ Π½Π° ΠΏΡΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π²ΠΏΠ΅ΡΠ΅Π΄, Ρ.Π΅. ΡΡΠΎ ΡΠΈΡΡΠ°ΡΠΈΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠ²ΠΎΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π² ΠΎΡΠ²Π΅Ρ Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π΄ΡΡΠ³ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠ°Ρ Π±Π΅Π· ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ. ΠΡΠΎ ΠΏΠΎΡ ΠΎΠΆΠ΅ Π½Π° Π΄Π΅Π΄Π»ΠΎΠΊ, Π½ΠΎ ΡΠ°Π·Π½ΠΈΡΠ° Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡΡ ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ βΠ²Π΅ΠΆΠ»ΠΈΠ²ΡΠΌΠΈβ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π΄ΡΡΠ³ΠΈΠΌ Π΄Π΅Π»Π°ΡΡ ΡΠ²ΠΎΡ ΡΠ°Π±ΠΎΡΡ.
ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ² ΠΏΠΎΠΈΡΠΊΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π²Π·Π°ΠΈΠΌΠ½ΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ livelock β Π²Π·Π°ΠΈΠΌΠ½Π°Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° ΠΎΠ±ΡΠ°Π·ΡΠ΅ΡΡΡ, ΡΠ±ΡΠ°ΡΡΠ²Π°Π΅ΡΡΡ, ΡΠ½ΠΎΠ²Π° ΠΎΠ±ΡΠ°Π·ΡΠ΅ΡΡΡ, ΡΠ½ΠΎΠ²Π° ΡΠ±ΡΠ°ΡΡΠ²Π°Π΅ΡΡΡ ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅.
ΠΠ°ΠΉΠ²Π»ΠΎΠΊ - ΡΡΠΎ ΠΏΠΎΠ΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌ, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΡ Π³ΠΎΠ»ΠΎΠ΄Π°Π½ΠΈΠ΅ΠΌ.
ΠΠΎΠ»ΠΎΠ΄Π°Π½ΠΈΠ΅ (Starvation)
ΠΠΎΠ»ΠΎΠ΄Π°Π½ΠΈΠ΅ β ΡΡΠΎ Π»ΡΠ±Π°Ρ ΡΠΈΡΡΠ°ΡΠΈΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²ΡΠ΅ ΡΠ΅ΡΡΡΡΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΡ.
ΠΡΠΈ Π»Π°ΠΉΠ²Π»ΠΎΠΊΠ΅ Π²ΡΠ΅ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ βΠ³ΠΎΠ»ΠΎΠ΄Π°ΡΡβ, ΠΈ Π½ΠΈΠΊΠ°ΠΊΠ°Ρ ΡΠ°Π±ΠΎΡΠ° Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π΄ΠΎ ΠΊΠΎΠ½ΡΠ°.
Π Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΠΎΠΌ ΡΠΌΡΡΠ»Π΅ Π³ΠΎΠ»ΠΎΠ΄Π°Π½ΠΈΠ΅ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅Ρ Π½Π°Π»ΠΈΡΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΡΠΏΡΠ°Π²Π΅Π΄Π»ΠΈΠ²ΠΎ ΠΌΠ΅ΡΠ°ΡΡ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ Π΄ΡΡΠ³ΠΈΠΌ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠ°ΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΠ°Π±ΠΎΡΡ Π½Π°ΡΡΠΎΠ»ΡΠΊΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.
Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΠΎΠΊΠ°ΠΌΠΈ
Lock Manager:
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ (Π‘Π£ΠΠ), ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π²ΡΠ΅ΠΌΠΈ Π·Π°ΠΏΡΠΎΡΠ°ΠΌΠΈ Π½Π° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ. ΠΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ Π·Π°ΠΏΡΠΎΡΡ Π½Π° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΠΈ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ, ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ, ΠΈ ΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΡΠ΅ΡΠ΅Π΄ΡΠΌΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ.
ΠΠ»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΠΈΠ³ΡΠ°ΡΡ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΠΎΠ»Ρ Π² ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠΈ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π² ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ .
ΠΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΈΜΡΠΈ Π·Π΄Π΅ΡΡ: ΠΠ»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ, ΠΠ»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π² PostgreSQL: 1. ΠΠ»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΉ, ΠΠ»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π² PostgreSQL: 2. ΠΠ»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΡΡΡΠΎΠΊ, ΠΠ»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π² PostgreSQL: 3. ΠΠ»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π΄ΡΡΠ³ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΠΠ»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π² PostgreSQL: 4. ΠΠ»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π² ΠΏΠ°ΠΌΡΡΠΈ
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
MVCC (Multi-Version Concurrency Control) β ΡΡΠΎ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠΎΠΌ Π² Π±Π°Π·Π°Ρ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌ ΡΠΈΡΠ°ΡΡ ΠΈ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ, Π½Π΅ Π±Π»ΠΎΠΊΠΈΡΡΡ Π΄ΡΡΠ³ Π΄ΡΡΠ³Π°. ΠΡΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Ρ Π²ΡΡΠΎΠΊΠΎΠΉ ΡΡΠ΅ΠΏΠ΅Π½ΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ°.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ MVCC:
- ΠΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π²Π΅ΡΡΠΈΠΉ Π΄Π°Π½Π½ΡΡ : ΠΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡΡΡΠΎΠΊΠΈ Π΄Π°Π½Π½ΡΡ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΡΠΈΡ ΡΡΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, Π° ΡΡΠ°ΡΠ°Ρ Π²Π΅ΡΡΠΈΡ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π°ΠΊΡΠΈΠ²Π½Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π΅Ρ Π²ΠΈΠ΄Π΅ΡΡ. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌ ΡΠΈΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ Π°ΠΊΡΡΠ°Π»ΡΠ½Ρ Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ ΠΈΡ Π½Π°ΡΠ°Π»Π°, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ Π²Π½ΠΎΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
- ΠΠ·ΠΎΠ»ΡΡΠΈΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ: MVCC ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄ΠΎΠ±ΠΈΡΡΡΡ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ Π±Π΅Π· Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ. ΠΡΠΎ Π΄ΠΎΡΡΠΈΠ³Π°Π΅ΡΡΡ Π·Π° ΡΡΠ΅Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π²ΠΈΠ΄ΠΈΡ ΡΠ²ΠΎΡ "ΡΡΠ΅Π·" Π΄Π°Π½Π½ΡΡ Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π°ΡΠ°Π»Π°.
- ΠΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ·ΠΌ:
- Π§ΡΠ΅Π½ΠΈΠ΅: Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ ΡΠΈΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅, Π½Π΅ Π±Π»ΠΎΠΊΠΈΡΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π²ΠΈΠ΄ΠΈΡ ΡΠ²ΠΎΡ Π²Π΅ΡΡΠΈΡ Π΄Π°Π½Π½ΡΡ .
- ΠΠ°ΠΏΠΈΡΡ: ΠΠΎΠ³Π΄Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ Π΄Π°Π½Π½ΡΠ΅, ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π½ΠΎΠ²Π°Ρ Π²Π΅ΡΡΠΈΡ ΡΡΡΠΎΠΊΠΈ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ ΡΠΈΡΠ°ΡΡ ΡΡΠ°ΡΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΡΡΡΠΎΠΊΠΈ, Π½Π΅ ΠΎΠΆΠΈΠ΄Π°Ρ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ Π·Π°ΠΏΠΈΡΠΈ.
ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°:
- ΠΠΎΠ²ΡΡΠ΅Π½Π½Π°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π·Π° ΡΡΠ΅Ρ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ Π½Π° ΡΡΠ΅Π½ΠΈΠ΅.
- ΠΠΎΠ²ΡΡΠ΅Π½Π½Π°Ρ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΡ Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌ Ρ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ.
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ:
- ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎΠΌ Π²Π΅ΡΡΠΈΠΉ Π΄Π°Π½Π½ΡΡ , ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΠΎΠ±ΡΠ΅ΠΌ Ρ ΡΠ°Π½ΠΈΠΌΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ.
- Π‘ΡΠ°ΡΡΠ΅ Π²Π΅ΡΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ ΠΎΡΠΈΡΠ°ΡΡ (garbage collection), ΡΡΠΎΠ±Ρ Π½Π΅ ΠΏΠ΅ΡΠ΅Π³ΡΡΠΆΠ°ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ.
ΠΡΠΈΠΌΠ΅Ρ ΡΠ°Π±ΠΎΡΡ MVCC:
ΠΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠΌ, ΡΡΠΎ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ T1 Π½Π°ΡΠ°Π»Π° ΡΠΈΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅, ΠΊΠΎΠ³Π΄Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² ΡΡΡΠΎΠΊΠ΅ Π±ΡΠ»ΠΎ 100. ΠΠ°ΡΠ΅ΠΌ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ T2 ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ ΡΡΡ ΡΡΡΠΎΠΊΡ Π΄ΠΎ 200. Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΡ T1 ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ Π²ΠΈΠ΄Π΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 100, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ Π°ΠΊΡΡΠ°Π»ΡΠ½ΠΎ Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ Π΅Ρ Π½Π°ΡΠ°Π»Π°. Π ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ T3, ΠΊΠΎΡΠΎΡΠ°Ρ Π½Π°ΡΠ°Π»Π°ΡΡ ΠΏΠΎΠ·ΠΆΠ΅, Π²ΠΈΠ΄ΠΈΡ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 200.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ MVCC ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°Π·Π½ΡΠΌΠΈ Π²Π΅ΡΡΠΈΡΠΌΠΈ Π΄Π°Π½Π½ΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π½Π°ΡΠ°Π»Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ.
ΠΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ: Newbie Guide: ΡΠ°Π·Π±ΠΈΡΠ°Π΅ΠΌΡΡ Ρ MVCC Π½Π° ΠΏΡΠΎΡΡΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ
ΠΠ»ΠΈ Π² ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ PostgreSQL) (en): Chapter 9. Multi-Version Concurrency Control
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
Π SQL ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ SELECT FOR UPDATE ΠΈ SELECT FOR SHARE ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠΎΠΌ Π² ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΡ ΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΡΡΡΠΎΠΊ, ΡΡΠΎΠ±Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ . ΠΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π²Π°ΠΆΠ½Ρ Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ Π² ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ .
SELECT FOR UPDATE
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠΎΠΊ Ρ ΠΈΡ
ΡΠΊΡΠΊΠ»ΡΠ·ΠΈΠ²Π½ΠΎΠΉ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΎΠΉ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΡΡΡΠΎΠΊΠΈ, Π²ΡΠ±ΡΠ°Π½Π½ΡΠ΅ Π² Π·Π°ΠΏΡΠΎΡΠ΅, Π±ΡΠ΄ΡΡ Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½Ρ Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌΠΈ Π΄ΠΎ ΡΠ΅Ρ
ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° ΡΠ΅ΠΊΡΡΠ°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π½Π΅ Π·Π°Π²Π΅ΡΡΠΈΡΡΡ (Ρ ΠΏΠΎΠΌΠΎΡΡΡ COMMIT
ΠΈΠ»ΠΈ ROLLBACK
).
Π’ΠΎΠ»ΡΠΊΠΎ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ»Π° SELECT FOR UPDATE
, ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ. ΠΡΡΠ³ΠΈΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ Π½Π΅ ΠΌΠΎΠ³ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΡΡΡΠΎΠΊΠΈ Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΎΠΉ Π΄ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ.
ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅: ΠΡΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΡΡ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΡΡΠΎΠΊΠΈ ΠΏΠΎΡΠ»Π΅ ΠΈΡ Π²ΡΠ±ΠΎΡΠ°, ΡΡΠΎΠ±Ρ Π΄ΡΡΠ³ΠΈΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ Π½Π΅ ΠΌΠΎΠ³Π»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΡΡΡ ΡΠ΅ ΠΆΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π΄ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ Ρ 629A Π΅ΠΊΡΡΠ΅ΠΉ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ.
ΠΡΠΈΠΌΠ΅Ρ:
BEGIN;
SELECT * FROM employees WHERE department = 'Sales' FOR UPDATE;
-- Π’Π΅ΠΏΠ΅ΡΡ ΡΡΡΠΎΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ ΠΎΡΠ΄Π΅Π»Ρ Sales, Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½Ρ.
-- ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ ΡΠ°Π±ΠΎΡΡ Ρ ΡΡΠΈΠΌΠΈ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ.
UPDATE employees SET salary = salary * 1.05 WHERE department = 'Sales';
COMMIT;
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ ΡΠ½Π°ΡΠ°Π»Π° Π²ΡΠ±ΠΈΡΠ°Π΅Ρ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΎΠ² ΠΎΡΠ΄Π΅Π»Π° 'Sales' ΠΈ Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ ΡΡΠΈ ΡΡΡΠΎΠΊΠΈ Π΄Π»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅Π³ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ. ΠΡΡΠ³ΠΈΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ Π½Π΅ ΠΌΠΎΠ³ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΡΡΡ ΡΡΠΈ ΡΡΡΠΎΠΊΠΈ Π΄ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ.
SELECT FOR SHARE
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠΎΠΊ Ρ "ΡΠ°Π·Π΄Π΅Π»ΡΠ΅ΠΌΠΎΠΉ" Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΎΠΉ, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π΄ΡΡΠ³ΠΈΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ ΡΠ°ΠΊΠΆΠ΅ ΡΠΈΡΠ°ΡΡ ΡΡΠΈ ΡΡΡΠΎΠΊΠΈ, Π½ΠΎ Π½Π΅ ΠΌΠΎΠ³ΡΡ ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΡΡΡ Π΄ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ.
ΠΠΈΠΊΡΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΡΡΡ ΡΡΡΠΎΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ Π²ΡΠ±ΡΠ°Π½Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ SELECT FOR SHARE
, ΠΏΠΎΠΊΠ° ΡΠ΅ΠΊΡΡΠ°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π½Π΅ Π·Π°Π²Π΅ΡΡΠΈΡΡΡ.
ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅: ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, ΠΊΠΎΠ³Π΄Π° Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅, Π½ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΡΡΠΈ Π΄Π°Π½Π½ΡΠ΅ Π½Π΅ Π±ΡΠ΄ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌΠΈ Π΄ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ.
ΠΡΠΈΠΌΠ΅Ρ:
BEGIN;
SELECT * FROM products WHERE category = 'Electronics' FOR SHARE;
-- Π§ΡΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ
, Π½ΠΎ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΡΠΈΡ
ΡΡΡΠΎΠΊ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌΠΈ.
-- Π Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ Π½Π΅ ΡΠ΄Π°ΡΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ UPDATE ΠΈΠ»ΠΈ DELETE ΡΡΠΈΡ
ΡΡΡΠΎΠΊ Π΄ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ.
COMMIT;
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ ΡΠΈΡΠ°Π΅Ρ ΡΡΡΠΎΠΊΠΈ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ 'products', Π±Π»ΠΎΠΊΠΈΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌΠΈ. ΠΠ΄Π½Π°ΠΊΠΎ Π΄ΡΡΠ³ΠΈΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ ΡΠΈΡΠ°ΡΡ ΡΡΠΈ Π΄Π°Π½Π½ΡΠ΅.
Π Π°Π·Π»ΠΈΡΠΈΡ:
FOR UPDATE
: ΠΠ»ΠΎΠΊΠΈΡΡΠ΅Ρ ΡΡΡΠΎΠΊΠΈ Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ, ΠΊΡΠΎΠΌΠ΅ ΡΠ΅ΠΊΡΡΠ΅ΠΉ. Π’ΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΊΡΡΠ°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ Π΄Π°Π½Π½ΡΠ΅.FOR SHARE
: Π Π°Π·ΡΠ΅ΡΠ°Π΅Ρ Π΄ΡΡΠ³ΠΈΠΌ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌ ΡΠΈΡΠ°ΡΡ ΡΡΡΠΎΠΊΠΈ, Π½ΠΎ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΡΡΡ ΠΈΡ .- ΠΠ±Π΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΠΌΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°ΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π³ΠΎΠ½ΠΊΠΈ (race conditions).
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅
Π’Π΅ΠΎΡΠ΅ΠΌΠ° CAP (ΠΈΠ·Π²Π΅ΡΡΠ½Π°Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ ΡΠ΅ΠΎΡΠ΅ΠΌΠ° ΠΡΡΠ΅ΡΠ°) β ΡΠ²ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π² Π»ΡΠ±ΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π½Π΅ Π±ΠΎΠ»Π΅Π΅ Π΄Π²ΡΡ ΠΈΠ· ΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ²:
- ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ (Π°Π½Π³Π». consistency) β Π²ΠΎ Π²ΡΠ΅Ρ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠ·Π»Π°Ρ Π² ΠΎΠ΄ΠΈΠ½ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π΄Π°Π½Π½ΡΠ΅ Π½Π΅ ΠΏΡΠΎΡΠΈΠ²ΠΎΡΠ΅ΡΠ°Ρ Π΄ΡΡΠ³ Π΄ΡΡΠ³Ρ;
- Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡ (Π°Π½Π³Π». availability) β Π»ΡΠ±ΠΎΠΉ Π·Π°ΠΏΡΠΎΡ ΠΊ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ ΠΎΡΠΊΠ»ΠΈΠΊΠΎΠΌ, ΠΎΠ΄Π½Π°ΠΊΠΎ Π±Π΅Π· Π³Π°ΡΠ°Π½ΡΠΈΠΈ, ΡΡΠΎ ΠΎΡΠ²Π΅ΡΡ Π²ΡΠ΅Ρ ΡΠ·Π»ΠΎΠ² ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ;
- ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡΡ ΠΊ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ (Π°Π½Π³Π». partition tolerance) β ΡΠ°ΡΡΠ΅ΠΏΠ»Π΅Π½ΠΈΠ΅ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ΅ΠΊΡΠΈΠΉ Π½Π΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΡΡΠΈ ΠΎΡΠΊΠ»ΠΈΠΊΠ° ΠΎΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΡΠ΅ΠΊΡΠΈΠΉ.
ΠΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ NoSQL, Π² ΡΠ°ΠΌΠΊΠ°Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠ΅ Π½Π΅ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ , Π·Π°ΡΠ°ΡΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΠΎΡ ΠΏΡΠΈΠ½ΡΠΈΠΏ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠ±ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎΡΡΠΈ ΠΎΡΠΊΠ°Π·Π° ΠΎΡ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ . ΠΠ΄Π½Π°ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ ΡΡΡΠ½ΡΠΌΠΈ ΠΈ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ°ΠΌΠΈ ΡΠ΅ΠΎΡΠ΅ΠΌΠ° CAP ΠΊΡΠΈΡΠΈΠΊΡΠ΅ΡΡΡ Π·Π° Π²ΠΎΠ»ΡΠ½ΠΎΡΡΡ ΡΡΠ°ΠΊΡΠΎΠ²ΠΊΠΈ ΠΈ Π΄Π°ΠΆΠ΅ Π½Π΅Π΄ΠΎΡΡΠΎΠ²Π΅ΡΠ½ΠΎΡΡΡ Π² ΡΠΎΠΌ ΡΠΌΡΡΠ»Π΅, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΎΠ½Π° ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π° Π² ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π΅.
Π‘Π»Π΅Π΄ΡΡΠ²ΠΈΡ
Π‘ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΎΡΠ΅ΠΌΡ CAP, ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΏΠ°ΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ ΡΠ²ΠΎΠΉΡΡΠ² ΠΈΠ· ΡΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΡΠ°ΡΠΏΠ°Π΄Π°ΡΡΡΡ Π½Π° ΡΡΠΈ ΠΊΠ»Π°ΡΡΠ° β CA, CP, AP (ΠΏΡΠΈ ΡΡΠΎΠΌ Π² ΡΠ°ΠΌΠΊΠ°Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ).
- Π ΡΠΈΡΡΠ΅ΠΌΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ ΠΊΠ»Π°ΡΡΠ° CA Π²ΠΎ Π²ΡΠ΅Ρ ΡΠ·Π»Π°Ρ Π΄Π°Π½Π½ΡΠ΅ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Ρ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½Π° Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡ, ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΎΠ½Π° ΠΆΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡΡΡ ΠΊ ΡΠ°ΡΠΏΠ°Π΄Ρ Π½Π° ΡΠ΅ΠΊΡΠΈΠΈ. Π’Π°ΠΊΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠ΅Π³ΠΎ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΎΠ½Π½ΠΎΡΡΡ Π² ΡΠΌΡΡΠ»Π΅ ACID, ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ°ΠΊΠΈΡ ΡΠΈΡΡΠ΅ΠΌ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½Π°Ρ ΡΠ»ΡΠΆΠ±Π° ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ² LDAP.
- Π‘ΠΈΡΡΠ΅ΠΌΠ° Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ ΠΊΠ»Π°ΡΡΠ° CP Π² ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠ΅Π»ΠΎΡΡΠ½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΈ ΡΠΏΠΎΡΠΎΠ±Π½Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ Π² ΡΡΠ»ΠΎΠ²ΠΈΡΡ ΡΠ°ΡΠΏΠ°Π΄Π°, Π½ΠΎ Π΄ΠΎΡΡΠΈΠ³Π°Π΅Ρ ΡΡΠΎΠ³ΠΎ Π² ΡΡΠ΅ΡΠ± Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΠΈ: ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ Π²ΡΠ΄Π°Π²Π°ΡΡ ΠΎΡΠΊΠ»ΠΈΠΊ Π½Π° Π·Π°ΠΏΡΠΎΡ. Π£ΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡΡ ΠΊ ΡΠ°ΡΠΏΠ°Π΄Ρ Π½Π° ΡΠ΅ΠΊΡΠΈΠΈ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π²ΠΎ Π²ΡΠ΅Ρ ΡΠ·Π»Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠ΅ΠΉ Π΄Π°Π½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ, Π² ΡΠ²ΡΠ·ΠΈ Ρ ΡΡΠΈΠΌ ΠΎΡΠΌΠ΅ΡΠ°Π΅ΡΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΠ΅Π»Π΅ΡΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² ΡΠ°ΠΊΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ ΠΏΠ΅ΡΡΠΈΠΌΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ Π΄Π»Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ.
- Π ΡΠΈΡΡΠ΅ΠΌΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ ΠΊΠ»Π°ΡΡΠ° AP Π½Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅ΡΡΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ, Π½ΠΎ ΠΏΡΠΈ ΡΡΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Ρ ΡΡΠ»ΠΎΠ²ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΠΈ ΠΈ ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡΠΈ ΠΊ ΡΠ°ΡΠΏΠ°Π΄Ρ Π½Π° ΡΠ΅ΠΊΡΠΈΠΈ. Π₯ΠΎΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠΈΡΡΠ΅ΠΌ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠΎΠ΄Π° ΠΈΠ·Π²Π΅ΡΡΠ½Ρ Π·Π°Π΄ΠΎΠ»Π³ΠΎ Π΄ΠΎ ΡΠΎΡΠΌΡΠ»ΠΈΡΠΎΠ²ΠΊΠΈ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ° CAP (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠ΅ Π²Π΅Π±-ΠΊΡΡΠΈ ΠΈΠ»ΠΈ DNS), ΡΠΎΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ Ρ ΡΡΠΈΠΌ Π½Π°Π±ΠΎΡΠΎΠΌ ΡΠ²ΠΎΠΉΡΡΠ² ΡΠ²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ ΡΠ΅ΠΎΡΠ΅ΠΌΡ CAP. Π’Π°ΠΊ, Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ NoSQL-ΡΠΈΡΡΠ΅ΠΌ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΈΠ°Π»ΡΠ½ΠΎ Π½Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΡΡΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ , ΠΈ ΡΡΡΠ»Π°ΡΡΡΡ Π½Π° ΡΠ΅ΠΎΡΠ΅ΠΌΡ CAP ΠΊΠ°ΠΊ Π½Π° ΠΌΠΎΡΠΈΠ² ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ. ΠΠ°Π΄Π°ΡΠ΅ΠΉ ΠΏΡΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠΈ AP-ΡΠΈΡΡΠ΅ΠΌ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ΅Π»Π΅ΡΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ , Π² ΡΡΠΎΠΌ ΡΠΌΡΡΠ»Π΅ ΠΏΡΠΎ AP-ΡΠΈΡΡΠ΅ΠΌΡ Π³ΠΎΠ²ΠΎΡΡΡ ΠΊΠ°ΠΊ ΠΎ Β«ΡΠ΅Π»ΠΎΡΡΠ½ΡΡ Π² ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΠΈΡΠΎΠ³Π΅Β» (Π°Π½Π³Π». eventually consistent) ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ ΠΎ Β«ΡΠ»Π°Π±ΠΎ ΡΠ΅Π»ΠΎΡΡΠ½ΡΡ Β» (Π°Π½Π³Π». weak consistent).
BASE-Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°
ΠΠΎ Π²ΡΠΎΡΠΎΠΉ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π΅ 2000-Ρ Π³ΠΎΠ΄ΠΎΠ² ΡΡΠΎΡΠΌΡΠ»ΠΈΡΠΎΠ²Π°Π½ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΊ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ, Π² ΠΊΠΎΡΠΎΡΡΡ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ ΠΈ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Ρ Π½Π΅ Π² ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΌΠ΅ΡΠ΅, Π½Π°Π·Π²Π°Π½ΡΠΉ Π°ΠΊΡΠΎΠ½ΠΈΠΌΠΎΠΌ BASE (ΠΎΡ Π°Π½Π³Π». Basically Available, Soft-state, Eventually consistent β Π±Π°Π·ΠΎΠ²Π°Ρ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡ, Π½Π΅ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅, ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ Π² ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΡΡΡΡΠ΅), ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π½Π°ΠΏΡΡΠΌΡΡ ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ ACID.
- ΠΠΎΠ΄ Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡΡ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΡΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΊ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΡΠΎΠ±Ρ ΡΠ±ΠΎΠΉ Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ·Π»Π°Ρ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΠ» ΠΊ ΠΎΡΠΊΠ°Π·Ρ Π² ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠΈ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π½Π΅Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΠ°ΡΡΠΈ ΡΠ΅ΡΡΠΈΠΉ ΠΏΡΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠΈ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΠΈ Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π².
- ΠΠ΅ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΆΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ Π΄ΠΎΠ»Π³ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΡΠ΅ΡΡΠΈΠΉ (ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Π²ΡΠ±ΠΎΡΠΎΠΊ, ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ, ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅), ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΊΠΎΠ½ΡΠ΅Π½ΡΡΠΈΡΡΡΡΡ Π½Π° ΡΠΈΠΊΡΠ°ΡΠΈΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΡΠΈΡΠΈΡΠ½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ.
- Π‘ΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΠΈ Π² ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΡΡΡΡΠ΅, ΡΡΠ°ΠΊΡΡΡΡΠ΅ΠΉΡΡ ΠΊΠ°ΠΊ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΡΠΎΡΠΈΠ²ΠΎΡΠ΅ΡΠΈΠ²ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ , Π½ΠΎ ΠΏΡΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠΈ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½ΠΈΡ Π² ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠ±ΠΎΠ·ΡΠΈΠΌΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΏΠΎΡΠ²ΡΡΠ΅Π½ΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΡΡ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠΉ.
ΠΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ: ΠΡΡ, ΡΡΠΎ Π²Ρ Π½Π΅ Π·Π½Π°Π»ΠΈ ΠΎ CAP ΡΠ΅ΠΎΡΠ΅ΠΌΠ΅
Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ ΡΡΠΈΠ»Ρ SQL