Научная статья на тему 'Побудова стійкої до візантійських збоїв системи'

Побудова стійкої до візантійських збоїв системи Текст научной статьи по специальности «Математика»

CC BY
91
11
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
відмовостійкість / відмовостійкі системи / візантійські збої / fault-tolerance / fault-tolerant systems / Byzantine faults

Аннотация научной статьи по математике, автор научной работы — Д І. Кутянський, М В. Дідковська

Проаналізовано різні види збоїв, що можуть виникнути в роботі програмних систем. Продемонстровано загальний підхід до побудови відмовостійкої системи та розглянуто одну з можливих задач проектування відмовостійких систем та її розв'язок.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Design of Byzantine fault-tolerant system

This work analyses different types of faults which can occur in programmatic systems. General approach of design of fault-tolerant system is described. In addition, one of design problems with its solution is analyzed.

Текст научной работы на тему «Побудова стійкої до візантійських збоїв системи»

• елемент фухтц, фуущу, фу2ту належить вiдповiдно (n + R)s -й, (n + R)(s + R) -й,

(n + R)(s + 2R) -й клiтинi матриц ф ;

• елемент ф2хт1]-, фгуту , фггту належить вiдповiдно (n + 2R)s -й, (n + 2R)(s + R) -

й, (n + 2R)(s + 2R) -й клiтинi матрицу ф .

Повну матрицю Якоб1 ф одержимо, виконавши цю процедуру для Bcix КЕ елементiв.

У випадку використання лагранжевих тетраедрiв 2-го, 3-го i 4-го по-рядкiв потрiбно застосувати вiдповiднi кубатурнi формули чисельного штег-рування[1] i провести вивщ основних залежностей за викладеною вище методикою.

Л1тература

1. Карашецький В.П. Кубатурш формули чисельного штегрування за об'емом тетраед-ра на основ1 штерполяцшних повних пол1ном1в // Науковий вюник НЛТУ Украши : зб. наук.-техн. праць. - Льв1в : РВВ НЛТУ Украши. - 2007. - Вип. 17.6. - С. 258-264.

Карашецкий В.П. Расчет трехмерных вихревых магнитных полей методом конечных элементов

Выведены основные формулы метода конечных элементов для расчета трехмерных статических вихревых магнитных полей в областях, заполненных нелинейными безгистерезисными анизотропными средами.

Ключевые слова: вихревое магнитное поле, магнитная характеристика, лагран-жевий тетраэдр, метод конечных элементов, кубатурна формула.

Karashetskyy V.P. Calculation of three-dimensional eddy magnetic fields of the method finite element

Basic formulas of the finite element method for calculating of three-dimensional static eddy magnetic fields filled with nonlinear without hysteresis anisotropic environments were obtained.

Keywords: eddy magnetic field, magnetic characteristic, Lagrangian tetrahedron, finite element method, cubature formula._

УДК 519.718.3 Бакалавр Д.1. Кутянський; доц. М.В. Дiдковська,

канд. техн. наук - НТУ Украти "Кшвський полтехшчний тститут"

ПОБУДОВА СТ1ЙКО1 ДО ВВАНТШСЬКИХ ЗБО1В СИСТЕМИ

Проаналiзовано рiзнi види збо'1'в, що можуть виникнути в робот програмних систем. Продемонстровано загальний пщхщ до побудови вщмовостшко'1 системи та розглянуто одну з можливих задач проектування вщмовостшких систем та п розв'язок.

Ключов1 слова: вщмовостшюсть, вщмовостшю системи, вiзантiйськi збо!.

Вступ. З поширенням використання комп'ютерних систем у р1зних сферах д1яльност1 зростають \ вимоги до надшност роботи програмно-апа-ратних комплекЫв. У робот багатьох систем необхщною умовою е вщсут-шсть збо!в, або, принаймш, утримання 1мов1рносл !х появи нижче певного р1вня. При цьому часто бажаного результату не вдаеться досягти лише за до-помогою використання надшних компоненлв, а потр1бно модифжувати архь тектуру системи так, щоб вона була толерантною до р1зних вид1в збо!в. Нап-риклад, шд час контрол1 температури певного критичного об'екта, датчик

