Вопрос 2 – Основные элементы и архитектура управления базами данных



 

Системы управления базами данных состоят из нескольких основных элементов. К их числу относятся таблицы, запросы, формы, отчеты.

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

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

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

ОТЧЕТ – элемент СУБД представляющий собой представление информации, хранящейся в базе, в виде, пригодном для печати или передачи в другие программные оболочки (в Word, Excel).

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

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

СУБД с централизованной архитектурой.

СУБД с архитектурой файл-сервер.

СУБД с архитектурой клиент-сервер.

СУБД с трехуровневой архитектурой: "тонкий клиент" — сервер приложений — сервер базы данных. В СУБД с централизованной архитектурой.СУБД и сама база данных размещается и функционирует на центральном миникомпьютере (мэйнфрейме), а пользователи получают доступ к базе данных при помощи обычных терминалов - компьютер рассматривается просто как устройство ввода и отображения информа­ции: на мэйнфрейм передаются нажатия клавиш, в обратном направлении передаются данные, отображае­мые непосредственно на мониторе пользователя. Примерами СУБД с централизованной архитектурой являются ранние версии СУБД DB2, ранние версии СУБД Oracle и Ingres.

Рисунок 11 - Централизованная архитектура

 

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

Рисунок 12 - Файл-серверная архитектура

 

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

При архитектуре клиент-сервербаза данных хранится на сервере, а СУБД подразделяется на две части: клиентскую и серверную. Клиентская часть СУБД выполняется на стороне клиента и обеспечивает интерактивное взаимодействие с пользователем и формирование запросов к базе данных (на языке SQL). Серверная часть работает на сервере и взаимодействует с базой данных, обеспечивая выполнение запросов клиентской части. Т.е., если провести аналогию с рассмотренным выше примером, то клиентская часть сформирует и отправит серверной части запрос "Отбери для меня строки таблицы с товарами, по которым объем продаж не превышает 100 тыс. руб", серверная часть выполнит данный запрос и отошлет клиентской части только те строки, которые необходимо, не передавая по сети все строки таблицы. Большинство современных СУБД реализованы по архитектуре клиент-сервер: Oracle, MSSQLServer, PostgreSQL, MySQL, Informix, DB2 и др.

Рисунок 13- Архитектура клиент-сервер

 

Однако и архитектура клиент-сервер не лишена недостатков. Если деловая логика взаимодействия с базой данных (логика, определяющаяся порядком работы предприятия: какие таблицы и в каком порядке заполнять, что делать при добавлении нового сотрудника и т.д.) изменяется, то приходится заново перепи­сывать клиентские программы (вводить новые формы, менять порядок их заполнения и т.д.). Если измене­ния происходят слишком часто, а количество рабочих мест велико, то постоянная переустановка програм­много обеспечения (которая, кстати, должна осуществляться достаточно быстро) становится серьезной проблемой. В таких случаях следует переходить к трехуровневой архитектуре: "тонкий клиент" — Web-сервер — сервер базы данных. При трехуровневой архитектурев функции клиентской части ("тонкий клиент") входит только интерактивное взаимодействие с пользователем, а вся деловая логика вынесена в серверную часть, которая собственно и обеспечивает формирование запросов к базе данных, передавае­мых на выполнение. "Тонкий клиент" находится на компьютере пользователя и чаще всего представляет из себя Web-броузер (например, InternetExplorer), с помощью которого осуществляется доступ с специальной HTML-странице, размещенной в сети (на Web-сервере), после чего возможно с применением в соответствующей HTML-странице апплетов Java или компонентов ActiveX дистанционно запускать специальные микропрограммы, обращающиеся к системе управления базой данных, для создания запросов и редактирования базы данных. Таким образом, Web-сервер осуществляет связь между пользователями (клиентами и сервером базы данных).

Рисунок 14 - Трехуровневая архитектура

 

Преимущества трехуровневой архитектуры очевидны: при необходимости изменений в структуре или программной оболочке базы данных изменения вносятся только один раз — на сервере базы данных. Изменять или переустанавливать клиентские программы нет никакой необходимости.

 

Вопрос 3 – Базы знаний

 

Знания

