Міністерство освіти і науки України
Чернівецький національний університет
імені Юрія Федьковича
Факультет комп’ютерних наук
Кафедра комп’ютерних систем та мереж
НОВИЙ ПІДХІД МОДЕЛЮВАННЯ ЗАВАНТАЖЕНОСТІ SQL-СЕРВЕРІВ
482.362.70915-05 81 51-3
(курсова робота)
2007
Анотація
В пояснювальній записці подано загальний аналітичний огляд засобів аналізу трафіку, SQL-серверів та Web-серверів, які будуть використовуватися в даній роботі, опис алгоритмів функціонування класів, що були використані при розробці. Приведено повний опис вхідних та вихідних даних програми, очікуваних техніко-економічних показників.
Пояснювальна записка містить 19 сторінок друкованого тексту та 2 рисунка.
Вступ
1. Призначення та область застосування
2. Технічні характеристики
2.1 Постановка задачі на розробку програми
2.2 Опис алгоритму і функціонування програми
2.3 Опис організації вхідних та вихідних даних
2.4 Опис організації вибору технічних і програмних засобів
3. Очікувані техніко-економічні показники
Список літератури
Тема роботи “Новий підхід моделювання завантаженості SQL-серверів”.
Завдання на роботу 482.362.70915-05 51-3 затверджене на кафедрі КСМ факультету комп’ютерних наук Чернівецького національного університету. Протокол засідання кафедри КСМ №1 від 28 серпня 2006 року.
1. Призначення та область застосування
З самого початку розвитку обчислювальної техніки утворилися два основних напрямки її використання. Перший напрямок – застосування обчислювальної техніки для виконання чисельних розрахунків, які доводилось робити занадто довго або взагалі неможливо виконати вручну. Становлення цього напрямку сприяло інтенсифікації методів чисельного рішення складних математичних задач, розвитку класу мов програмування, орієнтованих на зручний запис чисельних алгоритмів.
Другий напрямок – це використання засобів обчислювальної техніки в автоматичних або автоматизованих інформаційних системах. У самому широкому змісті інформаційна система являє собою апаратно-програмний комплекс, функції якого складаються в підтримці надійного збереження та обробки інформації в пам’яті комп’ютера, виконанні специфічних для додатків перетворень інформації або обчислень, наданні користувачам зручного і простого інтерфейсу.
Звичайно об’єми інформації, з якими приходиться мати справу таким системам, досить великі, а сама інформація має досить складну структуру. Класичними прикладами інформаційних систем є банківські системи, системи резервування авіаційних або залізничних квитків, місць у готелях та ін.
Інформаційні системи головним чином орієнтовані на збереження, вибір і модифікацію постійно існуючої інформації. Структура інформації найчастіше дуже складна, і хоча структури даних різні в різних інформаційних системах, між ними часто буває багато загального. На початковому етапі використання обчислювальної техніки для керування інформацією проблеми структуризації даних вирішувалися індивідуально в кожній інформаційній системі. Прагнення виділити й узагальнити загальну частину інформаційних систем, відповідальну за керування складно структурованими даними являлось першою спонукальною причиною створення СКБД.
В даній роботі здійснена спроба реалізувати модуль відображення завантаженості мережі, який відображає в графічному вигляді завантаженість локальної мережі між Web та SQL серверами. Обчислення даних завантаженості проводиться в період проведення визначеного користувачем тесту. Модуль можна використовувати в системі тестування для найрізноманітнішого відображення інформації у вигляді графіків, діаграм тощо. Модуль забезпечує більш зручний збір інформації про проведений системою тест.
В даній дипломній роботі необхідно розробити сукупність класів, які б забезпечували об’єднання двох елементів(системи тестування та програми-аналізатора трафіку), для подальшого графічного відображення завантаженості мережі. При постановці задачі було проведено деякі обмеження, які включали в себе:
- Структура, принципи функціонування, взаємозв’язок між класами системи тестування SQL-серверів відома.
- Для отримання даних про вхідний та вихідний трафік використати одну з зовнішніх безкоштовних програм.
- Здійснювати відображення вхідного, вихідного та загального трафіку в текстовому та графічному вигляді.
- Обмеження при виборі Web-сервера, яке призначене для огляду тих Web-серверів, котрі найбільш повно реалізують можливості мови програмування Java.
Аналіз даних обмежень наведено в наступних розділах.
Опис алгоритму роботи структури класів буде включати опис наступних елементів:
· Алгоритм роботи класу MyChart2.
· Алгоритм роботи класу ChartServlet.
· Алгоритм роботи класу ParseData.
Клас MyChart призначений для встановлення початкових параметрів для відображення, генерації об’єкту малюнку з вміщеними в нього даними та переправлення його для подальшої обробки.
У відповідності до цього, в даному класу існує 4 функції, які призначені для реалізації вищевказаних функцій.
Функція produceChart одна з основних, і призначена для визначення інтервалу часу, протягом якого проводився деякий тест, та подальшого виклику функції createChart.
Функція createChart призначена для створення графічних елементів вікна, які необхідні для графічного відображення сітки координат, а також самої кривої. Додаткові функції setTime та setColor призначені для встановлення внутрішніх змінних та полів класу, які необхідні для роботи класу.
Рис. 2.1 Алгоритм роботи функції produceChart.
Під час обробки даних про час відбувається розклад даних про точку початку та точку закінчення проходження тесту. В подальшому проводиться встановлення параметрів малювання графіку таких, як колір лінії та кількість ліній на графіку.
Після встановлення всіх необхідних параметрів відбувається виклик функції createChart, яка проведе генерацію графіку по заданих даних, після чого, графік буде повернуто у точку виклику. Вказана точка виклику знаходиться в класі ChartServlet.
Даний клас призначений для виконання послідовних дій для отримання графіка завантаженості, та виводу даного графіку у вигляді малюнку на HTML-сторінці. Послідовність дій, які виконує даний сервлет включає в себе:
1. Визначення з параметрів запиту тип графіку, який необхідно вивести користувачу.
2. Запуск класу, що отримує початкові параметри для відображення для заданого типу графіку з xml-файлу.
a) створення екземплярів класів, які необхідні для розбирання xml-файла;
b) створення класів для читання атрибутів;
c) пошук атрибутів для вхідного типу класу;
d) повернення атрибутів викликаю чому об’єкту.
3. Обробка початкових параметрів.
4. Створення екземпляру класу MyChart2.
5. Збереження отриманого графіку в тимчасовій директорії у вигляді файлу.
6. Передача файлу користувачу.
7. Знищення тимчасового файлу графіку.
Для спрощення внесення змін або обновлення параметрів відображення графіків, добавлення нових типів графіків тощо, використовується xml-файл. Приклад вказання параметрів для типу графіка, що буде відповідати за відображення вхідного завантаження мережі буде мати вигляд:
. . .
<chart
id="MyChart2"
class="Additional.MyChart2"
width="780"
height="480"/>
. . .
Проте, вищеописані класи працюють з вже існуючою інформацією про координати точок графіка. Ці створення цих часових залежностей і призначений клас ParseData. Робота класу заключається в обробці даних лог-файлу, який створюється зовнішньою програмою аналізу трафіку. При цьому в класі здійснюється обробка тільки тих рядків файлу, які відповідають нашому заданому періоду тестування. Це дозволяє проводити обробку лог-файлу одночасно з внесенням змін в нього самою програмою-аналізатором.
При проведенні аналізу переданих даних, клас ParseData проводить також аналіз даних, які вказують на те, які дані були передані - вхідні (вхідний трафік) чи вихідні (вихідний трафік). Після цього відбувається перерозподіл даних згідно їх приналежності до однієї з трьох структур:
a) серії вхідного трафіку;
b) серії вихідного трафіку;
c) серії загального трафіку.
Рис. 2.2. Алгоритм роботи методу equalsDate класу ParseData.
При виборі організації вхідних даних розглядалися різні способи їх представлення. Однак найоптимальнішим вибором вхідних даних буде розміщення цих даних у вигляді конфігураційних файлів типу xml. Це дозволить підвищити простоту зміни конфігурації відображення графіків. При цьому робота програми залишиться сталою, і зменшиться вплив зовнішніх даних на сам процес тестування та формування результатів проведених тестів.
Ще один тип вхідних даних – вихідні дані програми-аналізатора мереженого трафіку. Ці дані представляються у вигляді текстового файлу з наступним форматом рядків:
a) дата створення запису - 11.06.2007;
b) час створення запису - 22:30:31:;
c) хто надіслав дані та номер порту – comp1:445;
d) кому передано дані і номер порту - myadmin.atpi.group:2630;
e) кількість інформації - 1514 bytes;
f) версія протоколу - protocol: 6.