Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лекция 6 Библиотека

.docx
Скачиваний:
54
Добавлен:
25.02.2015
Размер:
471.81 Кб
Скачать

Create assembly <name>

From <путь до библиотеки, функционал которой мы хотим использовать>

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

Параметры:

with permission_set = safe (код не имеет доступа до ресурсов) / external_access / unsafe (безграничный доступ, подразумевает что можно обращаться к ресурсам SQL serever)

Пример:

Create assembly Helloworld

From c:\\users\documents\studio\programs\Helloworld.dll

Using system;

Public class Myfunction

{ public static int Myf(int x, int y)

{return x+y;}

}

Create assembly MyAssembly

From c:\\...\MyProject.dll

Create function MyNoSQLFunction (@x int, @y int)

as External name MyAssembly.MyFunction.Myf

print MyNoSQLFunction (3, 4)

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

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

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

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

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

Репликация данных имеет смысл быть реализованной, если есть локальных приложения (продуктивный сервер), чтобы уменьшить пересылку данных. Есть степень репликации абсолютная, то мы имеем дело с параллельный системой баз данных. Это позволяет: регулировать нагрузку системы путем регулирования запросов. При параллельной систем баз данных необходимо стандартизировать систему взаимодействия или установить балансировщик. Когда есть необходимость работы с параллельными базами данных, возникает вопрос переносимости данных. Стоимость разработки механизма кеширования может быть довольная высока, что порой дешевле не создавать систему распределенных баз данных.

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

Цель распределенных баз данных.

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

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

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

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

Выполнение распределенных запросов - СУБД берет на себя решение вопросов кеширования и распределения.

Управление распределенными транзакциями: существует агент транзакции и исполнитель транзакции, который гарантирует, что все транзакции будут выполнены в полном объеме.

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

Независимость от операционной системы

Могут быть независимы от типов СУБД.

Типы:

  1. С глобальной схемой - есть некая универсальная схема данных,которая объединяет локальные мелкие СУБД.

  2. Федеративная система - каждая СУБД имеет свою частичку или полную копию глобальной схемы, и глобальное управление не требуется.

По типам поддерживаемых языков:

  1. Общий тип взаимодействия

  2. Нет общего языка взаимодействия, схема превращается в схему клиент-сервер.

Соседние файлы в предмете Проектирование баз данных