температури, яким би надшним вш не був, рано чи шзно може вийти з ладу, або одноразово повщомити неправильну температуру, на основi чого може бути прийнято неправильне ршення щодо дiй, якi мають бути виконаш. Для уникнення тако! ситуаци можна використовувати одночасно кiлька датчиюв для вимiрювання одте! i ие! ж температури i приймати ршення на основi набору результата з усiх датчикiв - штуггивно це мае пiдвищити надiйнiсть системи, оскшьки ймовiрнiсть одночасного збою кшькох датчикiв нижча, нiж одного. Аналопчш проблеми трапляються не лише в суто техшчних системах, але й в фiнансових, банкiвських i т. iн Таким чином, задача полягае в по-будовi арх^ектури системи, здатно! бути толерантною до рiзних видiв збо!в, незалежно вщ прикладно! областi, в якiй працюе система.

Мета роботи. Метою ще! роботи е ознайомлення i порiвняння рiзних типiв збо!в, що можуть виникати в програмних системах та шляхiв побудови систем, толерантних до цих збо!в. Демонструеться одна з задач побудови вщ-мовостiйких систем та и можливий розв'язок. Також наведено можливi нап-рями подальшого дослiдження вiдмовостiйких систем.

Визначення та властивосл в1дмовост1йких систем

Визначення та основш пiдходи до реалiзацil. Розподшеш програмнi системи часто обговорюють у поняттях сервiсiв i !х кшенпв. Кожен сервiс надаеться одним або кшькома серверами. Сервiс надае можливють клiентам виконувати деякi операци, посилаючи запити сервiсу. Хоча й найпростший спосiб реалiзацil сервiсу - це його виконання на единому централiзованому сервер^ такий шдхщ до проектування сервюу буде настiльки ж вщмовос-тiйким, наскiльки i сервер. Якщо такий рiвень вiдмовостiйкостi неприйнят-ний, то сервю для свое! роботи мае використовувати кшька серверiв, безвщ-мовнiсть роботи яких не мае залежати один вiд одного. Зазвичай для цього використовуються реплiки (точш копи) единого сервера, якi виконуються на рiзних комп'ютерах у межах розподшено! системи, для !х координаци, кому-шкаци мiж собою i з клiентом використовуються спецiально розроблеш про-токоли. Фiзична й електрична iзоляцiя серверiв мiж собою знижують можли-вiсть одночасних вiдмов виконання операцш цими серверами.

Загальним шдходом до реалiзацil вiдмовостiйкого сервiсу за допомо-гою реплжаци серверiв i координаци взаемоди клiента та реплж сервера е скiнченний автомат [1]. Також за допомогою цього шдходу легше зрозумiти основи проектування протоколiв управлiння реплiкацiею. Скiнченний автомат складаеться зi змiнних стану, як кодують стан автомату i команд, як цей стан можуть змшювати. Виконання команд детермiнiстичне, тобто команда за однакових вхщних даних завжди видае один i той же результат. Команди виконуються атомарно та можуть змшювати змшш стану або подавати ш-формащю на вихщ або i те, i шше. Клiент пiд час виконання запиту вказуе команду та додатковi аргументи, необхщт для И виконання.

Види збо1'в. Будемо називати компонент системи збшним, якщо його поведiнка не вщповщае його специфжаци. Розглядатимемо два принципово рiзних класи можливих збо!в. Перший з них - вiзантiйський збiй. Це збiй, за якого один iз компонентiв системи у вщповщь на запити проявляе довшьну i, часто, зловмисну поведiнку, можливо, вiн це робить за домовлешстю з шши-

ми збшними компонентами [2]. Другий тип збою - це збiй-зупинка: компонент у вщповщь на появу помилки змшюе свiй стан таким чином, що iншi компоненти можуть вщстежити появу щеï помилки, i шсля цього зупиняе свою роботу [3]. Саме другий тип збою було б лопчно називати вщмовою, але цей термiн закрiпився за обома типами. Очевидно, що вiзантiйський збш несе набагато гiршi наслiдки, шж збiй-зупинка, тому що без використання додат-кових перевiрок кшент не отримуе можливостi перевiрити коректнiсть виконання операци компонентом. Система називатиметься вщмовостшкою, якщо вона загалом продовжуе коректну роботу при тому, що один або декшька ïï компонента пiддались збою. Також проектування систем, як базуються на якихось специфiчних припущеннях щодо збою компонентiв, ризиковане, оскшьки щ припущення можуть не задовольнятись, тому розумно було б реаль зовувати критичш системи так, щоб вони були стшкими до вiзантiйських збо-ïb. Для бшьшосп систем достатньо бути стшкими до збоïв-зупинок.

