Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ «Руководство администратора Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… Inrformix (БИ)Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 7

Автор ΠšΡƒΡΡ‚ΠΎΠ² Π’ΠΈΠΊΡ‚ΠΎΡ€ НиколаСвич

ΠœΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ прСимущСства эта тСхнология Π΄Π°Π΅Ρ‚ Π½Π° многопроцСссорных ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ… Π² условиях примСнСния Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Ρ‚Π°Π±Π»ΠΈΡ†, Π³Π΄Π΅ врСмя выполнСния запроса сокращаСтся Π² дСсятки Ρ€Π°Π·; ΠΎΠ΄Π½Π°ΠΊΠΎ Π²Ρ‹ΠΈΠ³Ρ€Ρ‹Ρˆ Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ достигаСтся ΠΈ Π½Π° однопроцСссорных ΠΌΠ°ΡˆΠΈΠ½Π°Ρ… ΠΈ Π½Π΅Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… Π·Π° счСт Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ доступ ΠΊ дискам осущСствляСтся ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Π²ΠΈΠ΄Π°ΠΌΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΈ Π·Π° счСт максимально ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ использования памяти.

2.2.5.1 На Ρ‡Π΅ΠΌ основана тСхнология PDQ

РСализация запроса состоит ΠΈΠ· ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… дСйствий - сканирования, сортировки, группирования ΠΈ Π΄Ρ€. Π­Ρ‚ΠΈ дСйствия Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ. Π˜Ρ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ Π΄Π΅Ρ€Π΅Π²ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ запроса Π² Ρ‚ΠΎΠΌ смыслС, Ρ‡Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ выполнСния ΠΎΠ΄Π½ΠΈΡ… ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΡΠ²Π»ΡΡŽΡ‚ΡΡ исходными Π΄Π°Π½Π½Ρ‹ΠΌΠΈ для Π΄Ρ€ΡƒΠ³ΠΈΡ…. ΠŸΡ€ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ. Π’ основС Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ PDQ Π»Π΅ΠΆΠ°Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ рСгулирования:

ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π²Π²ΠΎΠ΄ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ (Π½Π° основС Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Ρ‚Π°Π±Π»ΠΈΡ†).РаспараллСливаниС ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² (Π½Π° основС ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² разбиСния Π΄Π°Π½Π½Ρ‹Ρ…).РаспараллСливаниС ΠΏΠ»Π°Π½Π° выполнСния запроса (ΠΏΡƒΡ‚Π΅ΠΌ разбиСния Π΄Π΅Ρ€Π΅Π²Π° Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ запроса Π½Π° нСзависимыС ΠΏΠΎΠ΄Π΄Π΅Ρ€Π΅Π²ΡŒΡ; Π·Π° счСт примСнСния Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…).Π‘Π½ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ слоТности Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² (ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ основанных Π½Π° Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² сортировки, соСдинСния, вычислСния Π°Π³Ρ€Π΅Π³Π°Ρ‚Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ (sum, min, max, avg, ...)).Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ рСсурсами, Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ стСпСни распараллСливания (ΠΏΠΎΠ΄ PDQ выдСляСтся опрСдСлСнная доля систСмных рСсурсов).

2.2.5.2 Π˜Ρ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹

Π˜Ρ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ - это ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ осущСствляСт ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΡƒΡŽ (Ρ†ΠΈΠΊΠ»ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ) ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ мноТСства Π΄Π°Π½Π½Ρ‹Ρ…. Π˜Ρ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Ρ‚ΠΈΠΏΠΎΠΌ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π½ΠΎ ΠΈΠΌΠ΅ΡŽΡ‚ Π΅Π΄ΠΈΠ½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹ΠΉ внСшний интСрфСйс. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ (ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅) Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… (data flow), ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ считываСт ΠΈΡ… ΠΈ, послС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π² Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠΎΡ‚ΠΎΠΊ. Π˜Ρ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ Π±Π΅Π·Ρ€Π°Π·Π»ΠΈΡ‡Π΅Π½ источник Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ° ΠΈ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ° - это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ диск, Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€, сСтСвоС соСдинСниС. ΠœΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΎ поставщиках ΠΈ потрСбитСлях ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…. НиТС пСрСчислСны Ρ‚ΠΈΠΏΡ‹ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², примСняСмыС Π² INFORMIX-OnLine DS:

