ΠΠΎΠ³Π΄Π° ΡΠ΅ΡΡ Π·Π°Ρ ΠΎΠ΄ΠΈΡ ΠΎΠ± ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΡΠ°Π±ΠΎΡΡ 1Π‘:ΠΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠ΅, ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΠ°ΠΊΡΠΎΡΠΎΠ² ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. ΠΠ΅Π· ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π½Π°ΡΡΡΠΎΠ΅Π½Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π΄Π°ΠΆΠ΅ ΠΌΠΎΡΠ½ΡΠ΅ ΡΠ΅ΡΠ²Π΅ΡΡ ΠΌΠΎΠ³ΡΡ "ΡΠΎΡΠΌΠΎΠ·ΠΈΡΡ" ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡΠΎΡΡΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ², Π° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ β ΡΠ°Π·ΡΠ°ΡΡΠ°ΡΡΡΡ Π΄ΠΎ Π½Π΅ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅ΠΌΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ². ΠΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅? ΠΠΎΡΠ΅ΠΌΡ ΠΎΠ΄Π½ΠΈ ΡΠ°Π±Π»ΠΈΡΡ Π² 1Π‘ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ, Π° Π΄ΡΡΠ³ΠΈΠ΅ β ΡΡΠ΅Π±ΡΡΡ ΠΌΠΈΠ½ΡΡ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ?
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°Π·Π±Π΅ΡΡΠΌ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΡ ΠΎΡΠ½ΠΎΠ² Π΄ΠΎ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΡΡ ΡΠ΅Ρ Π½ΠΈΠΊ: ΠΊΠ°ΠΊ Π‘Π£ΠΠ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Microsoft SQL Server ΠΈΠ»ΠΈ PostgreSQL) ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π΄Π»Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ Π²ΡΠ±ΠΎΡΠΎΠΊ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠΈΠΏΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° 1Π‘:ΠΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠ΅ 8, ΠΈ ΠΊΠ°ΠΊ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΠΈΠΏΠΈΡΠ½ΡΡ ΠΎΡΠΈΠ±ΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡ ΠΊ Π·Π°ΠΌΠ΅Π΄Π»Π΅Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ Π² 10β100 ΡΠ°Π· ΠΈΠ·-Π·Π° Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ². ΠΡΠΎΠ±ΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠ΄Π΅Π»ΠΈΠΌ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌ β ΠΎΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡΠ΅ Π΄ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° ΠΏΠ»Π°Π½ΠΎΠ² Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ².
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π·Π°ΡΠ΅ΠΌ ΠΎΠ½ΠΎ Π½ΡΠΆΠ½ΠΎ Π² 1Π‘
ΠΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π² 1Π‘ β ΡΡΠΎ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΠΊΠΎΡΠΈΡΡ ΠΏΠΎΠΈΡΠΊ ΠΈ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΡ Π΄Π°Π½Π½ΡΡ Π² Π±Π°Π·Π΅. ΠΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅ ΡΠ΅Π»Π΅ΡΠΎΠ½Π½ΡΡ ΠΊΠ½ΠΈΠ³Ρ: Π±Π΅Π· Π°Π»ΡΠ°Π²ΠΈΡΠ½ΠΎΠ³ΠΎ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π²Π°ΠΌ ΠΏΡΠΈΡΠ»ΠΎΡΡ Π±Ρ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΊΠ°ΠΆΠ΄ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ, ΡΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ Π½ΠΎΠΌΠ΅Ρ. ΠΠ½Π΄Π΅ΠΊΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ β ΠΎΠ½ ΡΠΎΠ·Π΄Π°ΡΡ "ΠΎΠ³Π»Π°Π²Π»Π΅Π½ΠΈΠ΅" Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ Π‘Π£ΠΠ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡ Π½ΡΠΆΠ½ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ Π·Π° Π΄ΠΎΠ»ΠΈ ΡΠ΅ΠΊΡΠ½Π΄Ρ Π²ΠΌΠ΅ΡΡΠΎ ΠΌΠΈΠ½ΡΡ.
Π ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ 1Π‘:ΠΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΊΡΠΈΡΠΈΡΠ½Ρ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ:
- π ΠΠ±ΡΡΠΌ Π΄Π°Π½Π½ΡΡ Π² ΡΠΈΠΏΠΈΡΠ½ΡΡ Π±Π°Π·Π°Ρ (Π±ΡΡ Π³Π°Π»ΡΠ΅ΡΠΈΡ, ΡΠΎΡΠ³ΠΎΠ²Π»Ρ, ΠΠ£Π) ΠΈΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π°ΠΌΠΈ Π·Π°ΠΏΠΈΡΠ΅ΠΉ.
- β‘ ΠΠ°ΠΏΡΠΎΡΡ ΡΠ°ΡΡΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΏΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΠΏΠΎΠ»ΡΠΌ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠΈΡΠΊ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ² ΠΏΠΎ Π΄Π°ΡΠ΅, ΠΊΠΎΠ½ΡΡΠ°Π³Π΅Π½ΡΡ ΠΈ ΡΡΠΌΠΌΠ΅).
- π Π Π΅Π³Π»Π°ΠΌΠ΅Π½ΡΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ (Π·Π°ΠΊΡΡΡΠΈΠ΅ ΠΌΠ΅ΡΡΡΠ°, ΡΠ°ΡΡΡΡ Π·Π°ΡΠΏΠ»Π°ΡΡ) Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΌΠ°ΡΡΠΎΠ²ΡΠ΅ Π²ΡΠ±ΠΎΡΠΊΠΈ, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Π° Π½Π° ΡΡΠ΅ΡΡ.
ΠΠ΅Π· ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π΄Π°ΠΆΠ΅ ΠΏΡΠΎΡΡΠΎΠΉ ΠΎΡΡΡΡ ΠΏΠΎ ΠΏΡΠΎΠ΄Π°ΠΆΠ°ΠΌ Π·Π° Π³ΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΡΠ°ΡΠ°ΠΌΠΈ. ΠΠΎ Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ: ΠΈΠ½Π΄Π΅ΠΊΡΡ Π½Π΅ Π±Π΅ΡΠΏΠ»Π°ΡΠ½Ρ. ΠΠ½ΠΈ Π·Π°Π½ΠΈΠΌΠ°ΡΡ ΠΌΠ΅ΡΡΠΎ Π½Π° Π΄ΠΈΡΠΊΠ΅ (ΠΈΠ½ΠΎΠ³Π΄Π° Π΄ΠΎ 30β50% ΠΎΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΡΠ°Π±Π»ΠΈΡΡ) ΠΈ Π·Π°ΠΌΠ΅Π΄Π»ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΠ‘Π’ΠΠΠΠ/ΠΠΠΠΠΠΠΠΠΠ/Π£ΠΠΠΠΠΠΠ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π‘Π£ΠΠ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π² Π°ΠΊΡΡΠ°Π»ΡΠ½ΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ.
Π’ΠΈΠΏΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² 1Π‘: ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠ΅, Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠ΅ ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΠ΅ΠΊΡΡΠΎΠ²ΡΠ΅
ΠΠ»Π°ΡΡΠΎΡΠΌΠ° 1Π‘:ΠΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠ΅ 8 ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΠΎΠ²Π΅ΡΡ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΡ Π‘Π£ΠΠ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠΈΠΏΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, MS SQL ΠΈΠ»ΠΈ PostgreSQL). ΠΠ΄Π½Π°ΠΊΠΎ Π»ΠΎΠ³ΠΈΠΊΠ° ΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² 1Π‘ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½Π°. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ Π²ΠΈΠ΄Ρ:
| Π’ΠΈΠΏ ΠΈΠ½Π΄Π΅ΠΊΡΠ° | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ | ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² 1Π‘ | ΠΠ»ΡΡΡ | ΠΠΈΠ½ΡΡΡ |
|---|---|---|---|---|
| ΠΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΉ | ΠΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠΎΡΡΠ΄ΠΎΠΊ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅. Π’ΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Π½Π° ΡΠ°Π±Π»ΠΈΡΡ. | ΠΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ ΠΏΠΎΠ»Ρ Π‘ΡΡΠ»ΠΊΠ° Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ² (Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ Π±ΡΡΡΡΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΏΠΎ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠΌΡ ΠΊΠ»ΡΡΡ). |
ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΊΠΎΡΠΎΡΡΡ Π²ΡΠ±ΠΎΡΠΊΠΈ ΠΏΠΎ ΠΊΠ»ΡΡΡ. | ΠΠ°ΠΌΠ΅Π΄Π»ΡΠ΅Ρ Π²ΡΡΠ°Π²ΠΊΡ Π΄Π°Π½Π½ΡΡ , Π΅ΡΠ»ΠΈ ΠΊΠ»ΡΡ Π½Π΅ ΠΌΠΎΠ½ΠΎΡΠΎΠ½Π½ΠΎ Π²ΠΎΠ·ΡΠ°ΡΡΠ°ΡΡΠΈΠΉ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, GUID). |
| ΠΠ΅ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠΉ | Π‘ΠΎΠ·Π΄Π°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΡΡΡΠΊΡΡΡΡ Π΄Π»Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ ΠΏΠΎΠΈΡΠΊΠ° ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΠΏΠΎΠ»ΡΠΌ. | ΠΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ ΠΏΠΎΠ»ΡΠΌ ΠΠ°ΡΠ° ΠΈ ΠΠΎΠ½ΡΡΠ°Π³Π΅Π½Ρ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΠΎΠΊΡΠΌΠ΅Π½Ρ.ΠΠΎΡΡΡΠΏΠ»Π΅Π½ΠΈΠ΅Π’ΠΎΠ²Π°ΡΠΎΠ². |
Π£ΡΠΊΠΎΡΡΠ΅Ρ Π²ΡΠ±ΠΎΡΠΊΠΈ ΠΏΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΠΌ ΠΏΠΎΠ»ΡΠΌ. | Π’ΡΠ΅Π±ΡΠ΅Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π½Π° Π΄ΠΈΡΠΊΠ΅. |
| ΠΠΎΠ»Π½ΠΎΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ | ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΊΠ°ΡΡ ΠΏΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ ΠΏΠΎΠ»Π΅ΠΉ (Π²ΠΊΠ»ΡΡΠ°Ρ ΠΌΠΎΡΡΠΎΠ»ΠΎΠ³ΠΈΡ). | ΠΠΎΠΈΡΠΊ ΠΏΠΎ Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°ΡΡΡΡ ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°Ρ . | ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ. | Π’ΡΠ΅Π±ΡΠ΅Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°. |
| Π£Π½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ | ΠΠ°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π² ΠΏΠΎΠ»Π΅ (ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ ΠΏΠΎΠ»Π΅ΠΉ). | ΠΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ ΠΏΠΎΠ»Ρ ΠΠΎΠΌΠ΅ΡΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ° Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΠΎΠΊΡΠΌΠ΅Π½Ρ.Π‘ΡΡΡΠ€Π°ΠΊΡΡΡΠ°. |
ΠΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ . | ΠΠΎΠΆΠ΅Ρ Π²ΡΠ·ΡΠ²Π°ΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΏΡΠΈ Π²ΡΡΠ°Π²ΠΊΠ΅ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ². |
Π 1Π‘ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²ΠΎΡΡΡΠ΅Π±ΠΎΠ²Π°Π½Ρ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π³ΠΈΠ±ΠΊΠΎ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡΡΡ ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ°ΡΡΠΎ ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΠ΅ ΠΎΡΡΡΡ ΠΏΠΎ ΠΏΡΠΎΠ΄Π°ΠΆΠ°ΠΌ Ρ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠ΅ΠΉ ΠΏΠΎ Π΄Π°ΡΠ΅ ΠΈ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΡ, ΠΈΠΌΠ΅Π΅Ρ ΡΠΌΡΡΠ» ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΎΡΡΠ°Π²Π½ΠΎΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ ΡΡΠΈΠΌ Π΄Π²ΡΠΌ ΠΏΠΎΠ»ΡΠΌ. ΠΠ΄Π½Π°ΠΊΠΎ Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΡ: ΠΈΠ·Π±ΡΡΠΎΡΠ½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΌΠΎΠ³ΡΡ ΡΠ½ΠΈΠ·ΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΡΠΈ ΠΌΠ°ΡΡΠΎΠ²ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΡ Π·Π°ΠΏΠΈΡΠΈ.
ΠΠ΅ΡΠ΅Π΄ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅, Π½Π΅ ΠΏΠΎΠΊΡΡΠ²Π°Π΅Ρ Π»ΠΈ Π΅Π³ΠΎ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΡΠΎΡΡΠ°Π²Π½ΠΎΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ ΠΏΠΎΠ»ΡΠΌ (Π, Π, Π), ΡΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ ΠΏΠΎΠ»Ρ (Π) ΠΈΠ·Π±ΡΡΠΎΡΠ΅Π½.
ΠΠ°ΠΊ 1Π‘ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌΠΈ: ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΠΏΠΎΠ΄ ΠΊΠ°ΠΏΠΎΡΠΎΠΌ
ΠΠΎΠ³Π΄Π° Π²Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΠ΅ Π·Π°ΠΏΡΠΎΡ Π² 1Π‘, ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ Π΅Π³ΠΎ Π² SQL-Π·Π°ΠΏΡΠΎΡ ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ Π² Π‘Π£ΠΠ. ΠΠ°Π»Π΅Π΅ Π‘Π£ΠΠ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡ ΠΈ ΡΠ΅ΡΠ°Π΅Ρ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ. ΠΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ»Π°Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅:
- ΠΠ°ΡΡΠΈΠ½Π³ Π·Π°ΠΏΡΠΎΡΠ°: 1Π‘ ΡΠ°Π·Π±ΠΈΡΠ°Π΅Ρ Π²Π°Ρ Π·Π°ΠΏΡΠΎΡ Π½Π° ΡΠ·ΡΠΊΠ΅
1Π‘:ΠΠ°ΠΏΡΠΎΡΡΠΈ ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΡΠ΅Ρ Π΅Π³ΠΎ Π² SQL. - ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ: Π‘Π£ΠΠ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠ΅Ρ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΡ ΠΏΠΎ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌ, ΡΡΠΎΠ±Ρ Π²ΡΠ±ΡΠ°ΡΡ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΏΠ»Π°Π½.
- ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅: ΠΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π²ΡΠ±ΡΠ°Π½Π½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ (ΠΈΠ»ΠΈ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ, Π΅ΡΠ»ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π½Π΅ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½Ρ).
ΠΠ»ΡΡΠ΅Π²ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ: 1Π‘ Π½Π΅ ΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌΠΈ Π½Π°ΠΏΡΡΠΌΡΡ β ΡΡΠΎ Π·Π°Π΄Π°ΡΠ° Π‘Π£ΠΠ. ΠΠ΄Π½Π°ΠΊΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²Π»ΠΈΡΡΡ Π½Π° ΠΏΡΠΎΡΠ΅ΡΡ, ΡΠ²Π½ΠΎ ΡΠΊΠ°Π·ΡΠ²Π°Ρ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡΠ΅ ΠΈΠ»ΠΈ ΡΠ΅ΡΠ΅Π· SQL-Ρ
ΠΈΠ½ΡΡ (Π² ΡΠ΅Π΄ΠΊΠΈΡ
ΡΠ»ΡΡΠ°ΡΡ
). ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ Π·Π½Π°Π΅ΡΠ΅, ΡΡΠΎ Π·Π°ΠΏΡΠΎΡ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠΈΠ»ΡΡΡΠΎΠ²Π°ΡΡΡΡ ΠΏΠΎ ΠΏΠΎΠ»Ρ ΠΠ°ΡΠ°, ΠΈΠΌΠ΅Π΅Ρ ΡΠΌΡΡΠ» ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ ΡΡΠΎΠΌΡ ΠΏΠΎΠ»Ρ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ².
ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΉ ΡΠ°ΠΊΡ: Π² 1Π‘:ΠΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠ΅ 8.3 ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ»Π°Π½Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΏΡΡΠΌΠΎ ΠΈΠ· ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡΠ° (ΠΌΠ΅Π½Ρ ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ β Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ β ΠΠ»Π°Π½Ρ Π·Π°ΠΏΡΠΎΡΠΎΠ²). ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ, Π° Π³Π΄Π΅ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ (Table Scan).
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ "ΠΏΠΎΠΊΡΡΠ²Π°ΡΡΠΈΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ"?
ΠΡΠΎ ΠΈΠ½Π΄Π΅ΠΊΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π²ΡΠ΅ ΠΏΠΎΠ»Ρ, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ°, Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ΅ΠΌΡ Π‘Π£ΠΠ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ ΡΠ°ΠΌΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Π°Ρ Π·Π°ΠΏΡΠΎΡ Π²ΡΠ±ΠΈΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»Ρ ΠΠ°ΡΠ° ΠΈ Π‘ΡΠΌΠΌΠ°, Π° ΠΈΠ½Π΄Π΅ΠΊΡ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΎΠ±Π° ΡΡΠΈΡ
ΠΏΠΎΠ»Ρ, ΡΠΎ Π΄Π°Π½Π½ΡΠ΅ Π±ΡΠ΄ΡΡ Π²Π·ΡΡΡ ΠΏΡΡΠΌΠΎ ΠΈΠ· ΠΈΠ½Π΄Π΅ΠΊΡΠ°.
ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ: ΠΊΠΎΠ³Π΄Π° ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΡΠΊΠΎΡΡΡΡ, Π° ΠΊΠΎΠ³Π΄Π° ΡΠΎΡΠΌΠΎΠ·ΡΡ
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°Π·Π±Π΅ΡΡΠΌ ΡΠ΅Π°Π»ΡΠ½ΡΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠΈ, Π³Π΄Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΈΠ³ΡΠ°ΡΡ ΠΊΡΠΈΡΠΈΡΠ½ΡΡ ΡΠΎΠ»Ρ, ΠΈ Π³Π΄Π΅ ΠΈΡ Π»ΡΡΡΠ΅ ΠΈΠ·Π±Π΅Π³Π°ΡΡ.
β ΠΠΎΠ³Π΄Π° ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΡΠΊΠΎΡΡΡΡ ΡΠ°Π±ΠΎΡΡ:
- π ΠΠΎΠΈΡΠΊ ΠΏΠΎ ΡΠΎΡΠ½ΠΎΠΌΡ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ: ΠΠ°ΠΏΡΠΎΡ
ΠΠ«ΠΠ ΠΠ’Π¬ Π‘ΡΡΡΠ€Π°ΠΊΡΡΡΠ° ΠΠΠ ΠΠΎΠΌΠ΅Ρ = "12345"Π±ΡΠ΄Π΅Ρ ΠΌΠΎΠ»Π½ΠΈΠ΅Π½ΠΎΡΠ½ΡΠΌ ΠΏΡΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ΅ ΠΏΠΎ ΠΏΠΎΠ»ΡΠΠΎΠΌΠ΅Ρ. - π
Π€ΠΈΠ»ΡΡΡΠ°ΡΠΈΡ ΠΏΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ Π΄Π°Ρ: ΠΡΡΡΡ ΠΏΠΎ ΠΏΡΠΎΠ΄Π°ΠΆΠ°ΠΌ Π·Π° ΠΌΠ΅ΡΡΡ Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ ΠΏΠΎ
ΠΠ°ΡΠ°Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡΡ Π·Π° ΡΠ΅ΠΊΡΠ½Π΄Ρ. - π Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ°: ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ ΠΏΠΎ Π΄Π°ΡΠ΅, ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ ΡΡΠΎΠΌΡ ΠΏΠΎΠ»Ρ ΠΈΠ·Π±Π°Π²ΠΈΡ ΠΎΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ
SORTΠ² ΠΏΠ°ΠΌΡΡΠΈ. - π Π‘Π²ΡΠ·ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ: ΠΠ½Π΄Π΅ΠΊΡΡ ΠΏΠΎ Π²Π½Π΅ΡΠ½ΠΈΠΌ ΠΊΠ»ΡΡΠ°ΠΌ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
Π‘ΡΡΠ»ΠΊΠ°ΠΠ°ΠΠΎΠΊΡΠΌΠ΅Π½Ρ) ΡΡΠΊΠΎΡΡΡΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ (JOIN).
β ΠΠΎΠ³Π΄Π° ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΠΎΡΠΌΠΎΠ·ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ:
- π₯ ΠΠ°ΡΡΠΎΠ²Π°Ρ Π·Π°Π³ΡΡΠ·ΠΊΠ° Π΄Π°Π½Π½ΡΡ : ΠΡΠΈ Π²ΡΡΠ°Π²ΠΊΠ΅ 100 000 ΡΡΡΠΎΠΊ Π‘Π£ΠΠ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π²ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ, ΡΡΠΎ Π·Π°ΠΌΠ΅Π΄Π»ΡΠ΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ.
- π Π§Π°ΡΡΡΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ: ΠΡΠ»ΠΈ ΠΏΠΎΠ»Π΅, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΏΠΎΡΡΡΠΎΠ΅Π½ ΠΈΠ½Π΄Π΅ΠΊΡ, ΡΠ°ΡΡΠΎ ΠΌΠ΅Π½ΡΠ΅ΡΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠ°ΡΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°), ΠΊΠ°ΠΆΠ΄ΡΠΉ
UPDATEΠ±ΡΠ΄Π΅Ρ Π΄ΠΎΠ»ΡΡΠ΅. - ποΈ ΠΠ·Π±ΡΡΠΎΡΠ½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ: 10 ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π½Π° ΡΠ°Π±Π»ΠΈΡΠ΅ Ρ 1 ΠΌΠ»Π½ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΌΠΎΠ³ΡΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π³ΠΈΠ³Π°Π±Π°ΠΉΡΡ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°.
- π― ΠΠ΅ΡΠ΅Π»Π΅ΠΊΡΠΈΠ²Π½ΡΠ΅ ΠΏΠΎΠ»Ρ: ΠΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ ΠΏΠΎΠ»Ρ
ΠΠΎΠ»(ΠΌΡΠΆΡΠΊΠΎΠΉ/ΠΆΠ΅Π½ΡΠΊΠΈΠΉ) Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π΅Π½ β ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΡ ΠΏΠΎ Π½Π΅ΠΌΡ Π½Π΅ ΡΡΠΊΠΎΡΠΈΡΡΡ.
ΠΡΠΈΠΌΠ΅Ρ ΠΈΠ· ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ: Π ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π±Π°Π· 1Π‘:Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠΎΡΠ³ΠΎΠ²Π»Π΅ΠΉ Π·Π°ΠΏΡΠΎΡ ΠΏΠΎ ΠΎΡΡΠ°ΡΠΊΠ°ΠΌ ΡΠΎΠ²Π°ΡΠΎΠ² Π²ΡΠΏΠΎΠ»Π½ΡΠ»ΡΡ 40 ΠΌΠΈΠ½ΡΡ. ΠΠΎΡΠ»Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΡΠΎΡΡΠ°Π²Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΏΠΎ ΠΏΠΎΠ»ΡΠΌ Π‘ΠΊΠ»Π°Π΄, ΠΠΎΠΌΠ΅Π½ΠΊΠ»Π°ΡΡΡΠ° ΠΈ Π₯Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ° Π²ΡΠ΅ΠΌΡ ΡΠΎΠΊΡΠ°ΡΠΈΠ»ΠΎΡΡ Π΄ΠΎ 2 ΠΌΠΈΠ½ΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΠ°Π·ΠΌΠ΅Ρ Π±Π°Π·Ρ Π²ΡΡΠΎΡ Π½Π° 15% ΠΈΠ·-Π·Π° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ².
ΠΠ½Π΄Π΅ΠΊΡΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½Ρ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»Π΅ ΠΈΠΌΠ΅Π΅Ρ Π²ΡΡΠΎΠΊΡΡ ΡΠ΅Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ (ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ) ΠΈ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΡΡΠ»ΠΎΠ²ΠΈΡΡ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ.
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π² 1Π‘
Π 1Π‘:ΠΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡΡΡ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ (Π΄Π»Ρ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠ°) ΠΈΠ»ΠΈ Π‘Π£ΠΠ (Π΄Π»Ρ ΠΊΠ»ΠΈΠ΅Π½Ρ-ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠ³ΠΎ). Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΎΠ±Π° ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π°.
π ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡΠ΅ (ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ)
ΠΠ»Ρ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ Π±Π°Π·Ρ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΏΠΎΠ»Π΅ΠΉ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΠ΅ΠΌΡΠ΅ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊΠΈ ΠΈΠ»ΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ). Π§ΡΠΎΠ±Ρ ΡΠ²Π½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΠ΅ΠΌΠΎΠ΅ ΠΏΠΎΠ»Π΅:
- ΠΡΠΊΡΠΎΠΉΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡ ΠΈ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² Π½ΡΠΆΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊ
ΠΠΎΠΌΠ΅Π½ΠΊΠ»Π°ΡΡΡΠ°). - Π ΠΏΠ°Π»ΠΈΡΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ² Π½Π°ΠΉΠ΄ΠΈΡΠ΅ ΠΏΠΎΠ»Π΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
ΠΡΡΠΈΠΊΡΠ»). - Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ»Π°Π³
ΠΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡΠ² ΡΠ²ΠΎΠΉΡΡΠ²Π°Ρ ΠΏΠΎΠ»Ρ. - ΠΠ±Π½ΠΎΠ²ΠΈΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
(
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ β ΠΠ±Π½ΠΎΠ²ΠΈΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ).
ΠΠΎΠ»Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² WHERE ΠΈΠ»ΠΈ ORDER BY|
ΠΠΎΠ»Π΅ ΠΈΠΌΠ΅Π΅Ρ Π²ΡΡΠΎΠΊΡΡ ΡΠ΅Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ (ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ)|
ΠΠ½Π΄Π΅ΠΊΡ Π½Π΅ Π΄ΡΠ±Π»ΠΈΡΡΠ΅Ρ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅|
Π£ΡΡΡ Π½Π°Π³ΡΡΠ·ΠΊΠΈ Π½Π° Π·Π°ΠΏΠΈΡΡ (ΠΈΠ½Π΄Π΅ΠΊΡ Π½Π΅ ΠΊΡΠΈΡΠΈΡΠ΅Π½ Π΄Π»Ρ ΡΠ°ΡΡΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΠΌΡΡ ΠΏΠΎΠ»Π΅ΠΉ)-->
π₯οΈ ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² Π‘Π£ΠΠ (ΠΊΠ»ΠΈΠ΅Π½Ρ-ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ)
ΠΠ»Ρ Π±Π°Π· Π½Π° MS SQL Server ΠΈΠ»ΠΈ PostgreSQL ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π½Π°ΠΏΡΡΠΌΡΡ Π² Π‘Π£ΠΠ. ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ:
- π οΈ Π§Π΅ΡΠ΅Π· ΠΊΠΎΠ½ΡΠΎΠ»Ρ Π‘Π£ΠΠ: ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
CREATE INDEX. - π±οΈ Π§Π΅ΡΠ΅Π· Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ: ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, SQL Server Management Studio.
- π€ ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ: ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ Π‘Π£ΠΠ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, PostgreSQL) ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΡ ΠΊΠ»ΡΡΠ΅ΠΉ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ.
ΠΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π² MS SQL:
CREATE INDEX IX_Document_Date ON dbo._Document123 (Date_Time)
ΠΠ΄Π΅ _Document123 β ΡΠ΅Π°Π»ΡΠ½ΠΎΠ΅ ΠΈΠΌΡ ΡΠ°Π±Π»ΠΈΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ° Π² Π±Π°Π·Π΅ 1Π‘ (ΠΌΠΎΠΆΠ½ΠΎ ΡΠ·Π½Π°ΡΡ ΡΠ΅ΡΠ΅Π· ΠΠΌΡΠ’Π°Π±Π»ΠΈΡΡ() Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡΠ΅).
ΠΠ«ΠΠ ΠΠ’Π¬
ΠΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅.ΠΠΌΡ,
ΠΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅.ΠΠΌΡΠ’Π°Π±Π»ΠΈΡΡ
ΠΠ
v8_Metadata AS ΠΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅
-->
β οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² 1Π‘
β οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π ΠΊΠ»ΠΈΠ΅Π½Ρ-ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ΅ 1Π‘ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΡ, ΡΠΎΠ·Π΄Π°Π½Π½ΡΠ΅ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡΠ΅. Π Π΅Π°Π»ΡΠ½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡΡΡ Π² Π‘Π£ΠΠ! ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠΎΡΡΠ°Π²ΠΈΠ»ΠΈ ΡΠ»Π°Π³
ΠΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡΠ΄Π»Ρ ΠΏΠΎΠ»Ρ Π² ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊΠ΅, Π½ΠΎ Π² MS SQL ΠΈΠ½Π΄Π΅ΠΊΡ Π½Π΅ ΡΠΎΠ·Π΄Π°Π½ β ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΡ ΠΏΠΎ ΡΡΠΎΠΌΡ ΠΏΠΎΠ»Ρ Π±ΡΠ΄Π΅Ρ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΉ.
ΠΠ½Π°Π»ΠΈΠ· ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²: ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ
Π‘ΠΎΠ·Π΄Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ β ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π° Π΄Π΅Π»Π°. ΠΠ°ΠΆΠ½ΠΎ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΡΡ Π΅Π³ΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ ΠΈ ΡΠ΄Π°Π»ΡΡΡ Π½Π΅Π½ΡΠΆΠ½ΡΠ΅. ΠΠΎΡ ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ Π°Π½Π°Π»ΠΈΠ·Π°:
| ΠΠ½ΡΡΡΡΠΌΠ΅Π½Ρ | ΠΠ»Ρ ΡΠ΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ | ΠΡΠΈΠΌΠ΅Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² 1Π‘ |
|---|---|---|
| ΠΠ»Π°Π½Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² | ΠΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ, Π° Π³Π΄Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ. | Π ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡΠ΅: ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ β Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ β ΠΠ»Π°Π½Ρ Π·Π°ΠΏΡΠΎΡΠΎΠ². |
| Π‘ΡΠ°ΡΠΈΡΡΠΈΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² | ΠΠΎΠΌΠΎΠ³Π°Π΅Ρ Π½Π°ΠΉΡΠΈ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π°Π»ΠΈΡΡ. | Π MS SQL: Π·Π°ΠΏΡΠΎΡ ΠΊ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡΠΌ sys.dm_db_index_usage_stats. |
| ΠΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²ΡΠΈΠΊ 1Π‘ | ΠΠ°ΠΌΠ΅ΡΡΠ΅Ρ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈ Π²ΡΡΠ²Π»ΡΠ΅Ρ "ΡΠ·ΠΊΠΈΠ΅ ΠΌΠ΅ΡΡΠ°". | ΠΠΊΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π· Π‘Π΅ΡΠ²ΠΈΡ β ΠΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²ΡΠΈΠΊ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡΠ΅. |
| ΠΠΎΠ½ΠΈΡΠΎΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π‘Π£ΠΠ | ΠΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° Π΄ΠΈΡΠΊΠΈ, CPU ΠΈ ΠΏΠ°ΠΌΡΡΡ, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌΠΈ. | Π PostgreSQL: ΡΡΠΈΠ»ΠΈΡΠ° pg_stat_activity. |
ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ°ΠΌΡΡ
ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΡ
ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ β ΡΠ΅ΡΠ°ΠΊΡΠΎΡΠΈΠ½Π³ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΏΠΎΠ΄ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ ΠΏΠΎΠ»Ρ ΠΠ°ΡΠ°, Π½ΠΎ Π² Π·Π°ΠΏΡΠΎΡΠ΅ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΡ ΠΠΠ§ΠΠΠΠΠΠ ΠΠΠΠ(ΠΠ°ΡΠ°, ΠΠ΅ΡΡΡ), Π‘Π£ΠΠ Π½Π΅ ΡΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ. Π Π΅ΡΠ΅Π½ΠΈΠ΅ β ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ°ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠ΅:
// ΠΠ»ΠΎΡ
ΠΎ (ΠΈΠ½Π΄Π΅ΠΊΡ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ):
ΠΠΠ ΠΠΠ§ΠΠΠΠΠΠ ΠΠΠΠ(ΠΠΎΠΊΡΠΌΠ΅Π½Ρ.ΠΠ°ΡΠ°, ΠΠ΅ΡΡΡ) = &ΠΠ°ΡΠ°
// Π₯ΠΎΡΠΎΡΠΎ (ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ):
ΠΠΠ ΠΠΎΠΊΡΠΌΠ΅Π½Ρ.ΠΠ°ΡΠ° >= ΠΠΠ§ΠΠΠΠΠΠ ΠΠΠΠ(&ΠΠ°ΡΠ°, ΠΠ΅ΡΡΡ)
Π ΠΠΎΠΊΡΠΌΠ΅Π½Ρ.ΠΠ°ΡΠ° < ΠΠΠ§ΠΠΠΠΠΠ ΠΠΠΠ(&ΠΠ°ΡΠ°, ΠΠ΅ΡΡΡ) + 31
ΠΡΠ»ΠΈ Π·Π°ΠΏΡΠΎΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ, ΡΠ½Π°ΡΠ°Π»Π° ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅ ΠΏΠ»Π°Π½ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. Π§Π°ΡΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π½Π΅ Π² ΠΎΡΡΡΡΡΡΠ²ΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, Π° Π² Π½Π΅ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΌ ΡΡΠ»ΠΎΠ²ΠΈΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠ½ΠΊΡΠΈΠΉ Π½Π°Π΄ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΠ΅ΠΌΡΠΌΠΈ ΠΏΠΎΠ»ΡΠΌΠΈ).
Π’ΠΈΠΏΠΈΡΠ½ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌΠΈ Π² 1Π‘
ΠΠ°ΠΆΠ΅ ΠΎΠΏΡΡΠ½ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΏΡΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ². ΠΠΎΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΠ΅:
- ΠΠ½Π΄Π΅ΠΊΡΡ ΠΏΠΎ Π²ΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΠΌ: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² "Π½Π° Π²ΡΡΠΊΠΈΠΉ ΡΠ»ΡΡΠ°ΠΉ" ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠ°Π·Π΄ΡΡΠΈΡ Π±Π°Π·Ρ ΠΈ Π·Π°ΠΌΠ΅Π΄Π»Π΅Π½ΠΈΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ. Π Π΅ΡΠ΅Π½ΠΈΠ΅: ΠΠ½Π΄Π΅ΠΊΡΠΈΡΡΠΉΡΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅Π°Π»ΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² Π·Π°ΠΏΡΠΎΡΠ°Ρ .
- ΠΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΡΡΠ΄ΠΊΠ° ΠΏΠΎΠ»Π΅ΠΉ Π² ΡΠΎΡΡΠ°Π²Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ : ΠΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ (Π, Π) Π½Π΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎ Π. Π Π΅ΡΠ΅Π½ΠΈΠ΅: ΠΠΎΠ»Ρ Ρ Π²ΡΡΠΎΠΊΠΎΠΉ ΡΠ΅Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΡ ΡΡΠ°Π²ΡΡΠ΅ ΠΏΠ΅ΡΠ²ΡΠΌΠΈ.
- ΠΠ½Π΄Π΅ΠΊΡΡ ΠΏΠΎ Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΡΠΌ ΠΏΠΎΠ»ΡΠΌ: ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ ΠΏΠΎΠ»Ρ
ΠΠΎΠ»Π½ΠΎΠ΅ΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ. Π Π΅ΡΠ΅Π½ΠΈΠ΅: Π₯ΡΠ°Π½ΠΈΡΠ΅ Π²ΡΡΠΈΡΠ»ΡΠ΅ΠΌΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌ ΠΏΠΎΠ»Π΅ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΠΉΡΠ΅ Π΅Π³ΠΎ. - ΠΡΡΡΡΡΡΠ²ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²: Π‘ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΈΡΡΡΡΡΡ, ΡΡΠΎ ΡΠ½ΠΈΠΆΠ°Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ. Π Π΅ΡΠ΅Π½ΠΈΠ΅: Π Π΅Π³ΡΠ»ΡΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠΉΡΠ΅
REINDEX(Π² PostgreSQL) ΠΈΠ»ΠΈREBUILD(Π² MS SQL). - ΠΠ½Π΄Π΅ΠΊΡΡ ΠΏΠΎ ΠΏΠΎΠ»ΡΠΌ Ρ Π½ΠΈΠ·ΠΊΠΎΠΉ ΡΠ΅Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΡ: ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎ ΠΏΠΎΠ»Ρ
ΠΠΎΠΌΠ΅ΡΠΊΠ°Π£Π΄Π°Π»Π΅Π½ΠΈΡ(ΠΈΡΡΠΈΠ½Π°/Π»ΠΎΠΆΡ). Π Π΅ΡΠ΅Π½ΠΈΠ΅: Π£Π΄Π°Π»ΡΠΉΡΠ΅ ΡΠ°ΠΊΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ β ΠΎΠ½ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΡΠΌΠΎΠ·ΡΡ Π·Π°ΠΏΠΈΡΡ.
ΠΡΡ ΠΎΠ΄Π½Π° ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° β Π½Π΅ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡΠ΅ ΠΈ Π‘Π£ΠΠ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Ρ ΠΏΠΎΡΡΠ°Π²ΠΈΠ»ΠΈ ΡΠ»Π°Π³ ΠΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡΠ΅, Π½ΠΎ Π·Π°Π±ΡΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡ Π½Π΅ ΡΠΎΠ·Π΄Π°Π»ΡΡ Π² Π‘Π£ΠΠ, Π° Π²Ρ Π΄ΡΠΌΠ°Π΅ΡΠ΅, ΡΡΠΎ ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ.
ΠΠ°ΠΊ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, ΡΠΎΠ·Π΄Π°Π½ Π»ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ Π² Π‘Π£ΠΠ?
Π MS SQL Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ Π·Π°ΠΏΡΠΎΡ:
SELECT * FROM sys.indexes
WHERE object_id = OBJECT_ID('dbo._Document123')
ΠΠ΄Π΅ _Document123 β ΠΈΠΌΡ ΡΠ°Π±Π»ΠΈΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°.
Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ ΠΏΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² Π°ΠΊΡΡΠ°Π»ΡΠ½ΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ
ΠΠ½Π΄Π΅ΠΊΡΡ ΡΡΠ΅Π±ΡΡΡ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π² ΠΊΡΡΠΏΠ½ΡΡ Π±Π°Π·Π°Ρ . ΠΠΎΡ ΡΠ΅ΠΊ-Π»ΠΈΡΡ Π΄Π»Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠ²:
ΠΡΠΎΠ²Π΅ΡΡΡΡ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² (ΡΠ°Π· Π² ΠΊΠ²Π°ΡΡΠ°Π»)|
ΠΠ΅ΡΠ΅ΡΡΡΠ°ΠΈΠ²Π°ΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ (ΡΠ°Π· Π² ΠΏΠΎΠ»Π³ΠΎΠ΄Π°)|
Π£Π΄Π°Π»ΡΡΡ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ (ΠΏΠΎ Π΄Π°Π½Π½ΡΠΌ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π°)|
ΠΠ±Π½ΠΎΠ²Π»ΡΡΡ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΡ Π‘Π£ΠΠ ΠΏΠΎΡΠ»Π΅ ΠΌΠ°ΡΡΠΎΠ²ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π΄Π°Π½Π½ΡΡ |
Π’Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΏΠΎΡΠ»Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π½ΠΎΠ²ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²-->
ΠΠ»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ:
- π Π Π΅Π³Π»Π°ΠΌΠ΅Π½ΡΠ½ΡΠ΅ Π·Π°Π΄Π°Π½ΠΈΡ Π² 1Π‘: ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π°ΠΏΡΡΠΊ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΏΠΎ ΡΠ°ΡΠΏΠΈΡΠ°Π½ΠΈΡ.
- π€ Π‘ΠΊΡΠΈΠΏΡΡ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ Π‘Π£ΠΠ: Π MS SQL ΡΡΠΎ
Maintenance Plans, Π² PostgreSQL βcron-Π·Π°Π΄Π°ΡΠΈ ΡREINDEX. - π ΠΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ: ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π²ΡΠΎΠ΄Π΅ Zabbix ΠΈΠ»ΠΈ Grafana Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ².
ΠΡΠΎΠ±ΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠ΄Π΅Π»ΠΈΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΏΠΎΡΠ»Π΅:
- ΠΠ°ΡΡΠΎΠ²ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π΄Π°Π½Π½ΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠ΅ΡΠ΅Π½ΠΎΡ ΠΎΡΡΠ°ΡΠΊΠΎΠ²).
- ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ 1Π‘.
- ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΡΡΠΊΡΡΡΡ Π±Π°Π·Ρ (Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΡΡ ΠΏΠΎΠ»Π΅ΠΉ).
ΠΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΡ Π²ΡΠ΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² ΡΠ°Π±Π»ΠΈΡΠ΅ MS SQL:
ALTER INDEX ALL ON dbo._Document123 REBUILD
ΠΠ»Ρ ΠΊΡΡΠΏΠ½ΡΡ
Π±Π°Π· ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π²ΡΠΏΠΎΠ»Π½ΡΠΉΡΠ΅ Π² ΠΏΠ΅ΡΠΈΠΎΠ΄ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π½ΠΎΡΡΡ). Π MS SQL ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ WITH (ONLINE = ON), ΡΡΠΎΠ±Ρ Π½Π΅ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π±Π»ΠΈΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ΅Π±ΠΈΠ»Π΄Π°.
FAQ: Π§Π°ΡΡΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ ΠΎΠ± ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π² 1Π‘
πΉ Π‘ΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π½Π° ΠΎΠ΄Π½Ρ ΡΠ°Π±Π»ΠΈΡΡ?
Π’Π΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ Π½Π΅Ρ (Π² MS SQL β Π΄ΠΎ 999 Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠ½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π½Π° ΡΠ°Π±Π»ΠΈΡΡ), Π½ΠΎ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ Π½Π΅ Π±ΠΎΠ»Π΅Π΅ 5β10. ΠΠ°ΠΆΠ΄ΡΠΉ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ:
- Π£Π²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ Π±Π°Π·Ρ.
- ΠΠ°ΠΌΠ΅Π΄Π»ΡΠ΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ
INSERT/UPDATE/DELETE. - Π£ΡΠ»ΠΎΠΆΠ½ΡΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ.
ΠΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎ: Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡ, Π·Π°ΠΌΠ΅ΡΡΡΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° Π·Π°ΠΏΠΈΡΡ.
πΉ ΠΠΎΡΠ΅ΠΌΡ 1Π‘ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠΎΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ?
ΠΡΠΈΡΠΈΠ½ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ:
- ΠΠ½Π΄Π΅ΠΊΡ Π½Π΅ ΡΠΎΠ·Π΄Π°Π½ Π² Π‘Π£ΠΠ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Ρ ΠΏΠΎΡΡΠ°Π²ΠΈΠ»ΠΈ ΡΠ»Π°Π³ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡΠ΅, Π½ΠΎ Π½Π΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΠ»ΠΈ Π±Π°Π·Ρ).
- Π£ΡΠ»ΠΎΠ²ΠΈΠ΅ Π² Π·Π°ΠΏΡΠΎΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΠ½ΠΊΡΠΈΡ Π½Π°Π΄ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΠ΅ΠΌΡΠΌ ΠΏΠΎΠ»Π΅ΠΌ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
ΠΠΠ(ΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅, 3) = "ΠΠΠ"). - Π‘Π£ΠΠ ΡΠ΅ΡΠΈΠ»Π°, ΡΡΠΎ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ (
Table Scan) Π±ΡΡΡΡΠ΅Π΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎΠΊΡΡΠ²Π°Π΅Ρ 80% ΡΠ°Π±Π»ΠΈΡΡ). - Π‘ΡΠ°ΡΠΈΡΡΠΈΠΊΠ° Π² Π‘Π£ΠΠ ΡΡΡΠ°ΡΠ΅Π»Π° (Π½ΡΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ
UPDATE STATISTICS).
Π§ΡΠΎΠ±Ρ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ ΠΏΠ»Π°Π½ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ° Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡΠ΅ ΠΈΠ»ΠΈ ΡΠ΅ΡΠ΅Π· EXPLAIN ANALYZE Π² PostgreSQL.
πΉ ΠΠ°ΠΊ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ»Ρ Ρ ΡΠΈΠΏΠΎΠΌ "Π‘ΡΡΠΎΠΊΠ° Π½Π΅ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ"?
Π 1Π‘ ΠΏΠΎΠ»Ρ ΡΠΈΠΏΠ° Π‘ΡΡΠΎΠΊΠ° Ρ Π½Π΅ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½ΠΎΠΉ (ΠΈΠ»ΠΈ Π΄Π»ΠΈΠ½ΠΎΠΉ > 8000 ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² MS SQL) Π½Π΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Ρ Π½Π°ΠΏΡΡΠΌΡΡ. Π Π΅ΡΠ΅Π½ΠΈΡ:
- Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΏΠΎΠ»Π΅ Ρ Ρ
ΡΡΠ΅ΠΌ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
MD5) ΠΈΠ»ΠΈ ΡΡΠ΅ΡΡΠ½Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΎΠΉ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΠΉΡΠ΅ Π΅Π³ΠΎ. - ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΠΎΠ»Π½ΠΎΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ (Π΅ΡΠ»ΠΈ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΊΠ°ΡΡ ΠΏΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠΌΡ).
- Π Π°Π·Π±Π΅ΠΉΡΠ΅ ΡΡΡΠΎΠΊΡ Π½Π° ΡΠ°ΡΡΠΈ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΠΉΡΠ΅ ΠΏΠ΅ΡΠ²ΡΡ ΡΠ°ΡΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠ΅ΡΠ²ΡΠ΅ 100 ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ²).
ΠΡΠΈΠΌΠ΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Ρ ΡΡ-ΠΏΠΎΠ»Ρ Π² ΠΌΠΎΠ΄ΡΠ»Π΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ°:
ΠΡΠΎΡΠ΅Π΄ΡΡΠ° ΠΡΠΈΠΠ°ΠΏΠΈΡΠΈ()
ΠΡΠ»ΠΈ ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ("ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅") Π’ΠΎΠ³Π΄Π°
Π₯ΡΡΠΠΏΠΈΡΠ°Π½ΠΈΡ = Π‘ΡΡΠΎΠΊΠ°(ΠΠΎΠ²ΡΠΉ Π₯ΡΡΠΠ°Π½Π½ΡΡ
(ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅, "MD5"));
ΠΠΎΠ½Π΅ΡΠΡΠ»ΠΈ;
ΠΠΎΠ½Π΅ΡΠΡΠΎΡΠ΅Π΄ΡΡΡ
πΉ ΠΠ»ΠΈΡΡΡ Π»ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π½Π° ΡΠΊΠΎΡΠΎΡΡΡ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ?
ΠΠ°, Π½ΠΎ ΠΊΠΎΡΠ²Π΅Π½Π½ΠΎ:
- π Π£Π²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡ ΡΠ°Π·ΠΌΠ΅Ρ Π±Π°Π·Ρ: ΠΠΎΠ»ΡΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² β Π±ΠΎΠ»ΡΡΠ΅ Π΄Π°Π½Π½ΡΡ β Π΄ΠΎΠ»ΡΡΠ΅ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅.
- π Π£Π²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° Π΄ΠΈΡΠΊ: ΠΡΠΈ ΠΈΠ½ΠΊΡΠ΅ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎΠΌ Π±ΡΠΊΠ°ΠΏΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ ΡΠΎΠΆΠ΅ ΡΠΈΠΊΡΠΈΡΡΡΡΡΡ.
ΠΠ΄Π½Π°ΠΊΠΎ Π²Π»ΠΈΡΠ½ΠΈΠ΅ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π΅ΠΊΡΠΈΡΠΈΡΠ½ΠΎ (5β15% ΠΊ ΠΎΠ±ΡΠ΅ΠΌΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π±ΡΠΊΠ°ΠΏΠ°). ΠΠΎΡΠ°Π·Π΄ΠΎ Π²Π°ΠΆΠ½Π΅Π΅ Π²Π»ΠΈΡΠ½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π½Π° Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π±Π°Π·Ρ: ΠΏΡΠΈ ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΈΡ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΡΡΡ ΡΠ°ΡΡ.
πΉ ΠΠΎΠΆΠ½ΠΎ Π»ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ Π² 1Π‘?
ΠΠ΅Ρ, Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΠΎΠΊΡΠΌΠ΅Π½Ρ.ΠΠΎΡΡΡΠΏΠ»Π΅Π½ΠΈΠ΅Π’ΠΎΠ²Π°ΡΠΎΠ².ΠΡΡΠ°ΡΠΊΠΈ) β ΡΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π½Π°Π±ΠΎΡΡ Π΄Π°Π½Π½ΡΡ
, ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΡΠ΅ Π½Π° Π»Π΅ΡΡ. ΠΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡ
Π½Π΅Π»ΡΠ·Ρ. ΠΠ΄Π½Π°ΠΊΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅:
- Π‘ΠΎΠ·Π΄Π°ΡΡ ΡΠ΅Π°Π»ΡΠ½ΡΡ ΡΠ°Π±Π»ΠΈΡΡ Ρ Π½ΡΠΆΠ½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΈ ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Ρ.
- ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π·Π°ΠΏΡΠΎΡ ΠΊ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅, ΡΡΠΎΠ±Ρ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» ΠΈΠ½Π΄Π΅ΠΊΡΡ Π±Π°Π·ΠΎΠ²ΡΡ ΡΠ°Π±Π»ΠΈΡ.
ΠΡΠΈΠΌΠ΅Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ:
// ΠΠ΅Π΄Π»Π΅Π½Π½ΠΎ (Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ° Π±Π΅Π· ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²):
ΠΠ«ΠΠ ΠΠ’Π¬
ΠΡΡΠ°ΡΠΊΠΈΠ’ΠΎΠ²Π°ΡΠΎΠ².ΠΠΎΠΌΠ΅Π½ΠΊΠ»Π°ΡΡΡΠ°,
ΠΡΡΠ°ΡΠΊΠΈΠ’ΠΎΠ²Π°ΡΠΎΠ².ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ
ΠΠ
ΠΠΎΠΊΡΠΌΠ΅Π½Ρ.ΠΠΎΡΡΡΠΏΠ»Π΅Π½ΠΈΠ΅Π’ΠΎΠ²Π°ΡΠΎΠ².ΠΡΡΠ°ΡΠΊΠΈ ΠΠΠ ΠΡΡΠ°ΡΠΊΠΈΠ’ΠΎΠ²Π°ΡΠΎΠ²
// ΠΡΡΡΡΠΎ (ΡΠ²Π½ΠΎΠ΅ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΠ΅ΠΌΡΡ
ΠΏΠΎΠ»Π΅ΠΉ):
ΠΠ«ΠΠ ΠΠ’Π¬
ΠΡΡΠ°ΡΠΊΠΈΠ’ΠΎΠ²Π°ΡΠΎΠ².ΠΠΎΠΌΠ΅Π½ΠΊΠ»Π°ΡΡΡΠ° ΠΠΠ ΠΠΎΠΌΠ΅Π½ΠΊΠ»Π°ΡΡΡΠ°,
Π‘Π£ΠΠΠ(ΠΡΡΠ°ΡΠΊΠΈΠ’ΠΎΠ²Π°ΡΠΎΠ².ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ) ΠΠΠ ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ
ΠΠ
ΠΠΎΠΊΡΠΌΠ΅Π½Ρ.ΠΠΎΡΡΡΠΏΠ»Π΅Π½ΠΈΠ΅Π’ΠΎΠ²Π°ΡΠΎΠ².ΠΡΡΠ°ΡΠΊΠΈ ΠΠΠ ΠΡΡΠ°ΡΠΊΠΈΠ’ΠΎΠ²Π°ΡΠΎΠ²
ΠΠΠ
ΠΡΡΠ°ΡΠΊΠΈΠ’ΠΎΠ²Π°ΡΠΎΠ².Π‘ΠΊΠ»Π°Π΄ = &Π‘ΠΊΠ»Π°Π΄
Π‘ΠΠ Π£ΠΠΠΠ ΠΠΠΠ’Π¬ ΠΠ
ΠΡΡΠ°ΡΠΊΠΈΠ’ΠΎΠ²Π°ΡΠΎΠ².ΠΠΎΠΌΠ΅Π½ΠΊΠ»Π°ΡΡΡΠ°