Студопедия  
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Доступ до СУБД через Web-сервер

Читайте также:
  1. A. Диффузия с помощью переносчика, диффузия через поры.
  2. D. Это объем жидкости, протекающий через сечение трубы в единицу времени;
  3. D.S. ингаляционно во время присупа. 1-2 дозы, при необходимости- повторить через 20-30 мин.
  4. I) обеспечения того, чтобы процедуры, помещения и материалы для голосования были подходящими, доступными и легкими для понимания и использования;
  5. WEB-сервер - назначение, основные функции, программная реализация, конкретные примеры
  6. А) через ЖКТ
  7. Большая проникающая способность через поверхность кожи.
  8. В) Розрахунки при вираженні концентрацій через титр по визначуваній речовині.
  9. Варіант 1. Н. вдалося переправити через кордон України дану літературу та розклеїти їх на дошках оголошень.
  10. Власть, основанная на вознаграждении, оказывает влияние через положительное подкрепление подчиненного с целью добиться от него желаемого положительное поведения.

Веб-се́рвер (англ. Web Server) — це сервер, що приймає HTTP-запити від клієнтів, зазвичай веб-браузерів, видає їм HTTP-відповіді, зазвичай разом з HTML-сторінкою, зображенням, файлом, медіа-потоком або іншими даними. Веб-сервер — основа Всесвітньої павутини.

Веб-сервером називають як програмне забезпечення, що виконує функції веб-сервера, так і комп'ютер, на якому це програмне забезпечення працює.

Клієнти дістаються веб-сервера за URL-адресою потрібної їм веб-сторінки або іншого ресурсу.

Систе́ма керування ба́зами да́них (СКБД) — комп'ютерна програма чи комплекс програм, що забезпечує користувачам можливість створення, збереження, оновлення, пошук інформації та контролю доступу в базах даних.

Основні характеристики СКБД

-Контроль за надлишковістю даних

-Несуперечливість даних

-Підтримка цілісності бази даних (коректність та несуперечливість)

-Цілісність описується за допомогою обмежень

-Незалежність прикладних програм від даних

-Спільне використання даних

-Підвищений рівень безпеки

Зазвичай такі проблеми вирішуються з допомогою телекомунікаційних технологій та клієнт/сервер. Що стосується доступу користувачів до віддалених баз даних, то зупинимось на цьому питанні більш детально. Зокрема SQL-технології забезпечують віддалений доступ до баз даних.

Центром будь-якої бази даних є її прикладна частина, що складається із сервера БД, джерел даних та мережевого програмного забезпечення для підключення клієнта в мережу. Як ми визначали раніше сьогодні поширеними та ефективними є наступні сервери БД: Oracle, Informix, Sybase, Interbase тощо. Сервер БД створюється на робочому місці адміністратора БД, а клієнти отримують відповідний доступ до таблиць, згідно з посадовими обов'язками та своїм статусом.

Інтерфейсна частина — це програмне забезпечення, що використовується на робочому місці користувача, тобто певна складова частина автоматизованої системи, яка розроблена для вирішення проблем даного користувача. Даний А РМ чи комплекс програм може бути розроблений будь-яким розробником на різних мовах програмування, як наприклад: C++, Паскаль, Delphi, Visual]++ тощо.

Розглянемо процес взаємодії прикладної та інтерфейсної частин рис.5.12. Прикладна частина розміщується на сервері разом з даними БД. Користувачами прикладної частини БД є адміністратори БД, програмісти - розробники автоматизованих систем, аналітики, системні адміністратори. Інтерфейсна частина розміщується на комп'ютерах кінцевих користувачів, а саме операторів введення даних, бухгалтерів, операціоністів, фінансистів, економістів тощо.

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

Технологія ODBC (Open Database Connectivity - відкритий інтерфейс доступу до бази даних) забезпечує можливість доступу до віддалених баз даних з допомогою відповідного драйвера. Драйвер ODBCвикористовується інтерфейсною частиною для отримання доступу до віддаленої бази даних, шляхом забезпечення передачі запиту до БД і повернення результату його виконання.

Сьогодні ODBC - технологія є стандартом, що використовується багатьма виробниками програмного інструментарію та їх програмними продуктами, зокрема такими як Delphi, PowerBuilder, Visual C++, FoxPro,

