Системы управления базами данных и знаний — КиберПедия 

Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...

Системы управления базами данных и знаний

2020-06-02 224
Системы управления базами данных и знаний 0.00 из 5.00 0 оценок
Заказать работу

   

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

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

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

Основная особенность современных СУБД - это то, что современные СУБД поддерживают такие технологии как:

· Технологию клиент/сервер. 

· Поддержка языков БД. Это язык определения схемы БД (SDL - Schema Definition Language),   язык манипулирования данными (DML - Data Manipulation Language), интегрированные языки SQL (Structured Queue Language), QDB (Query-By-Example) и QMF (Query Management Facility) – развитое периферийное средство спецификации запросов и генерации отчетов для DB2 и т. д.;

· Непосредственное управление данными во внешней памяти.

· Управление буферами оперативной памяти.

· Управление транзакциями. OLTP – технология (On -Line Transaction Processing), OLAP – технология (On -Line Analysis Processing) для DW.

·  Обеспечить защиту и целостность данных. Использование системы разрешается лишь пользователям, имеющим право доступа к данным. При выполнении пользователями операций над данными поддерживается согласованность хранящихся данных (целостность). Это важно в корпоративных многопользовательских информационных системах.

· Журнализация.

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

· Независимость данных.

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

· Совместимость. СУБД должна сохранять работоспособность при развитии программного и аппаратного обеспечения.

· Неизбыточность данных. В отличие от файловых систем база данных должна представлять собой единую совокупность интегрированных данных.

· Защита данных. СУБД должна обеспечивать защиту от несанкционированного доступа.

· Целостность данных. СУБД должна предотвращать нарушение базы данных пользователями.

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

· СУБД должна быть универсальной. Она должна поддерживать разные модели данных на единой логической и физической основе.

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

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

· их возможностей по отношению к распределенным (корпоративным) базам;

· их отношения к типу реализуемой в СУБД модели данных.

По отношению к корпоративным (распределенным) базам данных условно можно выделить следующие типы СУБД:

· СУБД «рабочего стола». Эти продукты, в первую очередь ориентированы на работу с персональными данными (данные "рабочего стола"). Они имеют наборы команд для совместного использования общих БД, но небольшого размера (типа малого офиса). Прежде всего, это СУБД типа Ассеss, dВАSЕ, Рагаdох, ЕохРго. Почему Ассеss, dВАSЕ, Рагаdох, ЕохРго имеют неудовлетворительный доступ к корпоративным данным. Дело в том, что не существует простого способа преодолеть барьер между персональными и корпоративными данными. И суть даже не в том, что механизм СУБД персональных данных (или малого офиса) ориентирован на доступ к данным через многие шлюзы, межсетевые продукты и т.д. Проблема состоит в том, что эти механизмы обычно связаны с полной передачей файлов и отсутствием разветвленной поддержки индексов, в результате чего очереди к серверу практически останавливают работу в больших системах.

· Специализированные высокопроизводительные многопользовательские СУБД. Такие СУБД характеризуются наличием многопользовательского ядра системы, языка манипулирования данными и следующими функциями, характерными для развитых многопользовательских СУБД:

· организацией буферного пула; 

· наличием системы обработки очередей транзакций;

· наличием механизмов многопользовательской блокировки данных;

· ведением журнала транзакций;

· наличием механизмов разграничения доступа.

Это СУБД типа Oracle, DВ2, SQL/Server, Informix, Sybase, ADABAS, Titanium и другие предоставляют широкий сервис для обработки корпоративных БД.     

При работе с базами данных используется механизм транзакций.

Транзакция – это логическая единица работы.

Транзакция - это последовательность операторов манипулирования данными, выполняющаяся как единое целое (все или ничего) и переводящая базу данных из одного целостного состояния в другое целостное состояние.

Транзакция обладает четырьмя важными свойствами, известными как свойства АСИД:

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

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

  • Подана команда COMMIT WORK (зафиксировать транзакцию).
  • Подана команда ROLLBACK WORK (откатить транзакцию).
  • Произошло отсоединение пользователя от СУБД.
  • Произошел сбой системы.

Для пользователя она носит, как правило, атомарный характер. На самом деле это сложный механизм взаимодействия пользователь (приложение) – база данных. Программное обеспечение корпоративных систем используют механизм обработки транзакций в реальном времени (On-lineTransaction Processing Systems, OLTP), в частности программы бухгалтерского учета, программное обеспечение приема и обработки клиентских заявок, финансовые приложения, производят массу информации. Эти системы рассчитаны (и соответствующим образом оптимизированы) на обработку больших объемов данных, выполнение сложных транзакций и интенсивных операций чтения/записи.

К сожалению, размещаемая в базах данных OLTP-систем информация мало пригодна для использования рядовыми пользователями (из-за высокой степени нормализации таблиц, специфических форматов представления данных и прочих факторов). Поэтому данные с разных информационных конвейеров отправляются (в смысле копируются) на склад для хранения, сортировки и последующей доставки потребителю. В информационных технологиях роль складов играют информационные хранилища.

Доставкой информации конечному пользователю - занимаются системы аналитической обработки данных в реальном времени (On-line Analytical Processing, OLAP), которые обеспечивают исключительно простой доступ к данным за счет удобных средств генерации запросов и анализа результатов. В OLAP-системах ценность информационного товара увеличивается благодаря применению разнообразных методов анализа и статистической обработки. Кроме того, эти системы оптимизированы с точки зрения скорости извлечения данных, сбора обобщенной информации и ориентированы на рядовых пользователей (имеют интуитивно понятный интерфейс). Если OLTP-система выдает ответы на простые вопросы типа "каков был уровень продаж товара N в регионе M в январе 199х г.?", то OLAP- системы готовы к более сложным запросам пользователей, например: "Дать анализ продаж товара N по всем регионам по плану на второй квартал в сравнении с двумя предыдущими годами".

 

    

Архитектура клиент/сервер

 

В современных системах распределенной обработки информации, центральное место занимают технологии клиент/сервер. В системе архитектуры клиент-сервер обработка данных разделена между компьютером-клиентом и компьютером-сервером, связь между которыми происходит по сети. Это разделение процессов обработки данных основано на группировании функций. Как правило, компьютер-сервер баз данных выделяется для выполнения операций с базами данных, а компьютер-клиент выполняет прикладные программы. На рисунке 2.1 показана простая система архитектуры клиент-сервер, в состав которой входят компьютер, действующий как сервер, и другой компьютер, действующий как его клиент. Каждая машина выполняет различные функции и имеет свои собственные ресурсы.

 

Сервер

База данных

Компьютер-сервер


Сеть

IBM-совместимый ПК IBM-совместимый ПК IBM-совместимый ПК

Клиенты

Приложения
     

 

Рис. 2.1. Система архитектуры клиент-сервер

 

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

Сервер (Server) – это объект (ЭВМ), предоставляющий услуги другим объектам по их запросам.

Как следует уже из самого термина, главная функция компьютера-сервера заключается в обслуживании потребностей клиента. Термин "Сервер" используется для обозначения двух различных групп функций: файл-сервер и сервер баз данных (далее эти термины означают в зависимости от контекста либо программное обеспечение, реализующее указанные группы функций, либо компьютеры с этим программным обеспечением). Файл-серверы не предназначены для выполнения операций с базами данных, их основная функция - разделение файлов между несколькими пользователями, т.е. обеспечение одновременного доступа многих пользователей к файлам на компьютере - файл-сервере. Примером файл-сервера является операционная система NetWare компании Novell. Сервер баз данных можно установить и привести в действие на компьютере -- файл-сервере. СУБД Oracle в виде NLM (Network Loadable Module) выполняется в среде NetWare на файл-сервере.

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

