Π‘Π” Π½Π° мСсиндТСра (Ρ‡.2): сСкционирамС 'Π½Π°ΠΆΠΈΠ²ΠΎ'

УспСшно ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€Π°Ρ…ΠΌΠ΅ структурата Π½Π° Π½Π°ΡˆΠ°Ρ‚Π° PostgreSQL Π±Π°Π·Π° Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° корСспондСнцията, ΠΈΠ·ΠΌΠΈΠ½Π° Π³ΠΎΠ΄ΠΈΠ½Π°, ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ Π°ΠΊΡ‚ΠΈΠ²Π½o я ΠΏΠΎΠΏΡŠΠ»Π²Π°Ρ‚, Π²Π΅Ρ‡Π΅ Π² нСя ΠΈΠΌΠ° ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ записи, и… Π½Π΅Ρ‰ΠΎ Π·Π°ΠΏΠΎΡ‡Π½Π° Π΄Π° забавя.

Π‘Π” Π½Π° мСсиндТСра (Ρ‡.2): сСкционирамС 'Π½Π°ΠΆΠΈΠ²ΠΎ'
Π Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π΅ Ρ‚Π°ΠΌ, Ρ‡Π΅ с нарастванСто Π½Π° ΠΎΠ±Π΅ΠΌΠ° Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ‚Π° растС ΠΈ "Π΄ΡŠΠ»Π±ΠΎΡ‡ΠΈΠ½Π°Ρ‚Π°" Π½Π° индСкситС β€” ΠΌΠ°ΠΊΠ°Ρ€ ΠΈ логаримичСски. Но с Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Ρ‚ΠΎΠ²Π° ΠΏΡ€ΠΈΠ½ΡƒΠΆΠ΄Π°Π²Π° ΡΡŠΡ€Π²ΡŠΡ€Π° Π΄Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π° ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ ΠΏΠΎΠ²Π΅Ρ‡Π΅ страници Π΄Π°Π½Π½ΠΈ , ΠΎΡ‚ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ Π² Π½Π°Ρ‡Π°Π»ΠΎΡ‚ΠΎ.Π’ΡƒΠΊ Π½Π° ΠΏΠΎΠΌΠΎΡ‰ ΠΈΠ΄Π²Π°

сСкциониранСто Π©Π΅ ΠΎΡ‚Π±Π΅Π»Π΅ΠΆΠ°, Ρ‡Π΅ става Π²ΡŠΠΏΡ€ΠΎΡ Π½Π΅ Π·Π° ΡˆΠ°Ρ€Π΄ΠΈΡ€Π½Π΅, тоСст раздСлянС Π½Π° Π΄Π°Π½Π½ΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π±Π°Π·ΠΈ ΠΈΠ»ΠΈ ΡΡŠΡ€Π²ΡŠΡ€ΠΈ. Π—Π°Ρ‰ΠΎΡ‚ΠΎ, Π΄ΠΎΡ€ΠΈ Π΄Π° Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π½Π°.

няколко ΡΡŠΡ€Π²ΡŠΡ€Π°, Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° сС ΠΈΠ·Π±Π°Π²ΠΈΡ‚Π΅ ΠΎΡ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с "Ρ€Π°Π·Π΄ΡƒΠ²Π°Π½Π΅Ρ‚ΠΎ" Π½Π° индСкситС с Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ. Ясно Π΅, Ρ‡Π΅ Π°ΠΊΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° си ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚Π΅ всСки Π΄Π΅Π½ Π΄Π° пускатС Π½ΠΎΠ² ΡΡŠΡ€Π²ΡŠΡ€, Π²Π°ΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ Π²Π΅Ρ‡Π΅ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ Π½Π° съвсСм Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎ Ρ€Π°Π²Π½ΠΈΡ‰Π΅. НиС Ρ‰Π΅ Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π½Π΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΈ скриптовС Π·Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° сСкциониранСто "Π² ТСлязото", Π° самия ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ β€” ΠΊΠ°ΠΊΠ²ΠΎ ΠΈ ΠΊΠ°ΠΊ Π΅ Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ Π΄Π° сС "Ρ€Π°Π·Ρ€Π΅ΠΆΠ΅ Π½Π° ΠΏΠ°Ρ€Ρ‡Π΅Π½Ρ†Π°", ΠΈ Π΄ΠΎ ΠΊΠ°ΠΊΠ²ΠΎ Π²ΠΎΠ΄ΠΈ Ρ‚Π°ΠΊΠΎΠ²Π° ΠΆΠ΅Π»Π°Π½ΠΈΠ΅.

ΠšΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡ

ΠžΡ‰Π΅ вСднъТ Ρ‰Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ Π½Π°ΡˆΠ°Ρ‚Π° Ρ†Π΅Π»: ΠΆΠ΅Π»Π°Π΅ΠΌ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ Ρ‚Π°ΠΊΠ°, Ρ‡Π΅ днСс, ΡƒΡ‚Ρ€Π΅ ΠΈ слСд Π³ΠΎΠ΄ΠΈΠ½Π° количСството Ρ‡Π΅Ρ‚Π΅Π½ΠΈ Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ PostgreSQL ΠΏΡ€ΠΈ всяка опСрация Π½Π° Ρ‡Π΅Ρ‚Π΅Π½Π΅/запис Π΄Π° остава ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»Π½ΠΎ ΡΡŠΡ‰ΠΎΡ‚ΠΎ.

Π—Π° всякакви

Ρ…Ρ€ΠΎΠ½ΠΎΠ»ΠΎΠ³ΠΈΡ‡Π½ΠΎ Π½Π°Ρ‚Ρ€ΡƒΠΏΠ²Π°Π½ΠΈ Π΄Π°Π½Π½ΠΈ (ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈ, ΠΆΡƒΡ€Π½Π°Π»ΠΈ, Π°Ρ€Ρ…ΠΈΠ²ΠΈ, …) СстСствСният ΠΈΠ·Π±ΠΎΡ€ Π·Π° ΠΊΠ»ΡŽΡ‡ Π·Π° сСкциониранС Π΅ Π΄Π°Ρ‚Π°Ρ‚Π°/Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π½Π° ΡΡŠΠ±ΠΈΡ‚ΠΈΠ΅Ρ‚ΠΎ . Π’ нашия случай Ρ‚Π°ΠΊΠΎΠ²Π° ΡΡŠΠ±ΠΈΡ‚ΠΈΠ΅ Π΅ΠΌΠΎΠΌΠ΅Π½Ρ‚ΡŠΡ‚ Π½Π° ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Π½Π΅ Π½Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅Ρ‚ΠΎ ЗабСлязвамС, Ρ‡Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ ΠΏΠΎΡ‡Ρ‚ΠΈ Π²ΠΈΠ½Π°Π³ΠΈ.

работят само с "послСднитС" Ρ‚Π°ΠΊΠΈΠ²Π° Π΄Π°Π½Π½ΠΈ β€” Ρ‡Π΅Ρ‚Π°Ρ‚ послСднитС ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ, Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€Π°Ρ‚ послСднитС ΠΆΡƒΡ€Π½Π°Π»ΠΈ,… НС, Ρ€Π°Π·Π±ΠΈΡ€Π° сС, Ρ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΠΏΡ€Π΅Π³Π»Π΅Π΄Π°Ρ‚ ΠΈ ΠΏΠΎ-Π½Π°Π΄ΠΎΠ»Ρƒ във Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ, Π½ΠΎ Π³ΠΎ правят ΠΌΠ½ΠΎΠ³ΠΎ рядко. ΠžΡ‚ Ρ‚Π΅Π·ΠΈ ограничСния става ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»Π½ΠΎΡ‚ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π·Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡΡ‚Π° Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚

"посуточни" сСкции β€” Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ ΠΏΠΎΡ‡Ρ‚ΠΈ Π²ΠΈΠ½Π°Π³ΠΈ Π½Π°ΡˆΠΈΡΡ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» Ρ‰Π΅ Ρ‡Π΅Ρ‚Π΅ Ρ‚ΠΎΠ²Π°, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΌΡƒ Π΅ дошло "днСс" ΠΈΠ»ΠΈ "Π²Ρ‡Π΅Ρ€Π°". Ако ΠΏΡ€Π΅Π· дСня пишСм ΠΈ Ρ‡Π΅Ρ‚Π΅ΠΌ практичСски само Π² Π΅Π΄Π½Π° сСкция, Ρ‚ΠΎΠ²Π° Π½ΠΈ Π΄Π°Π²Π° ΠΈ

ΠΏΠΎ-Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° ΠΈ диска ΠΏΠΎ-Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° ΠΈ диска β€” Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ всички индСкси Π½Π° сСкцията лСсно сС ΠΏΠΎΠ±ΠΈΡ€Π°Ρ‚ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Π°Ρ‚Π° ΠΏΠ°ΠΌΠ΅Ρ‚, Π·Π° Ρ€Π°Π·Π»ΠΈΠΊΠ° ΠΎΡ‚ "Π³ΠΎΠ»Π΅ΠΌΠΈΡ‚Π΅ ΠΈ обСмисти" Π² цялата Ρ‚Π°Π±Π»ΠΈΡ†Π°.

ΡΡ‚ΡŠΠΏΠΊΠ° ΠΏΠΎ ΡΡ‚ΡŠΠΏΠΊΠ°

ΠžΠ±Ρ‰ΠΎ Π²Π·Π΅Ρ‚ΠΎ, всичко ΠΊΠ°Π·Π°Π½ΠΎ ΠΏΠΎ-Π³ΠΎΡ€Π΅ Π·Π²ΡƒΡ‡ΠΈ ΠΊΠ°Ρ‚ΠΎ Π΅Π΄ΠΈΠ½ Π±Π΅Π·ΠΊΡ€Π°Π΅Π½ ΠΏΡ€ΠΎΡ„ΠΈΡ‚. И Ρ‚ΠΎΠΉ Π΅ постиТим, Π½ΠΎ Π·Π° Π΄Π° Π³ΠΎ постигнСм, Ρ‰Π΅ трябва Π΄Π° сС постараСм Π΄ΠΎΠ±Ρ€Π΅ β€” Π·Π°Ρ‰ΠΎΡ‚ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π΄Π° сС сСкционира Π΅Π΄Π½Π° ΠΎΡ‚ ΡΡŠΡ‰Π½ΠΎΡΡ‚ΠΈΡ‚Π΅ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ нСобходимостта Π΄Π° сС "раздСлят" ΠΈ ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈΡ‚Π΅ с нСя.

Π‘ΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅Ρ‚ΠΎ, Π½Π΅Π³ΠΎΠ²ΠΈΡ‚Π΅ свойства ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ†ΠΈΠΈ

Въй ΠΊΠ°Ρ‚ΠΎ Ρ€Π΅ΡˆΠΈΡ…ΠΌΠ΅ Π΄Π° Ρ€Π°Π·Π΄Π΅Π»ΠΈΠΌ ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡΡ‚Π° ΠΏΠΎ Π΄Π°Ρ‚ΠΈ, Ρ€Π°Π·ΡƒΠΌΠ½ΠΎ Π΅ ΠΈ зависимитС ΠΎΡ‚ тях ΡΡŠΡ‰Π½ΠΎΡΡ‚ΠΈ-свойства (ΠΏΡ€ΠΈΠΊΠ°Ρ‡Π΅Π½ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅, списък Π½Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π»ΠΈΡ‚Π΅) ΡΡŠΡ‰ΠΎ Π΄Π° сС раздСлят, ΠΈ ΡΡŠΡ‰ΠΎ ΠΏΠΎ Π΄Π°Ρ‚Π°Ρ‚Π° Π½Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅Ρ‚ΠΎ.

Въй ΠΊΠ°Ρ‚ΠΎ Π΅Π΄Π½ΠΎ ΠΎΡ‚ Ρ‚ΠΈΠΏΠΈΡ‡Π½ΠΈΡ‚Π΅ Π½ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ Π΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΡ€Π΅Π³Π»Π΅Π΄ΡŠΡ‚ Π½Π° рСгистритС Π½Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡΡ‚Π° (Π½Π΅ΠΏΡ€ΠΎΡ‡Π΅Ρ‚Π΅Π½ΠΈ, входящи, всички), Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ Π΅ Ρ‚Π΅ ΡΡŠΡ‰ΠΎ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ "Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈ" Π² сСкциониранСто ΠΏΠΎ Π΄Π°Ρ‚ΠΈΡ‚Π΅ Π½Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡΡ‚Π°.

Π‘Π” Π½Π° мСсиндТСра (Ρ‡.2): сСкционирамС 'Π½Π°ΠΆΠΈΠ²ΠΎ'

