Системное администрирование SQL Server

Подкатегории

Системное окружение и сервер базы данных

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

Просмотреть материалы...

Управление экземплярами сервера и поддержка баз данных

В этом разделе описываются средства для управления экземплярами Database Engine (Declarative Management Framework) и мастер для создания планов поддержки базы данных (Maintenance Plan Wizard). Declarative Management Framework (DMF) является новым средством в SQL Server 2008, которое используется для управления всеми экземплярами его баз данных. Maintenance Plan Wizard обеспечивает некоторое количество задач, которые, помимо всего другого, проверяют, правильно ли выполняется ваша база данных и находятся ли ваши таблицы и индексы в согласованном состоянии.

Просмотреть материалы...

Резервное копирование и восстановление БД

В этом разделе рассматриваются две из наиболее важных задач, связанные с системой администрирования: резервное копирование и восстановление. Резервное копирование (backup) означает процесс создания копии базы данных (баз данных) и/или протоколов транзакций для разделения устройств, которые в дальнейшем при необходимости могут быть использованы для восстановления данных. Восстановление (recovery) - это процесс использования устройства резервной копии для замены неподтвержденных, несогласованных или потерянных данных.

Просмотреть материалы...

Система автоматизации задач администрирования

Одним из наиболее важных преимуществ Database Engine по сравнению с другими реляционными СУБД является его автоматическое администрирование задач, а это снижает затраты. Вы можете автоматизировать все эти задачи, так что они появятся в регулярном расписании. Например, вы можете установить, что задача резервного копирования базы данных появляется каждую пятницу в 20:00, а задача резервного копирования протокола транзакций - ежедневно в полночь.

Просмотреть материалы...

Репликация данных

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

Просмотреть материалы...

Оптимизатор запросов

Вопросом, который обычно возникает, когда Database Engine (или любая другая система реляционной базы данных) выполняет запрос, является вопрос, как доступ к необходимым данным и обработка этих данных в запросе может быть выполнена с максимальной эффективностью. Компонент системы базы данных, ответственный за такую деятельность, называется оптимизатором запросов. Задачей оптимизатора запросов (или просто оптимизатора) является рассмотрение множества возможных стратегий выполнения поиска требуемых в запросе данных и выбор наиболее эффективной стратегии. Выбранная стратегия называется планом выполнения запроса. Оптимизатор принимает свои решения с учетом таких факторов, как: насколько велики по размерам таблицы, вовлеченные в запрос, какие существуют индексы и какие логические операции (and, or, not) используются в предложении where. Обычно такие факторы называются статистическими данными.

Просмотреть материалы...

Настройка производительности

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

Просмотреть материалы...