Деякі виробники СУБД пропонують свої унікальні відкриті і досить потужні засоби підключення до віддалених баз даних. Наприклад корпорація Oracle пропонує для підключення до віддалених баз даних свій унікальний продукт Net8, який може використовуватись з будь-яким мережевим протоколом, зокрема з основними TCP/IP, OSI, SPX/IPX тощо і може працювати під управлінням пошерених операційних систем.

Сьогодні також поширений доступ до віддалених баз даних з допомогою Web-технології. В даному випадку всі запити до бази даних направляються через Web-сервер. Кінцевий користувач ініціює доступ до віддаленої БД з допомогою Web-броузера, що забезпечує зв'язок по заданій в інтернеті IP-адресі з потрібним Web-сервером рис.5.13. Web-сервер перевіряє ім'я користувача і пароль надає запит СУБД, яка теж може запитати реквізити доступу до БД. Потім сервер БД поверне результати запиту Web-серверу, який відобразить їх у вікні Web-броузера користувача.

Слід зазначити, що використання Web-технології для доступу до баз даних має забезпечити надійний захист інформаційних потоків. Це досягається створенням брандмауерів - апаратно-програмних систем міжмережевого захисту від несанкційованого доступу до сервера.

Рис.5.13. Доступ до віддаленої бази даних з допомогою Web - технології.

1.1.57. Технології розподілених обчислень

Розподі́лені обчи́слення (розподілена обробка даних) — спосіб розв'язання трудомістких обчислювальних завдань з використанням двох і більше комп'ютерів, об'єднаних в мережу.

Розподілені обчислення є окремим випадком паралельних обчислень, тобто одночасного розв'язання різних частин одного обчислювального завдання декількома процесорами одного або кількох комп'ютерів. Тому необхідно, щоб завдання, що розв'язується було сегментоване — розділене на підзадачі, що можуть обчислюватися паралельно. При цьому для розподілених обчислень доводиться також враховувати можливу відмінність в обчислювальних ресурсах, які будуть доступні для розрахунку різних підзадач. Проте, не кожне завдання можна «розпаралелити» і прискорити його розв'язання за допомогою розподілених обчислень.

Парале́льні обчи́слювальні систе́ми — комп'ютерні системи, що реалізовують тим або іншим способом паралельну обробку даних на багатьох обчислювальних вузлах для підвищення загальної швидкості розрахунку. Ідея розпаралелювання обчислень базується на тому, що більшість завдань можуть бути розділені на набір менших завдань, які можуть бути вирішені одночасно. Зазвичай паралельні обчислення вимагають координації дій. Якщо при обчисленні не застосовуються циклічні (що повторюються) дії, то N обчислювальних модулів ніколи не виконають роботу в N разів швидше, ніж один єдиний обчислювальний модуль.

Наприклад, для швидкого сортування масиву на двопроцесорній машині можна розділити масив навпіл і сортувати кожну половину на окремому процесорі. Сортування кожної половини може зайняти різний час, тому необхідна синхронізація.

Якщо з БД працюють одночасно декілька користувачів, то в цьому випадку СУБД повинна забезпечувати коректну паралельну роботу всіх користувачів над одними і тими ж даними. Розрізняють розподілену обробку і розподілені БД.

Розподілена обробка - це обробка з використанням централізованої бази даних, доступ до якої може виконуватись з різних комп'ютерів мережі. Ця топологія часто називається "клієнт-сервер". В цій системі одні вузли - клієнти, а інші - сервери.

Сервер - комп'ютер, який надає деякі послуги іншим комп'ютерам, обмін повідомленнями з якими здійснюється за допомогою мережі, що їх з'єднує. Послуги полягають у наданні комп'ютеру, який звертається, ресурсів сервера (файлів, обчислювальних ресурсів і т.ін.) шляхом виконання вказаної програми і видачі результатів її роботи.

Клієнт - це процес, який посилає запит на обслуговування.

Розподілена база даних - це набір логічно зв'язаних між собою роздільних даних і їх описів, які фізично розподілені в деякій комп'ютерній мережі.Розподілена СУБД, в якій управління кожним із вузлів виконується зовсім автономно називається мультибазовою системою.