Системи, стiйкi до збоУв. Систему, що складаеться з деякого набору компонента, будемо називати вщмовостшкою порядку t (або t-вщмовос-тiйкою), якщо вона загалом задовольняе специфшащю за умови, що не бшь-ше нiж t ïï компонента вщмовлять протягом деякого штервалу часу. Вщмо-востiйкiсть систем традицшно характеризуеться середнiм часом мiж збоями, ймовiрнiстю збою на заданому iнтервалi часу та iншими статистичними метриками [4]. Хоча описаш вище статистичш характеристики е важливими для кiнцевого користувача, опис системи в термшах порядку ïï вщмовостшкост протягом деякого iнтервалу часу також мае своï переваги. Зокрема якщо якась система називаеться ^вщмовостшкою, то стають очевидними припущення щодо умов ïï коректного функщонування, а середнш час мiж збоями або iншi статистичнi метрики такоï шформаци не дають. Важливою вщмш-шстю порядку вiдмовостiйкостi вiд решти наведених характеристик е те, що вона не залежить вщ надiйностi компонента, з яких складаеться система i, таким чином, е метрикою вщмовостшкост^ яка забезпечена архитектурою системи, а не використанням надшних компонента. Тобто статистичш характеристики вщмовостшкост системи можна тдвищити завдяки викорис-танню бшьш надiйних компонентiв, при цьому порядок вщмовостшкост системи не змшиться. Статистичнi показники вiдмовостiйкостi системи порядку t можуть бути обчислеш на основi статистичних характеристик компонента системи. При заданих показниках надшносл компонента i бажаних статистичних показниках вщмовостшкоси системи можна розрахувати ïï порядок.

Для отримання вщмовостшкого автомата порядку t необхщно репль кувати один автомат i виконувати його на рiзних серверах у межах розподше-ноï системи. За умови, що кожна реплжа виконуватиметься без збоïв i кожен iз серверiв почне свою роботу з однакового стану та виконуватиме ri ж запити користувачiв у тому ж порядку, вш сервери виконуватимуть одш й тi ж ди i видаватимуть один i той же результат. Якщо якийсь з серверiв або група серверiв шддасться збою, то все одно кшент мае можливiсть отримати пра-вильний результат операцiï, базуючись на робот решти серверiв.

Якщо сервери шддаються вiзантiйським збоям, то для забезпечення вщмовостш^' системи порядку t необхщна 2t+1 реплiка, тодi правильним

