Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΏΠ°ΡΡΠΈΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡ
ΠΠ°ΡΡΠΈΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡ Π² mySQL
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈ 5.1 mySQL ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΏΠ°ΡΡΠΈΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡ. Π§ΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅? ΠΠ°ΡΡΠΈΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ (partitioning) β ΡΡΠΎ ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ Π±ΠΎΠ»ΡΡΠΈΡ ΡΠ°Π±Π»ΠΈΡ Π½Π° Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ°ΡΡΠΈ ΠΏΠΎ Π²ΡΠ±ΡΠ°Π½Π½ΡΠΌ ΠΊΡΠΈΡΠ΅ΡΠΈΡΠΌ.. ΠΠ° Π½ΠΈΠΆΠ½Π΅ΠΌ ΡΡΠΎΠ²Π½Π΅ Π΄Π»Ρ myISAM ΡΠ°Π±Π»ΠΈΡ, ΡΡΠΎ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°Π·Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ, ΠΏΠΎ 3 Π½Π° ΠΊΠ°ΠΆΠ΄ΡΡ ΠΏΠ°ΡΡΠΈΡΠΈΡ (ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ, ΡΠ°ΠΉΠ» ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², ΡΠ°ΠΉΠ» Π΄Π°Π½Π½ΡΡ ). ΠΠ»Ρ innoDB ΡΠ°Π±Π»ΠΈΡ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ β ΡΠ°Π·Π½ΡΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° ΡΠ°Π±Π»ΠΈΡ Π² ΡΠ°ΠΉΠ»Π°Ρ innoDB (Π½Π΅ Π·Π°Π±ΡΠ²Π°Π΅ΠΌ, ΡΡΠΎ innoDB ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»ΡΠ½ΡΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° Π½Π° ΡΡΠΎΠ²Π½Π΅ Π±Π°Π· Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΡΠ°Π±Π»ΠΈΡ).
CREATE TABLE orders_range (
customer_surname VARCHAR(30),
store_id INT,
salesperson_id INT,
order_date DATE,
note VARCHAR(500)
) ENGINE = MYISAM
PARTITION BY RANGE( YEAR(order_date) ) (
PARTITION p_old VALUES LESS THAN(2008),
PARTITION p_2008 VALUES LESS THAN(2009),
PARTITION p_2009 VALUES LESS THAN(MAXVALUE)
);
Π§ΡΠΎ ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ? ΠΠ΅ΡΠ²Π°Ρ Β«ΡΠ°Π±Π»ΠΈΡΠ°Β» Π±ΡΠ΄Π΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ Π΄Π°Π½Π½ΡΠ΅ Π·Π° Β«Π°ΡΡ ΠΈΠ²Π½ΡΠΉΒ» ΠΏΠ΅ΡΠΈΠΎΠ΄, Π΄ΠΎ 2008Π³ΠΎ Π³ΠΎΠ΄Π°, Π²ΡΠΎΡΠ°Ρ β Π·Π° 2008ΠΉ Π³ΠΎΠ΄, ΠΈ Β«ΡΡΠ΅ΡΡΡΒ» β Π²ΡΠ΅ ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠ΅.
Π‘Π°ΠΌΠΎΠ΅ Π²ΠΊΡΡΠ½ΠΎΠ΅ β Π·Π°ΠΏΡΠΎΡΡ ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ Π½Π΅ Π½Π°Π΄ΠΎ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°ΡΡ/ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ:
select * from orders_range where order_date=’2009-08-01′;
Π Π²ΠΎΡ ΡΡΠΎ ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ:
ΠΡ Π²ΠΈΠ΄ΠΈΠΌ, ΡΡΠΎ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΡΡΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° ΡΠ°Π±ΠΎΡΠ° Π±ΡΠ΄Π΅Ρ ΠΈΠ΄ΡΠΈ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Ρ Β«ΠΏΠΎΠ΄ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉΒ» p_2008.
ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΡΡΠΈΠ³Π°Π΅ΡΡΡ Π΄Π°ΠΆΠ΅ Π² ΡΠ»ΡΡΠ°Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ², Π·Π°ΡΡΠ°Π³ΠΈΠ²Π°ΡΡΠΈΡ Π²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π²ΠΎ Π²ΡΠ΅Ρ ΠΏΠ°ΡΡΠΈΡΠΈΡΡ β Π²Π΅Π΄Ρ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ½Π°ΡΠ°Π»Π° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½Π°Ρ Β«ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°Β» ΡΠ°Π±Π»ΠΈΡ ΠΏΠΎ ΠΌΠ΅Π½ΡΡΠ΅, ΠΏΠΎΡΠΎΠΌ Π΄Π°Π½Π½ΡΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡΡΡ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΡΡ ΡΠΈΠ½Π°Π»ΡΠ½ΡΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ. Π’Π°ΠΊ Π²ΠΎΡ ΠΊΠ°ΠΊ ΡΠ°Π· Β«ΠΏΠ΅ΡΠ²ΡΠ΅Β» ΡΡΠ°ΠΏΡ, Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π±ΡΠ΄ΡΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡΡ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΡΡΡΡΠ΅Π΅.
ΠΠ°ΠΊΠΈΠ΅ Π΅ΡΠ΅ Π΅ΡΡΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°?
ΠΠ»Π°Π²Π½ΡΠΌ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎΠΌ Ρ Π±Ρ Π½Π°Π·Π²Π°Π» ΡΠΎΡ ΡΠ°ΠΊΡ, ΡΡΠΎ ΠΏΠ°ΡΡΠΈΡΠΈΡ Ρ Β«ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΡΠΌΠΈΒ» Π΄Π°Π½Π½ΡΠΌΠΈ (Ρ.Π΅. ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌΠΈ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΡΠΌ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π²ΡΠ±ΠΎΡΠΊΠ°) ΠΈΠΌΠ΅ΡΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ, ΠΈ ΠΊΠ°ΠΊ ΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅, ΠΌΠΎΠ³ΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ.
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΡΠ°Π±Π»ΠΈΡΠ° Π»ΠΎΠ³ΠΎΠ², Π² ΠΊΠΎΡΠΎΡΡΡ Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎ ΠΈΠ΄Π΅Ρ Π·Π°ΠΏΠΈΡΡ ΠΈ ΠΆΠ΅ΡΡΠΊΠΈΠ΅ Π΄ΠΈΡΠΊΠΈ Π½Π΅ ΡΡΠΏΠ΅Π²Π°ΡΡ, Π° ΡΡΠ°Π²ΠΈΡΡ ΡΠ΅ΠΉΠ΄ Π²Π°ΠΌ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ΅Π»ΠΈΠ³ΠΈΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΏΠ°ΡΡΠΈΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Ρ Π΅Ρ-ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΈ ΡΠΊΠ°Π·Π°ΡΡ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ°ΡΡΠΈΡΠΈΠΈ Π½Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΉ Π²Π°ΠΌ ΠΆΠ΅ΡΡΠΊΠΈΠΉ Π΄ΠΈΡΠΊ. Π ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π½ΠΎΠ²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π±ΡΠ΄ΡΡ ΡΠ°Π²Π½ΠΎΠΌΠ΅ΡΠ½ΠΎ ΠΏΠΈΡΠ°ΡΡΡΡ Π½Π° Π²ΡΠ΅ ΠΆΠ΅ΡΡΠΊΠΈΠ΅ Π΄ΠΈΡΠΊΠΈ.
ΠΠ°ΠΊΠΈΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ Β«ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡΒ» Π΄Π°Π½Π½ΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ mySQL?
ΠΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ
PARTITION BY RANGE (store_id) (
PARTITION p0 VALUES LESS THAN (10),
PARTITION p1 VALUES LESS THAN (20),
PARTITION p3 VALUES LESS THAN (30)
);
ΠΠΎ ΡΠΎΡΠ½ΠΎΠΌΡ ΡΠΏΠΈΡΠΊΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ
PARTITION BY LIST(store_id) (
PARTITION pNorth VALUES IN (3,5,6,9,17),
PARTITION pEast VALUES IN (1,2,10,11,19,20)
)
ΠΠ°ΡΠ΅ΠΌ, ΡΠΏΡΠΎΡΠΈΡΠ΅ Π²Ρ? Π Π°Π·Π±ΠΈΠ²Π°ΡΡ Π½Π° ΠΏΠ°ΡΡΠΈΡΠΈΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π»ΠΈΠ±ΠΎ ΠΈΡΡ ΠΎΠ΄Ρ ΠΈΠ· ΡΠΎΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π²ΡΠ±ΠΎΡΠΊΠΈ (ΡΡΠΎ ΡΠ°ΡΠ΅) Π»ΠΈΠ±ΠΎ ΠΈΡΡ ΠΎΠ΄Ρ ΠΈΠ· ΡΠΎΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π·Π°ΠΏΠΈΡΠΈ (ΡΠ΅ΠΆΠ΅). Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, ΠΈΠ΄Π΅Π°Π»ΡΠ½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ β ΡΡΠΎ ΠΊΠΎΠ³Π΄Π° Π²Ρ ΡΠ°Π·Π±ΠΈΠ²Π°Π΅ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ Π½Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠ°ΡΡΠΈΡΠΈΠΉ ΡΠ°ΠΊ, ΡΡΠΎ Π±Ρ 90% Π²ΡΠ΅Ρ Π²ΡΠ±ΠΎΡΠΎΠΊ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΠ»ΠΎ Π² ΠΏΡΠ΅Π΄Π΅Π»Π°Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ°ΡΡΠΈΡΠΈΠΈ. Π Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ ΡΠ»ΠΎΠΆΠ½Π°Ρ Π»ΠΎΠ³ΠΈΠΊΠ° Π²ΡΠ±ΠΎΡΠΊΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΠ±ΡΠ΅ΠΊΡΡ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ Π² ΡΠ΅Π²Π΅ΡΠ½ΡΡ ΠΊΠ²Π°ΡΡΠ°Π»Π°Ρ Π³ΠΎΡΠΎΠ΄Π°, ID ΠΊΠΎΡΠΎΡΡΡ ΠΈΠ΄ΡΡ Π² ΡΠ°Π·Π½ΠΎΠ±ΠΎΠΉ) ΡΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° Π΅ΡΡΡ ΡΠΌΡΡΠ» ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΡΡ ΠΈΡ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎ.
PARTITION BY HASH(store_id)
PARTITIONS 4;
ΠΡ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΠ΅ ΠΏΠ°ΡΡΠΈΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ, ΠΏΡΠΎΡΡΠΎ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΠ΅, ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΌΡ ΠΏΠΎΠ»Ρ ΡΡΡΠΎΠΈΡΡ Ρ Π΅Ρ ΠΈ ΡΠΊΠΎΠ»ΡΠΊΠΎ Β«ΠΏΠΎΠ΄ΡΠ°Π±Π»ΠΈΡΒ» ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ. ΠΠ°ΡΠ΅ΠΌ? ΠΠΎΡΠ°Π·Π΄ΠΎ Π±ΡΡΡΡΠ΅Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π²ΡΠ±ΠΎΡΠΊΠ° ΠΏΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡ ΠΏΠΎΠ»Ρ. Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄ΠΎΡΡΠΈΠ³Π½ΡΡΡ Β«ΡΠ°Π²Π½ΠΎΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠ°Π·Π±ΡΠΎΡΠ°Β» ΠΈ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ Π·Π°ΠΏΠΈΡΠΈ Π΄Π°Π½Π½ΡΡ .
ΠΠΎΡΡΠΈ ΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅ ΡΡΠΎ ΠΈ HASH, Π½ΠΎ Π±ΠΎΠ»Π΅Π΅ Π»ΠΎΠ³ΠΈΡΠ½ΠΎ β ΠΏΠΎ ΠΊΠ»ΡΡΡ.
PARTITION BY KEY(s1)
PARTITIONS 10;
Π’.Π΅. Π²ΡΠ±ΠΎΡΠΊΠ° ΠΏΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠΌΡ ΠΏΠΎΠ»Ρ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ.
ΠΠΎ ΡΡΡ ΡΠ°ΠΊ ΠΆΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡΡΡ ΡΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΠΏΠ°ΡΡΠΈΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π₯ΠΎΡΠΎΡΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΡΡΠ΅ΡΡΠΈΠΊΠ° ΠΏΠΎΡΠ΅ΡΠΈΡΠ΅Π»Π΅ΠΉ, ΠΊΠΎΠ³Π΄Π° Π΅Π³ΠΎ Π»ΠΎΠ³ΠΈΠ½ ΡΠ²Π»ΡΠ΅ΡΡΡ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΌ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠ±ΠΈΡΠ°ΡΡ Π²ΡΠ΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅.
ΠΠ΅Ρ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΡΡΠΈΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΡΠΎ ΠΊΠΎΠ³Π΄Π° ΡΠ°Π·Π½ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ (ΠΏΠΎΠ»Ρ) Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² ΡΠ°Π·Π½ΡΡ Β«ΠΏΠΎΠ΄ΡΠ°Π±Π»ΠΈΡΠ°Ρ Β». ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΈΠ½ΠΎΠ³Π΄Π° ΡΡΠΎ Π±ΡΠ²Π°Π΅Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΡΡΠΈΡΡ ΡΡΠΎΠ³ΠΎ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ, ΠΏΡΡΡΡ Π΄Π°ΠΆΠ΅ Π½Π΅ ΡΠ°ΠΊ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎ: ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ ΡΠ°Π±Π»ΠΈΡΡ Π½Π° Π΄Π²Π΅, ΡΠ²ΡΠ·Π°Π² ΠΈΡ ΠΏΠΎ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠΌΡ ΠΊΠ»ΡΡΡ. ΠΡΠ»ΠΈ Π²Π°ΠΌ ΡΠΎΠ²ΡΠ΅ΠΌ Ρ ΠΎΡΠ΅ΡΡΡ ΠΊΡΠ°ΡΠΎΡΡ β ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠΎ Π½ΠΈΠΌ VIEW, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π΄Π»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎ Π±Ρ Π½Π΅ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°ΡΡ ΡΡΠ°ΡΡΠ΅ ΡΠ°ΡΡΠΈ ΠΊΠΎΠ΄Π°.
ΠΠ°ΡΠ΅ΠΌ ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ? ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΠ°Π±Π»ΠΈΡΠ΅, Π³Π΄Π΅ Ρ Π²Π°Ρ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠΈΡΠ»Π° ΠΈ Π΄Π°ΡΡ, Π΅ΡΡΡ ΠΎΠ΄Π½ΠΎ ΠΏΠΎΠ»Π΅ VARCHAR (255) Π΄Π»Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π², ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Π° ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΠ΅ΠΆΠ΅ ΡΠ΅ΠΌ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠΎΠ»Ρ. Π ΡΠ»ΡΡΠ°Π΅ Π΅ΡΠ»ΠΈ Π΅Π³ΠΎ Π²ΡΠ½Π΅ΡΡΠΈ Π² Π΄ΡΡΠ³ΡΡ ΡΠ°Π±Π»ΠΈΡΡ, ΡΠΎ ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ ΡΡΡΠΎΠΊΠΈ (mySQL ΡΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ ΡΠΎΡΠ½ΠΎ Π²ΡΡΠΈΡΠ»ΡΡΡ ΠΏΠΎΠ·ΠΈΡΠΈΡ Π½ΡΠΆΠ½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΏΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π² ΡΠ°ΠΉΠ»Π΅ Π΄Π°Π½Π½ΡΡ ). Π’Π°Π±Π»ΠΈΡΠ° ΡΡΠ°Π½Π΅Ρ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΠΉ ΠΊ ΡΠ±ΠΎΡΠΌ Π² ΡΠ»ΡΡΠ°Π΅ Π²Π½Π΅ΡΡΠ°ΡΠ½ΡΡ ΡΠΈΡΡΠ°ΡΠΈΠΉ (ΠΎΠΏΡΡΡ ΠΆΠ΅, ΠΈΠ·-Π·Π° ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΡΡΡΠΎΠΊΠΈ). ΠΡ ΠΈ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠΌΠ΅Π½ΡΡΠΈΡΡΡ ΡΠ°ΠΌ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ°Π±Π»ΠΈΡΡ.
Π Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Ρ ΡΡΠ°ΡΡΡ ΠΏΡΠΈΠ²Π΅Π΄Ρ ΠΏΡΠΈΠΌΠ΅Ρ Π±ΠΎΠ»Π΅Π΅ Β«ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎΒ» ΠΏΠ°ΡΡΠΈΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ β ΠΏΠΎΠΌΠ΅ΡΡΡΠ½ΠΎ. Π’Π°ΠΊ ΠΊΠ°ΠΊ LIST/RANGE ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΡΠΎ Π½Π°Π΄ΠΎ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΡΡ ΠΈΡΡΠΈΡΡΡ:
PARTITION BY RANGE( TO_DAYS(order_date) ) (
PARTITION y2009m1 VALUES LESS THAN( TO_DAYS(‘2009-02-01’) ),
PARTITION y2009m2 VALUES LESS THAN( TO_DAYS(‘2009-03-01’) ),
PARTITION y2009m3 VALUES LESS THAN( TO_DAYS(‘2009-04-01’) )
);
PS: Π mysql Π²ΡΠ΅Π³Π΄Π° ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Β«ΠΈΡΡ ΠΈΡΡΠΈΡΡΡΡΒ», ΡΠ°ΠΊ ΡΡΠΎ ΡΠΊΡΡΠ½ΠΎ Ρ Π½Π΅ΠΉ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π½ΠΈΠΊΠΎΠ³Π΄Π°, Π° ΠΌΡ Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΎΡΡΠ°Π½Π΅ΠΌΡΡ Π±Π΅Π· ΡΠ°Π±ΠΎΡΡ π
Π‘Π΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡ Π² Oracle Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅
ΠΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΡ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠ°Π±ΠΎΡΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ². Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠ°Π·Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΈΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ Π² Oracle
Π ΡΡΠΎΠΉ ΡΠ°ΡΡΠΈ ΡΡΠ°ΡΡΠΈ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ, Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠ΅ΡΡ ΠΏΠΎΠΉΠ΄Π΅Ρ ΠΎΠ± ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡΡ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ Π±ΠΎΠ»ΡΡΠΈΡ Π½Π΅ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΡΡΡ ΡΠ°Π±Π»ΠΈΡ Π² ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ ΡΠ΅ΠΊΡΠΈΡΠΌΠΈ.
ΠΠ°Π΄Π°ΡΠΈ, ΡΠ΅ΡΠ°Π΅ΠΌΡΠ΅ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΏΡΠΈΡΡΡΠΏΠΈΡΡ ΠΊ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π½Π°Π΄ΠΎ ΡΠ΅ΡΠΊΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π·Π°Π΄Π°ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ ΡΠ΅ΡΠΈΡΡ
ΠΠ»ΡΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ
Π£Π²ΠΈΠ΄Π΅ΡΡ, ΠΊΠ°ΠΊΠΎΠΉ ΡΡΠΎΠ»Π±Π΅Ρ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡ:
ΠΠ΅ΡΠΎΠ΄Ρ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ
Π‘Π΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ²ΡΡΠ°Π΅Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌΠΈ
ΠΡΠ±ΡΠ°Π½Π½ΡΠΉ ΠΊΠ»ΡΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΈΠΌΠ΅ΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ:
ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΡΡΠΈ ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ Π² Oracle 11g. Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΠ΅ΠΌ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π΄Π²Π° Ρ Π½Π°Ρ ΠΏΠΎΠΊΠ° Π½Π΅ Π½Π°ΡΠ»ΠΈ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ.
Π‘Π΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ Range ΠΏΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ ΠΊΠ»ΡΡΠ°
Π ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎ ΠΌΠ΅ΡΠΎΠ΄Ρ Range ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π΄Π²Π° Π²ΠΈΠ΄Π° ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ: ΠΏΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ Π΄Π°Ρ ΠΈ ΠΏΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ.
Π‘Π΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ Range ΠΏΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ Π΄Π°Ρ
ΠΡΠΈ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠΈΠΌ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ Π½Π°ΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π΄Π½ΡΠΌ, ΠΌΠ΅ΡΡΡΠ°ΠΌ ΠΈ ΠΏΠΎ Π³ΠΎΠ΄Π°ΠΌ. Π‘Π΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΈΠΌ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ HISTLG Π² ΡΡ Π΅ΠΌΠ΅ AIF. ΠΠ»ΡΡΠΎΠΌ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΡΡΡΠΏΠ°Π΅Ρ ΡΡΠΎΠ»Π±Π΅Ρ updated (Π΄Π°ΡΠ° ΠΊΠΎΡΡΠ΅ΠΊΡΠΈΡΠΎΠ²ΠΊΠΈ ΡΡΡΠΎΠΊΠΈ), ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΠ΅ΠΊΡΠΈΠΈ ΡΠΎΠ·Π΄Π°ΡΡΡΡ Ρ ΡΠ°Π³ΠΎΠΌ ΡΠ΅ΠΊΡΠΈΠΉ Π² ΠΎΠ΄ΠΈΠ½ ΠΌΠ΅ΡΡΡ. ΠΠΎΠΌΠ°Π½Π΄Π° ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ create ΠΈΠΌΠ΅Π΅Ρ Π²ΠΈΠ΄:
Π£Π²ΠΈΠ΄Π΅ΡΡ ΡΠ΅ΠΊΡΠΈΠΈ ΡΠ°Π±Π»ΠΈΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ Π·Π°ΠΏΡΠΎΡΡ:
Π ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ΅ΠΊΡΠΈΠΈ ΠΏΠΎ Π·Π°ΠΏΡΠΎΡΡ:
Π‘Π΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ RANG ΠΏΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ
Π‘Π΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΏΠΎΡ ΠΎΠΆΠ΅ Π½Π° ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ Π΄Π°Ρ, ΡΠΎΠ»ΡΠΊΠΎ Π²ΠΌΠ΅ΡΡΠΎ ΠΊΠ»ΡΡΠ° ΠΏΠΎ Π΄Π°ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠ»ΡΡ ΠΏΠΎ ΡΡΠΎΠ»Π±ΡΡ, ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠ΅ΠΌΡ ΡΠΈΡΠ»ΠΎΠ²ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ (ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΈΠΌΠ΅ΡΡΠ΅Π΅ ΡΠ°Π²Π½ΠΎΠΌΠ΅ΡΠ½ΠΎΠ΅ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎ Π²ΡΠ΅ΠΌΡ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ). ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Ρ ΠΎΡΠΎΡΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ ΡΡΠΎΠ»Π±Π΅Ρ Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠΎΠΉ ΠΆΠ΅ ΡΠ°Π±Π»ΠΈΡΡ AIF.HISTLG, ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π²ΡΡΠ΅ ΠΏΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ Π΄Π°Ρ. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΠ»ΡΡΠ° ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΡΠΎΠ»Π±Π΅Ρ ISN Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ. ΠΠΎΠΌΠ°Π½Π΄Π° ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠΌΠ΅Π΅Ρ Π²ΠΈΠ΄:
Π³Π΄Π΅ PARTITION BY RANGE (ISN) Π³ΠΎΠ²ΠΎΡΠΈΡ ΠΎ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ no RANGE ΠΏΡΠΈ ΠΊΠ»ΡΡΠ΅ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ISN, ΠΈΠ½ΡΠ΅ΡΠ²Π°Π» ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ΅ΠΊΡΠΈΠΈ ΡΠ΅ΡΠ΅Π· 1000 Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ ΡΠ΅ΠΊΡΠΈΠΈ Π² ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΏΠΎ ΠΌΠ΅ΡΠΎΠ΄Ρ Range
ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ Π½Π΅ΠΏΡΠΎΡΡΠΎΠΉ Π²ΠΎΠΏΡΠΎΡ: ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΠ΅ΠΊΡΠΈΠΈ. ΠΠΎ Oracle 11g Π±ΡΠ»ΠΎ ΡΡΠΈ Π²Π°ΡΠΈΠ°Π½ΡΠ° ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠΉ ΡΠ΅ΠΊΡΠΈΠΈ.
Π€ΡΠ°Π·Π° UPDATE GLOBAL INDEXES ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΈΡΠΏΡΠ°Π²Π½ΠΎΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Split.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ Π³ΠΎΠ΄Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΡΠ½Π²Π°ΡΡ ΠΏΠΈΡΠ΅ΡΡΡ ΡΠ½ΠΎΠ²Π° Π² ΡΡ ΠΆΠ΅ ΡΠ΅ΠΊΡΠΈΡ ΡΠ½Π²Π°ΡΡ, ΡΡΠΎ ΠΈ Π² ΠΏΡΠΎΡΠ΅Π΄ΡΠ΅ΠΌ Π³ΠΎΠ΄Ρ. ΠΡΠΈ ΡΡΠΎΠΌ ΡΠ΅ΠΊΡΠΈΠΈ ΡΠΈΡΡΡΡΡΡ ΠΎΡ ΠΏΡΠΎΡΠ»ΠΎΠ³ΠΎΠ΄Π½Π΅ΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ. ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ ΡΡΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° Π² ΡΠΎΠΌ, ΡΡΠΎ Π½Π΅ Π½Π°Π΄ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΠ΅ΠΊΡΠΈΠΈ.
Π Oracle 11g ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ Π½ΠΎΠ²Π°Ρ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½Π°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ΅ΠΊΡΠΈΠΉ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΡΠ°Π±Π»ΠΈΡΡ ΡΡΠ°Π·Ρ INTERVAL (ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»ΡΠ½ΠΎΠ΅ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Interval Partitioning). Π’ΠΎΠ³Π΄Π° ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΡΠ΅ΠΊΡΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ Range ΠΏΠΎ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Ρ Π΄Π°Ρ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ°Π·Ρ Interval ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ ΠΏΡΠΈΠΌΠ΅Ρ Π²ΠΈΠ΄:
Π³Π΄Π΅ ΡΡΠ°Π·Π° INTERVAL(1000) Π·Π°Π΄Π°Π΅Ρ ΡΠ΅ΠΆΠΈΠΌ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ΅ΠΊΡΠΈΠΈ ΡΠ΅ΡΠ΅Π· 1000 Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ISN.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π² Oracle 11g Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ create ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΠΌΠ΅Π½ΡΡΠ΅Π΅ ΡΠΈΡΠ»ΠΎ ΡΡΡΠΎΠΊ, Π° ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Π½ΠΎΠ²ΠΎΠΉ ΡΠ΅ΠΊΡΠΈΠΈ ΡΠ²ΠΎΠ΅Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΠ·Π°Π±ΠΎΡΠΈΡΡΡ Oracle.
Π‘Π΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΏΠΈΡΠΊΡ ΠΊΠ»ΡΡΠ΅ΠΉ LIST
ΠΡΡΠ³ΠΈΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎ ΠΌΠ΅ΡΠΎΠ΄Ρ LIST ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Ρ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ°Ρ .
Π₯Π΅Ρ-ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ HASH
Π‘Π»Π΅Π΄ΡΠ΅Ρ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Π΅ΡΠ»ΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΠ»ΡΡΠ° ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΡΠΎΠ»Π±Π΅Ρ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΈΠΌΠ΅Π΅ΠΌ ΠΎΡΠ΅Π½Ρ Π½Π΅ΡΠ°Π²Π½ΠΎΠΌΠ΅ΡΠ½ΠΎΠ΅ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠ»Π±ΡΠ° (ΠΌΠ°Π»Π°Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΡΡΡ), ΡΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ Π΅Ρ-ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ ΡΠ΅Π»Π΅ΡΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎ. ΠΡΠΈ ΡΡΠΎΠΌ ΡΠΈΡΠ»ΠΎ ΡΠ΅ΠΊΡΠΈΠΉ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ ΠΎΡΠΎΠ±ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΡΠΎΠ»Π±ΡΠ° Β«ΡΠ²Π°Π»ΡΡΡΡΒ» Π² ΠΎΠ΄Π½Ρ-Π΄Π²Π΅ ΡΠ΅ΠΊΡΠΈΠΈ.
ΠΠ°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. Π£Π²ΠΈΠ΄Π΅ΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ΅ΠΊΡΠΈΠΉ Π² mb ΠΏΠΎ Π²ΡΠ΅ΠΌ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ Π²ΡΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ Π·Π°ΠΏΡΠΎΡΡ:
Π‘ΠΎΡΡΠ°Π²Π½ΠΎΠ΅ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
Π‘ΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ (system partitioning)
ΠΠΎΡΠ²ΠΈΠ»ΠΎΡΡ Π² Oracle 11 g ΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Ρ Π½ΠΈΠΊΠ°ΠΊΠΈΠΌΠΈ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ. Π ΡΡΠΎΠΌ ΠΌΠ΅ΡΠΎΠ΄Π΅ Oracle ΡΠ°ΠΌ ΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ, ΠΊΠ°ΠΊΡΡ ΡΡΡΠΎΠΊΡ ΡΠ°Π±Π»ΠΈΡΡ Π² ΠΊΠ°ΠΊΡΡ ΡΠ΅ΠΊΡΠΈΡ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΎΡΡΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΠΈΠΉ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΅ΠΊΡΠΈΠΈ Π 1, Π 2, Π Π:
Π£Π²ΠΈΠ΄Π΅ΡΡ ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ Π½Π° ΡΠ΅ΠΊΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ Π·Π°ΠΏΡΠΎΡΡ:
ΠΠ°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. Π ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΏΠΎΠ΄Π²Π΅ΡΠ³Π½ΡΡΡΡΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΌΠ° ΡΠ°Π±Π»ΠΈΡΠ°, Π½ΠΎ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΠ°Π±Π»ΠΈΡΡ. Π ΡΠΈΠ»Ρ ΠΎΠ±ΡΠ΅ΠΌΠ½ΠΎΡΡΠΈ ΠΈ Π²Π°ΠΆΠ½ΠΎΡΡΠΈ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π° ΠΎ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΏΠΎΠΉΠ΄Π΅Ρ ΡΠ΅ΡΡ Π²ΠΎ Π²ΡΠΎΡΠΎΠΉ ΡΠ°ΡΡΠΈ. Π’Π°ΠΌ ΠΆΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡΠΊΠ°Π·Π°Π½ΠΎ ΠΎΠ± ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° ΠΎΡ Π½Π΅ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π±ΠΎΠ»ΡΡΠΈΡ ΠΏΠΎ ΠΎΠ±ΡΠ΅ΠΌΡ ΡΠ°Π±Π»ΠΈΡ ΠΊ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡΠΈΡ Π² ΡΡΠΈΡ ΡΠ»ΡΡΠ°ΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², ΡΡΠΈΠ³Π³Π΅ΡΠΎΠ², ΡΠΈΠ½ΠΎΠ½ΠΈΠΌΠΎΠ² ΠΈ Ρ.Π΄. ΡΡΠΈΡ ΡΠ°Π±Π»ΠΈΡ.
Partitioned Tables and Indexes
SQL Server ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ². ΠΠ°Π½Π½ΡΠ΅ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π΄Π΅Π»ΡΡΡΡ Π½Π° Π±Π»ΠΎΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠΌΠΈ Π³ΡΡΠΏΠΏΠ°ΠΌΠΈ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ . ΠΠ°Π½Π½ΡΠ΅ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΡΡΡΡΡ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎ, ΠΏΠΎΡΡΠΎΠΌΡ Π³ΡΡΠΏΠΏΡ ΡΡΡΠΎΠΊ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌΠΈ ΡΠ΅ΠΊΡΠΈΡΠΌΠΈ. ΠΡΠ΅ ΡΠ΅ΠΊΡΠΈΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΈΠ»ΠΈ ΡΠ°Π±Π»ΠΈΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΈ ΡΠΎΠΉ ΠΆΠ΅ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ . Π’Π°Π±Π»ΠΈΡΠ° ΠΈΠ»ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊ Π΅Π΄ΠΈΠ½Π°Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΡΡΠ½ΠΎΡΡΡ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π½Π°Π΄ Π΄Π°Π½Π½ΡΠΌΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ. ΠΠΎ Π²Π΅ΡΡΠΈΠΈ SQL Server 2016 (13.x); SP1 ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π±ΡΠ»ΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π½Π΅ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π²ΡΠΏΡΡΠΊΠ΅ SQL Server. Π‘Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΡΡΠ½ΠΊΡΠΈΡΡ , ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ Π²ΡΠΏΡΡΠΊΠ°ΠΌΠΈ SQL Server, ΡΠΌ. Π² ΡΡΠ°ΡΡΠ΅ ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ Π²ΡΠΏΡΡΠΊΠ°ΠΌΠΈ SQL Server 2016.
SQL Server ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄ΠΎ 15 000 ΡΠ΅ΠΊΡΠΈΠΉ. Π Π²Π΅ΡΡΠΈΡΡ , ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ SQL Server 2012 (11.x), ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΠΊΡΠΈΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π±ΡΠ»ΠΎ ΡΠ°Π²Π½ΠΎ 1000.
ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ
Π‘Π΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΠΎΠ»ΡΡΠΈΡ ΡΠ°Π±Π»ΠΈΡ ΠΈΠ»ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π΄Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° Π² ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΡΡΠΈ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π±ΡΡΡΡΠΎ ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΡΡ ΠΏΠΎΠ΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° Π΄Π°Π½Π½ΡΡ ΠΈ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ Π½ΠΈΠΌ, ΡΠΎΡ ΡΠ°Π½ΡΡ ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ Π½Π°Π±ΠΎΡΠ° Π΄Π°Π½Π½ΡΡ . ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°ΠΊΠ°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ, ΠΊΠ°ΠΊ Π·Π°Π³ΡΡΠ·ΠΊΠ° Π΄Π°Π½Π½ΡΡ ΠΈΠ· OLTP Π² ΡΠΈΡΡΠ΅ΠΌΡ OLAP, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π·Π° ΡΠ΅ΠΊΡΠ½Π΄Ρ, Π° Π½Π΅ Π·Π° ΠΌΠΈΠ½ΡΡΡ ΠΈ ΡΠ°ΡΡ, ΠΊΠ°ΠΊ Π² ΡΠ»ΡΡΠ°Π΅ Π½Π΅ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ .
ΠΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π±ΡΡΡΡΠ΅Π΅ Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠ΅ΠΊΡΠΈΡΠΌΠΈ. ΠΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½Ρ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΠΏΠΎΠ΄Π½Π°Π±ΠΎΡΠ°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ , Π° Π½Π΅ ΡΠΎ Π²ΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΆΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΎΠ΄Π½Ρ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΊΡΠΈΠΉ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠΈΡΡ ΠΎΠ΄Π½Ρ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΊΡΠΈΠΉ ΠΈΠ½Π΄Π΅ΠΊΡΠ°.
ΠΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΡΠΊΠΎΡΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π·Π°ΠΏΡΠΎΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΡΡΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π² Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡΡΠ΅Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π·Π°ΠΏΡΠΎΡΡ Π½Π° ΡΠΊΠ²ΠΈΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π΄Π²ΡΡ ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ, Π΅ΡΠ»ΠΈ ΡΡΠΎΠ»Π±ΡΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ ΠΆΠ΅, ΡΡΠΎ ΠΈ ΡΡΠΎΠ»Π±ΡΡ Π΄Π»Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ. Π‘ΠΌ. ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ Π·Π°ΠΏΡΠΎΡΠ°Ρ .
Π ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π° Π² SQL Server ΡΠ½Π°ΡΠ°Π»Π° ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° Π΄Π°Π½Π½ΡΡ ΠΏΠΎ ΡΠ΅ΠΊΡΠΈΡΠΌ. ΠΠ»Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ Π΄Π°Π½Π½ΡΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΠ°ΠΉΠ»Ρ Π΄Π°Π½Π½ΡΡ Π² ΡΠ΅ΠΊΡΠΈΡΡ ΠΏΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΠΆΠ΅ΡΡΠΊΠΈΠΌ Π΄ΠΈΡΠΊΠ°ΠΌ, ΡΠΎΠ·Π΄Π°Π² RAID. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π½Π΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΡ Π΄Π°Π½Π½ΡΡ ΠΏΠΎ ΡΠ΅ΠΊΡΠΈΡΠΌ, SQL Server ΡΠΌΠΎΠΆΠ΅Ρ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊΠΎ Π²ΡΠ΅ΠΌ ΠΆΠ΅ΡΡΠΊΠΈΠΌ Π΄ΠΈΡΠΊΠ°ΠΌ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠ΅ΠΊΡΠΈΠΈ.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΠΏΡΠΈΠΌΠ΅Π½ΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΠ΅ΠΊΡΠΈΠΉ, Π° Π½Π΅ Π²ΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΡ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡΡ. Π§ΡΠΎΠ±Ρ ΡΠ½ΠΈΠ·ΠΈΡΡ ΡΠΎΡΡΡΠ·Π°Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΊΡΡΠΏΠ½Π΅Π½ΠΈΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ ΠΊ ΡΠ΅ΠΊΡΠΈΡΠΌ, Π·Π°Π΄Π°ΠΉΡΠ΅ Π΄Π»Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° LOCK_ESCALATION ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ALTER TABLE Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ AUTO.
Π‘Π΅ΠΊΡΠΈΠΈ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ»ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ Π² ΠΎΠ΄Π½ΠΎΠΉ ( PRIMARY ) ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ Π³ΡΡΠΏΠΏΠ°Ρ . ΠΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΠΌΠ½ΠΎΠ³ΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠΌ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ Π³ΡΡΠΏΠΏ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°Π·Π½Π°ΡΠ°ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΡΠ΅ΠΊΡΠΈΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ ΡΡΠΎΠ²Π½ΡΠΌ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°. ΠΡΠ΅ ΠΏΡΠΎΡΠΈΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ Π³ΡΡΠΏΠΏ ΠΈΠ»ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΊΡΠΈΠΉ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ Π³ΡΡΠΏΠΏΠ°Ρ .
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΠΎΠ½ΡΡΠΈΡ
Π‘Π»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Ρ ΠΎΡΠ½ΠΎΡΡΡΡΡ ΠΊ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ².
Π€ΡΠ½ΠΊΡΠΈΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ
Π‘Ρ Π΅ΠΌΠ° ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ
ΠΠ±ΡΠ΅ΠΊΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ΅ΠΊΡΠΈΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π°Π±ΠΎΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ Π³ΡΡΠΏΠΏ. ΠΠ»Π°Π²Π½Π°Ρ ΠΏΡΠΈΡΠΈΠ½Π°, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ΅ΠΊΡΠΈΠΈ ΡΠ°Π·Π΄Π΅Π»ΡΡΡΡΡ ΠΏΠΎ ΡΠ°Π·Π½ΡΠΌ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠΌ Π³ΡΡΠΏΠΏΠ°ΠΌ, Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠ³ΠΎ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΠΈΡ ΡΠ΅ΠΊΡΠΈΠΉ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΎ Π²ΡΠ΅Π³Π΄Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ Π³ΡΡΠΏΠΏ.
Π ΠΠ°Π·Π° Π΄Π°Π½Π½ΡΡ SQL Azure ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠ΅ Π³ΡΡΠΏΠΏΡ.
Π‘ΡΠΎΠ»Π±Π΅Ρ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ
ΠΡΡΠΎΠ²Π½Π΅Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ
ΠΠ½Π΄Π΅ΠΊΡ, ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠΎΠΉ ΠΆΠ΅ ΡΡ Π΅ΠΌΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΡΠΎ ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ°Ρ ΡΠ°Π±Π»ΠΈΡΠ°. ΠΠΎΠ³Π΄Π° ΡΠ°Π±Π»ΠΈΡΠ° ΠΈ Π΅Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π²ΡΡΠΎΠ²Π½Π΅Π½Ρ, SQL Server ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠΈ ΡΡΡΡΠΊΡΡΡΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ°ΠΊ ΡΠ°Π±Π»ΠΈΡΡ, ΡΠ°ΠΊ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π±ΡΡΡΡΠΎ ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡ ΡΠ΅ΠΊΡΠΈΠΈ. ΠΠ»Ρ Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΡ Ρ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Ρ ΡΠ΅ΠΌ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΈ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠ°Π·Π»ΠΈΡΠ°ΡΡΡΡ, ΡΠΎ Π΅ΡΡΡ:
Π‘Π΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²
ΠΡΠΈ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΡΠΎΠ»Π±Π΅Ρ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡΡ Π² ΠΊΠ»ΡΡΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·Π°ΡΠΈΠΈ. ΠΡΠΈ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π½Π΅ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, Π΅ΡΠ»ΠΈ ΡΡΠΎΠ»Π±Π΅Ρ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ ΡΠΊΠ°Π·Π°Π½ ΡΠ²Π½ΠΎ Π² ΠΊΠ»ΡΡΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·Π°ΡΠΈΠΈ, SQL Server ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΡΡΠΎΠ»Π±Π΅Ρ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² ΡΠΏΠΈΡΠΎΠΊ ΠΊΠ»ΡΡΠ΅ΠΉ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΡΠ»ΠΈ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ, Π΄Π»Ρ Π½Π΅Π³ΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠ²Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π·Π°Π΄Π°ΡΡ Π½Π°Π»ΠΈΡΠΈΠ΅ ΡΡΠΎΠ»Π±ΡΠ° ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² ΠΊΠ»ΡΡΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ ΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΡΠΌ. Π² ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΡΠ°Π²ΠΈΠ»Π° ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°.
Π‘Π΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²
ΠΡΠΈ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΡΠΎΠ»Π±Π΅Ρ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡΡ Π² ΠΊΠ»ΡΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΡΠΈ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π½Π΅ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° SQL Server ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΡΡΠΎΠ»Π±Π΅Ρ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ°ΠΊ Π½Π΅ΠΊΠ»ΡΡΠ΅Π²ΠΎΠΉ (Π²ΠΊΠ»ΡΡΠ΅Π½Π½ΡΠΉ) ΡΡΠΎΠ»Π±Π΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΡΡΠΎΠ±Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Ρ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ. ΠΡΠ»ΠΈ ΡΡΠΎΠ»Π±Π΅Ρ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΆΠ΅ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ΅, SQL Server Π΅Π³ΠΎ Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ ΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΡΠΌ. Π² ΡΠ°Π·Π΄Π΅Π»Π΅ Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½Π΅ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ².
ΠΠ΅Π²ΡΡΠΎΠ²Π½Π΅Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ
ΠΠ½Π΄Π΅ΠΊΡ, ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΡ. Π’. Π΅. ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈΠΌΠ΅Π΅Ρ Π΄ΡΡΠ³ΡΡ ΡΡ Π΅ΠΌΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ»ΠΈ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π½Π΅ Π² ΡΠΎΠΉ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ Π³ΡΡΠΏΠΏΠ΅, Π³Π΄Π΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π±Π°Π·ΠΎΠ²Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ°. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π΅Π²ΡΡΠΎΠ²Π½Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΠ»ΡΡΠ°ΡΡ :
Π£ΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΠΈΠΉ
ΠΡΠΎΡΠ΅ΡΡ, Π² Ρ ΠΎΠ΄Π΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ ΡΠ΅ΠΊΡΠΈΡΠΌ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΡΠΈΠ»ΡΡΡΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠ°.
Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ ΠΏΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ
ΠΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΠΎΠ΅ Π½ΠΎΠ²ΠΎΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΠΊΡΠΈΠΉ (15 000) Π²Π»ΠΈΡΠ΅Ρ Π½Π° ΠΏΠ°ΠΌΡΡΡ, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌΠΈ, ΠΊΠΎΠΌΠ°Π½Π΄Ρ DBCC ΠΈ Π·Π°ΠΏΡΠΎΡΡ. Π ΡΡΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ Π²Π»ΠΈΡΠ΅Ρ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π±ΠΎΠ»Π΅Π΅ 1 000 ΡΠ΅ΠΊΡΠΈΠΉ ΠΈ ΠΊΠ°ΠΊ ΠΎΠ±ΠΎΠΉΡΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ. Π£Π²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠ΅ΠΊΡΠΈΠΉ Π΄ΠΎ 15 000 ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄ΠΎΠ»ΡΡΠ΅ Ρ ΡΠ°Π½ΠΈΡΡ Π΄Π°Π½Π½ΡΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ Ρ ΡΠ°Π½ΠΈΡΡ Π΄Π°Π½Π½ΡΠ΅ ΡΠΎΠ²Π½ΠΎ ΡΡΠΎΠ»ΡΠΊΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ, ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π±Π°Π»Π°Π½Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ ΠΈ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΠ΅ΠΊΡΠΈΠΉ.
Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ½ΡΡ ΡΠ΄Π΅Ρ ΠΈ ΡΠΈΡΠ»Π° ΡΠ΅ΠΊΡΠΈΠΉ
Π§ΡΠΎΠ±Ρ Π΄ΠΎΠ±ΠΈΡΡΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ, ΡΡΠΎΠ±Ρ ΡΠΈΡΠ»ΠΎ ΡΠ΅ΠΊΡΠΈΠΉ ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ½ΡΡ ΡΠ΄Π΅Ρ ΡΠΎΠ²ΠΏΠ°Π΄Π°Π»ΠΎ, Π½ΠΎ Π½Π΅ ΠΏΡΠ΅Π²ΡΡΠ°Π»ΠΎ 64 (ΡΡΠΎ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ SQL Server ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ).
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ
ΠΡΠΈ Π±ΠΎΠ»ΡΡΠΎΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΡΠ΅ΠΊΡΠΈΠΉ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΠΠ£ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 16 ΠΠ. ΠΡΠ»ΠΈ Ρ ΡΠΈΡΡΠ΅ΠΌΡ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠ°ΠΌΡΡΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ ΡΠ±ΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ ΡΠ·ΡΠΊΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ (DML), ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ ΡΠ·ΡΠΊΠ° ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ (DDL) ΠΈ Π΄ΡΡΠ³ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΈΠ·-Π·Π° Π½Π΅Ρ Π²Π°ΡΠΊΠΈ ΠΏΠ°ΠΌΡΡΠΈ. Π ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Ρ ΠΠΠ£ 16 ΠΠ ΠΈ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΡ ΠΏΠ°ΠΌΡΡΡ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ ΡΠ±ΠΎΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΡ Π½Π° Π±ΠΎΠ»ΡΡΠΎΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅ ΡΠ΅ΠΊΡΠΈΠΉ, ΠΈΠ·-Π·Π° Π½Π΅Ρ Π²Π°ΡΠΊΠΈ ΠΏΠ°ΠΌΡΡΠΈ. ΠΠΎΡΡΠΎΠΌΡ ΡΠ΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Ρ Π²Π°Ρ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ²Π΅ΡΡ 16 ΠΠ, ΡΠ΅ΠΌ ΠΌΠ΅Π½ΡΡΠ΅ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ ΠΈ ΠΏΠ°ΠΌΡΡΡΡ.
ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠ²Π»ΠΈΡΡΡ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ SQL Server ΠΏΡΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠΈ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΈ Π΄Π°ΠΆΠ΅ Π½Π° ΡΠ°ΠΌΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π΅Π³ΠΎ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ. Π’Π°ΠΊΠΎΠ΅ ΡΠ»ΡΡΠ°Π΅ΡΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ³Π΄Π° ΠΈΠ½Π΄Π΅ΠΊΡ Π½Π΅ Π²ΡΡΠΎΠ²Π½Π΅Π½ ΡΠΎ ΡΠ²ΠΎΠ΅ΠΉ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ ΠΈΠ»ΠΈ ΡΠΎ ΡΠ²ΠΎΠΈΠΌ ΠΊΠ»Π°ΡΡΠ΅ΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ, Π΅ΡΠ»ΠΈ ΡΠ°ΠΊΠΎΠΉ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π² ΡΠ°Π±Π»ΠΈΡΠ΅. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ° index create memory. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠΌ. Π² ΡΡΠ°ΡΡΠ΅ ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ° index create memory.
ΠΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌΠΈ
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠΉΠΊΠ° Π½Π΅Π²ΡΡΠΎΠ²Π½Π΅Π½Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡΡ, ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΠΊΡΠΈΠΉ Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΡΠ΅Π²ΡΡΠ°Π΅Ρ 1000, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ, Π½ΠΎ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΈΠ»ΠΈ ΡΡΠ΅Π·ΠΌΠ΅ΡΠ½ΠΎΠΌΡ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°ΠΊΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠΉΠΊΠ° Π²ΡΡΠΎΠ²Π½Π΅Π½Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠ΅ΠΊΡΠΈΠΉ. ΠΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠΉΠΊΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ ΠΈ ΠΏΠ°ΠΌΡΡΡΡ.
ΠΡΠΈ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ΅, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠΉ ΠΏΡΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠΈ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², SQL Server ΡΠ½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°Π΅Ρ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠ΅ΠΊΡΠΈΠΈ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ. ΠΠ°ΡΠ΅ΠΌ Π»ΠΈΠ±ΠΎ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ Π³ΡΡΠΏΠΏΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠ΅ΠΊΡΠΈΠΈ, Π»ΠΈΠ±ΠΎ Π² tempdb, Π΅ΡΠ»ΠΈ Π·Π°Π΄Π°Π½ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° SORT_IN_TEMPDB, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ. ΠΠ»Ρ Π²ΡΠ΅Ρ ΡΠ°Π±Π»ΠΈΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ. ΠΡΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠΈ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, Π²ΡΡΠΎΠ²Π½Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΎ ΡΠ²ΠΎΠ΅ΠΉ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ, ΡΠ°Π±Π»ΠΈΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ Π·Π° ΡΠ°Π·, ΡΠΊΠΎΠ½ΠΎΠΌΠ½ΠΎ ΡΠ°ΡΡ ΠΎΠ΄ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΡΡ ΠΏΠ°ΠΌΡΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΡΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠΈ Π½Π΅Π²ΡΡΠΎΠ²Π½Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠ°Π±Π»ΠΈΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, ΡΡΠΎΠ±Ρ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ ΠΈΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ. Π§Π΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠ΅ΠΊΡΠΈΠΉ, ΡΠ΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ. ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΡΠ΅ΠΊΡΠΈΠΉ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ°Π±Π»ΠΈΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 40 ΡΡΡΠ°Π½ΠΈΡ, ΠΏΠΎ 8 ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ ΠΊΠ°ΠΆΠ΄Π°Ρ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ Π½Π΅Π²ΡΡΠΎΠ²Π½Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΡΠ°Π·Π±ΠΈΡΠΎΠ³ΠΎ Π½Π° 100 ΡΠ΅ΠΊΡΠΈΠΉ, ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ΅ΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ 4 000 ΡΡΡΠ°Π½ΠΈΡ (40*100). ΠΡΠ»ΠΈ ΡΠ°ΠΊΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ Π΄ΠΎΡΡΡΠΏΠ΅Π½, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π° ΡΡΠΏΠ΅ΡΠ½ΠΎ, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΡΠ°Π΄Π°ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ. ΠΡΠ»ΠΈ ΠΆΠ΅ ΡΠ°ΠΊΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ΅Π½, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ Π·Π°Π²Π΅ΡΡΠΈΡΡΡ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ. ΠΠ»Ρ Π²ΡΡΠΎΠ²Π½Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΡΠ°Π·Π±ΠΈΡΠΎΠ³ΠΎ Π½Π° 100 ΡΠ΅ΠΊΡΠΈΠΉ, Π΄Π»Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π²ΡΠ΅Π³ΠΎ 40 ΡΡΡΠ°Π½ΠΈΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΡΡ Π½Π΅ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ.
ΠΠ°ΠΊ Π΄Π»Ρ Π²ΡΡΠΎΠ²Π½Π΅Π½Π½ΡΡ , ΡΠ°ΠΊ ΠΈ Π΄Π»Ρ Π½Π΅Π²ΡΡΠΎΠ²Π½Π΅Π½Π½ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡΡΡ Π±ΠΎΠ»ΡΡΠΈΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, Π΅ΡΠ»ΠΈ SQL Server ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅Ρ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ° Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅. Π§Π΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ ΡΡΠ΅ΠΏΠ΅Π½Ρ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ°, ΡΠ΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π΄Π»Ρ SQL Server ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° ΡΡΠ΅ΠΏΠ΅Π½Ρ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ° 4, ΡΠΎ Π½Π΅Π²ΡΡΠΎΠ²Π½Π΅Π½Π½ΠΎΠΌΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅ΠΌΡ 100 ΡΠ΅ΠΊΡΠΈΠΉ, ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ, ΡΡΠΎΠ±Ρ ΡΠ΅ΡΡΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΌΠΎΠ³Π»ΠΈ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎ 4 000 ΡΡΡΠ°Π½ΠΈΡ, ΡΠΎ Π΅ΡΡΡ 16 000 ΡΡΡΠ°Π½ΠΈΡ. ΠΡΠ»ΠΈ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ Π²ΡΡΠΎΠ²Π½Π΅Π½, ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ½ΠΈΠΆΠ°ΡΡΡΡ Π΄ΠΎ 40 ΡΡΡΠ°Π½ΠΈΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΡΠ΅ΡΡΡΠ΅Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠ², ΡΠΎ Π΅ΡΡΡ 160 ΡΡΡΠ°Π½ΠΈΡ (4*40). Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠ° MAXDOP ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡΡΠ½ΡΡ ΡΠ½ΠΈΠ·ΠΈΡΡ ΡΡΠ΅ΠΏΠ΅Π½Ρ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ°.
ΠΠΎΠΌΠ°Π½Π΄Ρ DBCC
ΠΡΠΈ Π±ΠΎΠ»ΡΡΠ΅ΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅ ΡΠ΅ΠΊΡΠΈΠΉ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ DBCC ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠ΅ΠΊΡΠΈΠΉ.
ΠΠ°ΠΏΡΠΎΡΡ
ΠΠ°ΠΏΡΠΎΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΡ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΡΠ΅ΠΊΡΠΈΠΉ, ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ ΡΠΎΠΏΠΎΡΡΠ°Π²ΠΈΠΌΡΡ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Ρ Π±ΠΎΠ»ΡΡΠΈΠΌ ΡΠΈΡΠ»ΠΎΠΌ ΡΠ΅ΠΊΡΠΈΠΉ. ΠΠ°ΠΏΡΠΎΡΡ, Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΡ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΡΠ΅ΠΊΡΠΈΠΉ, ΠΌΠΎΠ³ΡΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠ΅ΠΊΡΠΈΠΉ.
ΠΠ°ΠΏΡΠΎΡΡ, Π² ΠΊΠΎΡΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ, ΠΊΠ°ΠΊ TOP ΠΈΠ»ΠΈ MAX/MIN, Π² ΡΡΠΎΠ»Π±ΡΠ°Ρ , ΠΎΡΠ»ΠΈΡΠ½ΡΡ ΠΎΡ ΡΡΠΎΠ»Π±ΡΠ° ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΌΠΎΠ³ΡΡ ΡΡΠΎΠ»ΠΊΠ½ΡΡΡΡΡ ΡΠΎ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²ΡΡΠΈΡΠ»ΡΡΡΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΡΠ΅ ΡΠ΅ΠΊΡΠΈΠΈ.
ΠΡΠΈ ΡΠ°ΡΡΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π½Π° ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π΄Π²ΡΡ ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ, ΠΈΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ ΡΠΎ ΡΡΠΎΠ»Π±ΡΠ°ΠΌΠΈ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΡΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ: ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ»ΠΈ ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ΅Π½Ρ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π² Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π»ΠΈΠ±ΠΎ ΠΎΠ±ΡΠ°Ρ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π»ΠΈΠ±ΠΎ ΡΠ°Π·Π½ΡΠ΅, Π½ΠΎ Π΄Π°ΡΡΠΈΠ΅ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ. Π’ΠΎ Π΅ΡΡΡ:
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎΠ± ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ ΡΠ΅ΠΊΡΠΈΠΉ ΠΏΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΡΠΌ. Π² ΡΡΠ°ΡΡΠ΅ Π‘Π΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΡ.
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΏΡΠΈ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Ρ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ
Π‘Π²ΡΠ·Π°Π½Π½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ
ΠΠ°Π΄Π°Π½ΠΈΡ | Π Π°Π·Π΄Π΅Π» |
---|---|
ΠΠΏΠΈΡΠ°Π½ΠΎ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΡΡ Π΅ΠΌΡ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ ΠΈΡ ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΈΠ»ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΡ. | Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² |
Π‘ΠΌ. ΡΠ°ΠΊΠΆΠ΅
Π‘Π»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ ΠΏΠΎ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡΠΌ ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΡ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌΠΈ.
ΠΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ PostgreSQL Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ°ΡΡΠΈΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ
ΠΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ
ΠΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Π½Π°Π΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ, Π³Π΄Π΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΎΠ½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Ρ
ΡΠ°Π½ΡΡΡΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ
. ΠΠ°ΡΠ΅ΠΌ Π²Ρ ΡΠ°Π·Π²ΡΡΡΡΠ²Π°Π΅ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΡΡΠ΅Π΄Π΅, ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π²Π΅Π»ΠΈΠΊΠΎΠ»Π΅ΠΏΠ½Π°! ΠΠ°ΠΏΡΠΎΡΡ ΠΏΡΠΎΡ
ΠΎΠ΄ΡΡ ΡΡΡΡΡΠΎ, ΠΈ Π·Π°Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠΈ ΠΈΡ
Π²Π²ΠΎΠ΄Π΅ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π½Π΅Π·Π°ΠΌΠ΅ΡΠ½Π°. Π§Π΅ΡΠ΅Π· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π½Π΅ΠΉ/Π½Π΅Π΄Π΅Π»Ρ/ΠΌΠ΅ΡΡΡΠ΅Π² Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ
ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π²ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΈ Π±ΠΎΠ»ΡΡΠ΅, ΠΈ ΡΠΊΠΎΡΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π·Π°ΠΌΠ΅Π΄Π»ΡΠ΅ΡΡΡ.
ΠΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΎΠ², Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠΊΠΎΡΠΈΡΡ ΡΠ°Π±ΠΎΡΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ (DBA) ΠΏΠΎΡΠΌΠΎΡΡΠΈΡ ΠΈ ΠΏΡΠΎΡΠ»Π΅Π΄ΠΈΡ, ΡΡΠΎΠ±Ρ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ Π±ΡΠ»Π° ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π½Π°ΡΡΡΠΎΠ΅Π½Π°. ΠΠ½ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ, ΡΠ±ΡΠ°ΡΡ Π»ΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΏΠ°ΡΡΠΈΡΠΈΡ, ΠΏΠΎΠ΄ΠΏΡΠ°Π²ΠΈΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π΄Π²ΠΈΠΆΠΊΠ° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΈ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ Π·Π΄ΠΎΡΠΎΠ²Π°. ΠΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π²ΡΠ΄Π΅Π»Π΅Π½Π½ΡΡ IOPS (Input/Output Operations Per second) Π½Π° EBS Π΄ΠΈΡΠΊΠ΅, ΡΡΠΎΠ±Ρ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΡΠΊΠΎΡΠΎΡΡΡ Π΄ΠΈΡΠΊΠΎΠ²ΡΡ ΠΏΠ°ΡΡΠΈΡΠΈΠΉ. ΠΡΠΎ Π΄Π°ΡΡ Π²Π°ΠΌ Π²ΡΠΈΠ³ΡΠ°ΡΡ Π²ΡΠ΅ΠΌΡ ΠΈ Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ΅ΡΠΈΡΡ Π³Π»Π°Π²Π½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
Π Π°Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π΄Π½ΠΎ Π²Ρ ΠΏΠΎΠΉΠΌΡΡΠ΅, ΡΡΠΎ Π΄Π°Π½Π½ΡΠ΅ Π² Π²Π°ΡΠ΅ΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ
ΡΠ²Π»ΡΡΡΡΡ ΡΠ·ΠΊΠΈΠΌ ΠΌΠ΅ΡΡΠΎΠΌ (botleneck).
Π Π±Π°Π·Π°Ρ
Π΄Π°Π½Π½ΡΡ
ΠΌΠ½ΠΎΠ³ΠΈΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π²Π°ΠΆΠ½ΠΎΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΡΠΌΠ΅Π½ΡΡΠ°Π΅ΡΡΡ ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ. ΠΡΠ»ΠΈ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΈΠ΄ΡΠΌΠ°ΡΡ ΡΠΏΠΎΡΠΎΠ± ΠΈΠ·Π±Π°Π²ΠΈΡΡΡΡ ΠΎΡ ΡΡΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, Π²Π°ΡΠΈ Π·Π°ΠΏΡΠΎΡΡ Π±ΡΠ΄ΡΡ ΠΏΡΠΎΡ
ΠΎΠ΄ΠΈΡΡ Π±ΡΡΡΡΠ΅Π΅, Π²ΡΠ΅ΠΌΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±ΡΠΊΠ°ΠΏΠΎΠ² ΡΠΌΠ΅Π½ΡΡΠΈΡΡΡ, ΠΈ Π²Ρ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΠ΅ ΠΊΡΡΡ ΠΌΠ΅ΡΡΠ°. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π°Π»ΠΈΡΡ ΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΎΠ΄Π½Π°ΠΊΠΎ ΡΠΎΠ³Π΄Π° ΠΎΠ½Π° ΠΏΡΠΎΠΏΠ°Π΄ΡΡ Π±Π΅Π·Π²ΠΎΠ·Π²ΡΠ°ΡΠ½ΠΎ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΡΠ»Π°ΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ DELETE Π·Π°ΠΏΡΠΎΡΠΎΠ², Π²ΡΠ·Π²Π°Π² ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠΎΠ½Π½ Π»ΠΎΠ³ΠΎΠ², ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΡΡΡ ΡΠ΅ΡΡΡΡΠΎΠ² Π΄Π²ΠΈΠΆΠΊΠ° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΆΠ΅ ΠΌΡ ΠΈΠ·Π±Π°Π²ΠΈΠΌΡΡ ΠΎΡ ΡΡΠ°ΡΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ, Π½ΠΎ Π½Π΅ ΠΏΠΎΡΠ΅ΡΡΠ² Π΅Ρ Π½Π°Π²ΡΠ΅Π³Π΄Π°?
Π ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ
ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ PostgreSQL 9.2 Π½Π° Engine Yard. ΠΠ°ΠΌ ΡΠ°ΠΊΠΆΠ΅ Π½ΡΠΆΠ΅Π½ git Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ plsh.
ΠΠ°ΡΡΠΈΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡ
ΠΠ°ΡΡΠΈΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡ ΡΠ²Π»ΡΠ΅ΡΡΡ Ρ ΠΎΡΠΎΡΠΈΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ. ΠΠΎΠ·ΡΠΌΠΈΡΠ΅ ΠΎΠ΄Π½Ρ Π³ΠΈΠ³Π°Π½ΡΡΠΊΡΡ ΡΠ°Π±Π»ΠΈΡΡ ΠΈ ΡΠ°Π·Π±Π΅ΠΉΡΠ΅ Π΅Ρ Π½Π° ΠΊΡΡΡ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΡ β ΡΡΠΈ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ ΠΏΠ°ΡΡΠΈΡΠΈΡΠΌΠΈ ΠΈ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠΌΠΈ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ (child object). Π’Π°ΠΊΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π±ΡΠΊΠ°ΠΏΠΎΠ², ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ SELECT ΠΈ DELETE, ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Ρ Ρ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΈΠ»ΠΈ Π²ΡΠ΅ΠΌΠΈ ΠΏΠ°ΡΡΠΈΡΠΈΡΠΌΠΈ. ΠΠ°ΡΡΠΈΡΠΈΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ΄Π°Π»Π΅Π½Ρ ΠΈΠ»ΠΈ ΡΠΊΡΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½Ρ Π΅Π΄ΠΈΠ½ΠΈΡΠ½ΡΠΌ Π·Π°ΠΏΡΠΎΡΠΎΠΌ, ΡΡΠΎ ΡΠ²Π΅Π΄ΡΡ Π»ΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌΡ.
Π’Π΅ΡΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΡ
ΠΠ°ΡΠ½ΡΠΌ Ρ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅.
Master Table (ΠΠ»Π°Π²Π½Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ°)
Π’Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΠ°Ρ Master Partition Table, ΡΡΠΎ ΡΠ°Π±Π»ΠΎΠ½, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ. ΠΡΠΎ ΠΎΠ±ΡΡΠ½Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ°, Π½ΠΎ ΠΎΠ½Π° Π½Π΅ Ρ ΡΠ°Π½ΠΈΡ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈ Π½ΡΠΆΠ΄Π°Π΅ΡΡΡ Π² ΡΡΠΈΠ³Π³Π΅ΡΠ΅ (ΠΎΠ± ΡΡΠΎΠΌ ΠΏΠΎΠ·ΠΆΠ΅). Π’ΠΈΠΏ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρ Π³Π»Π°Π²Π½ΠΎΠΉ ΠΈ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠΌΠΈ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄ΠΈΠ½-ΠΊ-ΠΌΠ½ΠΎΠ³ΠΈΠΌ (one-to-many), ΡΠΎ Π΅ΡΡΡ Π΅ΡΡΡ ΠΎΠ΄Π½Π° Π³Π»Π°Π²Π½Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ° ΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΡ .
ΠΠΎΡΠ΅ΡΠ½ΡΡ ΡΠ°Π±Π»ΠΈΡΠ° (Child Table)
ΠΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ Π½Π°ΡΠ»Π΅Π΄ΡΡΡ ΡΠ²ΠΎΡ ΡΡΡΡΠΊΡΡΡΡ (ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΡΠ²ΠΎΠΉ ΡΠ·ΡΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ β Data Definition Language ΠΈΠ»ΠΈ DDL) ΠΎΡ Π³Π»Π°Π²Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ ΠΈ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ ΠΎΠ΄Π½ΠΎΠΉ Π³Π»Π°Π²Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅. ΠΠΌΠ΅Π½Π½ΠΎ Π² Π΄ΠΎΡΠ΅ΡΠ½ΠΈΡ ΡΠ°Π±Π»ΠΈΡΠ°Ρ Ρ ΡΠ°Π½ΡΡΡΡ Π²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅. ΠΡΠΈ ΡΠ°Π±Π»ΠΈΡΡ ΡΠ°ΡΡΠΎ Π½Π°Π·ΡΠ²Π°ΡΡ ΠΏΠ°ΡΡΠΈΡΠΈΠΎΠ½Π½ΡΠΌΠΈ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ.
Partition Function
Partition function ΡΠ²Π»ΡΠ΅ΡΡΡ Ρ
ΡΠ°Π½ΠΈΠΌΠΎΠΉ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠΎΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ, ΠΊΠ°ΠΊΠ°Ρ ΠΈΠ· Π΄ΠΎΡΠ΅ΡΠ½ΠΈΡ
ΡΠ°Π±Π»ΠΈΡ ΠΏΡΠΈΠΌΠ΅Ρ Π½ΠΎΠ²ΡΡ Π·Π°ΠΏΠΈΡΡ. ΠΠ»Π°Π²Π½Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΠΈΠ³Π³Π΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΡ ΠΏΠ°ΡΡΠΈΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΡΡΡ Π΄Π²Π΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π΄Π»Ρ ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΠΈ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΊ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠΌ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌ:
ΠΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌ Π΄Π°Π½Π½ΡΡ
β ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ ΡΡΠΎΠ³ΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ Π΄Π°ΡΠ° Π·Π°ΠΊΠ°Π·Π° ΠΏΠΎΠΊΡΠΏΠΊΠΈ. ΠΠΎΠ³Π΄Π° Π·Π°ΠΊΠ°Π·Ρ ΠΏΠΎΠΊΡΠΏΠΎΠΊ ΠΏΠΎΡΡΡΠΏΠ°ΡΡ Π² Π³Π»Π°Π²Π½ΡΡ ΡΠ°Π±Π»ΠΈΡΡ, ΡΡΠ° ΡΡΠ½ΠΊΡΠΈΡ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΡΡΠΈΠ³Π³Π΅ΡΠΎΠΌ. ΠΡΠ»ΠΈ Π²Ρ ΡΠΎΠ·Π΄Π°ΡΡΠ΅ ΠΏΠ°ΡΡΠΈΡΠΈΠΈ ΠΏΠΎ Π΄Π½ΡΠΌ, ΠΊΠ°ΠΆΠ΄Π°Ρ Π΄ΠΎΡΠ΅ΡΠ½ΡΡ ΠΏΠ°ΡΡΠΈΡΠΈΡ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ Π²ΡΠ΅ Π·Π°ΠΊΠ°Π·Ρ ΠΏΡΠΈΡΠ΅Π΄ΡΠΈΠ΅ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠΉ Π΄Π΅Π½Ρ. ΠΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅.
ΠΠΎ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌ β ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ ΡΡΠΎΠ³ΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ Π³Π΅ΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠ°ΠΊΠΎΠ΅, ΠΊΠ°ΠΊ ΡΡΠ°ΡΡ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Ρ Π²Π°Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ 50 Π΄ΠΎΡΠ΅ΡΠ½ΠΈΡ
ΡΠ°Π±Π»ΠΈΡ, ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΡΠ°ΡΠ° Π‘Π¨Π. ΠΠΎΠ³Π΄Π° Π·Π°ΠΏΡΠΎΡΡ INSERT ΠΏΠΎΡΡΡΠΏΠ°ΡΡ Π² Π³Π»Π°Π²Π½ΡΡ ΡΠ°Π±Π»ΠΈΡΡ, ΡΡΠ½ΠΊΡΠΈΡ ΡΠΎΡΡΠΈΡΡΠ΅Ρ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π½ΠΎΠ²ΡΠΉ ΡΡΠ΄ Π² ΠΎΠ΄Π½Ρ ΠΈΠ· Π΄ΠΎΡΠ΅ΡΠ½ΠΈΡ
ΡΠ°Π±Π»ΠΈΡ. ΠΡΠ° ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΡ Π½Π΅ ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π½Π΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π½Π°ΠΌ ΠΈΠ·Π±Π°Π²ΠΈΡΡΡΡ ΠΎΡ ΡΡΠ°ΡΡΡ
Π΄Π°Π½Π½ΡΡ
.
ΠΠΎΡΠ° Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΡΠΈ ΠΏΠ°ΡΡΠΈΡΠΈΠΈ
ΠΠΎΠΏΡΡΠ΅Π½ΠΈΡ (Conventions)
ΠΠΎΠΌΠ°Π½Π΄Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ ΠΈΠ· ΠΏΠΎΠ΄ shell, root ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ ΠΈΠΌΠ΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠ΅ΡΠΈΠΊΡ:
ΠΠΎΠΌΠ°Π½Π΄Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ ΠΈΠ· ΠΏΠΎΠ΄ shell, non-root ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ postgres, ΠΈΠΌΠ΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠ΅ΡΠΈΠΊΡ:
ΠΠΎΠΌΠ°Π½Π΄Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ Π²Π½ΡΡΡΠΈ PostgreSQL Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
Π±ΡΠ΄ΡΡ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
Π§ΡΠΎ Π²Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ
Π ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ PostgreSQL 9.2 Π½Π° Engine Yard. ΠΠ°ΠΌ ΡΠ°ΠΊΠΆΠ΅ Π½ΡΠΆΠ΅Π½ git Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ plsh.
Π Π΅Π·ΡΠΌΠ΅
CΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π³Π»Π°Π²Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΌΡ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠ°Π±Π»ΠΈΡΡ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ (cpu, memory, disk) Π³ΡΡΠΏΠΏΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² (server_id) ΠΊΠ°ΠΆΠ΄ΡΡ ΠΌΠΈΠ½ΡΡΡ (time).
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΠΈΠΌΡ time Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΎ Π² ΠΊΠ°Π²ΡΡΠΊΠΈ. ΠΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ time ΡΡΠΎ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ Π² PostgreSQL. ΠΠΎΠ»ΡΡΠ΅ ΠΎ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΠ»ΠΎΠ²Π°Ρ Date/Time ΠΈ ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ·Π½Π°ΡΡ ΠΈΠ· Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ PostgreSQL.
Π‘ΠΎΠ·Π΄Π°ΡΠΌ ΡΡΠ½ΠΊΡΠΈΡ ΡΡΠΈΠ³Π³Π΅ΡΠ°
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΡΠΈΠ³Π³Π΅ΡΠ° Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡΡ
ΠΠΎΠ³Π΄Π° ΡΡΠ½ΠΊΡΠΈΡ ΠΏΠ°ΡΡΠΈΡΠΈΠΈ ΡΠΎΠ·Π΄Π°Π½Π°, Π² Π³Π»Π°Π²Π½ΡΡ ΡΠ°Π±Π»ΠΈΡΡ Π½ΡΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΡΠΈΠ³Π³Π΅Ρ Π²Π²ΠΎΠ΄Π°. ΠΠ½ Π±ΡΠ΄Π΅Ρ Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ ΠΏΠ°ΡΡΠΈΡΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° Π±ΡΠ΄ΡΡ ΠΏΠΎΡΡΡΠΏΠ°ΡΡ Π½ΠΎΠ²ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ.
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ»Π°ΡΡ ΡΡΡΠΎΠΊΠΈ Π³Π»Π°Π²Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΈ Π½Π°Π±Π»ΡΠ΄Π°ΡΡ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΏΠ°ΡΡΠΈΡΠΈΠΈ
Π€ΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ Π²ΠΈΠ΄ΠΈΡΠ΅ Π½ΠΈΠΆΠ΅, ΡΠΎΠΆΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΠΎΠ±ΡΠ°ΡΡΠ΅ΠΉ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π°ΠΌ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΈΠΌΡ ΡΠ°Π±Π»ΠΈΡΡ, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠΊΡΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π² ΠΠ‘, ΠΈ ΠΈΠΌΡ
ΡΠΆΠ°ΡΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΡΡ ΡΠ°Π±Π»ΠΈΡΡ.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΊΠΎΠ΄ ΡΠ²Π΅ΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΡΠ·ΡΠΊΠ° plsh ΡΡΠΎ ΠΎΠ±ΡΡΡΠ½ΡΠ΅ΡΡΡ Π½ΠΈΠΆΠ΅. Π’Π°ΠΊΠΆΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Π² Π½Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ bash Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² /bin/bash.
ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ, Π½Π΅ ΠΏΡΠ°Π²Π΄Π° Π»ΠΈ?
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° PostgreSQL ΠΈ OS
ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ PLSH Π² PostgreSQL
Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ PLSH Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π² PostgreSQL Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° shell ΠΊΠΎΠΌΠ°Π½Π΄. ΠΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² myschema.export_partition(text,text) Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ shell ΡΡΡΠΎΠΊΠΈ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° pg_dump. ΠΠ· ΠΏΠΎΠ΄ root, Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΏΠ°ΠΏΠΊΡ
ΠΡΠΎΡΠ»Π΅Π΄ΠΈΡΠ΅ Π·Π° ΡΠ΅ΠΌ, ΡΡΠΎΠ±Ρ postgres ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Π»Π° ΠΏΠ°ΠΏΠΊΠ°, ΠΈ ΡΡΠΎΠ±Ρ Π³ΡΡΠΏΠΏΠ° deployment ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠΌΠ΅Π»Π° Π΄ΠΎΡΡΡΠΏ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ ΡΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ². ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄Π»Ρ ΡΠ°Π·Π²ΡΡΡΡΠ²Π°Π½ΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π² Engine Yard Cloud ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ βdeployβ.
ΠΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ PL/SH Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° plsh.
ΠΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΏΠ°ΡΡΠΈΡΠΈΠΈ
ΠΠΎΠΌΠ°Π½Π΄Π° Π½ΠΈΠΆΠ΅ Π·Π°ΠΏΠ»Π°Π½ΠΈΡΡΠ΅Ρ Π·Π°ΠΏΡΡΠΊ partition_maintenance ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΄Π΅Π½Ρ Π² ΠΏΠΎΠ»Π½ΠΎΡΡ
ΠΡΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ cron jobs Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ postgres, ΡΡΠΎΠ±Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ crontab ΡΡΡΠΎΠΊΠ° Π²Π΅ΡΠ½Π°:
0 0 * * * /home/postgres/bin/pg_jobs/myschema_partition_maintenance
Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π½Π° ΡΠ΅Π·Π΅ΡΠ²Π½Π°Ρ ΠΊΠΎΠΏΠΈΡ ΠΏΠ°ΠΏΠΊΠΈ /db/partition_dump, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ΡΡ ΠΈΠ½ΡΡΠ°Π½ΡΠΎΠΌ Π½Π° Engine Yard Cloud. ΠΡΠ»ΠΈ Π²Π°ΠΌ ΠΎΠΏΡΡΡ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, Π²Π°ΠΌ Π±ΡΠ΄ΡΡ Π½ΡΠΆΠ½Ρ ΡΡΠΈ ΡΠ°ΠΉΠ»Ρ Π΄Π»Ρ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΡΠ°ΡΡΡ
ΠΏΠ°ΡΡΠΈΡΠΈΠΉ. ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ rsyncing (ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ) ΡΡΠΈΡ
ΡΠ°ΠΉΠ»ΠΎΠ² Π½Π° Π΄ΡΡΠ³ΠΎΠΉ ΡΠ΅ΡΠ²Π΅Ρ Π΄Π»Ρ ΠΏΡΡΠ΅ΠΉ ΡΠ²Π΅ΡΠ΅Π½Π½ΠΎΡΡΠΈ. ΠΡ ΡΡΠΈΡΠ°Π΅ΠΌ, ΡΡΠΎ Π΄Π»Ρ ΡΠ°ΠΊΠΎΠ³ΠΎ Π°ΡΡ
ΠΈΠ²ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΠΈΡ S3.
ΠΡΠ°ΠΊ, ΠΌΡ Π·Π°ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π»ΠΈ, ΡΡΠΎ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠ΅ Π²Π°ΡΠ΅ΠΉ Π³Π»Π°Π²Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ²Π΅ΡΡΠ°ΡΡΡΡ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°ΡΡΠ»Π°Π±ΠΈΡΡΡΡ, Π·Π½Π°Ρ, ΡΡΠΎ Π²Ρ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΡΡΠΎ-ΡΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΠ΅: ΠΏΡΠΎΠ²ΠΎΡΠ½ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°ΠΌΠ° Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠ΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ Π΄ΠΈΠ΅ΡΡ!
ΠΠ°Π³ΡΡΠΆΠ°Π΅ΠΌ ΡΡΠ°ΡΡΠ΅ ΠΏΠ°ΡΡΠΈΡΠΈΠΈ
ΠΡΠ»ΠΈ Π²Π°Ρ ΡΠΎΠΌΠΈΡ ΡΠ°Π·Π»ΡΠΊΠ° ΠΏΠΎ ΡΡΠ°ΡΡΠΌ Π΄Π°Π½Π½ΡΠΌ, ΠΈΠ»ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°ΠΏΡΠΎΡ Π½Π° ΠΊΠΎΠΌΠΏΠ»Π°Π΅Π½Ρ-ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ ΠΎΡΡΡΠΈΠ»ΡΡ Π½Π° Π²Π°ΡΠ΅ΠΌ ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΡΡΠΎΠ»Π΅, Π²Ρ Π²ΡΡ Π΅ΡΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΡΡΠ°ΡΡΠ΅ ΠΏΠ°ΡΡΠΈΡΠΈΠΈ ΠΈΠ· ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ².
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΌΡ Π½Π°ΠΏΡΠ°Π²ΠΈΠΌΡΡ ΠΊ ΠΏΠ°ΠΏΠΊΠ΅ /db/partition_dump Π½Π° Π²Π°ΡΠ΅ΠΌ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ db ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΡΠ΅ΠΌ Π½ΡΠΆΠ½ΡΠΉ ΡΠ°ΠΉΠ». ΠΠ°ΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ postgres ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅Ρ ΡΡΠΎΡ ΡΠ°ΠΉΠ» Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
.
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΠ°ΠΉΠ» Π·Π°Π³ΡΡΠΆΠ΅Π½, ΠΊ Π½Π΅ΠΌΡ ΠΎΠΏΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»Π°ΡΡ Π·Π°ΠΏΡΠΎΡΡ ΠΈΠ· Π³Π»Π°Π²Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ. ΠΠ΅ Π·Π°Π±ΡΠ²Π°ΠΉΡΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ°Π· ΠΊΠΎΠ³Π΄Π° ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊ Π·Π°ΠΏΡΡΡΠΈΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΠΏΠ°ΡΡΠΈΡΠΈΠΈ, ΡΡΠ° ΡΡΠ°ΡΠ°Ρ ΠΏΠ°ΡΡΠΈΡΠΈΡ ΠΎΠΏΡΡΡ Π±ΡΠ΄Π΅Ρ ΡΠΊΡΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π°.
ΠΠΎΡΠΌΠΎΡΡΠΈΠΌ ΡΡΠΎ Π² ΡΠ°Π±ΠΎΡΠ΅
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΡ
ΡΠ°Π±Π»ΠΈΡ
ΠΠ°Π³ΡΡΠ·ΠΈΠΌ Π΄Π²Π΅ ΡΡΡΠΎΠΊΠΈ Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ, ΡΡΠΎΠ±Ρ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° Π½ΠΎΠ²ΡΡ Π΄ΠΎΡΠ΅ΡΠ½ΡΡ ΠΏΠ°ΡΡΠΈΡΠΈΡ Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΠΈ. ΠΡΠΊΡΠΎΠΉΡΠ΅ psql ΡΠ΅ΡΡΠΈΡ ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
Π’Π°ΠΊ ΡΡΠΎ ΠΆΠ΅ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ? ΠΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Ρ, ΡΡΠΎ Π²Ρ Π² ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ°Π· Π·Π°ΠΏΡΡΡΠΈΠ»ΠΈ ΡΡΠΎ, Π΄Π²Π΅ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ Π±ΡΠ»ΠΈ ΡΠΎΠ·Π΄Π°Π½Ρ. Π‘ΠΌΠΎΡΡΠΈΡΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π² sql ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΈ ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ. ΠΠ΅ΡΠ²ΡΠΉ insert ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ, Π²ΡΠ±ΠΈΡΠ°Ρ ΠΈΠ· Π³Π»Π°Π²Π½ΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ· Π΄ΠΎΡΠ΅ΡΠ½Π΅ΠΉ ΡΠ°Π±Π»ΠΈΡΡ:
ΠΠ°ΠΌΠ΅ΡΡΡΠ΅, ΡΡΠΎ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π΄Π²ΠΎΠΉΠ½ΡΠ΅ ΠΊΠ°Π²ΡΡΠΊΠΈ Π²ΠΎΠΊΡΡΠ³ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°Π±Π»ΠΈΡΡ Π΄ΠΎΡΠ΅ΡΠ½Π΅ΠΉ ΠΏΠ°ΡΡΠΈΡΠΈΠΈ. ΠΡ Π΄Π΅Π»Π°Π΅ΠΌ ΡΡΠΎ Π½Π΅ ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ ΡΡΠΎ ΡΠ½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½Π½Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ°, Π° ΠΈΠ·-Π·Π° Π΄Π΅ΡΠΈΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΠΆΠ΄Ρ Π³ΠΎΠ΄-ΠΌΠ΅ΡΡΡ-Π΄Π΅Π½Ρ.
ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡ
ΠΠ²ΡΠΌ ΡΡΡΠΎΠΊΠ°ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ Π²Π½Π΅ΡΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ 15 Π΄Π½Π΅ΠΉ. ΠΠΎΡΠ»Π΅ ΡΡΡΠ½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΡΠΊΠ° ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΏΠ°ΡΡΠΈΡΠΈΠΈ (ΠΊΠ°ΠΊ Π±ΡΠ»ΠΎ Π±Ρ Π·Π°ΠΏΡΡΠ΅Π½ΠΎ ΡΠ΅ΡΠ΅Π· cron) Π΄Π²Π΅ ΠΏΠ°ΡΡΠΈΡΠΈΠΈ Π±ΡΠ΄ΡΡ ΡΠΊΡΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½Ρ Π² ΠΠ‘, ΠΈ ΡΡΠΈ ΠΏΠ°ΡΡΠΈΡΠΈΠΈ Π±ΡΠ΄ΡΡ ΠΎΠΏΡΡΠ΅Π½Ρ (dropped).
postgres$ /home/postgres/bin/pg_jobs/myschema_partition_maintenance
ΠΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΌΡ ΡΠΌΠΎΠΆΠ΅ΠΌ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π΄Π²Π° ΡΠΊΡΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°ΠΉΠ»Π°:
ΠΡΠΈ ΠΏΠΎΠΏΡΡΠΊΠ΅ Π²ΡΠ±ΡΠ°ΡΡ Π² Π³Π»Π°Π²Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ Π²Π΅ΡΠ½ΡΡ Π²Π°ΠΌ 0 ΡΡΡΠΎΠΊ, ΡΠ°ΠΊ ΡΡΠΎ Π΄Π²Π΅ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ.
ΠΠ°Π³ΡΡΠ·ΠΊΠ° ΡΡΠ°ΡΡΡ
ΠΏΠ°ΡΡΠΈΡΠΈΠΉ
Π΅ΡΠ»ΠΈ Π²Ρ Π·Π°Ρ ΠΎΡΠΈΡΠ΅ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΡΡΠ°ΡΡΠ΅ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ, ΡΠΎ ΡΠ½Π°ΡΠ°Π»Π° gunzip, Π° Π·Π°ΡΠ΅ΠΌ Π·Π°Π³ΡΡΠ·ΠΊΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ psql:
ΠΡΠ»ΠΈ ΠΏΠΎΡΠ»Π°ΡΡ select Π³Π»Π°Π²Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅, ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ 1 ΡΡΡΠΎΠΊΠ° β Π΄ΠΎΡΠ΅ΡΠ½ΡΡ ΡΠ°Π±Π»ΠΈΡΠ° Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π°.
ΠΠ°ΠΌΠ΅ΡΠΊΠΈ
ΠΠ°ΡΠΈ ΡΠ°ΠΉΠ»Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
Π½Π°Ρ
ΠΎΠ΄ΡΡΡΡ Π½Π° ΠΏΠ°ΡΡΠΈΡΠΈΠΈ Π½Π° /db ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΡΠ΄Π΅Π»Π΅Π½Π° ΠΎΡ Π½Π°ΡΠ΅ΠΉ root (β/β) ΠΏΠ°ΡΡΠΈΡΠΈΠΈ.
ΠΠ»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅Π³ΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠ»Π΅Π½ΠΈΡ Ρ PostgreSQL ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΏΠΎΡΠΈΡΠ°ΠΉΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ.
ΠΠ²ΠΈΠΆΠΎΠΊ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
Π½Π΅ Π²Π΅ΡΠ½ΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠΎΠΊ Π·Π°ΡΡΠΎΠ½ΡΡΡΡ
ΡΠ°Π±Π»ΠΈΡ (Π²ΡΠ΅Π³Π΄Π° 0 Π·Π°ΡΡΠΎΠ½ΡΡΡΡ
ΡΠ°Π±Π»ΠΈΡ) ΠΏΠΎΡΠ»Π΅ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ INSERT ΠΈΠ»ΠΈ UPDATE Π² Π³Π»Π°Π²Π½ΡΡ ΡΠ°Π±Π»ΠΈΡΡ. ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Ruby, Π½Π΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ ΠΏΠΎΠ΄ΠΏΡΠ°Π²ΠΈΡΡ ΠΊΠΎΠ΄, ΡΡΠΈΡΡΠ²Π°Ρ, ΡΡΠΎ pg Π΄ΠΆΠ΅ΠΌ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΡΠΈ ΠΎΡΡΡΡΠ½ΠΎΡΡΡΡ
cmd_tuples. ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ORM, ΡΠΎΠ³Π΄Π°, Π±ΡΠ΄Π΅ΠΌ Π½Π°Π΄Π΅ΡΡΡΡΡ, ΠΎΠ½ΠΈ ΠΏΠΎΠ΄ΠΏΡΠ°Π²ΡΡ ΡΡΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ.
ΠΠ΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΠ΅ ΠΊΠΎΠΏΠΈΠΈ ΡΠΊΡΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΠΏΠ°ΡΡΠΈΡΠΈΠΉ Π² /db/partition_dump, ΡΡΠΈ ΡΠ°ΠΉΠ»Ρ Π»Π΅ΠΆΠ°Ρ Π²Π½Π΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ ΠΏΡΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±ΡΠΊΠ°ΠΏΠΎΠ² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
.
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅Ρ INSERT Π² Π³Π»Π°Π²Π½ΡΡ ΡΠ°Π±Π»ΠΈΡΡ, ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅ΡΡ DDL ΠΏΡΠ°Π²Π° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΡ
ΡΠ°Π±Π»ΠΈΡ.
ΠΡΠΈ ΠΎΡΡΡΠ΅ΡΡΠ²Π»Π΅Π½ΠΈΠΈ INSERT Π² Π³Π»Π°Π²Π½ΡΡ ΡΠ°Π±Π»ΠΈΡΡ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΌΠ΅ΡΠ½ΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΡΡΠ΅Π½Π° ΡΡΠ½ΠΊΡΠΈΡ ΡΡΠΈΠ³Π³Π΅ΡΠ°.
ΠΡΠΎΡΠ»Π΅Π΄ΠΈΡΠ΅ Π·Π° ΡΠ΅ΠΌ, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ PostgreSQL. ΠΡΠΎ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ, ΡΡΠΎ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Ρ ΡΠ°ΠΌΠΎΠΉ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠΉ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠ΅ΠΉ.
ΠΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π΄Π»Ρ ΠΌΠΎΠ΅ΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ, Π²Π°ΡΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π΄ΡΡΠ³ΠΈΠΌΠΈ, ΡΠ°ΠΊ ΡΡΠΎ Π½Π΅ ΡΡΠ΅ΡΠ½ΡΠΉΡΠ΅ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ, Π΄ΠΎΠΏΠΎΠ»Π½ΡΡΡ, ΠΊΠ°Π»Π΅ΡΠΈΡΡ, ΠΈΡΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΌΠ΅ΡΡΡΡΡ ΠΈΠ»ΠΈ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎ Π΄Π»Ρ ΡΠ²ΠΎΠΈΡ
ΡΠ΅Π»Π΅ΠΉ.