Розподілена СУБД - це програмна система, яка призначена для управління розподіленими базами даних і яка

забезпечує прозорий доступ користувачів до розподіленої інформації.

Якщо всі вузли розподіленої системи використовують той самий тип СУБД, то така система називається гомогенною. Якщо вузли розподіленої системи використовують різні типи СУБД, які обробляють різні моделі даних, то така система називається гетерогенною.

Управління паралельною обробкою

В багатокористувацьких системах з БД одночасно можуть працювати декілька користувачів або прикладних програм. Для збереження цілісності даних і забезпечення безпеки БД в цих умовах застосовуються транзакції, які забезпечують роботу кожного користувача з узгодженим станом БД.

Транзакція - неподільна з точки зору впливу на БД послідовність операторів маніпулювання даними, яка розглядається СУБД як єдине ціле. Або транзакція успішно

виконується, і СУБД фіксує зміни БД, які були зроблені цією транзакцією, у зовнішній пам'яті, або, у разі невдачі, жодна зміна не відображається на стані БД. Транзакція розглядається як логічна одиниця роботи з БД. Для того, щоби використання механізмів обробки транзакцій дозволило забезпечити цілісність даних й ізольованість користувачів, транзакція повинна мати такі властивості: атомарність (Atomicity), узгодженість (Cosistency), ізольованість (Isolation), довготерміновість (Durability). Транзакції, які мають ці властивості називаються ACID-транзакціями. Властивості транзакції означають таке:

- атомарність означає, що транзакція виконується, як єдина операція доступу до БД і виконується або повністю або не виконується зовсім;

- узгодженість гарантує взаємну цілісність даних, тобто виконання обмежень цілісності БД після завершення роботи транзакції;

- ізольованість означає, що транзакції, які конкурують за доступ до БД, фізично обробляються послідовно, ізольовано одна від одної, але для користувачів це виглядає так, ніби вони виконуються паралельно;

- довготерміновість означає, що коли транзакція виконана успішно, то всі зміни, які вона зробила в даних, не будуть втрачені ні за яких обставин.

Для обробки паралельних транзакцій застосовується серіалізація транзакцій і метод тимчасових міток.

Серіалізація транзакцій - процедура, яка забезпечує підтримку незалежного виконання трансакцій. Це означає, що дія двох паралельно діючих транзакцій буде така сама, як і їх послідовна дія: спочатку перша, а потім друга, або навпаки - спочатку друга, а потім перша. У ході виконання транзакції користувач бачить тільки узгоджені дані і не бачить неузгоджених проміжних даних. Для підтримки паралельної роботи складається спеціальний план.

1.1.58. Обчислювальні кластери

Кла́стер — це декілька незалежних обчислювальних машин, що використовуються спільно і працюють як одна система для вирішення тих чи інших задач, наприклад, для підвищення продуктивності, забезпечення надійності, спрощення адміністрування тощо. Обчислювальний кластер потрібен для збільшення швидкості обрахунків за допомогою паралельних обчислень.

Кластери використовуються в обчислювальних цілях, зокрема в наукових дослідженнях. Для обчислювальних кластерів істотними показниками є висока продуктивність процесора в операціях над числами з плаваючою точкою (flops) і низька латентність об'єднує мережі, і менш істотними - швидкість операцій введення-виведення, яка більшою мірою важлива для баз даних та web-сервісів. Обчислювальні кластери дозволяють зменшити час розрахунків, порівняно з одиночним комп'ютером, розбиваючи завдання на паралельно виконувані гілки, які обмінюються даними по зв'язуючій мережі. Одна з типових конфігурацій - набір комп'ютерів, зібраних із загальнодоступних компонентів, з встановленою на них операційною системою Linux, і пов'язаних мережею Ethernet, Myrinet, InfiniBand або іншими відносно недорогими мережами. Таку систему прийнято називати кластером Beowulf.