результатом виконання операци вважатиметься результат, отриманий бшь-ш1стю з реплж. За наявност 2+1 реплжи бшьшють з результата буде пра-вильними нав1ть за наявност ? реплж з1 збоями. Процес отримання едино! вщповщ лопчно назвати голосуванням. Якщо ж сервери шддаються лише збоям-зупинкам, то для досягнення порядку вщмовостшкосл ? потр1бна 1+1 реплжа { результатом системи можна вважати результат будь-яко! з реплж. Це твердження справедливе, тому що реплжи видають лише правильш ре-зультати { нав1ть за наявност ? збо!в залишиться одна робоча реплша.

Надал1 сконцентруемо увагу на в1зантшських збоях { розглянемо задачу щодо них.

Проблема в1замтшських генерал1в

Одна з базових задач забезпечення вщмовостшкост вщома тд назвою "Проблема в1зантшських генерал1в". Абстрактно !! можна сформулювати в термшах групи в1зантшських генерал1в, яким за допомогою лише обмшу по-вщомленнями потр1бно узгодити спшьний план дш. Проблема прийняття спшьного р1шення полягае в тому, що серед генерашв можуть бути зрадники, яю сво!ми д1ями намагатимуться не допустити прийняття правильного ршен-ня рештою генерашв. Тод1 задача полягае у формуванш такого алгоритму, який давав би змогу вщданим генералам домовитись м1ж собою.

Вщдаш генерали повинш мати алгоритм, який гарантуватиме, що, по-перше, вс вщдаш генерали дотримуватимуться единого плану дш. Це озна-чае, що вс без винятку вщдаш генерали виконуватимуть ди суворо вщповщ-но до алгоритму, при цьому зрадники можуть поводитися як завгодно. Алгоритм мае бути таким, що задовольняе цш умов1 незалежно вщ дш зрадниюв. По-друге, невелика кшьюсть зрадниюв не може забезпечити того, що вщдаш генерали узгодять поганий план.

Розглянемо процес прийняття ршення вщданими генералами. Кожен з генерал1в спостер1гае за ворогом { передае результат сво!х спостережень решт генерал1в. Нехай у(г) - це повщомлення, яке передае 1-й генерал. Шсля цього кожен генерал якось комбшуе повщомлення v(1), ..., у(п) у план дш, де п - це загальна кшьюсть генерал1в. Для того, щоб дотримуватись единого плану дш, вщдаш генерали мають однаково з повщомлень v(1), ..., у(п) виво-дити план дш. Наприклад, якщо треба прийняти ршення про те, нападати чи т, то повщомленням у(г) може слугувати особиста думка кожного генерала щодо нападу, а план буде прийнято, базуючись на бшьшост ршень. Таким чином, якщо кшьюсть зрадниюв мала, то !м вдасться вплинути на прийняте ршення, лише якщо вщдаш генерали роздшились у сво!х думках приблизно пор1вну, але тод1 жодне з остаточно прийнятих ршень не можна назвати поганим. Проте описаний процес базуеться на припущенш, що вс генерали от-римуватимуть однаковий наб1р повщомлень у(1), ..., v(n), що може бути неправдою, осюльки зрадники можуть посилати р1зш повщомлення р1зним генералам. Для того, щоб умова щодо однаковост набору у(1), ..., у(п) виконува-лась, потр1бно, щоб кожен вщданий генерал користувався одним \ тим же набором у(1), ..., у(п) (умова 1), або, що те саме, кожш два вщдаш генерали мають користуватись одним \ тим же значенням у(г). З ще! умови випливае, що генерали не зобов'язаш використовувати значення у(г), отримане безпосе-

редньо вщ i-го генерала, оскiльки вiн може виявитись зрадником. Але, вводя-чи таку умову, ми уможливлюемо також ситуащю, коли аналогiчна недовiра може проявитись щодо повщомлення вiдданого генерала. Цього не можна допустити, тому що мала юльюсть зрадниюв може вплинути на результати голосування. Тому якщо i-й генерал вщданий, тодi повiдомлення, яке вiн вщ-силае, мае бути використано вЫма вщданими генералами як значення v(i) (умова 2). Осюльки обидвi умови стосуються повщомлення, що надсилаеться одним генералом v(i), то вихiдну задачу можна переформулювати, розгляда-ючи поведiнку командира, що розсилае наказ шдлеглим лейтенантам. При цьому вихщт умови перетворюються у:

1. Уш вiдданi лейтенанти тдкоряються однаковому наказу.

2. Якщо командир вщданий, то всi лейтенанти тдкоряються наказу, вида-ному генералом.

При цьому умова 1 випливае з умови 2, якщо командир вщданий, що в загальному випадку не обов'язково.

Ршення задачi з використанням усних поввдомлень. Покажемо те-пер, що 3m+1 генералiв можуть узгодити план за наявност серед них m зрадниюв за допомогою обмшу усними повщомленнями. Спершу треба поясни-ти, на яких припущеннях базуеться обмш повiдомленнями мiж генералами. По-перше, кожне вiдiслане повщомлення досягае адресата без змiн. По-дру-ге, отримувач повiдомлення знае, хто його вщслав. По-трете, вiдсутнiсть по-вiдомлення може бути виявлено. Першi два припущення не дають змогу зрадникам впливати на комушкащю шших генералiв мiж собою, а трете не дае змогу 1'м вiдтягувати прийняття рiшення вiдданими генералами, не поси-лаючи повiдомлень. Алгоритм прийняття ршення передбачае, що кожен з ге-нералiв мае змогу надсилати повщомлення напряму адресатам. Якщо генерал - зрадник, то вш може взагалi не вiдсилати повщомлень жодному лейтенанту, в такому разi вважатимемо, що вони вс мають вiдступити.

Визначимо алгоритм обмшу усними повщомленнями УП(т), для вЫх невiд,емних m, за допомогою якого генерал надсилае повщомлення n-1 лейтенанту. Покажемо, що алгоритм УП(т), де m - це юльюсть зрадниюв, виршуе проблему генералiв, якщо 1'хня кiлькiсть n>3m. Для доведення нам знадобить-ся також функщя majority (vj, ... vn), яка дорiвнюватиме v за умови, що бшь-шiсть з v{, яю слугують ïï аргументами, дорiвнюють v (якщо бути бшьш точ-ним, то потрiбна не одна функщя, а шмейство функцiй, для кожного з можли-вих n). Алгоритм будуемо за iндукцiею. База шдукци УП(0):

1. Генерал надсилае повщомлення кожному з лейтенантiв.

2. Кожен лейтенант використовуе значення, отримане в повщомлент, або значення мвiдступитим, якщо вш не отримав повiдомлення. Припущення шдукци: нехай юнуе алгоритм обмшу повщомленнями

УП(m1), m1 > 0. Крок iндукцiï, для УП (m), m=m1+1:

1. Генерал надсилае повщомлення кожному з лейтенанпв.

2. Для кожного i нехай vt- це повiдомлення, отримане i-м лейтенантом. Лейтенант i поводить себе як командир в алгоршм УП^-!), розсила-ючи повщомлення vt решт n-2 лейтенантам.

3. Для кожного / та ] таких, що нехай у буде повщомленням, яке лейтенант / отримуе вщ лейтенанта ] на другому крощ цього алгоритму або значення "вщступити", якщо вщповщне повщомлення лейтенант не от-римав. При цьому лейтенант / буде використовувати значення та]о-г1Гу(У1,...,Уп-1).

