|
|
|
сделать стартовой | добавить в избранное |
Компьютеры, Программирование
Программирование, Базы данных
Скорость обработки запросов на SQL серверах |
МІНІСТЕРСТВО ОСВІТИ УКРАЇНИ КИЇВСЬКИЙ УНІВЕРСІТЕТ ІМЕНІ ТАРАСА ШЕВЧЕНКА Факультет кібернетики Кафедра теоретичної кібернетики ВИПУСКНА КВАЛІФІКАЦІЙНА РОБОТА БАКЛАВРА На тему : Швидкість обробки запитів на SQL-серверах Виконавець: студент 4 курсу Дима Павло Костянтинович Науковий керівник : ассистент Коваль Ю.В. Випускна кваліфікаційна робота бакалавра Рекомендована до захисту в ДЕК Протокол № 10, від “25” травня 2000 р. Зав.кафедри проф. Белов Ю.А м Київ - 2000 ЗМІСТ 1.Вступ . .2 2.Швидкість роботи SQL сервера .5 2.1 Технологія DAO . 6 2.2 Технологія ODBC . 6 2.3 JSCRIP .7 3. Результати тестування. .17 Висновок .21 Список використаної літератури .22 Частина 1 : ВСТУП У світі сучасних інформаційних технологій особливо виділяє-ться всесвітня мережа I er e . Опорним елементом в цій мережі є сервера баз данних. Саме на сервері зберігається інформація до якої можуть отримати доступ користувачі. При роботі користувача з базою данних в I er e , він посилає запит до бази даннихю цей запит сформовано за правилами мови SQL (S ruc ured Query La guage) – мова структурованих запитів. В мережах використовуються такі SQL–сервера як Oracle, Microsof SQL Server, Sybase, dbase, I formix, Progress та інші. Як приклад SQL – сервера візьмемо Microsof SQL Server 7.0 . Система MS SQL Server - це багаторівнева система обміну данними від клієнта до сервера, дозволяє створювати і підтримувати бази данних. На відіну від бази данних орієнтованих на великі комп”ютери та міні-комп”ютери, до серверної бази данних користувачі отримують доступ зі своїх комп”ютерів, а не з допомогою терміналів. При цьому механізми роботи SQL-сервера допомагає розв”язувати проблеми, що виникають у результаті звернень до бази данних багатьох комп”ютерів, кожен з яких може незалежно звертатись до різних частин бази данних, що зберігається на сервері. Зв”язок системи клієнт/сервер з комп”ютерами-клієнтами забезпечу-ється через засоби передачі данних і базової операційної системи. Для цього система клієнт/сервер MS SQL Server 7.0 використовує вбудовані компоненти ОС Wi dows . Серверна СУБД MS SQL Server 7.0 добавляє до мережевих компонент окремі елементи сервіса, такі як OLE-DB відповідає за зв”язок та упровадження об”єктів баз даних і ODBC - відкритий інтерфейс баз даних. Ці компоненти забезпечують тісний зв”язок необхідного програмного забезпечення. SQL Server 7.0 має багато інструментів, призначених для розробки зовнішнього інтерфейсу бази даних. Окрім мови SQL для зберігання, вибірки данних можна викоритовувати додатки з графічним інтерфейсом користувача GUI. Це дуже спрощує розробку баз даних, таблиць і зв”язків між ними. Зручно використовувати SQL Server разом з програмами для роботи в I er e . Центральним компонентом системи SQL Server є реляційна база даних та її структура. В реляційній базі даних інформація представляється в вигляді рядків та стовбців. Рядки не впорядковані, крім випадку, коли для таблиці створюється кластерний індекс. Сама структура операторів запитів, з допомогою яких проходять виборка даних з рядків таблиці, не залежить від того впорядковані рядки чи ні.
Частина 2 : ШВИДКІСТЬ РОБОТИ SQL SERVER 7.0 В процесі роззвитку SQL Server при розробці клієнтських додатків використовувалось декілька підходів. Ядром системи завжди був процессор обробки запитів, який працював на сервері. Запити писались на мові SQL вводились і опрацьовувались через утіліти типу Query A alyzer. При написанні програмних додатків для взаємодії з SQL Server частіше за усе використовують : DB-Library ODBC і DAO DB-Library являє собою специфічний для SQL Server інтерфейс прикладних програм . Він є менш зручний ніж ODBC, для переносу програмного додатку в іншу серверну систему але з точки зору працездатності він реалізовує самий швидкий доступ до інформації. Це забезпечується не тільки тим, що він надає оптимізований інтерфейс API, але використовує в програмах особисту мову системи SQL Server. ODBC (як і SQL-OLE ) надають такий же рівень сервісу але створюють додатковий рівень абстракції між додатком і та процессором запитів SQL Server . В DB-Lib не підтримується зв”язок таблиць або автоматичного оновлення значень. Це можна розглядати як позитив оскільки гарантується повний контроль над взаємодією програмного додатку з сервером і оптимізацією зв”язків. Додатково програмісту додається повний контроль над виявденням і обробкою помилок, пов”язаних з транзакціями. 2.1 ТЕХНОЛОГІЯ DAO (Da a Access Objec – об”єкти доступу до данних) приззначена для викоритання об”єктів, методів, властивотей, значно полегшшують роботу програмного додатку з базою даних. Для обміну інформацією з SQL сервером в об”єктах DAO викоритову-ються рівні дотупу Je і ODBC, одна вони утворюють ще один рівень абстракції між додатками і викликами функцій ODBC, які використовуються при обробці запитів. Технологія DAO для роботи з базами даних, таблицями, видами передбачає викоритання коллекцій об”єктів. Наприклад для створення нової таблиці легше викликати метод Add відповідного об”єкта, між використовувати стандартний підхід технології ODBC. При роботі з базою даних можна використати стандартний підхід для доступу до майже будь-якого сховища даних, що підтриимується засобоми ODBC. Але треба відмітити, що технологія DAO поступово витісняється більш прогресивною технологією ADO(Ac iveX Da a Objec – об”єкти данх Ac iveX ) . 2.2 ТЕХНОЛОГІЯ ODBC З метою можливого встановлення зв”язку з різними СУБД фірмою Microsof була розроблена технологія ODBC . Вона забезпечує створення додаткового рівня абстракції між програмним додатком і СУБД. Даний рівень дозволяє створити одну команду Selec і використовувати її для виборки даних з будь-яких підтримуємих типів баз даних, враховуючи ті випадки, коли СУБД взагалі не підтримує мову SQL. Служби ODBC являють собою окремий рівень доступу до файлів баз даних. ODBC бере на себе відповідальністьза отримання від до-датків запитів на вибірку інформації і переведення їх на мову, що використовує ядро база даних, для обробки запиту. Гарним прикладом використання ODBC технології є СУБД Access фірми Microsof . Головна різниця між ODBC і BD-Lib полягає у тому, що ODBC вимагає побудови і передачі йому лише стандартних SQL команд, а BD-Lib вимагає особливого синтаксису при побудові у буфері команд, що напрравляються безпосередньо у серверне середовище.
Головним недоліком ODBC є необхідність в трансляції запитів. Проведення цієї додаткової роботи відповідно відображається на швидкості доступу до даних. При роботі з ODBC можна отримати суттєвий виграш у швидкості обробки даних, якщо в системі клі-єнт/сервер саме на сервері системи SQL Server буде оброблятись запит, а не на клієнтському комп”ютері. Також приріст у швидкості роботи ODBC дає використання встроєнних процедур. 2.3 JSCRIP Тепер перейдемо до процесів, що пов”язані з вимірюванням швидкості системи SQL Server 7.0 . У данній роботі прпонується написання програмного додатку на встроєнному shell OS Wi dows - Java Scrip . Сам програмний додаток це програма написана для інтерпритуюча мова. Файл з розширенням . js буде виконавчим для OS Wi dows . Спочатку напишемо Scrip для створення бази даних : // ADO Flags var adLockOp imis ic = 3; var adOpe S a ic = 3; var SQL Da aBase = &quo ;DS =O S ;UID=sa;PWD=;DA ABASE=O S &quo ; //var SQL Da aBase = &quo ;DS =O S ;UID=;PWD=&quo ; var oCo ; var oRs; fu c io db Co ec (){ // Crea e ADO Co ec io Objec . Use IISSDK OBDC Souce wi h // defaul sa accou a d o password oCo = ew Ac iveXObjec (&quo ;ADODB.Co ec io &quo ;); oCo .Ope (SQL Da aBase); oCo .Comma d imeou =600; } fu c io db Record(SQL){ var oRs; // Crea e ADO Recordse Compo e , a d associa e i wi h ADO co ec io oRs = ew Ac iveXObjec (&quo ;ADODB.Recordse &quo ;); oRs.Ac iveCo ec io = oCo ; // Ge emp y recordse oRs.Source = SQL; oRs.Cursor ype = adOpe S a ic;// use a cursor o her ha Forward O ly oRs.Lock ype = adLockOp imis ic;// use a lock ype permi i g i ser io s oRs.Ope (); re ur oRs; } fu c io db Close(){ oCo .Close(); } fu c io db Requery(Rec,SQL){ Rec.Close(); Rec.Source = SQL; Rec.Ope (); } db Co ec (); ry { oRs=db Record(&quo ;CREA E ABLE dbo.DB ES ( S ri g char (30) ULL, umber i O ULL DEFAUL (0), Ra dom i O ULL DEFAUL (0))&quo ;); } ca ch (e) { } oRs=db Record(&quo ;SELEC FROM DB ES WHERE 0=1&quo ;); for(i=0;i ' User10000 ' ) &quo ;- визначити усі елементи з множини елементів, у яких значення у стовбчику “S ri g “ > ' User10000' ; Частина 3 : РЕЗУЛЬТАТИ ТЕСТУВАННЯ Для наведення прикладу універсальності при використанні написан-ного scrip при вимірюванні швидкодії, виміряємо швидкість обробки запитів у системі SQL Server 7.0 та Microsof Access 97. Щоб scrip сприймався системою Access без суперечень треба змінити параметри ідентифікації : //var SQL Da aBase = &quo ;DS =O S ;UID=sa;PWD=;DA ABASE=O S &quo ; var SQL Da aBase = &quo ;DS =O S ;UID=;PWD=&quo ; Отримані результати приведемо у таблиці : Тест № SQL Server 7.0 Access 97 1 2,673 1,81 2 7,781 5,603 3 7,356 5,211 4 8,239 7,54 5 0,903 0,494 6 0,345 0,231 7 0,390 0,287 8 11,207 7,11 9 3,843 2,53 10 0,655 0,507 11 11,469 9,816 12 0,3 0,285 13 0,31 0,22 14 55,62 34,324 Як видно з результатів проведенного вимірювання запити на локальній базі даних Access опрацьовуються значно швидше ніж на сервері. Аналізуючи запити 2 і 3, 4 і 5, 6 і 7 бачимо, що обробка елементів різних типів у однакових запитах має різний час. Так наприклад сортувати усіх елементів за значенням у стовбчику “S ri g” опрацьовується повільніше ніж у стовбчику &quo ; umber&quo ;- причина у розміру елементів цих типів.
1. Системы обработки информации - язык баз данных SQL со средствами поддержания целостности
2. Отправка запроса методом POST на сервер из .NET приложения
3. Разработка приложений архитектуры клиент-сервер при помощи SQL
4. Художественная обработка металлов
5. Методы компьютерной обработки статистических данных
6. Процессоры обработки текстовой информации
8. Разработка технологии ремонта, модернизации сервера с двумя процессорами Pentium
10. Максимальная скорость мобильного Интернета в сетях GPRS, Wi-Fi, CDMA
12. Организация и применение микропроцессорных систем обработки данных и управления
15. Реляционные Базы Данных. SQL - стандартный язык реляционных баз данных
16. Анализ пакетов обработки экспериментальных данных SABR и BOOTSTRAP
17. Разработка приложений на языке VBA в среде MS EXCEL по обработке данных для заданных объектов
18. Обработка текстовых файлов на языке Турбо Паскаль
21. Обработка табличной информации с помощью сводных таблиц средствами MicroSoft Excel
22. Процессоры обработки текстовой информации
23. Технология обработки графической информации в базовом курсе информатики
24. Информационный процесс. Обработка информации
25. Обработка результатов эксперимента
26. Анализ причин осложнений вторичной хирургической обработки гнойных ран
28. Электроэрозионная обработка
29. Термическая обработка стали
30. Обработка и добыча каменных изделий
31. Электроискровая и электроимпульсная обработка металла
32. Конспект лекций и ответы на экзаменационные вопросы по предмету Термическая Обработка
33. Программная обработка на ЧПУ
34. Датчики скорости
35. Технология обработки на станках с ЧПУ
36. Коробка скоростей малого токарного станка
40. Расчет и проектирование коробки скоростей к операционному токарному станку
41. Сравнительная характеристика методов обработки воротника в мужском пальто
42. Технологическая карта механической обработки «Шкив»
43. Механическая, кулинарная обработка рыбы
45. Устройства приёма-обработки сигналов УПОС
46. Старая пластинка: Что такое цифровой звук и реставрация звука с помощью цифровой обработки
47. Как работает радиоизмеритель скорости
49. Определение скорости света
50. Оле Кристенсен Ремер, подтверждение конечности скорости света
52. Обработка каучука и производство резины
53. Автоматизированная обработка информации долгосрочных кредитов банка
54. Виды реактивных двигателей, физические основы реактивного движения при разных скоростях
55. Протоколы и серверы интернета
56. Художественная обработка металла в Туле
58. Запросы о спросе
59. Обработка результатов экспериментов и наблюдений
60. Скорость света относительно поверхности земли
61. Методы получения и обработки маркетинговой информации
62. Обработка металлов давлением
63. Механическая обработка металлов
65. Свет, фотоны, скорость света, эфир и другие «банальности»
67. Основы обратноосмотической обработки воды
68. Химико-термическая обработка
69. Механическая обработка вала
70. Об алгоритмах самоорганизации в задаче синтеза информационных технологий обработки сигналов
71. Особенности обработки зимних изделий
72. Электроэрозионная обработка
74. Исследование системы программного регулирования скорости вращения рабочего органа шпинделя
76. Автоматизированные Системы Обработки Информации
77. Цифровая обработка сигналов
78. Выставка: последующая обработка данных
79. Классификация машин и инструментов для обработки древесины
81. Обработка материалов электрическим током и лазером
82. Подробный план лекций по первичной обработке шерсти
83. Технология термической обработки
84. Ответ на запрос Засвияжского РОВД г. Ульяновска
87. Резервы скорости ударного движения в настольном теннисе
88. Экологическая безопасность при обработке конструкций кондиционеров
89. Определение целесообразности перевода обработки детали на станки с ЧПУ
90. Кругооборот и оборот фондов предприятия. Время и скорость оборота фондов
91. Санитарная обработка людей
92. Константы скорости реакции бензофеноноксида со спиртами
93. Влияние скорости течения воды на рост колониальных гидроидов
94. Проект реконструкции пункта послеуборочной обработки зерна
95. Подбор объектов и составление запросов для перекрестной проверки лесхозов
96. Применение модулей геофизических исследований скважин и методика обработки данных в процессе бурения
97. Автоматизированная обработка землеустроительной информации
98. Методика определения норм времени на процесс цифровой обработки иллюстраций
100. Три способа улучшить юзабилити внешних поисковых серверов
101. Ваш собственный сервер: установка Windows Server 2003
102. Цифровая обработка сигналов
104. Автоматизированная система обработки экономической информации (АСОЭИ)
105. Web-серверы
106. Алгоритмизация и программирование процессов обработки данных в среде СУБД типа Fox
107. Cистема обработки информации
108. Автоматизированные системы обработки информации и управления
109. Обработка данных таблицы в Excel
110. Организация обработки информации на ЭВМ по формированию плана поставок готовой продукции
111. Перенос Базы Данных на WEB-сервер
113. Современные способы обработки информации
114. Форматы данных и команды их обработки процессоров Pentium III, Pentium IV
116. Использование COM-объектов в хранимых процедурах SQL Server
117. Работа с объектами большого объема в MS SQL и ADO
118. Новые возможности T-SQL в MS SQL Server 2005
119. Конфликты схем сопоставления (collation) в Microsoft SQL Server 2000
120. Блокировки в MS SQL Server 2000
121. Защита сервера DNS - Настройка безопасности
122. Администрирование SQL Server 2000
123. Использование XML совместно с SQL
124. Обработка последовательных файлов в программе
125. SQL Server и Разработка приложений и программные решения
126. Модульные серверы в приложениях высокой доступности
127. Язык модулей SQL
128. Базы данных SQL
129. Обработка экономической информации в документах Word
130. MS SQL Server 6.5
131. Некоторые черты SQL/92 и SQL-3
132. Общие элементы SQL
133. MS SQL Server 9 “Yukon”. Интеграция с .NET
134. Особенности использования сетевых технологий для обработки данных
135. Обработка данных в средах MathCAD и LabVIEW
136. Системы обработки и хранения корпоративной электронной почты
137. Автоматизированная обработка статистической информации
138. Фундаментальный предел скорости гравитации и его измерение
139. Обработка результатов эксперимента
140. Фазовая, групповая и сверхсветовая скорости
141. Оптическая обработка информации
142. Технология механической обработки деталей машин
144. Электрические методы обработки
145. Повышение эффективности механической обработки за счет выбора рациональных условий
146. Автоматизированные системы обработки экономической информации
147. Система обработки жалоб (service recovery system) в сфере банковских услуг
148. Понятия дегазация и дезактивация. Технические средства специальной обработки
149. Регуляция клеточного деления и скорости роста клеток