Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Magistratura_OTVETY_1.docx
Скачиваний:
14
Добавлен:
29.03.2016
Размер:
6.53 Mб
Скачать

Сравнение NoSql субд и реляционных субд

Чтобы иметь четкое представление чем NoSQL отличается от реляционных систем, давайте составим список с основными различиями.

Примеры использования NoSQL

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

  • Безсхемная разработка - Реляционные СУБД требуют четко описанную структуру данных до начала работы. NoSQL решения предлагают более гибкие решения.

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

  • Большой выбор - когда дело доходит до выбора NoSQL хранилища, существует большой выбор различных моделей. Как было сказано ранее, то насколько правильно вы сделаете свой выбор повлияет на производительность вашей системы.

62. Основные понятия теории моделирования

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

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

Процесс моделирования предполагает наличие:

объекта исследования;

исследователя, имеющего конкретную задачу;

модели, создаваемой для получения информации об объекте, необходимой для решения задачи.

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

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

Классификация видов моделирования.

В зависимости от характера изучаемых процессов в системе все виды моделирования могут быть разделены на детерминированные и стохастические, статические и динамические, дискретные, непрерывные и дискретно – непрерывные.

Детерминированное моделированиеотображает детерминированные процессы, т.е. процессы, в которых предполагается отсутствие всяких случайных воздействий; стохастическое моделирование отображает вероятностные процессы и события. В этом случае анализируется ряд реализаций случайного процесса и оцениваются средние характеристики, т.е. набор однородных реализаций.

Статическое моделированиеслужит для описания поведения объекта в какой либо момент времени, а динамическое моделирование отражает поведение объекта во времени.

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

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

Гипотетическое моделированиеиспользуется, когда знаний об объекте недостаточно для построения формальных моделей.

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

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

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

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

ях. В настоящее время имитационное моделирование – наиболее эффективный метод исследования простых систем, а часто и единственный практически доступный метод получения информации о поведении системы, особенно на этапе ее проектирования.

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

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

63. Реляционная модель данных

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

Соотношение понятий на разных уровнях представления данных для реляционной модели:

наглядный

физический

логический

концептуальный

Таблицы

Строки

столбцы

Файл

Запись

поле

Отношение

Картеж

Подмн-о доменов

Сущность

Экз. сущности

атрибут

+ наглядная форма представления данных, однозначное преобразование на модель плоского файла

- сложность в реализации и манипулировании данными

(интернет)

Почти все современные системы основаны на реляционной (relational) модели управления базами данных. Название реляционная связано с тем, что каждая запись в такой базе данных содержит информацию, относящуюся только к одному конкретному объекту.

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

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

Экземпляр отношения - совокупность значений свойств конкретного объекта.

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

Простой атрибут - атрибут, значения которого неделимы.

Сложный атрибут - атрибут, значением которого является совокупность значений нескольких различных свойств объекта или несколько значений одного свойства.

64. Количество информации и энтропия, кодирование информации

Количественная мера информации необходима для сравнения различных источников сообщений и каналов связей.

При введении меры информации абстрагируемся от конкретного смысла информации.

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

 Неопределенность, которая ликвидируется приходом такого сигнала является единицей информации и называется – 1 бит.

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

Рассмотрим случай, если все состояния сигнала имеют равные вероятности появления. Укажем в таблице количество состояний и соответствующее количество элементарных операций выбора

Кол.сост.

Кол.операций

2

1

4

2

8

3

16

4

32

5

Легко заметить связь между значениями первого и второго столбцов. Обозначим через m – количество состояний сигнала, через I – количество элементарных операций выбора или количество информации. Тогда можно записать формулу :m = 2I.  Выразим I через m, получим 

 формулу для вычисления количества информации, если все состояния сигнала равновероятностны:

Вычислим по этой формуле количество информации для примеров 1 и 2, рассмотренных выше:

В первом примере:

  

Во втором примере :

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

Выведем формулу вычисления количества информации для такого случая.

Пусть А и В –события или состояния сигнала. Количество информации I(A/B) заключается  в сообщении события В относительно наступления А и равно значению выражения

Числитель и знаменатель дроби – вероятности соответствующих событий.

Если появляется событие В=А, т.е. наступило А (значит А – достоверное событие), то I(A/B)= I(A/A)= I(A) – заключающееся в сообщении А. Учитывая, что А – достоверное событие, получим формулу для вычисления количества информации для сообщения А:

В дальнейшем основание логарифма указывать не будем.

 Полученная формула

  

позволяет вычислить количество информации при получении сообщения (состояния), вероятность появления которого равна р.

Заметим, что для случая равновероятностных состояний можно пользоваться любой из этих двух формул.

3.      Энтропия.

Энтропию (обозначение Нр), как меру неопределенности источника сообщений, осуществляющего выбор из m  состояний , каждое из которых реализуется с вероятностью рi , предложил Клод Шеннон.

 Энтропия вычисляется по формуле:

  

-logpi – количество информации, которое несет  i-  тое состояние сигнала есть величина случайная. Тогда , энтропия – это математическое ожидание информации, которое несет сигнал с m состояниями, каждое из которых имеет вероятность появления рi .

Энтропия позволяет сравнивать количества информации, приносимые различными сигналами.

4.      Кодирование информации.

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

Известная со школьной скамьи десятичная позиционная система счисления – это способ кодирования натуральных чисел, декартовы координаты – способ кодирования геометрических объектов числами.

Алфавит может содержать любое количество символов. Простейший код состоит из двух символов (двоичный). Именно его используют в ЭВМ: алфавит состоит из 0 и 1. Примерами таких кодов являются азбука Морзе (точка и тире), светофор на железной дороге. 

В общем случае, как уже отмечалось, символов может быть любое количество. В русском алфавите 32 буквы, т.е. 32 символа. Если учесть знаки препинания и пробелы, то символов становится больше.

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

 Создавая коды, учитывают следующее: наибольшая энтропия соответствует сигналу ( в нашем случае – коду), вероятности появления состояний которого одинаковы; простейшим является код из двух символов         ( выбор одного из двух равновероятностных состояний).

Код имеет следующие характеристики:

 Экономичность- это отношение энтропии кода к максимальной энтропии в предположении, что все символы имеют одинаковую вероятность: Э =Н / Н мах ;

 Избыточность кода : И = 1 - Э. Данная характеристика показывает, какая часть символов лишняя и не несет информации.

Для оптимального кода экономичность близка к единице, а избыточность - к нулю.

 Кроме экономичности и избыточности определяют цену кода, равную среднему числу битов на один символ (обозначение М(х)):

  

где pi – вероятность появления i- го символа в сообщении, si – длина кодовой последовательности, соответствующая i- му символу.

Рассмотрим примеры таких кодов.

  Код Шеннона-Фэно.

Алгоритм построения кода:

1.      Все символы записать в порядке не возрастания вероятностей.

2.      Символы разбить на две группы с приближенно равными суммами вероятностей.

3.      В левой группе символов коды начать с 0, в правой-с1.

4.      Каждую группу снова разбить на две по такому же принципу и так же присвоить слева-0, справа-1.

5.      Продолжать разбиения до тех пор ,пока в каждой группе не останется по одному символу.

  Алгоритм Хаффмена.

1.      Все символы записать в порядке не возрастания вероятностей.

2.      Объединить два редких символа в одну группу с вероятностью, равной сумме вероятностей этих символов.

3.      Снова упорядочить список.

4.      Повторять операции со второго шага, пока все символы не будут разбиты на две группы. В левой группе символов коды начать с 0, в правой- с1.

5.      Затем работать с каждой группой следующим образом: отделять крайние символы, присваивая всегда слева 0, а справа-1, пока не будет закодирован каждый символ.

65. Тенденции построения современных графических систем: графическое ядро, приложения, инструментарий для написания приложений

Постепенно сформировалось представление о программном продукте как о промышленном изделии, что выдвинуло проблему стандартизации графического программного обеспечения. Развитие сетей ЭВМ, оснащенных терминальными устройствами различных типов, потребовало обеспечить независимость программного обеспечения от аппаратуры.

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

Прикладная программа

Проблемно-ориентированный уровень

Уровень, зависящий от языка

Базовая графическая система (ядро)

Операционная система

Графические ресурсы

Иные ресурсы

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]