Лема. Для довшьних т \ к алгоритм УП (т) задовольняе умову 2, якщо кшьюсть генерал1в бшьша шж 2к+т { серед них не бшьше к зрадниюв.

Доведения. Проведемо доведення шдукщею по т. Умова 2 розглядае лише випадок, коли командир не зрадник. Оскшьки кожне вщслане повщом-лення отримуе адресат без змш, то алгоритм УП(0) працюе, якщо командир вщданий, тому лема правдива для т=0, а це \ е база шдукци. Припустимо, що умова леми виконуеться для т-1, де т>0 \ доведемо !! для т. На першому крощ вщданий командуючий вщсилае повщомлення V уЫм п-1 лейтенантам. На другому крощ кожен з вщданих лейтенанта виконують дш зпдно алгоритму УП(т) з п-1 генералом. Оскшьки за гшотезою п>2к+т, то (п-1)>2к+(т-1), тобто можна застосувати припущення шдукци, \ отримати, що вс вщдаш лейтенанти отримають у]=у вщ кожного вщданого Лейтенанта Оскшьки зрадниюв за умовою не бшьше, шж к, а також (п-1)>2к+(т-1)>2к, то бшьшють з п-1 генерал1в вщдаш. А оскшьки кожен вщданий генерал ко-ристуеться значенням У{=У для бшьшост з п-1 р1зних ¡, то !м доступна фун-кщя та]отИу(у1.,..,уп-Х)=у на крощ 3, що доводить умову 2.

Теорема. Для довшьного т алгоритм УП(т) задовольняе умовам 1 \ 2, якщо кшьюсть генерал1в бшьша за 3т, а зрадниюв серед них не бшьше, шж т.

Доведення. Проведемо шдукщею за т. Якщо зрадниюв немае, то очевидно алгоритм задовольняе обом умовам, тому припустимо, що алгоритм працюе для т-1 \ доведемо, що вш працюе для т.

Спочатку розглянемо випадок, коли командир вщданий. Беручи к=т в лем1 отримуемо, що УП(т) задовольняе другш умов1, а оскшьки командир вщданий, то автоматично \ першш. Залишаеться розглянути ситуащю, коли командир зрадник.

