y">. Система: розглядаються сукупність елементів та їх взаємодію.
Технологія клієнт-сервер дозволяє підвищити продуктивність праці:
скорочується загальний час виконання запитів за рахунок потужного сервера;
зменшується частка і збільшується ефективність використання клієнтом (для обчислень) центрального процесора;
зменшується обсяг використання клієнтом пам'яті свого комп'ютера;
скорочується мережевий трафік.
До таких великомасштабним систем пред'являються такі вимоги:
) гнучкість структури;
) надійність;
) доступність даних;
) легкість обслуговування системи;
) масштабованість додатків;
) переносимість додатків (на різні платформи);
) багатозадачність (можливість виконання багатьох додатків).
Відзначимо, що архітектурі клієнт-сервер передувала архітектура файл-сервер, в якій можливі такі варіанти.
. На комп'ютерах-клієнтах є копія БД. Робота за таким варіантом має наступні складності: синхронізація даних різних копій в кінці роботи БД; високий трафік (потоки даних між сервером і клієнтами, оскільки передається в будь-якому випадку вміст всієї БД).
. У СУБД Access, яка спочатку створена як локальна, передбачений режим поділу бази даних. Таблиці залишаються на сервері (back-end), а решта об'єктів (запити, звіти) передаються клієнтам (front-end). У цьому випадку, як і раніше великий трафік, в силу чого при використанні файл-серверів кількість підключаються клієнтів - при їх надійній роботі - до чотирьох.
У той же час було потрібно підключення десятків і навіть сотень клієнтів [1-3]. Цього вдалося досягти в архітектурі (режимі, технології) клієнт-сервер. У цьому режимі трафік різко зменшується, оскільки по мережі передаються тільки ті дані, які відповідають запитам клієнтів [2].
Для цього довелося побудувати СУБД, спочатку призначені для роботи в мережі. Фірма Microsoft змушена була - на додаток до СУБД Access, яка використовувалася за допомогою програми ODBC тільки для клієнтських цілей - запропонувати в якості сервера Microsoft SQL Server. Така структура виявилася великовагової і незручною, оскільки розробнику турбувалися знати вже два СУБД.
З інших пропозицій дуже вдалим виявився програмний продукт Delphi, в рамках якого можуть використовуватися СУБД dBase, Paradox, і, при окремій інсталяції, InterBase (режим клієнт-сервер). При цьому СУБД InterBase підтримується, поряд з мовою програмування SQL, потужним, зрозумілим, простим і широко поширеним мовою програмування (Object) Pascal, побудованим із застосуванням об'ектно¬оріентірованного підходу.
Остання обставина дозволяє легко будувати об'єктно-ре¬ляціонние бази даних. Високий ступінь автоматизації програмування дає можливість різко спростити і знизити трудомісткість процедур створення інтерфейсу користувача, і особливо алгоритму програми.
В системі клієнт-сервер можливо виділити наступні складові: сервер, клієнт, інтерфейс між клієнтом і сервером, адміністратор.
Сервер здійснює управління спільним для безлічі клієнтів ресурсом. Він виконує наступні завдання:
управляє загальної БД;
здійснює доступ і захист даних, їх відновлення;
забезпечує цілісність даних.
До БД на сервері пред'являються ті ж вимоги, як і до цент¬ралізованной багатокористувацької БД.
Слід зазначити, що результати запитів клієнта поміщаються в робочу область пам'яті сервера, яка в ряді СУБД (наприклад, Oracle) називають таблична область raquo ;. Оскільки вона не займає багато місця, для кожного клієнта-користувача доцільно створювати свою табличну область. У цьому випадку вихідні таблиці стають для користувача недоступними, а архівація (копіювання) БД додатку клієнта спрощується.
Клієнт зберігає в комп'ютері свої додатки, за допомогою яких здійснюється запит даних на сервері. Клієнт вирішує наступні завдання:
надає інтерфейс користувачу;
управляє логікою роботи додатків;
перевіряє допустимість даних;
здійснює запит та одержання даних з сервера.
Засобом передачі даних між клієнтом і сервером є мережа (коаксіальний кабель, вита пара) з мережевим (мережева операційна система - СОС) і комунікаційним програмним забезпеченням.
В якості СОС можуть використовуватися Windows NT, NovellNetWare. Комунікаційне програмне за...