Спеціально виділяють високопродуктивні кластери (Позначаються англ. абревіатурою HPC Cluster' High-performance computing cluster ).

Обчислювальні кластери

Обчислювальний кластер - це набір вузлів, призначених для вирішення розподілених задач в паралельному режимі, з продуктивністю в сотні мільярдів операцій в секунду. Кожен обчислювальний вузол має свою оперативну пам'ять і працює під керуванням своєї операційної системи.

Вузли об'єднані високопродуктивної комунікаційною мережею, що володіє мінімальними затримками і широкою смугою пропускання інформації.

Виконувані на кластері додатка повинні бути адаптовані для використання в кластерному оточенні, щоб отримати переваги по продуктивності.

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

Обчислювальний кластер на основі Unix-подібних систем

Багато з існуючих у світі обчислювальних кластерів працюють під управлінням операційних систем сімейства UNIX. Серед них є як вільно поширювані системи, так і комерційні системи.

Використання UNIX-платформ може дати цінові переваги у вигляді оптимізації початкових витрат на придбання програмного забезпечення і реалізувати максимальну продуктивність. Крім цього, частина спеціалізованого програмного забезпечення для обчислювальних кластерів працює тільки на UNIX-платформах.

 

Поєднання продуктивності і наявності гарантій вирішення проблем, отримання необхідних оновлень і виправлень робить комерційні UNIX-платформи оптимальним вибором для побудови високопродуктивних кластерів. Важливим чинником є ​​ретельний підбір компонентів і тестування на сумісність з конкретними версіями операційних систем: дорогі і високотехнологічні компоненти повинні пройти ретельне попереднє тестування і перевірку на продуктивність.

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

Обчислювальний кластер на базі Microsoft HPC Server 2008

Обчислювальні кластери на базі Windows HPC Server 2008 підвищують ефективність роботи користувачів і полегшує завдання адміністратора кластера. Дане рішення дозволяє досягти максимальної продуктивності роботи з HPC-системами за рахунок інтеграції з іншою інфраструктурою організації, а також збільшити швидкість обчислень на 30% в порівнянні з попередньою версією рішення - Windows Compute Cluster Server 2003.

Повністю 64-розрядна архітектура і вдосконалені протоколи обміну інформацією разом з зручними інструментами управління та моніторингу, механізмом створення сценаріїв командного рядка дають широкі перспективи використання кластерної платформи Microsoft HPC Server 2008. Наявність стандартних інструментів по розробці додатків в Microsoft Visual Studio 2008 дозволяє здійснювати розробку додатків набагато швидше з повною гарантією інтеграції.

Кластер для розрахунку тривимірних моделей і сцен

Такі популярні пакети по створенню тривимірної графіки, як 3dMax і Maya, можуть знадобитися значні обчислювальні ресурси для рендеринга сцен і моделей. C наростанням складності тривимірних сцен і об'єктів стали актуальні системи, які дозволяють розподіляти обчислення по декільком вузлам і значно скорочувати час на рендеринг.

Реалізація розподілених обчислень можлива з використанням функцій, вбудованих вбазові програмні продукти, з використанням додаткових модулів і використанням спеціалізованих систем із застосуванням центрального керуючого сервера. Для кожного завдання проводиться аналіз існуючих апаратних потужностей, включаючи використовуються робочі станції, а також на підставі потреб і запланованого бюджету виробляється варіант розподіленої обчислювальної ферми.

Обчислювальний кластер даного типу не є виділеним ресурсом, і кожен вузол використовується як робоче місце дизайнера. Важливим фактором у побудові кластера є апаратна ідентичність обчислювальних вузлів і пропускна здатність локальної мережі, інакше можна зіткнутися з істотним зниженням продуктивності.

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

Керуюче програмне забезпечення дозволяє задавати пріоритети кожного завдання рендеринга з можливістю прорахунку декількох десятків сцен послідовно або одночасно. Можливе виконання завдань мережевого рендерінга в нічні години та вихідні дні з максимальним пріоритетом, в той час як в бізнес-годинник пріоритет може бути менше для зниження впливу прорахунку сцен на роботу співробітників. Чим більше комп'ютерів знаходиться в обчислювальної мережі, тим менше часу потрібно на прорахунок сцен і моделей.




Дата добавления: 2015-01-30; просмотров: 38 | Поможем написать вашу работу | Нарушение авторских прав

1 | <== 2 ==> | 3 | 4 |


lektsii.net - Лекции.Нет - 2014-2024 год. (0.013 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав