
Дата -13.03.2014 ФИО: Габуева Валерия Измаиловна. Группа 1 ПИ2
Лекция № 17
Тема: Структура данных и система запросов в различных СУБД
План лекции:
1.Классификация и сравнительные характеристики СУБД(стр.1)
2.Целевые назначения и функции различных СУБД(стр.13).
3.Полная классификация СУБД(стр.16). Правила Кода(стр.34).
4.Запросы В СУБД( интернет). Языки запросов в различных СУБД(стр.26)
5. Основные выводы и расшифровка используемых терминов.
Выполнение:
1.Классификация и сравнительные характеристики СУБД
. Все многообразие применяемых СУБД, однако, можно свести к двум основным их классам:
1. персональные.
2. многопользовательские.
К первому классу относятся СУБД, ориентированные для работы на персональном компьютере (dBASE, FoxPro, MS Access и т.п.). Изначально они поддерживали работу с данными только одного пользователя. Вся СУБД такого класса выполняется как единая программа, таблицы базы данных представляются отдельными файлами на диске того же персонального компьютера. С развитием локальных сетей разработчики СУБД этого класса стали приспосабливать их к работе в сетевой среде, в которой потенциально стало возможным организовать доступ к данным с нескольких персональных компьютеров, включенных в локальную сеть.
СУБД второго класса изначально создавались для выполнения на больших компьютерах и обеспечения параллельной работы многих пользователей. Такие СУБД, как правило, состоят из ядра, постоянно присутствующего в памяти, (сервера) и большого количества программ-агентов, обслуживающих запросы конечных пользователей и прикладных программ (клиентов). В этом случае и ядро СУБД, и данные находятся на одном и том же компьютере. Одна копия СУБД управляет одной копией данных. Единая управляющая система позволяет эффективно организовать одновременный доступ к данным многих агентов, предотвращая конфликты между ними. Ошибка в работе СУБД локализована и может быть эффективно исправлена самой же СУБД. Многопользовательские СУБД обладают надежностью, безопасностью, доступностью. Многопользовательские СУБД с самого начала своей истории использовали в качестве интерфейса запросов язык SQL, отсюда произошло одно из их альтернативных названий - SQL-серверы.
На сегодня известно большое число различных серверов баз данных SQL. В качестве вариантов построения системы остановимся более подробнее на следующих четырех ведущих серверных СУБД :
1. Oracle; 2.IBM DB2; 3.Microsoft SQL Server ; 4. Informix. Сравним между собой двух СУБД Oracle и Microsoft SQL Server :
Oracle;
Общая характеристика:
Oracle лидирует на платформах Unix и Windows.
В нашей стране СУБД Oracle стала стандартом для государственных информационных систем.
Поддержка большинства платформ
С технической точки зрения важно то, что Oracle функционирует практически на всех существующих компьютерных платформах, в том числе и на больших ЭВМ (OS/390) и на еще сохраняющих популярность системах Vax VMS, не говоря уже о Windows NT и различных разновидностях Unix, в том числе Solaris, HP-UX, AIX, Linux, SCO Unix и т.д.
Для персонального использования предназначен продукт Oracle Database Personal Edition (персональная редакция).
Среди основных свойств СУБД Oracle следует отметить такие, как:
Высочайшая надежность.
Возможность разбиения крупных баз данных на разделы (large-database partition), что дает возможность эффективно управлять гигантскими гигабайтными базами;
Наличие универсальных средств защиты информации;
Эффективные методы максимального повышения скорости обработки запросов;
Индексация по битовому отображению;
Свободные таблицы (в других СУБД все таблицы заполняются сразу при создании);
Распараллеливание операций в запросе;
Наличие широкого спектра средств разработки, мониторинга и администрирования;
Поддержка известных платформ: Windows, AIX, Compaq Tru64 UNIX, HP 9000 Series HP-UX, Linux Intel, Sun Solaris
Ориентация на интернет технологии.
Поддержка XML в хранимых процедурах, позволяющая разработчикам (традиционных) баз данных непосредственно использовать преимущества языка XML, применяя привычный механизм хранимых процедур
Доступ по протоколу HTTP, поддерживающий отправку SQL-запросов к БД с применением URL-адресов
Интегрированное средство выявления закономерностей, применяемое для отбора важной, но не обязательно очевидной бизнес-информации из больших наборов данных. Онообеспечиваюет сбор, хранение, управление и анализ потока данных о действиях пользователей при посещении ими Web-узла
Связанные базы данных OLAP - это, в первую очередь, кубы OLAP, применяемые для реализации новых возможностей анализа данных; они позволяют повысить ценность данных за счет предоставления возможностей анализа OLAP через Web
Доступ к кубам данных по протоколу HTTP, обеспечивающий просмотр и управление многомерными кубами данных в Web и через брандмауэры при помощи встроенного в БД средства поддержки протокола HTTP
Средство передачи журналов, позволяющее синхронизировать отдельные системы посредством автоматизированного обновления журнала транзакций, что повышает надежность системы и устойчивость к авариям
Параллельные операции при создании индексов и выполнении поиска на компьютерах с симметричной многопроцессорной обработкой, ускоряющие работу приложений
Улучшенные средства отказоустойчивости, упрощающие создание и управление отказоустойчивыми кластерами, переключение между узлами кластера при сбое и восстановление узла кластера, не оказывающее влияния на остальные узлы
Поддержка большого объема памяти и симметричной многопроцессорной обработки,позволяющая управлять приложениями с высокими нагрузками, связанными с большим объемом транзакций
Поддержка протокола VI SAN (Virtual Interface System Area Network), позволяющая эффективно использовать сети SAN (System Area Network - системная сеть) со встроенным интерфейсом VIConsumer, который позволяет устанавливать прямую связь (в режиме пользователя) с дисковыми устройствами SAN
Поддержка службы единого каталога, позволяющая в крупных организациях упростить и централизовать управление именованием серверов, данными OLAP, репликациями и хронологией архивирования
Инструментальные средства, включающие графические средства разработки схем, генерации запросов и кода
Ориентация на интернет технологии - основной девиз современных продуктов Oracle. В этой связи можно отметить пакеты interMedia, обеспечивающее обработку данных в мультимедийных форматах, и Jserver, встроенное средство для работы с языком Java, которое объединяет возможности языка Java с возможностями реляционных баз данных (возможность составлять на языке Javaне только внутренние программы для баз данных (хранимые процедуры и триггеры), но и разрабатывать компоненты Enterprise JavaBeans и даже запустить их на сервере). Компоненты EnterpriseJavaBeans представляют собой базовые модули из которых складываются Интернет-приложения на языке Java.
Фирма Oracle придерживается принципа, что всеми важными функциями необходимо управлять из единого центра, поэтому предлагаемый модуль interMedia предоставляет в распоряжение пользователей самые передовые возможности для работы с мультимедийными объектами:
Очень развитые средства для обработки аудио клипов;
Неподвижных изображений;
Видеофрагментов;
Географических данных (с целым набором функций связанных с определением местонахождения входящих в состав модуля Locator ).
В Oracle реализуются лучшие на сегодняшний день средства для объектно-ориентированного конструирования баз данных, в том числе табличные структуры, допускающие наследование свойств и методов других табличных объектов БД, что позволят избежать ошибок при построении БД и облегчает их обслуживание.
Также необходимо отметить, что разработанная фирмой Oracle система оптимизации одновременного доступа (multiversioning concurrency) является одной из важнейших характеристик архитектуры Oracle (подобная функция есть лишь в СУБД InterBase компании InterBase компании Inprise). Данная функция позволяет исключить ситуацию, когда одному пользователю приходится ждать, пока другой завершит изменения в содержимое баз данных (т.е. в Oracle отсутствуют блокировки на чтение). Эта функция позволяет СУБД Oracle выполнять за секунду больше транзакций в расчете на одного пользователя, чем любая другая база данных. По уровню производительности при работе в WEB среде под LINUX Oracle занимает ведущие места и при этом значительно превосходит все другие СУБД по надежности и безопасности.
СУБД Microsoft SQL Server
Важнейшие характеристики данной СУБД - это:
простота администрирования,
возможность подключения к Web,
быстродействие и функциональные возможности механизма сервера СУБД,
наличие средств удаленного доступа,
В комплект средств административного управления данной СУБД входит целый набор специальных мастеров и средств автоматической настройки параметров конфигурации. Также данная БД оснащена замечательными средствами тиражирования, позволяющими синхронизировать данные ПК с информацией БД и наоборот. Входящий в комплект поставки сервер OLAP дает возможность сохранять и анализировать все имеющиеся у пользователя данные. В принципе данная СУБД представляет собой современную полнофункциональную база данных, которая идеально подходит для малых и средних организаций. Необходимо заметить, что SQL Server уступает другим рассматриваемым СУБД по двум важным показателям: программируемость и средства работы. При разработке клиентских БД приложений на основе языков Java, HTML часто возникает проблема недостаточности программных средств SQL Server и пользоваться этой СУБД будет труднее, чем системами DB2, Informix, Oracle или Sybase. Общемировой тенденцией в XXI веке стал практически повсеместный переход на платформу LINUX, а SQL Serverфункционирует только в среде Windows. Поэтому использование SQL Server целесообразно, по нашему мнению, только если для доступа к содержимому БД используется исключительно стандарт ODBC, в противном случае лучше использовать другие СУБД.
Сравнительные результаты быстродействия
Ниже приведены сравнительные таблицы перфоманса ряда СУБД для больших объемов данных, основанные на данных независимого издания Transaction Processing Performance Council(www.tpc.org)
Объем данных порядка 100 GB
Rank |
Company |
System |
QphH |
Price/QphH |
Database |
Operating System |
Cluster |
1 |
|
HP AlphaServer ES45 Model 68/100 |
5,578 |
358 US $ |
Oracle 9iR2 w/Real Application Cluste |
HP Tru64 Unix V5.1A/IPK |
Y |
2 |
|
HP Proliant DL760 G2 8P |
3,346 |
65 US $ |
Microsoft SQL Server 2000 Enterprise Edition |
Microsoft Windows Server 2003 Enterprise Server |
N |
3 |
|
IBM eServer xSeries 440 |
3,342 |
131 US $ |
IBM DB2 UDB 8.1 |
Microsoft Windows Server 2003 Enterprise Edition |
N |
4 |
|
SunFire V480 |
1,760 |
60 US $ |
Sybase IQ 12.5 |
Sun Solaris 9 |
N |
5 |
|
HP Proliant DL580 G2 |
1,695 |
66 US $ |
Microsoft SQL Server 2000 Enterprise Edition |
Microsoft Windows 2000 Advanced Server |
N |
Объем данных порядка 1000 GB
Rank |
Company |
System |
QphH |
Price/QphH |
Database |
Operating System |
Cluster |
1 |
|
HP 9000 Superdome Enterprise Server |
25,805 |
203 US $ |
Oracle 9i Database Enterprise Edition v9.2.0.2.0 |
HP UX 11.i 64-bit |
N |
2 |
|
HPProLiant DL760 X900-128P |
22,361 |
253 US $ |
IBM DB2 UDB 7.2 |
Microsoft Windows 2000 Advanced Server |
Y |
Выводы.
В сводной таблице представлены сравнительные характеристики этих двух СУБД. Клиентские места при этом могут функционировать практически на любой платформе, средством доступа клиентов к СУБД является либо CGI (Perl) либо JAVA приложения.
Сравнительные характеристики |
Microsoft SQL Server |
Oracle |
Административное управление |
Хорошо |
Отлично |
Графические инструменты |
Отлично |
Хорошо |
Простота обслуживания |
Отлично |
Отлично |
Механизм данных |
Хорошо |
Отлично |
Работа с несколькими ЦП |
Приемлемо |
Отлично |
Функция соединения и выбор индексов |
Отлично |
Отлично |
Одновременный доступ нескольких пользователей |
Хорошо |
Отлично |
Обработка мультимедиа-даных |
Плохо |
Отлично |
Подключение к Web |
Приемлемо |
Отлично |
Обработка аудио, видео, изображений |
Плохо |
Отлично |
Поиск по всему тексту |
Хорошо |
Отлично |
Функциональная совместимость |
Хорошо |
Хорошо |
Сопряжение с другими БД |
Хорошо |
Хорошо |
Единая регистрация |
Хорошо |
Хорошо |
Работа под управлением различных ОС |
Приемлемо |
Хорошо |
Возможности программирования |
Приемлемо |
Отлично |
Хранимые процедуры и триггеры |
Хорошо |
Отлично |
Внутренний язык программирования |
Приемлемо |
Отлично |
Построение баз данных |
Хорошо |
Отлично |
Язык SQL |
Отлично |
Отлично |
Объектно-ориентированные системы |
Приемлемо |
Отлично |
Работа с филиалами |
Отлично |
Отлично |
Тиражирование |
Отлично |
Отлично |
Распределенная обработка транзакций |
Отлично |
Отлично |
Дистанционное администрирование |
Хорошо |
Отлично |
Организация хранилищ данных и подготовка отчетов |
Отлично |
Отлично |
Средства загрузки |
Отлично |
Отлично |
Средства анализа |
Отлично |
Отлично |
Требования заказчика (см. таблицу ниже)
Необходимые требования |
MS SQLServer 2000 |
Oracle 9i |
локализация интерфейса пользователя, возможность построения и сортировки полей баз данных, содержащих символы кириллицы |
+ |
+ |
поддержка структуры относительных данных |
+ |
+ |
поддержка технологий пользователя/сервера |
+ |
+ |
поддержка многопроцессорной архитектуры |
+ |
+ |
поддержка кластерной архитектуры |
+ |
+ |
наличие средств для создания индексов и кластеров данных для повышения скорости обработки |
+ |
+ |
восстановление баз данных с использованием журнала транзакций |
+ |
+ |
механизм блокировки транзакций при записи или на уровне страницы |
+ |
+ |
поддержка ANSI SQL |
+ |
+ |
поддержка стандарта SQL-3 (новое название – SQL99) |
+ - |
+ |
поддержка ODBC |
+ |
+ |
контроль целостности базы данных |
+ |
+ |
включение/выключение утилит резервирования баз данных |
+ |
+ |
импорт и экспорт таблиц баз данных |
+ |
+ |
совместимость с предлагаемой операционной системоймодулей как пользователя, так и сервера |
+ |
+ |
поддержка сетевых протоколов, используемых предлагаемыми операционными системами |
+ |
+ |
наличие графического интерфейса пользователя для управления базой данных |
+ |
+ |
контроль доступа к данным. Опознавание с использованием средств СУБД |
+ |
+ |
централизованное управление пользователями |
+ |
+ |
наличие оптимизатора запросов для оптимизации пути прохождения данных |
+ |
+ |
поддержка больших двоичных объектов (BLOB) |
+ |
+ |
поддержка OLAP-технологий в т.ч. специализированных средств OLAP-анализа |
+ |
+ |
поддержка протокола VI SAN (Virtual Interface System Area Network) |
+ |
+ |
отлаженный механизм репликации данных |
+ |
+ |
поддержка службы единого каталога |
+ |
+ |
Microsoft SQL Server и Oracle относятся к классу многпользовательских систем. Они развиваются и совершенствуются уже в течение многих лет и реализуются как коммерческие программные продукты. Эти СУБД можно характеризовать как основу для промышленных решений в области обработки данных. На российском рынке представлены практически все производители и поставщики промышленных СУБД, в том числе Adabas (Software AG), DB2 (IBM), Informix (Informix Software), Microsoft (Microsoft SQL Server), Oracle (Oracle Corporation), Sybase (Sybase).
Для сравнительного анализа этих систем удобна модель (магические квадраты), предложенная аналитической компанией Gartner Group (приведена выше). Из нее следует, что лидерами на рынке СУБД в настоящий момент являются компании IBM, Microsoft и Oracle. Остальные компании характеризуются Gartner Group как “нишевые игроки”.
Наиболее существенным критерием для сравнения СУБД являются эксплуатационные
характеристики, такие как надежность, высокая готовность, производительность,
масштабируемость. В таблице приводится сравнительный анализ основных СУБД по этим показателям (см.табл.1), выполненный на основе экспертных оценок. Каждому показателю была дана оценка по 10-бальной шкале, макимальная оценка 10 баллов.
Табл.1. Экспертная оценка многопользовательских СУБД
СУБД |
Производ. |
Конкурентный. доступ
|
По числу пользов.
|
Большие БД
|
Готовность
|
Microsoft SQL Server
|
6 |
7 |
5 |
5 |
7 |
Oracle |
6 |
9 |
8 |
8 |
8 |