Вступнаверх

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

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

Відповідно до Microsoft SQL Server методи доступу до даних постійно еволюціонують. За останні 20 років розвитку баз даних змінилися 7 методів доступу до даних. Останнім з них є Microsoft ADO.NET.

За наявності широкого вибору доступних джерел даних ADO.NET повинна мати можливість підтримувати безліч джерел даних. Кожне таке джерело даних може мати свої особливості або набор можливостей. Тому ADO.NET підтримує модель постачальників (provider). Постачальник для конкретного джерела даних в ADO.NET можна визначити як набір класів у просторі імен, створених спеціально для роботи з цим конкретним джерелом даних. Отже, для кожного конкретного джерела даних потрібний спеціальний постачальник даних .NET.

Постачальники даних .NET
Рисунок 1. Програма, ADO.NET, декілька джерел даних і кілька постачальників даних.
(Анімація. Кількість кадрів - 17, циклів повторення - нескінченно, розмір - 10 726 байтів)

База даних Microsoft SQL Server подтримує декілька постачальників даних .NET: SQL Client .NET Data Provider, OLE DB .NET Data Provider, ODBC .NET Data Provider і SQL XML .NET Data Provider (для роботи з XML-даними):

Постачальники даних, які підтримує MS SQL Server
Рисунок 2. Постачальники даних, які підтримує MS SQL Server.

Актуальністьнаверх

Оскільки MS SQL Server підтримує декілька провайдерів даних, то виникає закономірне питання: який з них ефективніше або оптимальніше? Адже забезпечення високої швидкості доступу до даних є однією з найважливіших характеристик конкретного постачальника даних. Тому в даній магістерській роботі будуть проведені різні експерименти над постачальниками даних SQL, OLE DB і ODBC з ціллю виявлення їх переваг і недоліків. Проведені експерименти дозволять визначити залежності для продуктивності, швидкості доступу і швидкості підключення до БД SQL Server.

Мета і задачінаверх

Дослідження методів доступу до даних БД Microsoft SQL Server ставить наступну мету: визначення та обґрунтування оптимального за швидкістю підключення і швидкості доступу провайдера даних бази даних MS SQL Server.

Для досягнення поставленої мети у магістерській роботі пропонується вирішити такі задачі як:

  1. Вивчення характеристик і властивостей існуючих постачальників даних БД Microsoft SQL Server.
  2. Аналіз технології кешування даних.
  3. Постановка експериментів для дослідження постачальників даних.
  4. Дослідження провайдерів даних MS SQL Server у підключеному та роз'єднаному стані БД.
  5. Аналіз отриманих результатів експериментів і визначення залежностей.
  6. Вибір оптимального провайдера даних за заданими критеріям.

Дослідження постачальників даних планується проводити з використанням програмної тестуємої оболонки, яка розроблюватиметься на мові програмування Microsoft Visual C# сумісно з технологією Microsoft .NET Framework. Обґрунтування вибору цих технологій полягає у наступному: оскільки MS SQL Server є розробкою компанії Microsoft, то максимальної продуктивності можна досягти при використанні “рідних” технологій (CLR, Common Language Runtime – загальномовне середовище виконання .NET). CLR дозволяє зменшити час на перетворення типів, а також забирає всі проміжні рівні між програмою і базою даних.

Для написання і налагодження додатка використовуватиметься безкоштовне середовище розробки Microsoft Visual Studio 2008 Express, з якою постачається база даних Microsoft SQL Server 2008 Express.

Передбачувана наукова новизнанаверх

Наукова новизна даної магістерської роботи полягає у дослідженні провайдерів даних БД MS SQL Server на швидкість доступу до записів таблиць різного об’єму: 10 записів, 1’000 записів, 50’000 записів і 1’000’000 записів. При подальшому дослідженні можливі також й інші варіанти запитів. Дані експерименти дозволять визначити оптимальних постачальників даних для баз даних різного об’єму, що допоможе у проектуванні ефективних додатків для роботи з БД, тому що ще перед запитом даних від бази вже буде відомий оптимальний алгоритм доступу. Також планується дослідження швидкості підключення до бази даних MS SQL Server з метою виявлення ефективності роботи з БД у відключеному або підключеному станах, для чого передбачається вивчення пулу з’єднань.

Огляд стану досліджень і розробокнаверх

Оскільки база даних Microsoft SQL Server є розробкою компанії Microsoft і її похідні коди, алгоритми, методи функціонування не доступні, то зацікавленість у дослідженні цієї БД вченими або науковими діячами у даний момент знаходяться на низькому рівні. Пошук у мережі Інтернет даної тематики показав, що дослідженням MS SQL Server займаються лише її розробники і фірми, які тісно співробітничають з компанією Microsoft та її продуктами. У зв’язку з цим також зростає наукова новизна даної тематики магістерської роботи на локальному і національному рівнях.

Ведучими дослідниками і безпосередніми розробниками методів доступу до даних бази даних Microsoft SQL Server є:

Опис результатівнаверх

У даний момент магістерська роботи знаходиться на начальному етапі – ведеться пошук та вивчення матеріалу, а також розроблюються описи експериментів і їх аналіз. Попередній аналіз показав, що постачальник даних OLE DB .NET Data Provider має більш високу продуктивність з таблицями невеликого об’єму (до 10’000 записів), ніж SQL Client .NET Data Provider. А доступ до даних таблиць з великою кількістю записів (1’000’000 записів і більше) ефективніше здійснювати за допомогою SQL Client .NET Data Provider. Остаточні результати дослідження провайдерів даних MS SQL Server будуть отримані восени 2008 року. Якщо дана робота зацікавила читача, то за додатковою інформаціює можна звернутися до її автора за E-mail або ICQ    .

Перелік використаних джерелнаверх

  1. Hamilton, Bill. ADO.NET 3.5 Cookbook, 2nd Edition, Updated for .NET 3.5, LINQ, and SQL Server 2008. O’Reilly, March 15, 2008. Pages: 980. ISBN-13: 978-0-596-10140-4.
  2. Браст Эндрю Дж., Форте Стивен. Разработка приложений на основе Microsoft® SQL Server™ 2005. Мастер-класс. / Пер. с англ. – М.: Издательство «Русская Редакция», 2007. – 880 стр.: ил.
  3. Вилдермьюс, Шон. Практическое использование ADO.NET. Доступ к данным в Internet. : Пер. с англ. – М. : Издательский дом “Вильямс”, 2003. – 288 с. : ил. – Парал. тит. англ.
  4. Малик, Сахил. Microsoft® ADO.NET 2.0 для профессионалов.: Пер. с англ. – М.: ООО «И.Д. Вильямс», 2006. – 560 с.: ил. – Парал. тит. англ.
  5. Сеппа Д. Программирование на Microsoft® ADO.NET 2.0 Мастер-класс. / Пер. с англ. – М.: Издательство «Русская Редакция»; СПб.: Питер, 2007. – 784 стр.: ил.
  6. http://rsdn.ru/?article/db/DBSpeed.xml – Сравнение скорости доступа к данным (ADO.NET, ADO, ascDB). Автор: Станіслав Михаїлов, http://www.optim.su/.