Серверные субд это кратко

Обновлено: 05.07.2024

Архитектура файл-сервер использовалась раньше в малых локальных СУБД. Даже если малые СУБД позволяют обеспечить доступ к данным по сети, но тогда при большом кол-ве пользователей происходит загруженность данных и производительность снижается.

Придумали архитектуру клиент-сервер: выделяется специальный сервер БД, на котором хранится сама Д, здесь же хранится серверная СУБД, работа этой серверной части заключается в следующем:

Если от рабочей станции поступают запросы на выборку данные, то серверная СУБД выбирает самостоятельно эти данные и пользователю передает только эти записи, и соответственно:

1. снижается объем передаваемых данных по сети

2. выборка этих данных осуществляется быстрее (быстродействие), т.к эта хорошо разработанная серверная СУБД.

3. можно оптимизировать обработку запросов, т.е обрабатывается не один запрос, а много запросов ( т.е запросы, относящиеся к одной таблице обслуживаются за 1 проход).

Все современные серверные СУБД обеспечивают архитектуру клиент-сервер.

Функции, кот выполняет сервер БД:

1. выполнение запросов пользователя на поиск, выбор и модификацию данных и мета-данных(это информация о том, как организована БД, т.е схема БД и т.д)

2. хранение и резервное копирование данных

3. поддержка ссылочной целостности данных (т.е если таблицы взаимосвязаны, то поддерживается связь м/у таблицами).

4. обеспечение авторизованного доступа к данным на основе проверки прав и привилегии пользователя.

5. ведение протокола операций и журнала транзакций (если произошел сбой, то можно вернуться к предыдущей операции и восстановить данные).

Особенности серверных СУБД:

6. Практически все серв СУБД обладают более высокой производительностью

7. меньше загружают комп. сеть

8. имеют более совершенные средства безопасности

9. имеют возможность разместить часть программ на сервере, что ускоряет разрабатываются приложения и решения приклад. Программ

10. могут работать с несколькими сетевыми операционными системами

11. имеют утилиты администрирования (удобные)

12. поддерживают параллельную обработку данных в многопроцессорных системах

13. поддерживают создание OLAP и хранилищ данных

14. поддержание распределенных запросов и транзакций

15. обеспечивают электронную коммерцию и публикацию данных в Internet.

Механизм доступа к данным:

Первые механизмы разработала фирма Borland.

17. Специальные драйвера

Oracle, Informix, Sy Base, Microsoft SQL Server…

Отличительные особенности серверных СУБД:

1. поддержка архитектуры клиент-сервер

2. работа с распределенными СУБД

3. большое число пользователей

4. обеспечивают высокую производительность

Архитектура файл-сервер использовалась раньше в малых локальных СУБД. Даже если малые СУБД позволяют обеспечить доступ к данным по сети, но тогда при большом кол-ве пользователей происходит загруженность данных и производительность снижается.

Придумали архитектуру клиент-сервер: выделяется специальный сервер БД, на котором хранится сама Д, здесь же хранится серверная СУБД, работа этой серверной части заключается в следующем:

Если от рабочей станции поступают запросы на выборку данные, то серверная СУБД выбирает самостоятельно эти данные и пользователю передает только эти записи, и соответственно:

1. снижается объем передаваемых данных по сети

2. выборка этих данных осуществляется быстрее (быстродействие), т.к эта хорошо разработанная серверная СУБД.

3. можно оптимизировать обработку запросов, т.е обрабатывается не один запрос, а много запросов ( т.е запросы, относящиеся к одной таблице обслуживаются за 1 проход).

Все современные серверные СУБД обеспечивают архитектуру клиент-сервер.

Функции, кот выполняет сервер БД:

1. выполнение запросов пользователя на поиск, выбор и модификацию данных и мета-данных(это информация о том, как организована БД, т.е схема БД и т.д)

2. хранение и резервное копирование данных

3. поддержка ссылочной целостности данных (т.е если таблицы взаимосвязаны, то поддерживается связь м/у таблицами).




4. обеспечение авторизованного доступа к данным на основе проверки прав и привилегии пользователя.

5. ведение протокола операций и журнала транзакций (если произошел сбой, то можно вернуться к предыдущей операции и восстановить данные).

