системи і тим самим дозволити одночасно працювати великій кількості користувачів. З точки ж зору самої архітектури ІС, використання термінального серверу не вносить нічого нового, тому що усередині інформаційної системи ми як і раніше маємо взаємодія файл-серверного типу.
Для побудови інформаційних систем з великою кількістю користувачів застосовується інша архітектура. Ця архітектура базується на використанні серверів баз даних. Особливістю серверів баз даних полягає в їх здатності виконувати спеціальні запити до даних. Мова запитів влаштований таким чином, що одна команда цієї мови може містити в собі безліч елементарних операцій над даними. Таким чином можна значно знизити мережевий трафік, а для збільшення продуктивності інформаційної системи буде потрібно збільшення продуктивності тільки сервери баз даних. Крім цього сучасні сервера баз даних дозволяють зберігати на стороні сервера програмні модулі (збережені процедури, тригери та ін), які по команді з боку користувача (клієнта) можуть бути запущені на виконання. В результаті, з'являється реальна можливість виконувати на стороні сервера не тільки обробку даних (див. Малюнок 1.1), а й інші дії. Тепер, знову подивившись на малюнок 1.1 ми бачимо, що програмне забезпечення ІС може бути реально, а не умоглядно, розділене на дві половини. На стороні користувача теоретично може залишитися тільки ПО, відповідає за інтерфейс користувача. Така побудова архітектури ІС, коли програмне забезпечення ділиться на дві половини між користувальницьким комп'ютером і сервером баз даних називають технологій "клієнт-сервер", а архітектура ІС - клієнт-серверної. Клієнт, у якому реалізований тільки користувача інтерфейс називається тонким клієнтом, в іншому випадку клієнт називається товстим.
Зауваження.
Інформаційні системи, побудовані з централізованого принципом, називають також банками даних. Таким чином, і файл-серверні і клієнт-серверні інформаційні системи можна формально назвати банками даних.
Важливим плюсом використання серверів баз даних є можливість вбудувати розвинену систему безпеки сервера в систему безпеки інформаційної системи. Зокрема сервера баз даних дозволяють чітко розмежувати доступ різних користувачів до об'єктів інформаційного сховища, журналіровать всі дії вироблені користувачем, інтегрувати систему безпеки ІС з системою безпеки комп'ютерної мережі і т.д.
Клієнт-серверні ІС можна розділити на два класи:
Інформаційні системи, що не використовують програмні модулі на стороні сервера баз даних. Серед серверів баз даних ще зустрічаються екземпляри, які не підтримують використання збережених процедур і тригерів. До таких, зокрема, до останнього часу ставилася така СУБД як MySQL. У таких системах запит повністю формується на стороні клієнта, а потім передається для виконання на сервер.
Інформаційні системи, використовують програмні модулі на стороні сервера баз даних. В якості таких програмних модулів в першу чергу використовуються збережені процедури і тригери. Зазвичай програмні модулі на стороні сервера пишуться на мові, що є розширенням мови SQL, але допускається також підключення виконуваних модулів.
Інформаційна система, побудована за технологією клієнт-сервер, називається ще дворівневої інформаційної системою. Інформаційні ж системи файл-серверного типу можна таким чином назвати однорівневими або монолітними.
В
Рис.1.2 Трирівнева архітектура інформаційної системи
Кількість рівнів (шарів) програмного забезпечення може бути більше двох. Так в електронній мережі Інтернет інформаційні системи будуються у вигляді трирівневої системи (див. Малюнок 1.2). В якості клієнта в більшості випадку виступає звичайний web-браузер. Програмне забезпечення на стороні web-сервера служить посередником між клієнтом і сервером баз даних. Оскільки з самого сервера баз даних можна звертатися із запитами до інших серверів, то теоретично може бути побудована система, що має більш ніж три рівні. Можливо також відділення коду обробки даних від самих даних. Відокремлений, таким чином код, поміщається на так званий сервер додатків. Виділення сервера додатків збільшує мережевий трафік, але зате дозволяє більш ефективно управляти системою.
Кілька слів варто сказати і про інфраструктуру ІС.
Визначення.
Під інфраструктурою інформаційної системи будемо розуміти все те, що забезпечує її безперебійне функціонування.
Таким чином, до інфраструктури слід віднести: системне та мережеве програмне забезпечення, комп'ютери, мережеве обладнання, інші необхідні для функціонування ІС периферійні пристрої, засоби зв'язку, електро-, тепло-та водопостачання, кондиціонери, приміщення, обслуговуючий персонал, додаткове обладнання, необхідне для роботи персоналу.