Одно из важных требований к серверу - это то, что операционная система, в среде которой размещен сервер баз данных, должна быть многозадачной (и, желательно, но не обязательно, многопользовательской). Например, СУБД Oracle, установленная на персональном компьютере с операционной системой MS-DOS (или PC-DOS), не удовлетворяющей требованию многозадачности, не может использоваться как сервер баз данных. И та же СУБД Oracle, установленная на компьютере с многозадачной (хотя и не многопользовательской) операционной системой OS/2, может быть сервером баз данных. Многие разновидности систем UNIX, MVS, VM и некоторые другие операционные системы являются и многозадачными, и многопользовательными.

Распределенные вычисления

Термин "распределенные вычисления" часто используется для обозначения двух различных, хотя и взаимодополнительных концепций:

  • Распределенная база данных;
  • Распределенная обработка данных.

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

 

 

  Существует много типов серверов:

· Сервер баз данных;

· Сервер печати;

· Сервер удаленного доступа;

· Факс-сервер;

· Web-сервер и т.д.

В основе базовой технологии Клиент/сервер лежат такие базовые технологии, как:

· Технологии операционных систем, концепция взаимодействия открытых систем, создание объектно-ориентированных сред функционирования программ;

· Телекоммуникационные технологии;

· Сетевые технологии;

· Технологии графического пользовательского интерфейса (GUI);

· И т.д.

Преимущества технологии клиент-сервер:

· Технология клиент/сервер позволяет производить вычисления на неоднородных вычислительных средах. Независимость от платформ: доступ к разнородным сетевым средам, в состав которых входят компьютеры разных типов с различными операционными системами.

· Независимость от источников данных: доступ к информации разнородных баз данных. Примеры таких систем -- DB2, SQL/DS, Oracle, Sybase.

· Баланс загрузки клиента и сервера.

· Выполнение вычислений там, где это происходит наиболее эффективно;

· Предоставляют возможность эффективного масштабирования;

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

· Приложение должно выполняться на нескольких платформах;

· На всех платформах оно должно иметь один и тот же интерфейс и логику работы;

· Приложение должно интегрироваться с родной операционной средой;

· Оно должно одинаково вести себя на всех платформах;

· Для него должна предусматриваться простая и согласованная поддержка.

· Распределенные вычисления. Распределенные вычисления предусматривают распределение работ между несколькими вычислительными машинами (правда, распределенные вычисления более широкое понятие).

· Разукрупнение. Разукрупнение – перенос приложений для больших ЭВМ на малые компьютерные платформы.

· Снижение затрат на инфраструктуру и аппаратные средства. Экономичность: доступность недорогого компьютерного оборудования и все большее распространение локальных сетей делают технологию клиент-сервер экономичнее других технологий обработки данных. Оборудование может быть модернизировано, как только возникнет необходимость.

· Сокращение общего времени выполнения приложения;

· Уменьшение использования клиентом памяти;

· Сокращение сетевого трафика.

· Возможность работы с мультимедиа: к настоящему времени создано немало программ работы с мультимедиа для ПК. Подобных программ для конфигурации терминал-хост либо нет, либо они очень дороги.

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

· Более высокая продуктивность работы программистов: производительность труда программистов возрастает благодаря использованию таких средств, как SQL*Forms и CASE: они позволяют разрабатывать приложения быстрее, чем такие языки программирования, как C, PL1 или COBOL.

· Повышение продуктивности работы конечных пользователей: в настоящее время многие конечные пользователи освоили такие системы, как Lotus, Paradox, Word Perfect, Harvard Graphics и т.д.

 

Интерфейс серверной части определен и фиксирован. Поэтому возможно создание новых клиентских частей существующей системы (пример интероперабельности на системном уровне).

Рис. 2.2. Иллюстрация доступа клиентов к общему ресурсу сервера.

 


Поделиться с друзьями:

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...

Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.043 с.