ПЗ (1219668)
Текст из файла
Министерство транспорта Российской Федерации
Федеральное агентство железнодорожного транспорта
Федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«Дальневосточный государственный университет путей сообщения»
Кафедра «Вычислительная техника и компьютерная графика»
К ЗАЩИТЕ ДОПУСТИТЬ
Заведующий кафедрой
______Ю.В. Пономарчук «_____»___________2015
база знаний предприятия на основе технологий NoSQL
Выпускная квалификационная работа
ВКР09.03.01.ИВТ.05.00.943-ПЗ
Студент 943 гр. А.В. Каляев
Руководитель
к.э.н., доцент М.А. Балалаев
Нормоконтролер
к.т.н, доцент Е.В. Буняева
Хабаровск 2015
СОДЕРЖАНИ
Используемые сокращения 4
Введение 5
1 Менеджмент знаний 7
1.1 База данных и база знаний 10
1.2 Инженерия знаний 11
1.3 Обзор технологий Semantic Web , Linked data и NoSQL 14
1.3.1 Семантическая паутина 14
1.3.2 Linked Open Data 19
1.3.3 Нереляционные базы данных 20
1.4 Процесс формирования и интеграции данных в NoSQL БД 25
2 Система сбора и анализ информации о работе пользователя 26
2.1 Система контроля действия пользователя 26
2.2 Создание и доработка программного комплекса 28
2.2.1 Сбор информации о содержимом каталогов и дисков 29
2.2.2 Мониторинг процессов 30
2.2.3 Мониторинг usb подключении 32
2.2.4 Создание базы данных для хранения журналов мониторинга 33
2.2.5 Написание программы и создание графического интерфейса 35
3 Интеграция данных из MySQL в CouchDB 40
3.1 Документно-ориентированная база данных CouchDB 40
3.2 Настройка подключения к web-серверу CouchDB 41
3.3 Взаимодействие cURL и PHP с базой данных CouchDB 42
3.3.1 Написание программного модуля средствами Qt 45
3.3.2 Написание web-приложения средствами PHP 46
4 Технико-экономическое обоснование разработки базы знаний предприятия на основе технологии NoSQL 49
4.1 Обоснование целесообразности разработки проекта 49
4.2 Планирование комплекса работ по разработке базы знаний предприятия на основе технологии NoSQL 50
4.3 Расчет затрат на разработку проекта 51
Заключение 55
Список использованных источников 56
Приложение А 59
ИСПОЛЬЗУЕМЫЕ СОКРАЩЕНИЯ
NoSQL – Not Only SQL
ACID – Atomicity, Consistency, Isolation, Durability (Атомарность, Согласованность, Изолированность, Надежность)
W3C – World Wide Web Consortium
БД – База Данных
СУБД – Система Управления Базой Данных
СУЗ – Система Управления Знаниями
SQL – Structured Query Language (язык структурированных запросов)
XML – Extensible Markup Language (расширяемый язык разметки)
RDF – Resource Description Framework (схема описания ресурсов)
OWL – Web Ontology Language (язык Web-онтологий)
URI – Uniform Resource Identifier (универсальный идентификатор ресурса)
URL – Uniform Resource Locator (универсальный указатель ресурса)
SPARQL – Protocol and RDF Query Language
XSD – XML Schema Definition Language (схема определения языка XML)
RDFS – RDF Schema
JSON – JavaScript Object Notation
ВВЕДЕНИЕ
В современных условиях, характеризующихся высокими темпами изменений бизнес-среды, важнейшим из ресурсов, требуемых предприятиям для успешной конкуренции, служат знания в значимых для данного бизнеса областях. Возникает проблема управления знаниями.
Обычно данные накопленные предприятием и хранимые в различных автоматизированных системах не имеет четких связей или не имеет вообще. Возникает потребность систематизации данных, а так же приведение данных к единому формату хранения для формирования базы знаний. Для создания базы знаний требуется специализированная база данных. Использование технологии реляционных БД трудоёмки и малоэффективны для этой задачи, поэтому появились альтернативные решения хранения данных основанные на NoSQL.
NoSQL базы данных хранят информацию в слабоструктурированном виде, т.е. в отличие от реляционных БД структура данных не регламентирована. Информация хранится в различных текстовых форматах (JSON, RDF). Форматы легко обрабатываются, а стандарты принятые W3C, для расширения этих форматов, позволяют связывать данные с использованием уникального идентификатора ресурса и предоставлять в глобальную базу знаний.
Целью выпускной квалификационной работы является интеграция данных из реляционной БД в хранилище данных, построенного с использованием технологии NoSQL для дальнейшего связывания данных с данными из семантической паутины.
Для достижения данной цели поставлены следующие задачи:
-
изучение процессов управления знаниями предприятия;
-
изучение технологии хранения слабоструктурированной информации;
-
построение программного комплекса «Сбора и хранение информации о работе пользователя»;
-
интегрирование данных из программного комплекса в NoSQL хранилище.
Данная работа выполняется в сотрудничестве с Дальневосточным центром системной и программной инженерии и служит материалом для дальнейшего исследования. Создается с целью дальнейшего ее внедрения в крупные компании, которые заинтересованы в данном функционале.
Для решения поставленных задач использованы самые актуальные данные и современные методы обработки информации.
Выпускная квалификационная работа состоит из четырех разделов.
В разделе 1 «Менеджмент знаний» проведено исследование процессов управления знаниями. Рассмотрены особенности технологии для хранения слабоструктурированной информации. А так же рассмотрены методы формирования связных данных для объединения с глобальной базой знаний.
В разделе 2 «Система сбора и анализа информации о работе пользователя» описывается построение программного комплекса и обозначены дальнейшие перспективы его развития.
Раздел 3 «Интеграция данных из MySQL в CouchDB» посвящен обзору особенностей NoSQL базы данных CouchDB. Рассмотрены методы переноса данных из одной базы в другую.
Раздел 4 «Технико-экономическое обоснование разработки базы знаний предприятия на основе технологии NoSQL» содержит экономическое обоснование внедрения и разработки базы знаний предприятия на основе NoSQL.
Проект находится в стадии усиленной доработки и тестирования.
-
МЕНЕДЖМЕНТ ЗНАНИЙ
Менеджмент знаний (управление знаниями) – систематические процессы идентификации, использования, передачи информации и знаний, которые люди могут создавать, совершенствовать и применять.
Граница между знаниями и информацией нечеткая и перемещающаяся. Знания означают глубокое понимание предмета и способность использовать имеющиеся данные, чтобы оценить новую информацию.
Менеджмент знаний включает в себя следующие компоненты [1]:
-
стимулирование прироста знаний;
-
отбор и аккумулирование значимых сведений из внешних по отношению к данной организации источников;
-
сохранение, классификация, трансформация, обеспечение доступности знаний;
-
распространение и обмен знаний, в том числе в рамках организации;
-
использование знаний в деловых процессах, в том числе в процессе принятия решений;
-
воплощение знаний в продуктах, услугах, документах, базах данных и программном обеспечении;
-
оценка знаний, измерение и использование нематериальных активов организации;
-
защита знаний.
Накопление и использование знаний в интересах достижения установленных целей является основой формирования «организации знаний», т.е. структуры, которая понимает важность внутренних и внешних знаний и в максимальной степени применяет разные технологии для их практического применения сотрудниками, акционерами и потребителями. Накопление и сосредоточение в организации знаний и информации образует корпоративную базу знаний [2].
Способ преумножения объема знаний и развития корпоративной базы знаний представлен спиралевидным процессом, изображенным на рисунке 1.
-
Спиралевидный процесс наращивания объема знаний [2]
Интерес к распространению знаний возрастает с достижениями в области информационных технологий, коммуникационных сетей и систем баз данных. Многие проекты в области знаний концентрируют внимание на строительстве систем для связи людей и получения знаний.
Проекты, в основе которых лежат технологии, занимаются системами коммуникаций, создаваемых в основном для людей, которые могут передать свои знания в корпоративную память.
Среди известных технологий, позволяющих передавать и аккумулировать знания, можно назвать:
-
традиционные системы автоматизации и информационно поисковые системы;
-
электронную почту, корпоративные сети и интеpнет-сеpвисы;
-
базы и хранилища данных;
-
системы электронного документооборота;
-
специализированные программы обработки данных (например, статистического анализа);
-
экспертные системы и базы знаний.
Система управления знаниями (СУЗ) – это набор повторяемых на регулярной основе управленческих процедур, призванных повысить эффективность сбора, хранения, распространения и использования ценной информации с точки зрения компании.
В состав СУЗ входит три компонента: человеческие, технологические, организационные. Структура организационных знаний состоит из практических, теоретических, стратегических, коммерческих и производственных знаний. Организация извлекает информацию, выстраивает умозаключения и генерирует новые знания с целью повышения качества выпускаемых изделий и оказываемых услуг и, следовательно, конкурентной позиции фирмы. Управление каждым из перечисленных элементов в составе системы управления знаниями основано на использовании уже рассмотренных процессов – создании, хранении, использовании и распространении знаний в рамках организации.
Грамотный контроль и управление знаниями позволяют повысить эффективность организационной деятельности предприятия за счет интеграции и систематизации информации из различных источников и организации доступа к ней с помощью базы знаний.
-
База данных и база знаний
Для того чтобы хранить и обрабатывать большой объем информации необходимо чтобы данные были упорядочены по различным признакам. Сделать это возможно, если данные – структурированы.
Структурирование – это введение соглашений о способах представления данных. Отсюда база данных – это поименованная структурированная совокупность взаимосвязанных данных, относящаяся к конкретной предметной области и находящаяся под специальным централизованным программным управлением (СУБД).
Системы управления базами данных (СУБД) – это специализированные программные продукты, позволяющие:
-
постоянно хранить сколь угодно большие (но не бесконечные) объемы данных;
-
извлекать и изменять эти хранящиеся данные в том или ином аспекте, используя при этом так называемые запросы;
-
создавать новые базы данных, т. е. описывать логические структуры данных и задавать их структуру, т. е. предоставляют интерфейс программирования;
-
обращаться к хранящимся данным со стороны нескольких пользователей одновременно (т. е. предоставляют доступ к механизму управления транзакциями).
По мере развития исследований в области интеллектуальных систем возникла концепция знаний. Знания – это закономерности предметной области (принципы, связи, законы), полученные в результате практической деятельности и профессионального опыта, позволяющие специалистам ставить и решать задачи в этой области [3]. По-другому знания можно описать как данные о данных или метаданные.
Знания представлены двумя разновидностями: фактами и правилами.
Факты – краткосрочные знания о предметной области, наиболее близкие по смысловому назначению к данным, содержащимся в базе данных.
Правила – долгосрочные знания о предметной области, предполагающие наличие алгоритма обработки фактов.
База знаний представляет собой совокупность фактов, а так же правил вывода, с помощью которых механизмы СУБЗ, в среде которых создается и функционирует база знаний, обеспечивают вывод одних данных на основе других, а также метазнаний, то есть описаний закономерностей, которым подчиняются данные и правила. Базу знаний можно назвать особого рода БД, разработанную для оперирования знаниями (метаданными).
Система управления базами знаний – это БД с возможностями интеллектуального поиска и автоматического переупорядочивания структуры в зависимости от действий пользователей [4].
Характерные черты:
-
иерархическая организация знаний;
-
специализированные средства для обработки конструкторских данных и знаний;
-
средства реорганизации и адаптации баз знаний к специфике задач;
-
расширяемая библиотека функций и команд для разработки приложений.
Методами и средствами извлечения, представления, структурирования и использования знаниями занимается инженерия знаний.
-
Инженерия знаний
Инженерия знаний представляет собой совокупность моделей, методов и технических приемов, нацеленных на создание систем, которые предназначены для решения проблем с использованием знаний. Фактически инженерия знаний – это теория, методология и технология, которые охватывают методы добычи, анализа, представления и обработки знаний [3].
Представление знаний, их обработка и использование, рассматриваемые применительно к конкретной прикладной области, являются предметом инженерии знаний.
Под термином «представление знаний» чаще всего подразумеваются способы представления знаний, ориентированные на автоматическую обработку современными компьютерами, и, в частности, представления, состоящие из явных объектов и из суждений или утверждений о них. Представление знаний в подобной явной форме позволяет компьютерам делать дедуктивные выводы из ранее сохранённого знания [3].
Характеристики
Тип файла документ
Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.
Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.
Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.