Оскшьки всього зрадниюв не бшьше, шж т, \ при цьому один з них командир, то серед лейтенанта е не бшьше, шж т-1 зрадник. Генерал1в всього бшьше, шж т, тобто лейтенанта бшьше, шж 3т-1, а 3т-1>3(т-1), тому ми можемо застосувати припущення шдукци для УП(т-1). Таким чином, для кожного ] будь-яю два вщдаш лейтенанти отримують однакове значення у на третьому крощ алгоритму (це випливае з умови 2, якщо один з них { е лейтенант ] { з умови 1 в шшому випадку). А оскшьки кожен з вщданих лейтенанта отримуе один { той же вектор у1,...уп-1, то { значення функци та]о-гиу(у1,...уп-1) на третьому крощ алгоритму, що доводить умову 1.

Аналiз результа^в задачг Як бачимо, для досягнення вщмовос-тшкост за умов описано! проблеми в1зантшських генерал1в необхщна, по-перше, значна надлишковють кшькост генерал1в та, по-друге, велика кшьюсть повщомлень, якими вони повинш обмшятись для досягнення згоди. 1с-нують також шш1 вхщт обмеження, яю можуть траплятись у прикладних задачах, для них { алгоритм, { потреба в надлишковост та юлькост повщом-лень можуть вщр1знятись. Наприклад, якщо припустити, що генерали володь ють мехашзмом перев1рки особи вщправника повщомлення та цшсносл дос-

тавлено1' шформаци, то можна значно скоротити кшьюсть раундiв обмiну по-вiдомленнями.

Висновки. Вщмовостшю системи - це системи, що дають змогу ix клiентам отримати бажаний результат, незважаючи на те, що в середиш системи можуть вщбуватись збоï. У робот наведено класифжащю i порiвняння можливих збоïв та проблем прийняття ршення, пов'язаних з рiзними типами збоïв. Показано, що для систем, як мають демонструвати бiльшу мiру вщмо-востiйкостi, потрiбно зазвичай використовувати значну надлишковють ком-понентiв, i не можна робити жодних специфiчниx припущень щодо характеру збоïв, як можуть вiдбутись, без модифжаци алгоритму.

Подальшi дослiдження можуть охоплювати: скорочення надлишко-востi компонентiв та кшькоси повiдомлень за умови додаткових обмежень на роботу вщмовостш^' системи, дослщження можливостi розв'язання прик-ладних задач за допомогою запропонованого алгоритму за прийнятний час, дослщження продуктивностi систем за наявностi збоïв.

Л1тература

1. Schneider, F.B. 1990. Implementing Fault-Tolerant Services Using the State Machine Approach: A Tutorial. ACM Computing Surveys 22, 4 (December). - P. 299-319.

2. Lamport, L., Shostak, R., and Pease, M. 1982. The Byzantine generals' problem. ACM TOPLAS 4, 3 (July). - P. 382-401.

3. Schneider, F.B. 1984. Byzantine generals in action: Implementing fail-stop processors. ACM TOCS 2, 2 (May). - P. 145-154.

4. Siewiorek, D.P., and Swarz, R.S. 1982. The Theory and Practice of Reliable System Design. Digital Press, Bedford, Mass. - P. 55-64.

Кутянский Д.И., Дидковская М.В. Построение стойкой к византийским сбоям системы

Проведен анализ разных видов сбоев, которые могут возникнуть при работе программных систем. Продемонстрирован общий подход к построению отказоустойчивой системы и рассмотрена одна из возможных задач проектирования отказоустойчивых систем и ее решение.

Ключевые слова: отказоустойчивость, отказоустойчивые системы, византийские сбои.

KutianskyiD.I., DidkovskaM.V. Design of Byzantine fault-tolerant system

This work analyses different types of faults which can occur in programmatic systems. General approach of design of fault-tolerant system is described. In addition, one of design problems with its solution is analyzed.

Keywords: fault-tolerance, fault-tolerant systems, Byzantine faults.

УДК331.5.024.54:004 Доц. Г.В. Прошак, канд. екон. наук -

Львiвський НУ M. 1вана Франка

1НФОРМАЦ1ЙНА СИСТЕМА УПРАВЛ1ННЯ ЛЮДСЬКИМ КАП1ТАЛОМ I ÏÏ ВИКОРИСТАННЯ В ДЕРЖАВН1Й СЛУЖБ1

ЗАЙНЯТОСТ1

Розглянуто поняття "людський каттал", його види. Проаналiзовано роботу державно'1 служби зайнятосп щодо залучення до економiчноï дiяльностi людського катталу незайнятого населення. Дослщжено особливосп шформацшно! системи уп-

i Надоели баннеры? Вы всегда можете отключить рекламу.