Оценить
(0 голоса)
Как вы уже знаете, оптимизатор использует индексы для повышения скорости выполнения запроса. Когда вы обращаетесь к таблице, у которой нет индексов, или если оптимизатор принимает решение не использовать существующий индекс, система выполняет последовательное сканирование таблицы. В процессе сканирования таблицы Database Engine последовательно читает страницы данных таблицы для поиска строк, которые принадлежат результирующему набору данных. Доступ по индексу является методом доступа, при котором система базы данных читает и записывает страницы данных с использованием индекса. Так как доступ по индексу значительно сокращает количество операций ввода/вывода, он обычно выполняется гораздо быстрее, чем сканирование таблицы. Как вы уже знаете, Database Engine использует некластеризованный индекс…
Оценить
(0 голоса)
Статистические данные индекса обычно создаются, когда создается индекс для конкретного столбца (столбцов). Создание статистических данных индекса означает, что Database Engine создает гистограмму, основанную более чем на 200 значениях столбца. (По этой причине создается более 199 интервалов.) Гистограмма указывает, помимо других вещей, как много строк в точности соответствует каждому интервалу, среднее количество строк с различными значениями внутри интервала и плотность значений. Если вы хотите явно создать статистические данные индекса, то можете использовать следующие инструменты: ♦ системную процедуру sp_createstats; ♦ SQL Server Management Studio. Системная процедура spcreatestats создает статистические данные по одиночному столбцу для всех столбцов всех пользовательских таблиц текущей базы данных.…
Оценить
(0 голоса)
Как вы уже знаете из предыдущих разделов, Database Engine создает статистические данные для каждого существующего индекса. Система также может создавать статистические данные и для неиндексированных столбцов. Эти статистические данные называются статистическими данными столбца. Вместе со статистическими данными индекса статистические данные столбца используются для оптимизации плана выполнения запроса. Database Engine создает статистические данные даже для неиндексированного столбца, который является частью условия в предложении where. Существует несколько ситуаций, при которых наличие статистических данных столбца может помочь оптимизатору принять правильное решение. Одной из них является ситуация, когда у вас есть составной индекс из двух или более столбцов. Как вы уже знаете, для такого…
Оценить
(0 голоса)
Обычно порядок, в котором две или более соединяемые таблицы записываются в предложении from оператора select, не оказывает влияния на решение, принимаемое оптимизатором относительно порядка их обработки. Как вы увидите в следующем разделе, множество различных факторов влияет на решение оптимизатора, касающееся того, к какой таблице в первую очередь будет выполняться обращение. С другой стороны, вы можете повлиять на выбор порядка соединения, используя подсказку force order.
Оценить
(0 голоса)
Операция соединения является операцией, больше всего забирающей время при обработке запроса. Database Engine поддерживает следующие три различные техники обработки соединения, так что оптимизатор может выбрать одну из них в зависимости от статистических данных в каждой из таблиц: ♦ вложенные циклы; ♦ слияние соединения; ♦ хеширование соединения.
Оценить
(0 голоса)
Использование вложенных циклов является техникой обработки, которая работает как «грубая сила». Другими словами, для каждой строки внешней таблицы отыскивается и сравнивается каждая строка из внутренней таблицы. Псевдокод в примере 20.1 демонстрирует технику выполнения вложенных циклов для двух таблиц.   Здесь для каждой строки, выбранной из внешней таблицы (таблица а), осуществляется доступ ко всем строкам внутренней таблицы (таблица в). После этого выполняется сравнение значений, и строка добавляется в результирующий набор, если значения в обоих столбцах равны. Метод вложенных циклов является очень медленным, если не существует индекса для одного из соединяемых столбцов. При отсутствии индекса Database Engine должен выполнять сканирование внешней таблицы…
Оценить
(0 голоса)
Техника слияния соединения предоставляет рентабельную альтернативу создания индекса вложенным циклам. Строки соединяемых таблиц должны быть физически упорядочены с использованием значений столбца соединения. Обе таблицы затем сканируются в порядке столбцов соединения, отыскивая соответствующие строки с теми же значениями столбцов соединения. Псевдокод в примере 20.2 демонстрирует технику обработки процесса соединения для двух таблиц.       Техника выполнения слияния соединения будет иметь высокие накладные расходы, если строки в обеих таблицах не отсортированы. Однако этот метод является предпочтительным, когда для значений обоих столбцов соединения выполнена предварительная сортировка. (Это всегда тот случай, когда оба соединяемых столбца являются первичными ключами в соответствующих таблицах, потому что…
Оценить
(0 голоса)
Техника хеширования соединения обычно используется, когда не существует никаких индексов для соединяемых столбцов. В случае техники хеширования соединения обе таблицы, которые должны быть соединены, рассматриваются как два потока ввода: компонуемый ввод и контрольный ввод. (Наименьшая таблица обычно представляет компонуемый ввод.) Этот процесс работает следующим образом: 1. Значение соединяемого столбца строки из компонуемого ввода сохраняется в хешированном сегменте памяти в зависимости от количества, полученного от алгоритма хеширования. 2. Как только все строки из компонуемого ввода будут обработаны, начинается обработка строк из контрольного ввода. 3. Каждое значение соединяемого столбца строки из контрольного ввода обрабатывается с использованием того же алгоритма хеширования. 4. Отыскиваются…
Оценить
(0 голоса)
Database Engine поддерживает несколько инструментов, которые позволяют редактировать конкретные действия оптимизатора запросов. Помимо прочих вы можете использовать следующие инструменты: ♦ оператор set (для отображения в виде текста или в формате XML планов выполнения); ♦ Management Studio (для отображения планов выполнения в графическом виде); ♦ представления динамического управления (Dynamic management views, DMV) и функции; ♦ SQL Server Profiler. В следующих разделах описываются первые три инструмента.
Оценить
(0 голоса)
Для понимания различных опций оператора set вам нужно знать, что существуют три различные формы, в которых может отображаться план выполнения запроса: ♦ текстовая форма; ♦ использование XML; ♦ графическая форма. Первые две формы используют оператор set, так что эти две формы обсуждаются в следующих подразделах. Графическая форма плана выполнения обсуждается в разд. «Management Studio и графические планы выполнения» далее В этом разделе.
© 2018 serversql.ru. Все права защищены.