Особенности серверных СУБД:

6. Практически все серв СУБД обладают более высокой производительностью

7. меньше загружают комп. сеть

8. имеют более совершенные средства безопасности

9. имеют возможность разместить часть программ на сервере, что ускоряет разрабатываются приложения и решения приклад. Программ

10. могут работать с несколькими сетевыми операционными системами

11. имеют утилиты администрирования (удобные)

12. поддерживают параллельную обработку данных в многопроцессорных системах

Систе́ма управле́ния ба́зами да́нных (СУБД) — специализированная программа (чаще комплекс программ), предназначенная для организации и ведения базы данных. Для создания и управления информационной системой СУБД необходима в той же степени, как для разработки программы на алгоритмическом языке необходим транслятор.

Содержание

Основные функции СУБД

  • управление данными во внешней памяти (на дисках);
  • управление данными в оперативной памяти с использованием дискового кэша; , резервное копирование и восстановление базы данных после сбоев;
  • поддержка языков БД (язык определения данных, язык манипулирования данными).

Обычно современная СУБД содержит следующие компоненты:

  • ядро, которое отвечает за управление данными во внешней и оперативной памяти и журнализацию,
  • процессор языка базы данных, обеспечивающий оптимизацию запросов на извлечение и изменение данных и создание, как правило, машинно-независимого исполняемого внутреннего кода,
  • подсистему поддержки времени исполнения, которая интерпретирует программы манипуляции данными, создающие пользовательский интерфейс с СУБД
  • а также сервисные программы (внешние утилиты), обеспечивающие ряд дополнительных возможностей по обслуживанию информационной системы.

Классификация СУБД

По модели данных

По типу управляемой базы данных СУБД разделяются на:

По архитектуре организации хранения данных

  • локальные СУБД (все части локальной СУБД размещаются на одном компьютере)
  • распределенные СУБД (части СУБД могут размещаться на двух и более компьютерах)

По способу доступа к БД

В файл-серверных СУБД файлы данных располагаются централизованно на файл-сервере. Ядро СУБД располагается на каждом клиентском компьютере. Доступ к данным осуществляется через локальную сеть. Синхронизация чтений и обновлений осуществляется посредством файловых блокировок. Преимуществом этой архитектуры является низкая нагрузка на ЦП сервера, а недостатком — высокая загрузка локальной сети.

На данный момент файл-серверные СУБД считаются устаревшими.

Примеры: Microsoft Access, Borland Paradox.

Такие СУБД состоят из клиентской части (которая входит в состав прикладной программы) и сервера (см. Клиент-сервер). Клиент-серверные СУБД, в отличие от файл-серверных, обеспечивают разграничение доступа между пользователями и мало загружают сеть и клиентские машины. Сервер является внешней по отношению к клиенту программой, и по надобности его можно заменить другим. Недостаток клиент-серверных СУБД в самом факте существования сервера (что плохо для локальных программ — в них удобнее встраиваемые СУБД) и больших вычислительных ресурсах, потребляемых сервером.

Примеры: Interbase, IBM DB2, MS SQL Server, Oracle, MySQL, ЛИНТЕР.

Встраиваемая СУБД — библиотека, которая позволяет унифицированным образом хранить большие объёмы данных на локальной машине. Доступ к данным может происходить через геоинформационные системы).

Ссылки

Русскоязычные сайты

Зарубежные сайты

Литература

См. также

DDL, SELECT | INSERT | UPDATE | MERGE | DELETE | JOIN | UNION | CREATE | ALTER | DROP
Сравнение синтаксиса

Типы реализаций
Flat file | Deductive | Dimensional | Иерархическая | Объектно-ориентированная | Temporal

Свободные системы
Ingres | PostgreSQL | Sav Zigzag |

Wikimedia Foundation . 2010 .

Полезное

Смотреть что такое "Файл-серверная СУБД" в других словарях:

Система управления базами данных — (СУБД) совокупность программных и лингвистических средств общего или специального назначения, обеспечивающих управление созданием и использованием баз данных[1]. Содержание 1 Основные функции СУБД 2 … Википедия

Microsoft SQL Server — Тип Реляционная СУБД Разработчик Sybase, Ashton Tate, Microsoft … Википедия

