Создание баз данных в MS SQL Server 2008 R2 Определение необходимых таблиц, типов данных и разрешений Определить: Размещение файлов и производительность транзакций для OLTP проектов Кубы, факты и измерения для OLAP проектов Запрос OLTP Результат Клиент OLAP SQL Server 1 Приложение отправляет измененные данные 3 Буферный кэш Изменения записываются в журнал транзакций на диске Диск 2 Страницы данных помещаются, или считываются в буферный кэш и изменяются Диск 4 Контрольные точки записывают зафиксированные транзакции в базу данных Для повышения производительности рекомендуется размещать журнал транзакций на отдельном диске AUTO – управляют автоматическим поведением CURSOR – управляют поведением курсора Database Availability – контролируют состояние базы данных, возможности подключения и редактирования данных External Access – возможность доступа из внешних ресурсов Recovery – определение модели восстановления ROW – сжатие строк позволяет хранить типы фиксированной длины в формате переменной длины PAGE – сжатие страниц Сжатие префикса Сжатие словаря Сжатие требует дополнительных ресурсов процессора База данных AdventureWorks sys... sys... sysusers sysobjects C:\ ... SalesOrderHeader Customer Product D:\ OrdHistYear2 OrdHistYear1 E:\ OrdHist1.ndf AdventureWorks_ Data.mdf OrdHist2.ndf Файловая группа по умолчанию OrderHistoryGroup AdventureWorks_ Log.Idf Данные Заголовок Фиксированные данные NB VB Переменные данные 4 Bytes Null блок 2 Bytes Количество столбцов 10111001 … Дополнительные биты столбцов, если требуется Бит Null столбцов (первые 8 столбцов) Блок данных переменной длины 2 Bytes Количество столбцов 2 Bytes … Дополнительный указатель для столбца переменной длины Указатель окончания первого столбца переменной длины Имя столбца должно быть уникальным для таблицы Для каждого столбца необходимо задать тип данных В описании таблицы задается возможность хранения NULLзначений в столбце Специальные типы столбцов: • Вычисляемые столбцы • Свойство Identity • Столбцы timestamp • Столбцы uniqueidentifier 1. 2. 3. Первичные файлы данных. Как правило, используется расширение MDF. В любой базе данных есть один первичный файл, который содержит данные и расположение всех остальных файлов БД. Вторичные файлы данных. Как правило, используется расширение NDF. Вторичным является любой файл кроме первичного и файлов журналов. БД могут не содержать ни одного вторичного файла. Файлы журналов. Как правило, используется расширение LDF. В каждой БД существует по меньшей мере один файл журнала. NAME – определяет логическое имя файла. По умолчанию совпадает с физическим именем файла, определенном в параметре FILENAME; FILENAME – указывает полный путь и имя физического файла; SIZE – указывает размер файла: в мегабайтах, килобайтах. Минимально возможное значение 512 Кб. Размер основного файла по умолчанию равен размеру БД model. По умолчанию размер дополнительных файлов данных и журнала равен 1 Мб; MAXSIZE – указывает максимальный размер, до которого может увеличиваться файл. Если этот параметр не указан, то устанавливается значение UNLIMITED, позволяющее увеличивать файлам размер без ограничений; FILEGROWTH – задает шаг увеличения файла, причем ноль означает запрет увеличения размера. Значение указывается в мегабайтах, килобайтах или процентах. По умолчанию приращение – 10%, если не указаны единицы, то цифра воспринимается в мегабайтах; FILEGROUP – определяет имя группы файлов, в которую помещается файл.