Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lekcii (1).doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.44 Mб
Скачать
    1. Некластерные индексы

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

Обратите внимание, в данном примере есть две записи со значением «Летов» - значит, создается также два указателя в индексе, по одному на каждую запись.

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

    1. Создание индекса

Общая схема SQL-инструкции для создания индексов:

CREATE [UNIQUE] [CLUSTERED | NONCLUSTERED] INDEX

имя_индекса ON имя_таблицы (столбец [,…]);

Команда содержит следующие параметры:

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

CLUSTERED – создает кластерный индекс.

NONCLUSTERED – создает некластерный индекс.

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

столбец – определяет столбцы, включаемые в индекс.

Например, создадим уникальный кластерный индекс по столбцу «Sirname» таблицы «Contacts». Индекс будет иметь имя «index1».

CREATE UNIQUE CLUSTERED INDEX

index1 ON Contacts (Sirname);

Создадим неуникальный некластерный индекс index2.

CREATE INDEX

index2 ON Contacts (Sirname);

При построении индексов можно опираться на следующие правила.

  • Не создавайте кластерные индексы для таблиц, в которых будут часто обновляться данные. При любом изменении происходит физическое перестроение таблицы по индексу, что замедляет работу БД.

  • При извлечении из таблицы очень большого числа строк использование индекса – только потеря времени.

  • Индексы лучше создавать для столбцов, значения в которых редко повторяются.

  • Индекс должен быть максимально узким (меньшего объема). Любой индекс занимает место на диске, кроме того, если в таблице создан кластерный индекс, он будет использоваться для поиска во всех некластерных индексах (как идентификатор записи). Если кластерный ключ действительно широкий, тогда все некластерные индексы будут (без необходимости) широкими.

  • Индексы полезны при сортировке. Если сортировка происходит по индексируемому столбцу (или нескольким столбцам одного индекса), нет необходимости переупорядочивать данные.

  1. Многопользовательский доступ к данным

    1. Технология «клиент-сервер»

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

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

Виды серверов:

  • FTP-сервер (ftp – протокол для передачи файлов);

  • WEB-сервер (принимает от клиентов http-запросы, возвращает http-ответы);

  • сервер БД;

  • SMTP-сервер;

  • прокси-сервер (позволяет клиентам выполнять косвенные запросы к другим сетевым службам) и др.

Клиент – это аппаратный или программный компонент, который отправляет серверу запросы, в ответ получает информацию и предоставляет её пользователю.

По сути, сервер владеет и распоряжается информационными ресурсами системы, клиент имеет возможность ими воспользоваться.

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

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

При работе с базами данных часто используется следующая схема:

Тонкий клиент (веб-браузер) обращается к веб-серверу по протоколу http, веб-сервер отправляет запрос к серверу БД, получает данные, обрабатывает их, формирует html-страницу и возвращает её клиенту.

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