SCAN - Π‘ΠΊΠ°Π½ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΈ Π½Π΅Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΈ индСксы. NESTED LOOP JOIN - Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ Π»ΠΎΠ³ΠΈΠΊΡƒ соСдинСний ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ†ΠΈΠΊΠ»ΠΎΠ² (Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ строку ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ всС совпадСния Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅, Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ строку ΠΈΠ· ΠΏΠ΅Ρ€Π²ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΈ Ρ‚. Π΄.). MERGE JOIN - ВыполняСт Ρ„Π°Π·Ρƒ слияния для соСдинСния ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ сортировки ΠΈ слияния. HASH JOIN - Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ соСдинСний с Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ. Для ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π΄Π²ΡƒΡ… соСдиняСмых Ρ‚Π°Π±Π»ΠΈΡ† строится Ρ…Π΅Ρˆ-Ρ‚Π°Π±Π»ΠΈΡ†Π°, вторая Ρ‚Π°Π±Π»ΠΈΡ†Π° зондируСтся. ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ‚ΠΎΡ€ Ρ€Π΅ΡˆΠ°Π΅Ρ‚, какая ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ† Π±ΡƒΠ΄Π΅Ρ‚ Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ. GROUP - Π“Ρ€ΡƒΠΏΠΏΠΈΡ€ΡƒΠ΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ (GROUP BY) ΠΈ вычисляСт Π°Π³Ρ€Π΅Π³Π°Ρ‚Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. SORT - Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅. MERGE - ВыполняСт объСдинСния UNION ΠΈ UNION ALL (для UNION ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ комбинация ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² MERGE ΠΈ SORT). REMOTE - Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Π΅ сканирования для ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² SELECT.

Π˜Ρ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ состоит ΠΈΠ· статичСских ΠΈ динамичСских структур Π΄Π°Π½Π½Ρ‹Ρ…. БтатичСская структура содСрТит ссылки Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (ΠΈΠ»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹), ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΡ‹Π΅ ΠΊ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ. ДинамичСская структура содСрТит ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ состоянии ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° (ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚, Π·Π°ΠΊΡ€Ρ‹Ρ‚, выполняСт ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΡƒΡŽ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΡŽ), ΠΎΠ΄Π½Ρƒ ΠΈΠ»ΠΈ Π΄Π²Π΅ ссылки Π½Π° поставщиков.

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°

CREATE() - Π‘ΠΎΠ·Π΄Π°Π΅Ρ‚ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€. ВыдСляСт ΠΏΠ°ΠΌΡΡ‚ΡŒ для ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°, ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Π΅Π³ΠΎ структуры, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ (open(), next(), close(), free()), Ρ‚.Π΅. устанавливаСт ссылки Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π΄Π°Π½Π½ΠΎΠΌΡƒ Ρ‚ΠΈΠΏΡƒ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°. Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ create() для своих ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²-поставщиков, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ создадут своих поставщиков, Ссли Ρ‚Π°ΠΊΠΎΠ²Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ, ΠΈ Ρ‚. Π΄. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π²Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄Π° create() для ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ созданию всСго Π΄Π΅Ρ€Π΅Π²Π° ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ².

OPEN() - ЗапускаСт ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€. Π’Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ спСцифичСскиС для Π΄Π°Π½Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, запрос Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ памяти. НапримСр, ΠΏΡ€ΠΈ запускС ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° сканирования опрСдСляСтся, ΠΊΠ°ΠΊΠΈΠ΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΠ°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, устанавливаСтся ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ…, создаСтся врСмСнная Ρ‚Π°Π±Π»ΠΈΡ†Π° (Ссли ΠΎΠ½Π° Π½ΡƒΠΆΠ½Π°), посылаСтся сообщСниС

MGM (MGM - ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° сСрвСра, которая Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ рСсурсов ΠΏΠΎΠ΄ запросы, ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ срСдствами PDQ; см. ΠΎΠ± этом Π½ΠΈΠΆΠ΅, ΠΏ. "Баланс ΠΌΠ΅ΠΆΠ΄Ρƒ OLTP ΠΈ DSS-прилоТСниями") ΠΎ запускС ΠΏΠΎΡ‚ΠΎΠΊΠ° сканирования. Π”Π°Π»Π΅Π΅ примСняСтся ΠΌΠ΅Ρ‚ΠΎΠ΄ open() ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ поставщикам ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ примСнят Π΅Π³ΠΎ ΠΊ своим поставщикам ΠΈ Ρ‚.Π΄. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, для запуска всСго Π΄Π΅Ρ€Π΅Π²Π° ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² достаточно ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ open() ΠΊ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΌΡƒ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ.

NEXT() - ВыполняСт ΠΎΠ΄Π½Ρƒ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΡŽ. Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ начинаСтся с Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ примСняСт ΠΌΠ΅Ρ‚ΠΎΠ΄ next() ΠΊ своим поставщикам, заставляя ΠΈΡ… Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ next() ΠΊ своим поставщикам ΠΈ Ρ‚. Π΄., ΠΏΠΎΠΊΠ° Π½Π΅ ΡΡ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ поставщиков Π½ΠΈΠΆΠ½Π΅Π³ΠΎ уровня. Π—Π°Ρ‚Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ снизу Π²Π²Π΅Ρ€Ρ… - ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ² Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΡ‚ своСго поставщика, примСняСт ΠΊ Π½ΠΈΠΌ свой спСцифичСский Π²ΠΈΠ΄ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ своСму ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΡŽ. ΠœΠ΅Ρ‚ΠΎΠ΄ next() примСняСтся цикличСски, ΠΏΠΎΠΊΠ° Π½Π΅ поступит ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ ΠΊΠΎΠ½Ρ†Π° ΠΏΠΎΡ‚ΠΎΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ….