ZODB — Zope Object DataBase Тип Объектно ориентированная база данных Разработчик Zope Corporation и соавторы Написана на Python Операционная система Кроссплатформенное ПО Последняя версия 3.10.5 (19 ноября 2011 … Википедия

Программы UNIX-подобных операционных систем — Это список популярных программ, работающих в операционных системах основанных на UNIX (POSIX совместимых). Некоторые из этих программ являются стандартными для UNIX подобных систем. Содержание 1 Системный софт 1.1 Общего назначения … Википедия

CUBRID — Тип Реляционная СУБД Разработчик Search Solutions Написана на C, C++ Операционная система Кроссплатформенное программное обеспечение Язык интерфейса Ан … Википедия

mSQL — Тип Реляционная СУБД Разработчик Hughes Technologies Последняя версия 3.11 (1 июня 2012 года) Лицензия Коммерческая, для разработчиков Сайт … Википедия

BaseX — Графический интерфейс пользователя BaseX Тип Документо ориентированная СУБД … Википедия

Многие авторы классифицируют СУБД на две большие категории: так называемые "настольные" и "серверные".

3.5.1. Настольные СУБД

Настольные СУБД используются для сравнительно небольших задач (небольшой объем обрабатываемых данных, малое количество пользователей). С учетом этого, указанные СУБД имеют относительно упрощенную архитектуру, в частности, функционируют в режиме файл-сервер, поддерживают не все возможные функции СУБД (например, не ведется журнал транзакций, отсутствует возможность автоматического восстановления базы данных после сбоев и т. п.). Тем не менее, такие системы имеют достаточно обширную область применения. Прежде всего, это государственные (муниципальные) учреждения, сфера образования, сфера обслуживания, малый и средний бизнес. Специфика возникающих там задач заключается в том, что объемы данных не являются катастрофически большими, частота обновлений не бывает слишком высокой, организация территориально обычно расположена в одном небольшом здании, количество пользователей колеблется от одного до 10–15 человек. В подобных условиях использование настольных СУБД для управления информационными системами является вполне оправданным, и они с успехом применяются.

Одними из первых СУБД были так называемые dBase-совместимые программные системы, разработанные разными фирмами. Первой широко распространенной системой такого рода была система dBase III – PLUS (фирма Achton-Tate). Развитый язык программирования, удобный интерфейс, доступный для массового пользователя, способствовали широкому распространению системы. В то же время работа системы в режиме интерпретации обусловливала низкую производительность на стадии выполнения. Это привело к появлению новых систем-компиляторов, близких к системе dBase III – PLUS: Clipper (фирма Nantucket Inc.), FoxPro (фирма Fox Software), FoxBase+ (фирма Fox Software), Visual FoxPro (фирма Microsoft). Одно время достаточно широко использовалась СУБД PARADOX (фирма Borland International).

В последние годы очень широкое распространение получила система управления базами данных Microsoft Access, которая входит в целый ряд версий пакета Microsoft Office(фирма Microsoft).

3.5.2. Серверные СУБД

Для крупных организаций ситуация принципиально меняется. Там использование файл-серверных технологий является неудовлетворительным по описанным выше причинам. Поэтому на передний край борьбы за автоматизацию выходят так называемые серверные СУБД.

Основными производителями таких систем обработки и хранения данных являются 3 корпорации: Oracle, Microsoft и IBM. Диаграмма соотношения объемов продаж соответствующих систем (источник: IDC Report, Май 2006) приводится на рис. 3.4.

Наиболее распространенными клиент-серверными системами здесь соответственно являются системы Oracle (разработчик компания Oracle ), MS SQL Server (разработчик компания Microsoft), DB2 , Informix Dynamic Server (компания IBM).

Дадим краткую характеристику этим системам.

MS SQL Server

Платформа бизнес-анализа SQL Server 2008, тесно интегрированная с Microsoft Office, предоставляет развитую масштабируемую инфраструктуру для внедрения мощных возможностей бизнес-анализа в рабочий процесс всех бизнес-подразделений вашей компании, открывая доступ к нужной бизнес-информации через знакомый интерфейс MS Excel и MS Word.

MS SQL Server-2008 поддерживает создание и работу с корпоративным хранилищем данных, объединяющим информацию со всех систем и приложений, позволяющим получить единую комплексную картину бизнеса вашей компании.

MS SQL Server-2008 предоставляет масштабируемый и высокопроизводительный "процессор данных" - для самых ответственных и требовательных бизнес-приложений, тем, кому необходим высочайший уровень надежности и защиты, позволяя при этом снизить совокупную стоимость владения за счет расширенных возможностей по управлению серверной инфраструктурой.

MS SQL Server-2008 предлагает разработчикам развитую, удобную и функциональную среду программирования, включая средства работы с веб службами, инновационные технологии доступа к данным – все, что необходимо для эффективной работы с данными любых типов и форматов.

Oracle

К настоящему времени разработано несколько версий систем, каждая из которых включает целую линейку продуктов, например Oracle 8, Oracle 9i, Oracle 10g.

Соответствующие линейки продуктов включают как собственно СУБД (например Oracle Database 10g, Oracle Database 11g) , так и средства разработки и анализа данных.

Oracle предлагает комплексные, открытые, доступные и удобные в использовании технологические решения. Готовые пакетируемые решения автоматически включают в свою стоимость базу данных, сервер приложений, интеграционную платформу, инструменты аналитики и управления неструктурированными данными. Масштабируемые бизнес-приложения Oracle могут быть легко интегрированы с ИТ-инфраструктурой предприятия без потери уже вложенных в IT инвестиций.

СУБД Oracle Database 11g обеспечивает улучшенные характеристики за счет автоматизации задач администрирования и обеспечения лучших в отрасли возможностей по безопасности и соответствию нормативно-правовым актам в области защиты информации. Появилось больше функций автоматизации, самодиагностики и управления. Среди характеристик системы можно отметить управление большими объемами данных с использованием распределенных таблиц и компрессии, эффективную защиту данных, возможность полного восстановления, возможность интеграции геофизических данных медиа-контента в бизнес-процеcc и т.д.

Серверы баз данных компании IBM

К настоящему времени разработаны линейки продуктов DB2 и Informix , включающие как собственно СУБД так и средства разработки и анализа данных (DB2 Universal Database DB2 Personal Edition, DB2 Enterprise 9 и др., а также Informix Dynamic Server, Informix Dynamic Server Express, Informix Extended Parallel Server и др.

Универсальный сервер баз данных DB2 Universal Database - это масштабируемая, обьектно-реляционная система управления базами данных с интегрированной поддержкой мультимедиа и Web, работающая на системах от персональных компьютеров и серверов на процессорах Intel до Unix, от однопроцессорных систем до симметричных многопроцессорных систем (SMP) и систем с массовым параллелизмом (MPP), на хостах AS/400 и мейнфреймах. DB2 Universal Database объединяет в себе высокую производительность систем обработки транзакций в режиме on-line, объектно-реляционные расширения, усовершенствованные средства оптимизации с возможностями параллельной обработки и поддержкой очень больших баз данных. DB2 Universal Database также имеет новые встроенные средства для облегчения переноса на свою базу приложений, разработанных на других системах управления базами данных, таких как Oracle, Microsoft, Sybase и Informix . Помимо этого, DB2 Universal Database включает в себя дополнительные средства поддержки систем аналитической обработки в реальном времени (OLAP) и систем поддержки принятия решений, множество простых в использовании расширений (DB2 extenders). DB2 Universal Database доступна на абсолютном большинстве ключевых платформ, что дает заказчикам ту гибкость, которая им необходима.

Кроме вышеуказанных зарубежных систем отметим и отечественную разработку – СУБД НИКА, преемницу широко распространенной в Советском Союзе СУБД ИНЕС для ЕС ЭВМ.

Краткие итоги. В лекции рассмотрены различные архитектурные решения, используемые при реализации многопользовательских СУБД . Централизованная архитектура . Технология с сетью и файловым сервером ( архитектура " файл-сервер "). Архитектура " клиент – сервер " (распределенная модель вычислений ). Трехзвенная ( многозвенная) архитектура клиент – сервер . Дан обзор современных СУБД (настольные СУБД , серверные СУБД ).

Ниже перечислены наиболее характерные для сегодняшнего дня сервисы, предоставляемые серверными СУБД.

Реализация для нескольких платформ

Исключением из этого правила является Microsoft SQL Server. Однако для данной СУБД это вполне оправданно — компания Microsoft сама производит серверные операционные системы и в отличие от большинства других производителей серверных СУБД может себе позволить создавать серверы баз данных, тесно интегрированные с сервисами операционной системы собственного производства и поддерживающие исключительно их.

Административные утилиты

Администрирование сервера баз данных, конечно, — удел профессионалов. Однако и профессионал предпочтет удобные утилиты администрирования унылому окну с интерфейсом командной строки. Наличие удобных утилит администрирования, как ни странно, иногда оказывается одним из решающих факторов при выборе СУБД. Именно поэтому подавляющее большинство современных СУБД обычно поставляется с подобными утилитами, и их интерфейс в последнее время напоминает интерфейс Windows Explorer (даже неинтересно помещать в эту статью иллюстрации — все они нынче похожи, как близнецы).

Следует отметить, что производители СУБД, вовремя не заметившие эту тенденцию, оказались лишенными значительной части рынка или практически вытесненными с него. Весьма показателен здесь пример IB Database (InterBase Corporation) — производители этой СУБД, очень неплохой с точки зрения хранения данных и скорости обработки запросов, не позаботились вовремя об удобных утилитах администрирования (а также о средствах репликации данных), положившись на продукты третьих фирм и на продвижение этой СУБД в составе популярных средств разработки, — и в результате многие ее потенциальные пользователи сделали выбор в пользу других СУБД, а сама IB Database практически перешла в разряд некоммерческих продуктов с доступными исходными текстами.

Резервное копирование данных

Резервное копирование данных и журналов транзакций поддерживается всеми без исключения коммерческими серверными СУБД. Различия между СУБД в поддержке резервного копирования заключаются в том, возможно ли производить резервное копирование в процессе работы пользователей, и если да, то какие пользовательские операции в это время нельзя выполнять. Помимо этого в комплекте поставки некоторых СУБД могут содержаться утилиты для использования различных внешних устройств (например, накопителей на магнитных лентах) в качестве средств хранения резервных копий.

Обслуживание репликаций

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

В том или ином виде репликации поддерживаются всеми современными серверными СУБД. Различия могут быть лишь в поддержке тех или иных конкретных сценариев репликаций (например, внесение изменений одновременно на нескольких серверах, возможность шифрования реплицируемых данных и др.). Исключение здесь составляет IB Database, в текущей версии не поддерживающая репликаций, но об этой СУБД мы уже упоминали.

Если вы планируете иметь несколько серверов баз данных с необходимостью синхронизации данных (например, у вашего предприятия существует несколько филиалов), стоит обратить внимание на то, какие сценарии репликаций поддерживаются в выбранной вами СУБД.

Параллельная обработка данных в многопроцессорных системах

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

В настоящее время подавляющее большинство производителей современных серверных СУБД поставляют на рынок версии, поддерживающие параллельную обработку данных. Обычно это версии для Windows NT и коммерческих версий UNIX.

Если вы рассчитываете использовать многопроцессорный компьютер в качестве сервера баз данных, вам имеет смысл обратить внимание на то, поддерживает ли выбранная вами СУБД параллельную обработку данных.

Поддержка OLAP и создания хранилищ данных

OLAP (On-Line Analytical Processing) представляет собой технологию построения многомерных хранилищ данных (Data Warehouses), как правило, агрегатных, то есть являющихся результатом обработки набора данных, нередко состоящего из нескольких таблиц. Такие хранилища данных в последнее время широко используются в системах поддержки принятия решений. Более подробно об идеях, лежащих в основе OLAP, будет рассказано в одной из последующих статей данного цикла, здесь же мы ограничимся лишь упоминанием этой возможности.

Многомерные хранилища данных могут быть реализованы как в виде набора обычных реляционных таблиц, так и в виде нереляционной многомерной базы данных. В последнем случае такое хранилище обычно управляется отдельным сервером. Многие производители серверных СУБД поставляют такие серверы отдельно (Oracle, Informix), некоторые включают их в состав сервера реляционных баз данных (Microsoft SQL Server 7.0). Нередко с целью повышения конкурентоспособности подобные OLAP-системы строят многомерные хранилища на основе данных из других СУБД, как это сделано, например, в Microsoft SQL Server OLAP Extensions и в Sybase Adaptive Server IQ.

Если вы планируете создавать системы поддержки принятия решений, вам необходимо обратить внимание на то, какие OLAP-серверы можно использовать на выбранной вами платформе, и поддерживают ли они выбранную вами СУБД.

Распределенные запросы и транзакции

О распределенных транзакциях и запросах заговорили в последнее время, когда наличие нескольких серверов баз данных в одной организации стало обычным явлением. Нужно отметить, что возможности выполнения распределенного запроса или распределенной транзакции поддерживаются сейчас почти всеми серверными СУБД, по крайней мере в том случае, когда все вовлеченные в транзакцию серверы — от одного и того же производителя. С этой целью используется механизм двухфазного завершения транзакций (two-phase commit), когда на первом этапе серверы, вовлеченные в транзакцию, сигнализируют о готовности ее завершить, а на втором этапе происходит реальная фиксация изменений в базах данных.

Если вы планируете использовать несколько серверов баз данных и совершать операции, затрагивающие данные на нескольких серверах, есть смысл поинтересоваться, поддерживают ли выбранные вами СУБД двухфазное завершение транзакций.

Средства проектирования данных

Многие производители серверных СУБД производят также средства анализа бизнес-процессов и проектирования данных, иногда универсальные (как в случае Sybase DataArchitect), а порой ориентированные главным образом на конкретную СУБД (как в случае Oracle Designer/2000). Многие производители СУБД не имеют в своем арсенале собственных средств проектирования данных, ориентируясь на универсальные CASE-средства типа Platinum ERwin. Нередко производители СУБД встраивают в административные утилиты несложные средства проектирования данных, позволяющие визуально редактировать схемы данных, как это сделано, например, в Microsoft SQL Server 7.0.

Выбирая CASE-средство, обратите внимание на то, поддерживает ли оно выбранную вами СУБД.

Многие производители серверных СУБД выпускают также средства разработки и генераторы отчетов. Иногда данные средства разработки используют тот же язык программирования, что применяется при написании триггеров и хранимых процедур (в этом случае, как правило, клиентское приложение должно включать интерпретатор этого языка), что позволяет отлаживать хранимые процедуры, помещая их в клиентское приложение. Типичный пример подобного подхода реализован в Oracle Developer/2000. Однако чаще средства разработки производителей серверных СУБД используют языки программирования, отличные от языков создания серверного кода (характерный пример — четыре средства разработки Microsoft).

Практически все производители серверных СУБД делают все возможное для того, чтобы клиентские приложения для их СУБД можно было создавать с помощью других средств разработки. С этой целью они предоставляют разработчикам описания API клиентской части, ODBC-драйверы, OLE DB-провайдеры, а нередко и объектные модели, позволяя использовать COM-объекты клиентской части в приложениях (как, например, это сделано в клиентских частях Oracle, Microsoft SQL Server, Informix).

Выбирая СУБД и средство разработки, обратите внимание на то, какие механизмы доступа к данным при этом можно использовать и какие именно серверные объекты в этом случае будут доступны клиентскому приложению. Есть смысл попробовать поработать с оценочными версиями этих продуктов, чтобы убедиться, что вы не попадете в ситуацию, описанную выше.

Поддержка доступа к данным с помощью Internet

Без поддержки публикации данных в Internet или получения данных от удаленных Internet-клиентов сегодня не обходится практически ни одна коммерческая СУБД, в том числе настольные базы данных. Тем или иным способом производители серверных СУБД поддерживают Web-технологии. Чаще всего эта поддержка осуществляется с помощью Web-серверов собственного производства, либо посредством создания расширений для существующих Web-серверов, либо просто путем включения в комплект поставки утилит, генерирующих Web-страницы согласно определенному расписанию.

Обсудив, какие сервисы предоставляют современные серверные СУБД, мы можем наконец поговорить и о конкретных серверах баз данных. Ниже мы рассмотрим наиболее популярные из них.

Читайте также: