Математическое и программное обеспечение организации взаимодействия программных систем и баз данных с использованием ORM-библиотек в логических структурах архитектур сетевых порталов тема диссертации и автореферата по ВАК РФ 05.13.11, кандидат наук Мельников, Сергей Викторович
- Специальность ВАК РФ05.13.11
- Количество страниц 139
Оглавление диссертации кандидат наук Мельников, Сергей Викторович
Оглавление
Введение
Глава 1. Аналитический обзор современного состояния математического и программного обеспечения организации взаимодействия программных систем и баз данных с использованием ORM-биб-лиотек
1.1. Программа и программная система как информационная система
1.2. Трехуровневая архитектура как современный подход к проектирования информационных систем
1.2.1. Доступ к данным из уровня логики сетевого портала
при помощи ORM-библиотек
1.3. ORM-библиотеки, применяемые при разработке программных систем
1.3.1. Библиотека "Hibernate"
1.3.2. Библиотека "ADO.NET Entity Framework"
1.3.3. Кэширование в ORM-библиотеках как средство увеличения скорости выполнения запросов к СУБД
1.4. Анализ методов моделирования программных систем
1.4.1. Поток энтропии как причина самоорганизации системы
1.4.2. О философском аспекте понятия "диссипация" и его применении к программным информационным системам
1.4.3. О критике трактовки энтропии как меры беспорядка
1.4.4. Аналитическое моделирование поведения программных систем
1.5. Постановка задачи
Глава 2. Математическая модель организации взаимодействия программных систем и систем управления базами данных с использованием программных ОКМ-библиотек
2.1. (ЖМ-библиотека как программный компонент архитектуры информационных систем
2.2. Математическое описание работы СЖМ-библиотеки с помощью кинетических уравнений
2.2.1. Определение критерия перехода СЖМ-библиотеки в колебательный режим на основе линейного анализа устойчивости
2.2.2. Особенности стационарного и колебательного режимов работы ОКМ-библиотеки
2.3. Численное моделирование нелинейного режима работы ОЛМ-библиотеки при помощи системы компьютерной алгебры МаШСаё
2.3.1. Анализ темпа запросов из ОЯМ-библиотеки к системе управления базой данных
2.3.2. Расчет численных характеристик макроструктур в системе компьютерной алгебры МаЛСаё
2.3.3. Возникновение диссипативных макроструктур в программных системах и системах управления базами данных
2.4. О развитии понятия «диссипация» в информационных системах
2.5. Сводка основных результатов
Глава 3. Разработка имитационной модели программной ОКМ-библиотеки и анализ режима ее работы
3.1. Синтез модели ОКМ-библиотеки
3.1.1. Техническое предложение для реализации модели ORM-библиотеки
3.1.2. Разработка имитационной модели на языке С++ в среде Visual Studio
3.1.3. Общий вид программы
3.2. Динамика выполнения имитационной модели ORM-библиотеки
3.2.1. Анализ динамики количества объектов X и Y
3.2.2. Влияние макро-структур на объем занимаемой памяти
3.3. Сводка основных результатов
Заключение
Глоссарий
Список литературы
Приложение 1. Листинг программы, моделирующей возникновение диссипативных структур в программных системах
Приложение 2. Листинг программы для исследования приложений на платформе Java
Рекомендованный список диссертаций по специальности «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», 05.13.11 шифр ВАК
Математическое и программное обеспечение процессов управления потоками данных в гетерогенных информационных системах специального назначения2020 год, кандидат наук Терехов Дмитрий Владимирович
Специальное математическое и программное обеспечение реляционных СУБД для интервальнозначных типов данных2019 год, кандидат наук Мирошников Артём Игоревич
Исследование и разработка методов построения и кэширования веб-приложений2009 год, кандидат технических наук Носов, Виктор Павлович
Проектирование информационных систем в рамках объединенного объектно-реляционного подхода2007 год, кандидат технических наук Добряк, Павел Вадимович
Архитектура и программная инфраструктура систем управления контентом и модели описания их функционирования2018 год, кандидат наук Иванов Алексей Владимирович
Введение диссертации (часть автореферата) на тему «Математическое и программное обеспечение организации взаимодействия программных систем и баз данных с использованием ORM-библиотек в логических структурах архитектур сетевых порталов»
Введение
В настоящее время при постоянном увеличении требуемой скорости разработки программ все чаще поднимается вопрос об использовании готовых программных компонентов, особенно для задач, не специфичных для конкретной программы, например обеспечение быстрого доступа к данным и знаниям.
Этому вопросу посвящен широкий спектр литературы: от классической [1, 2] до современной [3-7]. Написанная почти 40 лет назад книга "The Mythical Man-Month: Essays on Software Engineering" Ф.Брукса [1] переиздается до сих пор [8, 9].
В среде профессиональных разработчиков существует устойчивый интерес к ORM-библиотекам — наборам подпрограмм, используемых для упрощения доступа к данным из логики программы. Использование готовых подпрограмм для доступа к данным позволяющим сократить трудозатраты на разработку, избавиться от явного SQL-кода запросов к системам управления базами данных (СУБД), унифицировать доступ к различным СУБД и упростить сопровождение кода в дальнейшем. Также, использование ORM-библиотек позволяет увеличить быстродействие программы в целом за счет использования кэширования результатов запросов к СУБД, иными словами процесса оптимизации доступа к данным при помощи сохранения результатов выполнения запросов в локальной памяти.
Однако, не смотря на возрастающую тенденцию к применению ORM-библиотек при промышленной разработке программного обеспечения, в литературе остаются не освещенными пределы и возможности их применения, оцененного по результатам математического моделирования. Не рассмотрены аспекты влияния внутренних особенностей ORM-библиотек, такие как возникновение диссипативных макро-структур, на пользовательские характеристики ORM-библиотек. Недостаточно внимания уделено границам возможно-
сти и целесообразности применения (ЖМ-библиотек в качестве компонента современной портальной архитектуры программных систем для доступа программ к данным и знаниям.
Исследования, проведенные диссертантом в период 2009-2014гг. показывают, что агрессивное кэширование в СЖМ-библиотеке может стать причиной возникновения колебательных явлений, или, по терминологии И.Пригожина, "диссипативных структур" [10-12].
Диссертант постулируется возможность существования двух режимов работы ОЛМ-библиотек: линейный (ламинарный) и нелинейный. В линейном режиме состояние СЖМ-библиотеки линейно зависит от входных параметров. При нелинейном режиме изменение внутреннего состояния СЖМ-библиотеки будет иметь значительно более сложный, возможно периодический, вид. Колебательному режиму работы присущи характерные особенности, в том числе: непостоянный расход памяти, замедлением обработки запросов от основной логикой работы в моменты пиковой нагрузки, скачкообразной нагрузкой на СУБД, также приводящей к повышенному расходу памяти и снижению скорости обработки запросов. В работе изложены основания для того, чтобы считать линейный режим работы, характеризующийся постоянными значениями количества промежуточных объектов более оптимальным, по сравнению с циклическим режимом по критерию влияния на такие характеристики как объем занимаемой памяти и среднее время обработки запроса.
Таким образом, исследования, проведенные диссертантом, позволяют говорить о том, что в некоторых случаях применение кэширования СЖМ-биб-лиотеками при доступе к данным может увеличить среднее время обработки запросов (т.е. снизить скорость работы всей информационной системы). Математическое модель, разрабатываемая в диссертации, позволит заранее предсказать возникновение "диссипативных структур" в каналах связи с СУБД и возможные способы устранения данных негативных явлений или доказать невозможность такого перехода.
Верификация теоретических положений требует разработки программной модели ORM-библиотеки. Вполне вероятно, что возникновение диссипа-тивных макро-структур в программных системах может оказаться характерным для широкого класса систем, занимающихся обработкой данных.
Целью диссертационной работы является восполнение пробела в области моделирования программных инструментальных средств взаимодействия порталов с СУБД на примере ORM-библиотек с получением формального критерия их перехода из линейного в циклический режим работы или доказательство невозможности такого перехода.
Для достижения этой цели в диссертации необходимо решение задач, связанных с: 1) созданием математической модели ORM-библиотеки. Введением критерия возникновения диссипативных макро-структур в процессе кэширования в ORM-библиотеке; 2) оценкой влияния макро-структур на пользовательский характеристики ORM-библиотеки; 3) созданием программ, моделирующих ORM-библиотеки в процессе доступа к данным; 4) исследованием поведения программ-моделей в практических задачах.
Перечисленные задачи будут дополнены и уточнены в разделе 1.5 "Постановка задачи" по результатам аналитического обзора Главы 1.
Основные результаты работы
1. Критически рассмотрена и теоретически обоснована целесообразность организации взаимодействия программных систем и баз данных посредством ORM-библиотек, в качестве совокупности программных логических блоков современной архитектуры сетевых порталов. Разработаны рекомендации с целью примения ORM-библиотек для двух наиболее распространенных платформ: Java и .NET.
2. Впервые в программных системах обнаружен и исследован нелинейный режим работы программных блоков в составе ORM-библиотек при взаимодействии "слоя логики" сетевого портала с системой управления ба-
зой данных. Установлено, что в нелинейном режиме зависимость внутреннего состояния блоков ORM-библиотеки от входных параметров имеет сложный и во многих случаях периодический вид. Построен фазовый портрет ORM-библиотеки в нелинейном режиме работы, смоделирова-ном в системе компьютерной алгебры MathCad.
3. В процессах взаимодействия программных систем и баз данных с использованием ORM-библиотек в нелинейном режиме работы обнаружен эффект возникновения диссипативных макро-структур, впервые обнаруженных и исследованных И. Пригожиным в физических системах. В работе установлено, что основной причиной возникновения диссипативных макро-структур является использование агрессивного кэширования результатов запросов в ORM-библиотеках.
4. На основе результатов исследования математической модели организации взаимодействия программных систем и баз данных с использованием ORM-библиотек определен критерий перехода этих систем в процессе кэширования из линейного в нелинейный режим. Критерий учитывает параметры трафика запросов из логики портала к ORM-библиотеке и скорости соответствующих трансформаций объектов ORM-библиотекой.
5. Для количественного выражения неравномерности темпа запросов к СУБД введен численный показатель К повышенной загрузки СУБД формально описываемый следующим образом:
К = где 3fi : Ух е [f0, h) : S(x) > A U Vx' € [tut0 + T)S(x?) < A Численное моделирование показало, что К = 0.29. Это означает, что 29% всего времени к СУБД отправляется больше среднего запросов, в оставшиеся 71% - меньше среднего.
6. Разработаны математическая и имитационнная модели описания процесса доступа к данным (знаниям) из сетевого портала при помощи ORM-библиотек. Предложен подход для более точного мониторинга состояния модели на инструментальной платформе Java. Проведенные экс-
перименты демонстрируют значительные колебания объема памяти, занимаемого программой.
7. Проведен анализ влияния нелинейного режима работы СЖМ-библиоте-ки на пользовательские характеристики сетевого портала. Показано, что нелинейный, циклический режим работы может негативно сказаться на скорости обработки запросов и объеме памяти, занимаемой программной системой.
8. Научные положения диссертации внедрены в учебный процесс кафедры ИИС, факультета ИТ МГТУ МИРЭА в рамках учебного пособия "Проектирование мультимедиа систем", подготовленного с участием диссертанта, и читаемого им учебного лекционного курса "Технологии программирования". Выводы и рекомендации работы нашли отражение в практических разработках ряда организаций , а также использованы при проектировании и создании портальных образовательных систем в инновационном центре МГТУ МИРЭА в период 2011-1 Згг.
Структура и объем диссертации Диссертация состоит из Введения, трех глав, Заключения и двух приложения. Текст диссертации завершает Глоссарий, содержащий 18 терминов и дефиниций, относящихся к теме диссертации. Полный объем диссертации составляет 139 страниц с 20 рисунками. Список литературы содержит 180 источников.
Глава 1
Аналитический обзор современного состояния математического и программного обеспечения организации взаимодействия программных систем и баз данных с использованием ОКМ-библиотек
1.1. Программа и программная система как информационная система
В литературе [8, 13-16], посвященной информационным технологиям используется два термина: "информационная система" и "программная система". Рассмотрим подробнее их значение.
Программа — «данные, предназначенные для управления конкретными компонентами системы обработки информации в целях реализации определенного алгоритма»[17]. Программа — «представленная в объективной форме совокупность данных и команд, предназначенных для функционирования ЭВМ и других компьютерных устройств с целью получения определенного результата, включая подготовительные материалы, полученные в ходе разработки программы для ЭВМ, и порождаемые ею аудиовизуальные отображения»[ 18].
Программа — «последовательность инструкций, предназначенных для исполнения устройством управления вычислительной машины. Программа — один из компонентов программного обеспечения. В зависимости от контекста рассматриваемый термин может относиться также и к исход-
ным текстам программы. Компьютерные программы, как объект авторского права и других прав интеллектуальной собственности, относится к категории нематериальных активов»[19].
Программная система — «система, в которую входит программное обеспечение. В общем случае программная система помимо собственно программ содержит еще и аппаратное обеспечение, а также обычно рассматривается в окружении других программно-аппаратных систем»[20].
Программная система — «это программы, для которых характерны востребованностью и готовностью пользователей платить деньги, как за приобретение самой программы, так и за ее сопровождение и даже за специальное обучение работе с ней. ... Чаще всего представляет собой не просто код или исполняемый файл, а включает еще и набор проектной и пользовательской документации»[21].
Информационная система — «совокупность технического, программного и организационного обеспечения, а также персонала, предназначенная для того, чтобы своевременно обеспечивать надлежащих людей надлежащей информацией» [22].
Информационная система — «совокупность содержащейся в базах данных информации и обеспечивающих ее обработку информационных технологий и технических средств»[23].
Информационная система — «комплекс, включающий вычислительное и коммуникационное оборудование, программное обеспечение, лингвистические средства и информационные ресурсы, а также системный персонал и обеспечивающий поддержку динамической информационной модели некоторой части реального мира для удовлетворения информационных потребностей пользователей»[15].
Информационная система — «система обработки информации, работающая совместно с организационными ресурсами, такими как люди, техниче-
ские средства и финансовые ресурсы, которые обеспечивают и распределяют информацию»[24]. Информационная система — «подмножество компонентов ИС в широком смысле, включающее базы данных, СУБД и специализированные прикладные программы. ИС в узком смысле рассматривают как программно-аппаратную систему, предназначенную для автоматизации целенаправленной деятельности конечных пользователей, обеспечивающую, в соответствии с заложенной в нее логикой обработки, возможность получения, модификации и хранения информацию^ 16].
Понятие "информационная система" шире и во многом эквивалентно понятиям "программа" и "программная система". "Информационная система" может включать в себя кроме как таковой "программной системы" комплекс административных и аппаратных ресурсов, используемых для обработки информации. Кроме того, термин "информационная система" несет оттенок более высокоуровневого архитектурного рассмотрения: рассматриваются инструкции/команды управления, предназначенные для конкретной цели или задачи.
В настоящей работе термины "программа" и "программная система" трактуются в соответствии в соответствии с первым [17] и четвертым [20] определениями соответственно, а "информационная система" в соответствии с седьмым определением [23]. Таким образом, далее по тексту термины "информационная система" и "программная система" во многих случаях используются как синонимы. Предпочтение отдается термину "программная система" для того, чтобы подчеркнуть акцент на программном обеспечении.
Рассмотрим подробнее архитектуру современных информационных систем на примере сетевых порталов1. На данный момент общепринятой архитектурой для создания сетевых порталов является трехзвенная (также на-
1 Далее для краткости сетевые порталы будут называться просто порталами
зываемая трехуровневая2) архитектура. Ей посвящено множество публикаций и простых обсуждений на форумах интернет [14, 25-36]. Сетевые порталы и портальное строительство являются достаточно разработанной сферой информационных технологий, которой посвящено множество источников, например [13, 14, 37^-0]. Также, порталы являются хорошими примерами трехзвенной архитектуры, рассмотрению которой будет посвящен следующий раздел.
1.2. Трехуровневая архитектура как современный подход к проектирования информационных систем
В трехуровневой архитектуре сетевых порталов обычно выделяют три логических "слоя", имеющие различной назначение:
1. Уровень представления - реализует визуализацию графического интерфейса пользователя: отображает в графическом виде информацию и интерактивно взаимодействует с пользователем. Имеет минимальную логику обработки данных (обычно только первичную верификацию). Для сетевых порталов уровнем представления является web-браузер на удаленном компьютере ("тонкий клиент" [28]).
2. Уровень логики - реализует обработку данных, поступающих от уровня представления. Подавляющее большинство логики работы сетевого портала сосредоточено в этом уровне.
3. Уровень данных - реализует долговременное ("персистентное" - от англ. persistent - долговременный) хранение данных. Обычно используется одна из распространенных систем управления базой данных3 [34, 35, 41].
На рисунке 1.1 показано схематичное графическое изображение трехуровневой архитектуры сетевых порталов.
2 "Трехуровневый" и "трехзвенные" здесь синонимы
3 Далее СУБД - система управления базой данных
(http) -
Native
Corporate Data
Oracle, DB2, MS SQL Informix, Sybase, InterBase
DBMS Server
Рис. 1.1. Трехуровневая архитектура порталов [42]
К достоинствам трехуровневой архитектуры относят [28]:
( ПОР
(рсом)
С ЯРС )
(Sockets)-
Windows dient
HTML Oient
eploy Deploy
Java Client
Масштабируемость — возможность независимого масштабирования каждого уровня архитектуры.
Интегрируемость — возможность существенных изменений в одном слое без изменений в других слоях.
Безопасность — данные приложения хранятся в одном месте, с которым пользователь взаимодействует только через логику сетевого портала.
Уровень представления и уровень данных обычно практически не содержит пользовательского кода разработчиков, используются готовые компоненты:
1. Уровень представления - web-браузер, поставляемый вместе с операционной системой или сторонний, установленный позже.
2. Уровень данных - одна из распространенных СУБД [34, 35], например MsSQL, Oracle, IBM DB2 и др. Уровень логики взаимодействует с уровнем данных через стандартный язык SQL, за счет чего достигается относительная простота перехода с одной СУБД на другую.
Современные сетевые порталы являются хорошей иллюстрацией трех-звенной архитектуры на практике. За уровень представления, как было сказано выше, отвечает стандартный web-браузер, установленный у пользователя. Уровнем данных является одна из индустриально применяемых СУБД, обычно MySQL или Postgree. Созданию сетевых порталов посвящено множество публикаций [13, 37, 43, 44]. Для высоконагруженных сетевых порталов остро стоит проблема увеличения производительности, в первую очередь доступа к данным [45, 46].
В дальнейшем будет рассмотрен в основном уровень логики, так как именно в нем сосредоточен код, написанный разработчиками. Разработка именно этого слоя занимает большую часть времени разработки информационной системы, так как на остальных уровнях используются стандартизированные компоненты широкого профиля, следовательно размер написанного кода значительно меньше.
Полное господство на рынке СУБД имеют реляционные базы данных (например: Oracle, MsSQL, Interbase/FireBird, MySQL), использующие реляционную модель организации данных: хранящие таблицы заранее определенной структуры, заполненные записями-значениями. Однако, отображения реального мира в проектировании и разработке программного обеспечения, называемые сущностями, достаточно плохо укладываются в реляционную модель данных. Например, у сущности "Задание" могут быть разные поля в зависимости от вида задания. В результате, проектировщику схемы СУБД приходится
либо дробить сущность на несколько сущностей ("Задание типа 1", "Задание типа 2", ...) и создавать для хранения каждого подвида сущности отдельную таблицу в СУБД, что крайне затрудняет последующее агрегирование данных (например, для создания отчета), либо записывать разные поля сущностей разных типов в одни и те же столбцы (поля) таблицы. Также нетривиально является создание связей типа "многие-ко-многим" в реляционной модели данных, так как требуется дополнительная таблица, хранящая связи.
При рассмотрении уровня логики в работе диссертант фокусирует внимание на взаимодействии пользовательского кода с СУБД, или доступом к данным.
1.2.1. Доступ к данным из уровня логики сетевого портала при помощи ORM-библиотек
Для упрощения взаимодействия с СУБД (а, следовательно, и ускорения написания кода) разработчики могут использовать собственные компоненты, которые инкапсулируют детали физической организации данных в СУБД. Особенностям архитектыры и технических решение создаваемых программных информационных систем посвящено множество публикация [40, 47].
Типичные БД (DB2, Oracle, Sybase, MS SQL) являются реляционными и оперируют таблицами, полями и записями (кортежами) [48, 49]. Такая форма удобна для организации хранилища, но довольно слабо отражает понятия императивных языков программирования. Термины поле и запись, которыми оперирует БД, довольно плохо транслируются в объектное представление, с которым оперирует типичный язык программирования (PHP, С++, java, ObjectPascal, ...). Если простой набор полей объекта просто и однозначно транслируется в запись таблицы БД, то описание связей объектов уже представляет определенную сложность. Наиболее ярко это проявляется в связях
Многие-Ко-Многим: необходима дополнительная таблица, в которой хранятся списки связанных объектов.
Разработчики сетевых порталов вынуждены абстрагироваться от логики БД с помощью т.н. программных "оберток" (англ. wrapper). Написание кода "оберток" хоть и рутинно, но отнимает ощутимое время и в большинстве случаев нецелесообразно [50]. Для его минимизации возможно применение готовых программных библиотек для организации взаимодействия с БД. Такая готовая библиотека с одной стороны сохраняет особенности способа хранения данных в БД, а с другой стороны предлагает разработчику удобный интерфейс доступа к данным, выраженный в терминах языка программирования, а не БД. Такие библиотеки называют Библиотеками Объектно-Реляционного Соответствия (англ. Object - Relation Mapping frameworks), представляющими собой набор необходимых подпрограмм [51, 52]. Далее по тексту эти библиотеки будут называться ORM-библиотеками. В диссертации ORM-библио-тека рассматривается как программный инструмент (набор необходимых подпрограмм) для организации взаимодействия высокоуровневой логики сетевого портала и низкоуровневой логики физического хранения данных в СУБД.
ORM-библиотеки позволяют полностью избавить разработчика от написания низкоуровневого кода SQL-запросов. ORM-библиотека автоматически трансформируют объекты - логические сущности в реляционное представление и обратно при чтении/записи данных из СУБД, фактически представляя собой дополнительный слой логической абстракции в архитектуре информационных систем (см. рис. 1.1). Стоит отметить, что ORM-библиотеки могут применять кэширование результатов запросов для ускорения работы (например, можно отложить выполнение запроса записи, так как через какое-то время может потребоваться выполнение запроса записи (фактически, поверх) и выполнение первого запроса окажется избыточным). Рост количества ORM-библиотек, реализующих прозрачную трансформацию реляционных данных
в сущностные объекты и обратно, показывает наличие интереса к СЖМ-биб-лиотекам в профессиональных сообществах разработчиков [53].
Рис. 1.2. ORM-библиотека в упрощенной структуре современного сетевого портала
На рис. 1.2 изображена обобщенная архитектура системы, в которой все взаимодействие основной логики приложения (сетевого портала) происходит через дополнительный слой абстракции - ORM. Добавление данного слоя абстракции позволяет основной логике приложения оперировать более высокоуровневыми конструкциями, облегчая работу программиста. Выделение дополнительного логического слоя позволяет понизить уровень зависимости между компонентами системы: основная логика приложения оперирует достаточно высокоуровневыми понятиями - доменными объектами, инкапсулирующими сущности из модели предметной области. Программирование логики системы происходит на более высоком уровне.
Для создания ORM-библиотеки достаточным условием является наличие в языке программирования интроспекции, т.е. информации о типах времени компиляции во время выполнения. Интроспекцию также называют Reflection (англ. отражение). Интроспекция позволяет реализовать ORM-библиотеку, который во время выполнения в соответствии с некоторой метаинформацией о классе сущности может построить запрос к СУБД. Если в языке отсутствуют возможности интроспекции или они недостаточно развиты, создателям ORM приходится эмулировать интроспекцию вручную. В принципе, можно обой-
18
тись сущностными объектами, реализующими интерфейс IDispatch (подробнее IDispatch описан в [54]), что равносильно отказу от строгой типизации времени компиляции. Однако, данный подход сложно назвать рациональным в виду его трудоемкости.
Вопросам использования ORM-бйблиотек посвящено значительное количество статей, см. [51, 55-63]. В подавляющем большинстве эти публикации отражают инженерный уровень особенностей использования и не затрагивают общих вопросов применимости ORM-библиотек, их моделирования, а следовательно и прогнозирования поведения при возрастающей нагрузке на сетевой портал. Диссертант считает это очевидным пробелом в технических решениях, в связи с чем, большая часть диссертации посвящена частичному восполнению этого пробела.
Рассмотрим основные применяемые на практике ORM-библиотеки.
1.3. ORM-библиотеки, применяемые при разработке программных систем
1.3.1. Библиотека "Hibernate"
Hibernate — библиотека для языка программирования Java, предназначенная для объектно-реляционного соответствия (object-relational map-ping — ORM). Она представляет собой свободное программное обеспечение с открытым исходным кодом (open source), распространяемое на условиях GNU Lesser General Public License [64, 65].
Целью Hibernate, как и любого ORM-библиотеки является облегчение доступа приложения к БД. Разработчик освобождается от деталей физического хранения данных в СУБД, что позволяет увеличить скорость написания кода. Использование Hibernate позволяет также облегчить переход сетевого портала
на другую СУБД. Первоначально Hibernate был создан для платформы Java, но позже портирован на другие платформы, например, .NET.
Применение Hibernate позволяет не только решить проблему прозрачной трансформации сущностей в объекты, но и автоматизировать выборку связанных объектов, находящихся в отношениях один-к-одному, один-ко-многим, многие-ко-многим.
Для общей конфигурации Hibernate (например, параметры доступа к СУБД) обычно использует конфигурационный файл, хотя возможна конфигурация времени выполнения. Для конфигурации отображения сущностей и таблиц применяются Java-аннотации, которыми помечаются части класса сущности. Аннотации не являются компилируемым исходным кодом. Фактически - это метаинформация, доступная на этапе выполнения, используя которую Hibernate автоматически формирует запросы к СУБД. Метаинформация содержит дополнительные поля, отвечающие за отображение сущностей в записи таблицы: название колонки, является ли поле первичным ключом и т.д. Единственное строгое требование для класса сущности — наличие конструктора по умолчанию (без параметров). Вместе с тем, отметим, что метод equals() с помощью которых Hibernate проверяет тождественность объектов, должен быть реализован корректно и проверять логическую тождественность объектов.
Похожие диссертационные работы по специальности «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», 05.13.11 шифр ВАК
Автоматизация разграничения перекрёстного доступа к информационным ресурсам корпоративных порталов: на примере газотранспортных предприятий2013 год, кандидат наук Демидов, Александр Владимирович
Математическое и программное обеспечение процесса приближенной обработки запросов в реляционных системах управления базами данных2023 год, кандидат наук Филимонов Алексей Валерьевич
Нечисловая обработка информации на вычислительной машине нетрадиционной архитектуры потока данных1999 год, кандидат технических наук Провоторова, Анна Олеговна
Разработка системы хранения, контроля и визуализации информации Трекового детектора переходного излучения в эксперименте ATLAS (ЦЕРН)2011 год, кандидат физико-математических наук Машинистов, Руслан Юрьевич
Методы и средства разработки компонентного управления Web - сайтом на основе динамической объектной модели2005 год, кандидат технических наук Быков, Михаил Юрьевич
Список литературы диссертационного исследования кандидат наук Мельников, Сергей Викторович, 2014 год
Список литературы
1. Brooks Frederick Phillips. The Mythical Man-Month: Essays on Software Engineering. — USA: Addison-Wesley, 1975.
2. DeMarco Tom, Timothy Lister. Peopleware - productive projects and teams. — NY: Dorset House Publishing, 1987.
3. Демарко Т. Deadline. Роман об управлении проектами:. Бизнес-романы. — Манн, Иванов и Фербер, 2010,- ISBN: 9785916570762.- URL: http://books.google.ru/books?id=JN7tdNatq20C (дата обращения: 2014-01-12).
4. DeMarco Tom. Waltzing with Bears: Managing Risk on Software Projects. — USA: Dorset House Publishing, 2003.
5. Spolsky Joel. The Best Software Writing I: Selected and Introduced by Joel Spolsky by Joel Spolsky. - USA: APRESS, 2005.
6. Cooper Alan. The Inmates Are Running the Asylum: Why High Tech Products Drive Us Crazy and How to Restore the Sanity. — USA: Sams - Pearson Education, 2004.
7. McConnell Steve. Rapid Development: Taming Wild Software Schedules. — USA: Microsoft Press, 1996.
8. Брукс Фредерик. Мифический человеко-месяц, или Как создаются программные системы.— Символ-Плюс, 2010.— ISBN: 5-93286-005-7, 0-201-83595-9.
9. Brooks Frederick P. The Mythical Man-Month: Essays on Software Engineering, Anniversary Edition (2nd Edition). — USA: Addison-Wesley Professional, 1995.
10. Пригожин И., Николис Г. Познание сложного. — 3-е edition. — Москва : ЛКИ, 2007.
11. Prigogine I., Lefever R. J. Symmetry Breaking Instabilities in Dissipative Systems. - 1968,-Vol. 48.
12. Пригожин И., П. Гленсдорф. Термодинамическая теория структуры, устойчивости и флуктуаций. — Москва : Мир, 1973.
13. Шемончук Д.С., В.А. Мордвинов. Регулирование функциональных характеристик мультимедиа в образовательных технологиях // Известия Томского политехнического университета. Управление, вычислительная техника и информатика. — 2009. — Vol. 314. — с. 202-207.
14. Мордвинов В.А., Цветков В.Я. Методологические основы информационных технологий. — Москва : МГТУ МИРЭА, 2012.
15. Когаловский М. Р. Перспективные технологии информационных систем. — Москва : ДМК Пресс; Компания АйТи, 2003.
16. Маглинец Ю.А. Анализ требований к автоматизированным информационным системам. — Москва : Бином, 2008.
17. ГОСТ 19781-90. ЕСПД. Термины и определения. - 1990.
18. Гражданский кодекс РФ. Глава 70. Статья 1261. Программы для ЭВМ.
19. Wikipedia. Свободная энциклопедия. Статья "Компьютерная программа".— 2013.— Август. — URL: http://ru.wikipedia.org/ wiki/%DOyo9Ay,DOy.BEyoDO%BC7»DOy„BF%Diy,8C7,Diy.8Ey.Diy0820/„DOyoB5%Diy„8O°/„ D0y3DyoD0yoB0yoDiyc8F_yoD0yoBF%Dl%80%D00/oBE%D00/oB3yoDl%80%D00/oB0%D0°/5BCy0 DO°/oBCy,D00/oBO (дата обращения: 2014-01-12).
20. Otwagin Alex. OpenNET.ru.- 2002.-Август.- URL: http: //www.opennet.ru/docs/RUS/limix_base/nodel88.html (дата обращения: 2014-01-12).
21. Белоусова С., Бессонова И., Р. Гиляровский. Портал Intuit. Курс "Введение в программные системы и их разработку лекция 1.— 2012,— URL: http://www.intuit.ru/studies/courses/3632/874/ lecture/14289 (дата обращения: 2014-01-12).
22. William S. Davis, David С. Yen. The Information System Consultant's Handbook. Systems Analysis and Design. — USA: CRC Press, 1998.
23. Федеральный закон Российской Федерации от 27 июля 2006 г. N 149-ФЗ Об информации, информационных технологиях и о защите информации. — Москва, 2006.
24. ГОСТ ИСО/МЭК 2382-1-99.-Москва, 1999.
25. corporation Microsoft. Deployment Patterns.— URL: http://msdn. microsoft.com/en-us/library/ms998478.aspx (дата обращения: 2014-01-12).
26. Википедия. Свободная энциклопедия. Статья "Трух'уровнавая архитектура".— 2013. —04. — URL: http://ru.wikipedia.org/ wiki/%DOyoA2yoDl%80yoDl%9iyoDiyo85yoDl%83yoDiy„80yoDO%BE0/oD07oB20/0D00/oBD7o D0y„B50/„D00/0B20/„D00/„B0°/„D 10/08F_0/„D00/„B00/0D 10/o800/oD l0/o850/oD00/,B80/„D 10/o820/„DO°/.B50/o D00/oBA0/„Dl0/,820/„Dl0/o830/oDl0/o80yoDO°/oBO (дата обращения: 2014-01-12).
27. CIT forum. Статья "Трёхзвенная архитектура. Хорошо забытое старое?".— 2013. —Август. — URL: http://citforum.ru/seminars/ cis99/group. shtml (дата обращения: 2014-01-12).
28. Вольфтруб А., Филин А. Трехзвенная архитектура // Трехзвенная архитектура. — Москва, 2009.
29. Шаблоны корпоративных приложений / М. Фаулер, Д. Райе, М. Фоммел et al. — Москва : Вильяме, 2010.
30. Бек К. Шаблоны реализации корпоративных приложений.— Москва : Вильяме, 2008.
31. Vingrad. Форум программистов. Тред "Трёхзвенная архитектура, "за"и "против.— 2013. — 04. — URL: http://forum.vingrad.ru/forum/ topic-127761.html (дата обращения: 2014-01-12).
32. SQL.ru. Тема "трехзвенная архитектура".— 2013. —04. — URL: http://www.sql.ru/forum/214017/trehzvennaya-arhitektura (дата обращения: 2014-01-12).
33. Мельников С.В. Диссипативные структуры типа "цикл"в ПО, существующем в режиме многопоточного выполнения исполняемого
программного кода // Современные проблемы науки и образования (приложение "Технические науки"). — 2012. — 6. — стр. 10.
34. Мельников C.B. О проблеме диссипации в информационных системах // Естественные и технические науки. — 2013. — 3.
35. C.B. Мельников, Щемончук Д.С. Об архитектуре взаимодей-ствия образовательных пор-талов и реляционных баз данных при помощи OR-М-компонентов // Информика. — 2013. — 10.
36. Кудж С.А. Многоаспектность рассмотрения сложных систем // Перспективы науки и образования. — 2014. — Vol. 1. — с. 38-43.
37. Шемончук Д.С., Д.В. Куракин. Расширение использования мультимедиа технологий в сфере образования // Информатизация образования и науки. - 2009. - с. 43-50.
38. A.B. Силаев. Диссертация "Разработка и исследование принципов построения вертикальных образовательных порталов с открытой архитектурой". — 2008.
39. Mordvinov V.A., A.V. Silaev. Some aspects of modeling vertical educational portals based on open architecture technology. — 2007.
40. Интернет-портал «Морская коллегия» состояние и перспективы развития / И.В. Соловьёв, A.JL Балыбердин, В.П. Синецкий, С.А. Кудж // Морская радиоэлектроника. — 2007. — Vol. 1(19). — с. 14-19.
41. Использование современных компьютерных технологий в образовании / С.А. Кудж, А. А. Майоров, C.B. Трофимов, Ф.В. Шкуров // Материалы IV межвузовской ежегодной научно-практической конференции.— 2003.— с. 73-85.
42. Невзоров В. — Delphi Russian knowledge base, 2006.
43. Кудж С.А., Зеленов И.О. Аппаратно-программный обучающий комплекс в области картографо-геодезических наук на базе терминального класса с возможностью удаленного доступа // Известия высших учебных заведений. Геодезия и аэрофотосъемка. — 2001. — с. 51-52.
44. Кудж С.А., Трофимов C.B., Бухаленко Ю.В. Разработка электронной обучающей системы для локальной сети и сети интернет // Известия высших учебных заведений. Геодезия и аэрофотосъемка.— 2002,— с. 107-112.
45. Habrahabr. Статья "Memcached и PHP ликбез".— 2013.-04,— URL: http://habrahabr.ru/post/108274/ (дата обращения: 2014-01-12).
46. Блинков Иван. Insight IT. Статья "memcached на пальцах",— 2013. —04,— URL: http://www.insight-it.ru/programmirovanie/ memcached-na-palcakh/ (дата обращения: 2014-01-11).
47. Буйневич М.В., Кудж С.А. Выбор рационального варианта информационно-технического взаимодействия в распределенных система (ч. 1) // Вестник ИНЖЭКОНа, 2011, серия 'технические науки'.-2011.-Vol. 8(51).-с. 37-47.
48. Дейт Дж.К. SQL и реляционная теория. Как грамотно писать код на SQL. — Москва : Символ-Плюс, 2010. — стр. 480.
49. Date C.J., Hugh Darwen. Databases, Types and the Relational Model (3rd Edition). — 3-е edition. — USA: Addison Wesley, 2006. — стр. 572.
50. Habrahabr. Статья "Самые глупые вещи, которые я сделал будучи программистом".— 2009.— 05.— URL: http://habrahabr.ru/post/ 67920/ (дата обращения: 2014-01-12).
51. Михаил Стадник. Персональный блог. Статья "ORM и с чем его едят". — 2013.— 04. — URL: http://mikhailstadnik.com/few-words-about-orm (дата обращения: 2014-01-12).
52. Викисловарь. Многоязычный открытый словарь. Статья "ORM". — 2013. —04.— URL: http://ru.wiktionary.org/wiki/OEM (дата обращения: 2014-01-12).
53. Wikipedia. Free encyclopedia. Paper 'List of object-relational mapping software.'.— 2013, —04. — URL: http://en.wikipedia.org/wiki/List_of_ object-relational_mapping_software (дата обращения: 2014-01-12).
54. Microsoft. Microsoft Software Developers Network. Paper "IDispatch Interface 2013. — 04. — URL: http://msdn.microsoft.com/en-us/library/ ms221608.aspx (дата обращения: 2014-01-12).
55. Habrahabr. Статья "О некоторых неочевидных хаках при работе с entity framework и unique constraints". — 2013. — 04. — URL: http: //habrahabr. ru/post/160897/ (дата обращения: 2014-01-12).
56. Habrahabr. Статья "SORM. Новый элегантный и масштабируемый ORM фреймворк для Scala". — 2013. — Август. — URL: http: //habrahabr. ru/ post/159867/ (дата обращения: 2014-01-12).
57. Habrahabr. Статья "Entity Framework 6 - ALPHA". - 2013.-04. - URL: http://habrahabr.ru/post/157267/ (дата обращения: 2014-01-12).
58. Литвинюк А. Введение в Hibernate и основы ORM // Компьютерная газета.— 2005.— URL: http://www.nestor.minsk.by/kg/2005/32/ kg53209.html (дата обращения: 2014-01-12).
59. Зиновьев А. Битва ORM. Hibernate vs MyBatis // Битва ORM. Hibernate vs MyBatis. — Омск, 2012.
60. Habrahabr. Статья "Использование ORM при разработке корпоративных приложений".— 2013.—Август. — URL: http://habrahabr.ru/post/ 140713/ (дата обращения: 2014-01-12).
61. Zhigang Не Zheng Chen. Research and Application about Object Relation Mapping Framework // Computer Engineering and Applications. — 2003.
62. Klettke Meike, Meyer Holger. XML and Object-Relational Database Systems Enhancing Structural Mappings Based on Statistics // Third International Workshop WebDB. - Dallas, USA : USA: Springer Berlin Heidelberg, 2000.-c. 151-170.
63. Mike Keith Merrick Schnicariol. Object-Relational Mapping // Pro JPA 2. Mastering the Java™ Persistence API. — USA: Apress, 2010. — c. 69-106.
64. Jboss. Paper "Hibernate". — 2013.-04,- URL: http://www.hibernate, org/ (дата обращения: 2014-01-12).
65. Википедия. Свободная энциклопедия. Статья "Hibernate (библиотека)". — 2013.-04.- URL: http://ru.wikipedia.org/wiki/Hibernate_(0/0DO°/o В10/,D0°/0B8%D00/„B 1 % D 0 % В В % D 0 °/0 В 8 °/0 D 0 °/0 В Е °/0 D1 °/0820/„DOyoB50/,DO°/oB A°/0DO°/„BO ) (дата обращения: 2014-01-12).
66. Microsoft. Microsoft Software Developers Network. Paper "The ADO.NET Entity Framework Overview. 2013.-04. - URL: http: //msdn.microsoft.com/en-us/library/aa697427(v=vs.80).aspx (дата обращения: 2014-01-12).
67. Entity Framework Overview.— 2012.— URL: http://msdn.microsoft. com/en-us/library/vstudio/bb399567(v=vs.100).aspx (дата обращения: 2014-01-12).
68. Викисловарь. Многоязычный открытый словарь. Статья "Кэширование"'.— 2013. —04. — URL: http://ru.wiktionary.org/ wiki/0/„DO,/,BA0/.Dl0/o8Dy„Dl0/o88yoDOyoB80/»Diy,80yoD00/„BE0/oDOyoB2y„D00/.BOyoDOyoBD0/„ D00/,B80/oD00/oB5 (дата обращения: 2014-01-12).
69. Поляков A.A., Цветков В.Я. Прикладная информатика. — Москва : МАКС-Пресс, 2008.
70. Википедия. Свободная энциклопедия. Статья "Физическая система". — 2013. - 04. - URL: http : //ru. wikipedia. org/wiki/yoD00/oA4yoDOyoB80/oDO°/„ B7y„DOyoB8%Diy„870/oDOyoB50/oDiyo810/oDO%BAy„D00/oBOyoDl0/08F_0/.Dl0/o810/oD00/„B8yoDl0/0 810/oDl0/.82%DOy,B50/oDO°/0BC0/oDOyoBO (дата обращения: 2014-01-12).
71. Заславский К. Феноменологическая и статистическая термодинамика.— Москва : Мир, 1973.
72. Радушкевич JI.B. Курс термодинамики, — Москва : Просвещение, 1971.
73. Мюнстер А. Химическая термодинамика.— Москва : Мир, 1971.— стр. 296.
74. де Гроот С.Р. Термодинамика необратимых процессов. — Москва : Гос.изд.технико-теоретической литературы, 1956, — стр. 281.
75. Ingarden R.S., Kossakowski A., Ohya M. Information Dynamics and Open Systems: Classical and Quantum Approach. — New York, USA : USA: Springer Verlag, 1997.
76. Википедия. Свободная энфиклопедия. Статья "Открытая система".— 2013.-04. - URL: http: //ru. wikipedia. org/wiki/7.D07o9E70Dl70827, D07,BA%D1 %807oD 17»8B7,D 17,82%D07,B07,D 17,8F_%D 17,817oD07,B87»D 17»81 %D 17o827» D07.B57,D07oBCyoD07oBO_(7oDl7o847.D07oB87,D07,B77oD07oB87oD07oBA7,D07oBO) (дата обращения: 2014-01-12).
77. Получение знаний для формирования информационных образовательных ресурсов / А.Д. Иванников, В.П. Кулагин, В.А. Мордвинов et al. — Москва : ФГУ ГНИИ ИТТ "Информика2008.
78. Тихонов А.Н. Иванников А Д. Соловьёв И.В. Цветков В.Я. Кудж С.А. Концепция сетецентрического управления сложной организационно-технической системой,— М.: МаксПресс, 2011.— стр. 136.
79. Kudzh S. Sistema De Información automatizado para la administración de una Universidad «E-master» // X Convención internacional y Feria. — 2004. — c. 37-39.
80. Пригожин И., Кондепуди Д. Современная термодинамика: от тепловых двигателей до диссипативных структур. — Москва : Мир, 2009.
81. Пригожин И., Кондепуди Д. Современная термодинамика.— Москва : Мир, 2002. - стр. 462.
82. Базаров И.П. Термодинамика: учебник для вузов.— Москва : Высшая школа. — стр. 376.
83. Мартюшев JI.M. Принцип максимальности производства энтропии в физике и смежных областях. — Екатеринбург : ГОУ ВПО УГТУ-УПИ, 2006.
84. Пригожин И. Введение в термодинамику неравновесных процессов. — Москва : Изд-во иностр. лит., 1960.— стр. 127.
85. Дьярмати И. Неравновесная термодинавмика: Теория поля и вариационные принципы. — Москва : Мир, 1974.
86. Хоружий С.С. Что такое SYNERGIA? // Вопросы философии. - 1012. -1.- стр. 18.
87. Хайтун С.Д. Трактовка энтропии как меры беспорядка и ее негативное воздействие на современную научную картину мира // Вопросы философии. — 2013.
88. Денбиг К. К вопросу об энтропии, беспорядке и дезорганизации // Знание - сила, - 1995.
89. Haitun S.D. Entropy and disorder: The evolution of views concerning their connection // Thermodynamics: History and Philosophy. Singapore etc.— 1991.
90. Denbigh K.G., Denbigh J.S. Entropy in Relation to Incomplete Knowledge. — Cambridge, UK, 1985.
91. Denbigh K.G. Note on entropy. Disorder and disorganization // Brit. J. Phil. Sci. - 1989. - Vol. 40, No.3 (Sep. 1989). - c. 323-332.
92. Большой энциклопедический словарь, — Москва : Большая Российская энциклопедия, 2000.
93. Адамчик В. Новый словарь иностранных слов. — Москва : Современный литератор, 2006.
94. Крысина Л.П. Толковый словарь иностранных слов. — Москва : Русский язык, 1998.
95. Горбачев В. Концепции современного естествознания.— Москва : ОНИКС 21 век, 2003.
96. Кадомцев Б.Б. Динамика и информация.— Москва : Изд. «Успехи физических наук», 1999,- ISBN: 5-85504-010-3.
97. Википедия. Свободная энциклопедия, статья "Диссипация энергии".— 2013.-04,- URL: http://ru.wikipedia.org/wiki/70D0%947„D070B87,Dl0/0 817OD17O817OD07,B87,D07OBF7OD07OB07.D17O86%DO%B8%D17»8F_7„D17,8D7OD07oBD7ODO%
B5%Diy„80%DO%B3%DO%B80/oD00/oB8 (дата обращения: 2014-01-12).
98. Стась Е.В. Системное исследование документального информационного потока. — Москва : Научно-техническая информация: Информационные процессы и системы, 1981.
99. Г.М. Заславский, Р.З. Сагдеев. Введение в нелинейную физику: от маятника до турбулентности и хаоса. — Моска : Наука, 1988.
100. Малинецкий Г.Г. Математические основы синергетики. — 6-е edition.— Москва : Книжный дом "ЛИБРОКОМ 2009.
101. Демидович Б.П. Лекции по математической теории устойчивости.— Москва : Лань, 2008.
102. Моисеев Н.Н. Асимптотические методы нелинейной механики.— Москва : Наука, 1969.
103. Википедия. Свободная энциклопедия. Статья "Исходные положения термодинамики".— 2013. — 04. — URL: http://ru.wikipedia.org/ wiki/7oDOyo9D7„Dl%83%DO%BB7oDO%B57„D07oB2y„D00/oBE°/oD07oB5_%D00/oBD7oD07o B07,Dl7o877oD07oB07.D07oBB7oD07»BE_7oDl7o827oD07,B57»Dl7o807oD07oBC7.D07,BE%D07o B4%D07oB87oD07.BD7oD07oB07oD07oBC7oD07oB87oD07.BA7oD07oB8 (дата обращения: 2014-01-12).
104. Fowler R. Н., Guggenheim Е. A. Statistical thermodynamics. — Cambridge : USA: Cambridge University Press, 1939.
105. Википедия. Свободная энциклопедия. Статья "Тепловая смерть вселенной".— 2013.—04. — URL: http://ru.wikipedia.org/wiki/ %DO%A27.D07,B57oD07,BF7,D07oBB7oD07,BE7,D07,B27,D07oB07oDl7o8F_7,Dl7»8l7oD07» BC7oD07oB57oDl7o807oDl7.827oDl7o8C_7oD07o927oDl7o8l7oD07,B57.D07.BB7oD07.B57oD07o BD7.D07oBD%D0%BE%D0%B9 (дата обращения: 2014-01-12).
106. Цветков В .Я. Личная переписка с Мельниковым С.В. — 2014.
107. Хайтун С.Д. Фундаментальная сущность эволюции // Фопросы философии. — 2001. — 2. — с. с. 152-166.
108. Хайтун С.Д. Феномен человека на фоне универсальной эволюции // Фопросы философии. — 2005.
109. Хайтун С.Д. «Тепловая смерть» на Земле и сценарий ее предотвращения: Ч. 2. Вечные двигатели 2-го рода и несостоятельность запрета на них. — Москва : УРСС, 2009. - стр. 20.
110. Хайтун С.Д. Проблемы количественного анализа науки. — Москва, 1987.
111. Хайтун С.Д. Проблемы количественного анализа науки. — Москва, 1989.
112. Хайтун С.Д. Развитие естественнонаучных взглядов о соотношении закона возрастания энтропии и эволюцииРазвитие естественнонаучных взглядов о соотношении закона возрастания энтропии и эволюции // Концепция самоорганизации в исторической ретроспективе. — Москва : Наука, 1994.
113. Хайтун С.Д. Механика и необратимость. — Москва : Янус, 1996.
114. Петров Ю.П. Энтропия и неупорядоченность. — 1970.
115. Заличев H.H. Энтропия информации и сущнось жизни.— Москва : Радиоэлектроника, 1995.
116. Инфосфера и инфология / А. Д. Иванников, А.Н. Тихонов, И.В. Соловьев, Цветков В.Я. - ТОРУС ПРЕСС, 2013. - ISBN: "978-5-94588-123-5".
117. Кудж С.А., Цветков В.Я. Особенности развития направлений информатики // Перспективы науки и образования №6.— 2013. — 11-12.
118. Кудж С.А. О философии информации // Перспективы науки и образования. — 2013. — Vol. 6. — с. 9 - 13.
119. Эткинс П. Порядок и беспорядок в природе. — Москва : Мир, 1987.
120. Шеннон К. Работы по теории информации и кибернетике. — Москва : Издетельство иностранной литературы, 1963.— стр. 261.
121. Лем С., Парина В.В. Сумма технологии. — 1968.— URL: http: //books. google. com/books?id=cqCpPgAACAAJ (дата обращения: 2014-01-12).
122. Лоскутов А.Ю. Очарование хаоса. — 2010. — с. 1305-1329.
123. Мухин Д. H. Статистический подход к реконструкции динамических систем по зашумленным данным. — 2007.
124. Анищенко B.C., А.Н. Павлов, Н.Б. Янсон. Реконструкция динамических систем в приложении к решению задачи защиты информации // Журнал технической физики. — 1998. — Vol. 68. — стр. 8.
125. Безручко Б.П.: Смирнов Д.А. Математическое моделирование и хаотические временные ряды. — Саратов : Колледж, 2005.
126. Loskutov A., Mironyuk О. TIME SERIES ANALYSIS OF ECG: A POSSIBILITY OF THE INITIAL DIAGNOSTICS // International Journal of Bifurcation and Chaos.- 2007.- Vol. 17, no. 10.- c. 3709-3713,-http://www.w0rldscientif1c.c0m/d0i/pdf/l 0.1142/S0218127407019615.
127. Ардашев A.B., Лоскутов А.Ю. Практические аспекты современных методов анализа вербальности сердечного ритма. — Москва : Медпрактика, 2010.
128. Лоскутов А., Котляров О. Новый метод прогнозирования экономических показателей // Валютный спекулянт: альманах.— 2008.— Vol. 11.— стр. 10.
129. Лоскутов А.Ю. Нелинейная оптимизация хаотической динамики рынка // Журнал Экономика и математические методы (ЭММ).— 2010. — Vol. 46. - с. 58-70.
130. Gouesbet G., Meunier-Guttin-Cluzel S., Menard O. Chaos and Its Reconstruction. - New York : USA: Nova Sei. Publ, 2003.
131. Малинецкий Г.Г., Потапов А.Б. Современные проблемы нелинейной динамики. — Москва : УРСС, 2000.
132. Vautard R., Yiou P. Singular-spectrum analysis: A toolkit for short, noisy chaotic signals // Physica D. — 1992.
133. Данилов Д.Л., Жиглявский A.A. Главные компоненты временных рядов: метод "Гусеница". Сб. статей, — СПб : С.-Петерб. гос. ун-т, 1997.
134. Farmer J. Doyne, Sidorowich John J. Predicting chaotic time series // Phys. Rev. Lett. - 1987.-Aug. - Vol. 59,- c. 845-848.- URL: http://link. aps. org/doi/10.1103/PhysRevLett. 59.845.
135. Истомин И.А., Котляров О.Д., Лоскутов А.Ю. К проблеме обработки временных рядов: расширение возможностей метода локальной аппроксимации посредством сингулярного спектрального анализа // Теоретическая и математическая физика. — 2005. — с. 128-137.
136. Шолле В. Естествознание. Энциклопедический словарь,— Москва : Большая Российская энциклопедия, 2003.
137. Minorski N. Nonlinear oscillations. — Princeton, USA, NJ : USA: Van Nos-trand, 1962.
138. Жаботинский A.M. // Биофизика. — 1964. — Vol. 9. — стр. 306.
139. Field R.J., Koros E., Noyes R.M. Oscillations in chemical systems. II. Thorough analysis of temporal oscillation in the bromate-cerium-malonic acid system // J. Am. Chem. Soc. - 1972. - Vol. 94. - c. 8649-8664.
140. Викисловарь. Многоязычный открытый словарь. Статья "SQL". — 2013. — 04,— URL: http://ru.wiktionary.org/wiki/SQL (дата обращения: 2014-01-12).
141. Kudzh S. A., Tsvetkov Victor Ya. Geoinformatics Ontologies // European Researcher. - 2013.- Vol. 62, № 11-1.- c. 2566- 2572.
142. Майоров A.A., Трофимов С.В., Кудж С.А. Упреждающее управление развитием предприятий отрасли геодезии и картографии // Сборник статей по итогам научно-технической конференции профессорско-преподавательского состава, посвященной 229-летию МИИГАиК // Приложение к журналу Геодезия и аэрофотосъемка».
143. Stroustrup Bjarne. The Design and Evolution of С++. - New York, NY, USA : ACM Press/Addison-Wesley Publishing Co., 1994,- ISBN: 0-201-54330-3.
144. Stroustrup Bjarne. The С++ Programming Language, Third Edition.— 3rd edition.— Boston, MA, USA : Addison-Wesley Longman Publishing Co.,
Inc., 1997. - ISBN: 0201889544.
145. Викисловарь. Многоязычный открытый словарь. Статья "ООП".— 2013. - 04. - URL: http: //ru. wiktionary. org/wiki/7„D00/o9E%D00/„Bl% D1 % 8 A % D 0 % В 5 % D 0 % В A % D1 0/082У»ВОУ„ВВУоООУ»ВЕ- y0D00/0BEy0D 1 y.80%D00/„B80/,D0% B5yoDOy0BDyoDiyo82yoDOyoB8yoDiyo8Oy„DO%BEo/oDOyoB2yoDOo/oBOo/0DOo/oBDyoDOo/oBDo/oDO0/o BE%DO%B5_%DOy3F%Dl%80%DOyoBE%DOyoB3yoDiyo80yoDO%BOyoDOy3C%DO%BC%DO% B8yoDiyo80yoDOyoBEyoD00/0B20/0DOyoB00/oD00/oBDyoDOyoB8yoDOyoB5 (дата обращения: 2014-01-12).
146. Кудж C.A., Трофимов С.В., Майоров А.А. Мультимедийные технологии в образовании // Материалы IV межвузовской ежегодной научно-практической конференции. — 2003. — с. 86-88.
147. Kuja S. A., Solovjev I. V., Tsvetkov V. Y. System Elements Heterogeneity // European Researcher. - 2013. - Vol. 60, №10-1. - c. 2366- 2373.
148. Кудж C.A., Цветков В .Я. Информационные образовательные единицы // Дистанционное и виртуальное обучение. — 2014. — Vol. 1. — с. 24- 31.
149. Лийв Э.Х. Инфодинамика. Обобщённая энтропия и негэнтропия. — Таллин, 1998.
150. Щелованов Л.Н., Антонова Г.С., Доронин Е.М. ОСНОВЫ ТЕОРИИ АВТОМАТИЧЕСКОГО УПРАВЛЕНИЯ. - Сп-б : САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА, 1997.
151. Intel Developers Zone. Intel® С and С++ Compilers, 2013.— Август. — URL: http://software.intel.com/en-us/c-compilers (дата обращения: 2014-01-12).
152. (с) Microsoft. — Microsoft Developers Network. Visual С++, 2012.— URL: http://msdn.microsoft.com/ru-ru/library/60kl461a.aspx (дата обращения: 2014-01-12).
153. Free Software Foundation Inc.— GCC, the GNU Compiler Collection, 2013.—August. — URL: http://gcc.gnu.org/ (дата обращения:
2014-01-12).
154. Community LLVM. clang: а С language family frontend for LLVM.— 2013. — August. — URL: http: //clang. llvm. org/ (дата обращения: 2014-01-12).
155. Reinders James. Intel Threading Building Blocks: Outfitting С++ for Multi-Core Processor Parallelism. — 1st Ed. edition edition. — USA : USA: O'Reilly Media, 2007.
156. Intel Threading Building Blocks, 2013.—Август. — URL: https://www. threadingbuildingblocks.org/ (дата обращения: 2014-01-12).
157. ISO/IEC 14882:2011 Information technology - Programming languages -С++.-USA, 2011.
158. (c) Microsoft.— Microsoft Windows Dev Center - Desktop. Paper "Interlocked Variable Access2013.— Август. — URL: http://msdn.microsoft. com/en-us/library/windows/desktop/ms684122(v=vs.85).aspx (дата обращения: 2014-01-12).
159. Boost С++ libraries, 2013.— Август. — URL: http://www.boost.org/ (дата обращения: 2014-01-13).
160. GLUT - The OpenGL Utility Toolkit, 2013. - Август. - URL: http: //www. opengl.org/resources/libraries/glut/ (дата обращения: 2014-01-12).
161. The Industry's Foundation for High Performance Graphics: OpenGL.— 2013.—Август. — URL: http://www.opengl.org/ (дата обращения: 2014-01-12).
162. Microsoft Visual Studio, 2013.— URL: 'http://microsoft.com' (дата обращения: 2014-01-12).
163. Microsoft Technet. Программа Process Explorer для Windows, 2013. — 01.— URL: http://technet.microsoft.com/ru-ru/sysinternals/ bb896653. aspx (дата обращения: 2014-01-12).
164. Shen Yang. Architecture of Airport Operation Database System // Proceedings of the 2009 First IEEE International Conference on Information Science and
Engineering. - ICISE '09. - Washington, DC, USA : IEEE Computer Society, 2009.- c. 2278-2281,- URL: http://dx.doi.org/10.1109/ICISE. 2009.346.
165. Vasiliev Yuli. Beginning Database-Driven Application Development in Java EE: Using GlassFish. — Berkely, CA, USA : Apress, 2008.- ISBN: 1430209631,9781430209638.
166. Википедия. Свободная энциклопедия. Статья "Диссипативная система".— 2013. —12.— URL: http://ru.wikipedia.org/wiki/ %D0yo94%D0%B8%Dl%81%Dl%81%D0%B8%D0%BF%D0%B0%Dl%82%D0%B8%D0%B2°/o D00/,BD°/oD00/cB00/.D 1 °/,8F_%D 1 '/,817oD07.B87»D 1%81 7.D 10/o820/„D00/,B50/oD00/oBC0/,DO°/,BO (дата обращения: 2014-01-12).
167. Википедия. Свободная энциклопедия. Статья "Диссипация энергии". — 2013.- 12.- URL: http://ru.wikipedia.org/wiki/0/0DO°/094%DO%B8°/oDl% 817.D 1 °/,810/oD07oB8%D00/oBF0/oD00/oB00/oDl°/„860/oD00/oB80/„D 1 %8F_70D1 %8D%D0%BD%D0e/, B57oDl7«807.D07.B37oD07.B87oD07oB8 (дата обращения: 2014-01-12).
168. Hennessy John L., Patterson David A. Computer Architecture, Fourth Edition: A Quantitative Approach. — San Francisco, CA, USA : Morgan Kaufmann Publishers Inc., 2006. - ISBN: 0123704901.
169. Grace: Safe Multithreaded Programming for C/C++ / Emery D. Berger, Ting Yang, Tongping Liu, Gene Novark // Proceedings of the 24th ACM SIGPLAN Conference on Object Oriented Programming Systems Languages and Applications. - OOPSLA '09. - New York, NY, USA : ACM, 2009. -c. 81-96.-URL: http://doi.acm.org/10.1145/1640089.1640096.
170. Grace: Safe Multithreaded Programming for C/C++ / Emery D. Berger, Ting Yang, Tongping Liu, Gene Novark // SIGPLAN Not. - 2009. -Vol. 44.- c. 81-96.
171. Schach Stephen R. Object-Oriented and Classical Software Engineering.— 7 edition.- New York, NY, USA : McGraw-Hill, Inc., 2007,- ISBN: 0073191264, 9780073191263.
172. ГОСТ Р ИСО МЭК ТО 10032-2007: Эталонная модель управления данными (идентичен ISO/IEC TR 10032:2003 Information technology.— 2007.
173. Википедия. Свободная энциклопедия. Статья "Реляционная СУБД".— 2013.-11.- URL: http://ru.wikipedia.org/wiki/%D07.A07oDO%A1%D07o A3%D0%91%D0%94 (дата обращения: 2014-01-12).
174. Новая философская энциклопедия. Статья "САМООРГАНИЗАЦИЯ". — 2013.-12,- URL: http://iph.ras.ru/elib/2636.html (дата обращения: 2014-01-12).
175. Дьяконов В.П. Энфиклопедия компьютерной алгебры.— Москва : ДМК-Пресс, 2009. - ISBN: 978-5-94074-490-03.
176. Википедия. Свободная энциклопедия. Статья "Символьные вычисления".— 2013. —12. — URL: http://ru.wikipedia.org/wiki/ 7oDO%Al7,DOy,B87oDO%BC7oD07oB27oD07oBE%D07oBB%Dl7o8C%D07oBD7oDl7o8B7oD07oB5_ %DO%B27oDl7o8B7oDl7.877.D07.B87oDl7o81%D07oBB7oD07oB5%DOyoBD7oD07,B8%Dl7o8F (дата обращения: 2014-01-12).
177. Новая философская энциклопедия. Статья "СИНЕРГЕТИКА". — 2013. — 12. — URL: http://iph.ras.ru/elib/2724.html (дата обращения: 2014-01-12).
178. Большой Российский энциклопедический словарь. Статья "Система".— Москва : Большая Российская энциклопедия, 2003.
179. Википедия. Свободная энциклопедия. Статья "Трёхуровневая архитектура".— 2013. — 08. — URL: http://ru.wikipedia.org/ wiki/%D0%A27,Dl7.80%Dl7o91%Dl%85%Dl%83%Dl%80%D0%BE%D07oB2%D0%BD% D07,B57oD07oB2%D07oB07oDl7o8F_7oD07oB07,Dl%807oDl7o857oDO%B87»Dl%82%DO%B5% DO%BA7oDl7.827.Dl7.83%Dl7o807oD07oBO (дата обращения: 2014-01-12).
180. Eckerson Wayne W. Three Tier Client/Server Architecture: Achieving Scalability, Performance, and Efficiency in Client Server Applications. // Open Information Systems. — 1995.— Vol. 10, no. 1.
Обратите внимание, представленные выше научные тексты размещены для ознакомления и получены посредством распознавания оригинальных текстов диссертаций (OCR). В связи с чем, в них могут содержаться ошибки, связанные с несовершенством алгоритмов распознавания. В PDF файлах диссертаций и авторефератов, которые мы доставляем, подобных ошибок нет.