ДобавямС ΠΊΠ»ΡŽΡ‡ Π·Π° сСкциониранС (Π΄Π°Ρ‚Π°Ρ‚Π° Π½Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅Ρ‚ΠΎ) във всички Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ: ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π»ΠΈ, Ρ„Π°ΠΉΠ», рСгистри. Π’ самото ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅ Π΄Π° Π½Π΅ добавямС, Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΎΡ‚ΠΎ Π”Π°Ρ‚Π°Π’Ρ€Π΅ΠΌΠ΅.

Π’Π΅ΠΌΠΈΡ‚Π΅

Въй ΠΊΠ°Ρ‚ΠΎ Ρ‚Π΅ΠΌΠ°Ρ‚Π° Π΅ Π΅Π΄Π½Π° Π·Π° няколко ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ, Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° я "Ρ€Π°Π·Π΄Π΅Π»ΠΈΠΌ" ΠΏΠΎ ΡΡŠΡ‰ΠΈΡ Π½Π°Ρ‡ΠΈΠ½ Π² ΠΌΠΎΠ΄Π΅Π»Π°, трябва Π΄Π° сС ΠΎΠΏΡ€Π΅ΠΌ Π½Π° Π½Π΅Ρ‰ΠΎ Π΄Ρ€ΡƒΠ³ΠΎ. Π’ нашия случай ΠΈΠ΄Π΅Π°Π»Π½ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠΆΠ΄Π° Π΄Π°Ρ‚Π°Ρ‚Π° Π½Π° ΠΏΡŠΡ€Π²ΠΎΡ‚ΠΎ ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ Π² корСспондСнцията β€” тоСст ΠΌΠΎΠΌΠ΅Π½Ρ‚ΡŠΡ‚ Π½Π° създаванС Π½Π° самата Ρ‚Π΅ΠΌΠ°.

Π‘Π” Π½Π° мСсиндТСра (Ρ‡.2): сСкционирамС 'Π½Π°ΠΆΠΈΠ²ΠΎ'

ДобавямС ΠΊΠ»ΡŽΡ‡ Π·Π° сСкциониранС (Π΄Π°Ρ‚Π°Ρ‚Π° Π½Π° Ρ‚Π΅ΠΌΠ°Ρ‚Π°) във всички Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ: Ρ‚Π΅ΠΌΠ°, участник.

Но сСга ΠΈΠΌΠ°ΠΌΠ΅ Π²Π΅Π΄Π½Π°Π³Π° Π΄Π²Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°:

  • Π² коя сСкция Π΄Π° Ρ‚ΡŠΡ€ΡΠΈΠΌ ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ ΠΏΠΎ Ρ‚Π΅ΠΌΠ°Ρ‚Π°?
  • Π² коя сСкция Π΄Π° Ρ‚ΡŠΡ€ΡΠΈΠΌ Ρ‚Π΅ΠΌΠ°Ρ‚Π° ΠΎΡ‚ ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅Ρ‚ΠΎ?

МоТС, Ρ€Π°Π·Π±ΠΈΡ€Π° сС, Π΄Π° ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ°Π²Π°ΠΌΠ΅ Π΄Π° Ρ‚ΡŠΡ€ΡΠΈΠΌ във всички сСкции, Π½ΠΎ Ρ‚ΠΎΠ²Π° Ρ‰Π΅ бъдС ΠΌΠ½ΠΎΠ³ΠΎ Ρ‚ΡŠΠΆΠ½ΠΎ ΠΈ Ρ‰Π΅ Π·Π°Π»ΠΈΡ‡ΠΈ всички наши ΠΏΠ΅Ρ‡Π°Π»Π±ΠΈ. Π—Π°Ρ‚ΠΎΠ²Π°, Π·Π° Π΄Π° Π·Π½Π°Π΅ΠΌ къдС Ρ‚ΠΎΡ‡Π½ΠΎ Π΄Π° Ρ‚ΡŠΡ€ΡΠΈΠΌ, Ρ‰Π΅ Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ логичСски Π²Ρ€ΡŠΠ·ΠΊΠΈ/ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ към сСкциитС:

  • Π² ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΏΠΎΠ»Π΅ с Π΄Π°Ρ‚Π°Ρ‚Π° Π½Π° Ρ‚Π΅ΠΌΠ°Ρ‚Π°
  • към Ρ‚Π΅ΠΌΠ°Ρ‚Π° Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ Π΄Π°Ρ‚ΠΈ Π½Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ ΠΎΡ‚ Ρ‚Π°Π·ΠΈ корСспондСнция (ΠΌΠΎΠΆΠ΅ Π΄Π° Π΅ ΠΎΡ‚Π΄Π΅Π»Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†Π°, Π° ΠΌΠΎΠΆΠ΅ ΠΈ масив ΠΎΡ‚ Π΄Π°Ρ‚ΠΈ)