Как отмечалось ранее, знания могут передавать понимание, опыт, навыки, мнения применительно к конкретной задаче.В этом случае знания можно определить как набор моделей, которые используются для интерпретации, прогнозирования и управления внешним миром. Они представляют собой совокупность декларативных (факты) и процедурных (методы) утверждений. Знания имеют разные уровни: есть вещи, которые легко изучить и объяснить, а есть вещи, которые изучить и объяснить трудно. Низший уровень знаний — это факты, которые можно констатировать, приводить в виде таблиц, перечней, диаграмм, иллюстраций и графиков. Следующий уровень знаний — это понятия, которые суть обобщения. Они поясняют группы объектов, символов, процессов и событий с общими атрибутами. Это означает, что классификация по сути своей искусственна. Понятия бывают конкретными и абстрактными. Следующий уровень знаний — правила, которые вырабатываются путем анализа фактов и поня­тий. Правила представляют собой наборы операций и шагов, направленных на решение задачи, достижение цели или получение какого-либо продукта. Правила представляют знания в виде операторов или алгоритмов типа «если, то» и используются при разработке стратегии решения задач.

Высшим уровнем знаний являются правила высокого порядка и эвристическое решение задач. Эвристические знания основаны на создании правил и их применении в нестандартных ситуациях, что дает возможность выхода за пределы знаний, основанных на правилах и алгоритмах. Это синтез новых фактов и понятий на основе ранее изученных правил. Факты из какой-либо предметной области могут быть взяты из банка фактов. Наборы фактов могут объединяться в понятия. Понятия получают определение, «очищаются» и преобразуются в правила. Затем факты, понятия и правила синтезируются, а их границы расширяются с целью создания эвристических знаний.

Эвристические знания уникальны для каждого человека. Они основываются на индивидуальных «эмпирических» правилах или «систематических догадках». В то время как для решения стандартных и четко определенных задач применяются алгоритмы, эвристические правила относятся к задачам, возможные исходы и решения которых не определены. Эвристические знания основаны большей ча­стью на методах и правилах открытий и инноваций.

Инженерия знаний определяет их как набор фактов, понятий, правил и эвристики, направленных па решение задач. Знания о каком-либо предмете могут быть разделены на две группы: декларативные и процедурные. Декларативные знания — это описательное представление в какой-либо предметной области. Это поверхностные знания о том, что собой представляет предмет, как он выглядит и что он означает. Знание того, «что» представляет собой отчет о прибылях и убытках, является примером декларативного знания (знания фактов). Процедурные знания являются набором интеллектуальных способностей, направлен­ных на знание того, «как» сделать что-либо (например, как подготовить годовой отчет о прибылях и убытках фирмы). Процедурные знания являются предписывающими: они используют процедурные знания для определения образа действий.

Факты и понятия по большей части относятся к декларативным знаниям. Правила и алгоритмы являются примерами процедурных знаний. Наличие процедуры выполнения какого-либо действия не обязательно означает наличие навыков, необходимых для осуществления задачи. Декларативные и процедурные знания отдельного человека основаны на его опыте, воспитании и обучении. Знания подразумевают изучение, осведомленность и компетентность в различных вопросах, которые представлены в ментальных моделях (интеллектуальные модели).

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

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

 

Применениезнаний

Мышление, решение задач и рассуждения — это пути развития и применения человеческих знаний. Как гласят различные определения, мышление — это направленная, ориентированная на цель деятельность, сконцентрированная па решении задач. Это также активный мыслительный процесс, направленный на разработку и изменение ментальных моделей. Ментальные модели — это структуры знаний, которые создаются во время изучения или выполнения различных задач. Мышление подразумевает активную интеграцию новых знаний с существующими знаниями и навыками. Это основа обучения, процесса разработки новых и более совершенных ментальных моделей и когнитивных навыков. Наиболее эффективное приобретение новых знаний — это «обучение на деле». Ре­шения задач и затруднений часто находятся там, откуда их никто не ждет. Ре­зультат решения — это переход из первоначального состояния в желаемое (целевое) состояние.

При решении задач человек использует четыре типа рассуждения: рассуждение с привлечением здравого смысла, рассуждение с проведением аналогий, дедуктивное рассуждение и индуктивное рассуждение. Рассуждение с привлечением здравого смысла основано на индивидуальном опыте и фактах, усвоенных человеком за его жизнь. Современные системы с базой знаний не работают с таким видом рассуждений из-за его сложности. Исключением является только так называемый эвристический поиск, разновидность эмпирических правил, с помощью которых можно исключить наименее вероятные альтернативы. Современные системы с базой знаний не используют и рассуждения с проведением аналогий, поскольку они основаны на сравнении рассматриваемой задачи с уже известным и принятым стандартом поведения в аналогичной ситуации. Проведение таких аналогий основано на способности распознавать сходство ситуации с прошлым опытом. В основе дедуктивных рассуждений лежат логические цепочки, построенные на предпосылках, ведущих к заключениям. Предпосылки состоят из истинных утверждений и правил. При дедуктивных рассуждениях происходит переход от общего к частностям. Используя общие факты, истины и утверждения, человек приходит к какому-либо выводу либо выбирает направление деятельности. Ин­дуктивное рассуждение, напротив, идет от частностей к общему, поэтому оно не такое точное, как дедуктивное. При интерпретации логики, которая описывает имевшие место факты, оно зачастую основывается на подходе наилучшей догадки. Дедуктивные и индуктивные рассуждения широко используются при разработке систем с базой знаний.

 

Источники знаний

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

 

Системы баз знаний

Говоря простым языком, системы баз знаний — это искусство, которое использует достижения науки. Навыки, необходимые для работы с системами баз знаний, включают в себя познания в области информатики, когнитивной психологии, поведенческой теории и компетентности в конкретной предметной области. Системы баз знаний — это системы, которые имитируют человеческий интеллект. Они включают в себя экспертные системы, системы гипермедиа, системы автоматизированной разработки программного обеспечения (CASE, computer-aided/-assistedsoftwareengineering), интеллектуальные обучающие системы и гибридные системы.

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

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

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

• первоначальное состояние;

• целевое состояние;

• операторы.

Первоначальное состояние задается пользователем. Цели заранее определены и хранятся в базе знаний как результаты. Операторы представляют собой процедуры (от простых алгоритмов до сложных стратегий поиска), ведущие от первоначального состояния к цели, через промежуточные состояния. Этот процесс проще всего представить в виде дерева поиска. Корень дерева — это первоначальное состояние, а его ветви представляют собой возможные промежуточные и конечные состояния. Путь, ведущий к конечному состоянию, с помощью операторов находят специализированные управляющие программы. В машинных средствах решения задач, например системах баз знании, такая управляющая программа называется «машиной вывода». Машина вывода контролирует и осуществляет стратегии рассуждений при поиске в базе знаний. При поиске может быть использована одна - две базовых модели: слепой поиск (в случае, если поиск должен осу­ществляться по всем узлам дерева) и эвристический поиск (в случае, если есть возможность «сократить» путь).

Теория проектирования систем баз знаний основана на иерархии «данные — мудрость». Данные представляют собой факты и цифры, необработанную информацию и концепции, сформированные путем изложения фактов. Обработанные данные представляют собой информацию. Информация образуется при выяснении смысла данных с помощью анализа, в результате которого большой объем исходного материала преобразуется в совокупность небольших взаимосвязанных частей. Знания являются синтетической информацией. В результате синтеза формируются более сложные структуры, основанные на моделях, правильно описывающих процесс или объект, и приводятся примеры возможных действий. Люди, группы и целые культуры собирают и обрабатывают информацию и формируют знания. Их сравнивают с другими знаниями, чтобы достичь понимания и получить направляющие решения. Затем собранные знания оцениваются в соответствии с ценностями, законами, суждениями и другими (профессиональными) стандартами, и появляется мудрость. В то время как знания считаются пределом для интеллектуальных машин, мудрость является уделом человечества.

Сбор данных, анализ и синтез информации и ее преобразование в мудрость — иерархический процесс. Кто способен осуществить преобразование данные — информация - знания, именуется экспертом. Экспертная оценка обычно ограничивается знаниями в конкретной предметной области.

Эксперты

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

Эксперты, занимающиеся разработкой баз знаний, должны обладать как декларативными, так и процедурными знаниями в предметной области. Они должны быть способны не только решить задачу, но также объяснить свои решения дру­гим. Если у одного эксперта знаний недостаточно, привлекают группу экспертов,

Будущее

 

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

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

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

У компьютера большие возможности искусственного интеллекта. Он превратится из устройства для обработки данных в устройство для обработки знаний. Обладая сенсорными связями и роботами, система с базой знаний сможет собирать и анализировать информацию, а также действовать без вмешательства человека. Языковое программное обеспечение будет имитировать интуицию. Дополнительные технологии, такие как нейросети или «широкомасштабная» параллельная обработка, подготовят почву для появления интеллектуальных машин более высокого уровня.


Дата добавления: 2018-02-28; просмотров: 607; Мы поможем в написании вашей работы!

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






Мы поможем в написании ваших работ!