CLOSE() - Π—Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€. ВысвобоТдаСт ΠΏΠ°ΠΌΡΡ‚ΡŒ, Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ ΠΏΡ€ΠΈ запускС. ЀактичСски, эта ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΌΠΎΠ³Π»Π° ΡƒΠΆΠ΅ Π±Ρ‹Ρ‚ΡŒ высвобоТдСна ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ next(), ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ ΠΊΠΎΠ½Ρ†Π° Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ±Ρ‰ΠΈΠΉ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Ρ‚ΡŒ ΠΏΠ°ΠΌΡΡ‚ΡŒ сразу ΠΆΠ΅, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ½Π° становится Π½Π΅ Π½ΡƒΠΆΠ½Π°. Однако, это Π½Π΅ всСгда Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ close() возлагаСтся ΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π·Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ°ΠΌΡΡ‚ΡŒ Π² любом случаС Π±Ρ‹Π»Π° освобоТдСна.

ΠœΠ΅Ρ‚ΠΎΠ΄ close() рСкурсивно примСняСтся ΠΊ поставщикам, Ρ‚Π΅ΠΌ самым, закрываСтся всС Π΄Π΅Ρ€Π΅Π²ΠΎ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ².

FREE() - ΠžΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π΅Ρ‚ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€. ВысвобоТдаСт ΠΏΠ°ΠΌΡΡ‚ΡŒ, Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ ΠΏΡ€ΠΈ создании. ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΠ΅Ρ‚ free() ΠΊ поставщикам, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, освобоТдаСтся всС Π΄Π΅Ρ€Π΅Π²ΠΎ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ².

Благодаря Π΅Π΄ΠΈΠ½ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΡŽ интСрфСйса, ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒΡΡ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ (рис. 5). Π˜Ρ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ Π½Π΅ заботится ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊΠΎΠΉ Ρ‚ΠΈΠΏ ΠΈΠΌΠ΅ΡŽΡ‚ Π΅Π³ΠΎ поставщики, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ взаимодСйствуСт с Π½ΠΈΠΌΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ посрСдством ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ². Из описания ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² слСдуСт, Ρ‡Ρ‚ΠΎ запуск Π΄Π΅Ρ€Π΅Π²Π°, составлСнного ΠΈΠ· ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΠΈΡ… ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅. Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° создаСтся ΠΏΠΎΡ‚ΠΎΠΊ выполнСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ продвигаСтся ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΡ‚ своих поставщиков. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π² сСрвСрС рСализуСтся Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌ - ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ΅, ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Π½ΠΎΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ².

Π”Ρ€ΡƒΠ³ΠΎΠΉ Π²ΠΈΠ΄ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ° - Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ - Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ вмСсто ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, сканирования) создаСтся нСсколько ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹Ρ… ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ выполняСмых ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ². Π“ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌ рСализуСтся ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° - ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΎΠ±ΠΌΠ΅Π½Π° (EXCHANGE). ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π΄Π΅Ρ€Π΅Π²ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ запроса построСно, ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ‚ΠΎΡ€ опрСдСляСт, ΠΊΠ°ΠΊΠΈΠ΅ Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΈΠΌΠ΅Π΅Ρ‚ смысл Ρ€Π°ΡΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΡ‚ΡŒ. Над Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΉ вставляСтся ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ EXCHANGE. Π˜Ρ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ EXCHANGE создаСт ΠΈ запускаСт нСсколько экзСмпляров своСго поставщика, обСспСчиваСт ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ†ΠΈΡŽ ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΡ… ΠΎΡ‚ Π½ΠΈΡ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΈΡ… ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ своСму ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΡŽ. ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π΄Π°Π½Π½Ρ‹Ρ… осущСствляСтся Π² этом случаС Π½Π΅ Ρ‡Π΅Ρ€Π΅Π· Π²Ρ…ΠΎΠ΄Ρ‹ потрСбитСля, Π° Ρ‡Π΅Ρ€Π΅Π· ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π² раздСляСмой памяти.

Π‘Ρ‚Π΅ΠΏΠ΅Π½ΡŒ ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ способы примСнСния Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ° для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ запроса опрСдСляСтся ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΎΠΌ. ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ‚ΠΎΡ€ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, исходя ΠΈΠ· Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ, устанавливаСмых администратором, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΈ клиСнтским ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Π° Ρ‚Π°ΠΊΠΆΠ΅ с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… сообраТСний, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ число Π½Π°Π»ΠΈΡ‡Π½Ρ‹Ρ… процСссоров, фрагмСнтация ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π² запросС Ρ‚Π°Π±Π»ΠΈΡ†, ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ запроса ΠΈ Ρ‚. Π΄.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ тСстов ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ PDQ ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ INFORMIX-OnLine DS ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ с ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ числа процСссоров практичСски ΠΏΡ€ΠΎΠΏΠΎΡ€Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ рост ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.