Π‘Π” Π½Π° мСсиндТСра (Ρ‡.2): сСкционирамС 'Π½Π°ΠΆΠΈΠ²ΠΎ'

Въй ΠΊΠ°Ρ‚ΠΎ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈΡ‚Π΅ Π½Π° списъка с Π΄Π°Ρ‚ΠΈ Π½Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡΡ‚Π° Π·Π° всяка ΠΎΡ‚Π΄Π΅Π»Π½Π° корСспондСнция Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ ΠΌΠ°Π»ΠΊΠΎ (всС ΠΏΠ°ΠΊ ΠΏΠΎΡ‡Ρ‚ΠΈ всички ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ ΠΏΠΎΠΏΠ°Π΄Π°Ρ‚ Π² 1-2 съсСдни Π΄Π½ΠΈ), Ρ‰Π΅ спра ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° Ρ‚Π°ΠΊΡŠΠ² Π²Π°Ρ€ΠΈΠ°Π½Ρ‚.

Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, структурата Π½Π° Π½Π°ΡˆΠ°Ρ‚Π° Π±Π°Π·Π° ΠΏΡ€ΠΈΠ΅ слСдния Π²ΠΈΠ΄ с ΠΎΠ³Π»Π΅Π΄ Π½Π° сСкциониранСто:

Π’Π°Π±Π»ΠΈΡ†ΠΈ : RU, ΠΏΡ€ΠΈ ΠΎΡ‚Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ към ΠΊΠΈΡ€ΠΈΠ»ΠΈΡ†Π°Ρ‚Π° Π² ΠΈΠΌΠ΅Π½Π°Ρ‚Π° Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†ΠΈΡ‚Π΅/ΠΏΠΎΠ»Π΅Ρ‚Π°, ΠΏΠΎ-Π΄ΠΎΠ±Ρ€Π΅ Π΄Π° Π½Π΅ Π³Π»Π΅Π΄Π°Ρ‚Π΅

-- сСкции ΠΏΠΎ Π΄Π°Ρ‚Π° Π½Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅Ρ‚ΠΎ
CREATE TABLE "Π‘ΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅_YYYYMMDD"(
  "Π‘ΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅"
    uuid
      PRIMARY KEY
, "Π’Π΅ΠΌΠ°"
    uuid
, "Π”Π°Ρ‚Π°Π’Π΅ΠΌΠ°"
    date
, "Автор"
    uuid
, "ДатаЧас" -- ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΊΠ°Ρ‚ΠΎ Π΄Π°Ρ‚Π°
    timestamp
, "ВСкст"
    text
);

CREATE TABLE "АдрСсат_YYYYMMDD"(
  "Π”Π°Ρ‚Π°ΠΠ°Π‘ΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅Ρ‚ΠΎ"
    date
, "Π‘ΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅"
    uuid
, "ΠŸΠ΅Ρ€ΡΠΎΠ½Π°"
    uuid
, PRIMARY KEY("Π‘ΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅", "ΠŸΠ΅Ρ€ΡΠΎΠ½Π°")
);

CREATE TABLE "Π€Π°ΠΉΠ»_YYYYMMDD"(
  "Π”Π°Ρ‚Π°ΠΠ°Π‘ΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅Ρ‚ΠΎ"
    date
, "Π€Π°ΠΉΠ»"
    uuid
      PRIMARY KEY
, "Π‘ΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅"
    uuid
, "BLOB"
    uuid
, "ИмС"
    text
);

CREATE TABLE "Π Π΅Π΅ΡΡ‚Ρ€ΠΠ°Π‘ΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡΡ‚Π°_YYYYMMDD"(
  "Π”Π°Ρ‚Π°ΠΠ°Π‘ΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅Ρ‚ΠΎ"
    date
, "БобствСник"
    uuid
, "Π’ΠΈΠΏΠ Π΅Π΅ΡΡ‚ΡŠΡ€"
    smallint
, "ДатаЧас"
    timestamp
, "Π‘ΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅"
    uuid
, PRIMARY KEY("БобствСник", "Π’ΠΈΠΏΠ Π΅Π΅ΡΡ‚ΡŠΡ€", "Π‘ΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅")
);
CREATE INDEX ON "Π Π΅Π΅ΡΡ‚Ρ€ΠΠ°Π‘ΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡΡ‚Π°_YYYYMMDD"("БобствСник", "Π’ΠΈΠΏΠ Π΅Π΅ΡΡ‚ΡŠΡ€", "ДатаЧас" DESC);

-- сСкции ΠΏΠΎ Π΄Π°Ρ‚Π° Π½Π° Ρ‚Π΅ΠΌΠ°Ρ‚Π°
CREATE TABLE "Π’Π΅ΠΌΠ°_YYYYMMDD"(
  "Π”Π°Ρ‚Π°Π’Π΅ΠΌΠ°"
    date
, "Π’Π΅ΠΌΠ°"
    uuid
      PRIMARY KEY
, "Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚"
    uuid
, "ИмС"
    text
);

CREATE TABLE "УчастникНаВСмата_YYYYMMDD"(
  "Π”Π°Ρ‚Π°Π’Π΅ΠΌΠ°"
    date
, "Π’Π΅ΠΌΠ°"
    uuid
, "ΠŸΠ΅Ρ€ΡΠΎΠ½Π°"
    uuid
, PRIMARY KEY("Π’Π΅ΠΌΠ°", "ΠŸΠ΅Ρ€ΡΠΎΠ½Π°")
);

CREATE TABLE "Π”Π°Ρ‚ΠΈΠΠ°Π‘ΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡΡ‚Π°ΠΠ°Π’Π΅ΠΌΠ°Ρ‚Π°_YYYYMMDD"(
  "Π”Π°Ρ‚Π°Π’Π΅ΠΌΠ°"
    date
, "Π’Π΅ΠΌΠ°"
    uuid
      PRIMARY KEY
, "Π”Π°Ρ‚Π°"
    date
);

Икономим стотинка

Но, Π°ΠΊΠΎ Π½Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ класичСския Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π½Π° сСкциониранС Π±Π°Π·ΠΈΡ€Π°Π½ΠΎ Π½Π° Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° стойноститС Π½Π° ΠΏΠΎΠ»Π΅Ρ‚ΠΎ (Ρ‡Ρ€Π΅Π· Ρ‚Ρ€ΠΈΠ³Π΅Ρ€ΠΈ ΠΈ наслСдяванС ΠΈΠ»ΠΈ PARTITION BY), Π° Β«Ρ€ΡŠΡ‡Π½ΠΎΒ» Π½Π° Π½ΠΈΠ²ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΠΌ, Ρ‡Π΅ стойността Π½Π° ΠΊΠ»ΡŽΡ‡Π° Π·Π° сСкциониранС Π²Π΅Ρ‡Π΅ сС ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π° Π² ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° самата Ρ‚Π°Π±Π»ΠΈΡ†Π°.

Π—Π°Ρ‚ΠΎΠ²Π°, Π°ΠΊΠΎ Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° силно сС притСсняватС Π·Π° ΠΎΠ±Π΅ΠΌΠ° Π½Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° сС ΠΎΡ‚ΠΊΠ°ΠΆΠ΅Ρ‚Π΅ ΠΎΡ‚ Ρ‚Π΅Π·ΠΈ «излишни» ΠΏΠΎΠ»Π΅Ρ‚Π° ΠΈ Π΄Π° сС ΠΎΠ±Ρ€ΡŠΡ‰Π°Ρ‚Π΅ адрСсно към ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ. Π˜ΡΡ‚ΠΈΠ½Π°Ρ‚Π° Π΅, Ρ‡Π΅ всички заявки ΠΎΡ‚ няколко сСкции Π² Ρ‚ΠΎΠ·ΠΈ случай Π²Π΅Ρ‡Π΅ Ρ‰Π΅ трябва Π΄Π° сС изнСсат Π½Π° страната Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster