
- •Службы sql- Server. Реляционное ядро. Transact-sql. Visual Studio и clr.
- •Службы бизнес-аналитики. Служба интеграции. Служба отчетности. Служба анализа.
- •Различные редакцииSql Server 2005. Enterprise Edition. Standard Edition. Workgroup Edition. Express Edition. Everywhere Edition.
- •Обзор метаданных. Системные базы данных. Представления метаданных.
- •8. Установка sql Server. Планирование установки. Рекомендации относительно аппаратной части. Установка пакета.
- •9. Установка sql Server. Обновление предыдущих версий. Конфигурирование рабочего пространства sql Server. Удаление sql Server.
- •10. Использование утилиты Management Studio. Организация интерфейса. Размещение окон. Контекстное меню. Страница Summary.
- •11. Использование утилиты Management Studio. Окно Registered Servers.
Архитектуры доступа к данным. Модель баз данных «клиент/сервер». Многоуровневая архитектура. Архитектура, ориентированная на службы.
Прежде всего, SQL Server является сервером баз данных.С технической точки зрения термин «клиент-сервер» связан с двумя взаимодействующими процессами: клиентский процесс запрашивает у серверного некую службу, которая, в свою очередь, обрабатывает запрос клиента. Клиентский и серверный процессы могут быть запущены на разных компьютерах или на одном. Примеры реализации модели "клиент/сервер" -файловые серверы, серверы печати и поставщики служб Интернета (провайдеры) . В базах данных архитектуры "клиент/сервер" сервер баз данных обслуживает запросы к базе от клиентского процесса.
В базах данных с архитектурой "клиент/сервер" клиент подготавливает запрос на языке SQL (небольшое текстовое сообщение) и отсылает его на сервер баз данных, который читает и обрабатывает его. В сервере поддерживается система безопасности, индексируются хранящиеся материалы, заносятся и обрабатываются данные, выполняются серверные программы, и выполняется доставка результатов запросов клиенту.
Вся работа с базой данных выполняется на сервере. Если клиент запрашивает какой-либо набор данных, он подготавливается на сервере, и его копия доставляется клиенту. Реальные данные и индексы никогда не покидают пределы сервера. Когда клиент запрашивает выполнение операции вставки, обновления или удаления, сервер получает этот запрос и сам обрабатывает его.
Преимущества клиент-серверной модели.
Повышена достоверность данных
Ограничения целостности данных и бизнес-правила могут поддерживаться на уровне сервера
Повышена безопасность данных, поскольку база данных хранит их в пределах одного сервера.
Повышена производительность и лучше сбалансированы рабочие станции, поскольку большая часть работы (обработка базы данных) выполняется на сервере, а рабочие станции берут на себя только обслуживание интерфейса пользователя.
В значительной мере сокращаются сетевые потоки.
Снижение сетевых потоков в системах "клиент/сервер" приводит к тому, что приложения хорошо работают даже в распределенной среде и даже при наличии медленных соединений.
Сервер баз данных отвечает за следующее:
обработка запросов на извлечение и модификацию данных;
интенсивная обработка данных;
поддержание всех правил и ограничений базы данных;
поддержание безопасности базы данных.
Клиентский процесс отвечает за следующее:
представление данных пользователю в понятном и удобном формате;
обеспечение интерфейса пользователя всевозможными инструментами, данными и отчетами;
отправку запросов серверу.
Часто в клиент-серверных приложениях баз данных, кроме клиентского и серверного, задействованы дополнительные процессы. Для обслуживания подключений и реализации бизнес-логики часто используются процессы среднего уровня.
Средний уровень, обслуживающий подключения, может оказаться полезным, поскольку множество пользователей смогут получить преимущества всего от нескольких открытых подключений к серверу баз данных. Однако этот тип подключения влияет на способ аутентификации сервером баз данных отдельных пользователей.
Если доступно больше одного сервера, то объект общего подключения облегчает переключение пользователей между серверами А и Б, если первый внезапно окажется недоступным. Объект подключения становится единственной точкой, которая способна автоматически выявить такую ситуацию и переключиться на второй сервер.
Архитектура, ориентированная на службы (SOA), является альтернативой клиент-серверной архитектуре.SOA использует стандартные вызовы HTTP и XML, позволяя множеству систем взаимодействовать с одной, используя один и тот же интерфейс.
Данные проходят несколько уровней, и при этом выполняется их преобразование. Интерфейс конечного пользователя, использующий SOA, будет испытывать недостаток производительности по сравнению с прямым подключением в архитектуре "клиент/сервер" с использованием библиотеки ADO.NET.
Web-службы SOA больше подходят в качестве вторичного метода доступа к данным для облегчения взаимодействия с другими особо крупными системами.
Службы sql- Server. Реляционное ядро. Transact-sql. Visual Studio и clr.
SQL Server—это набор служб и компонентов, связанных с базами данных, которые могут совместно использоваться для построения мощных решений для конечного пользователя. Реляционное ядро SQL Server (ядро базы данных) является сердцем SQL Server. Это процесс, поддерживающий всю реляционную работу базы данных. SQL — декларативный язык, т.е. он описывает ядру базы данных запрос, который тот должен выполнить. Именно он заставляет работать этот механизм.
SQL Server поддерживает установку до пятидесяти экземпляров реляционного ядра на одном физическом сервере..
В реляционном ядре существует несколько ключевых процессов и компонентов, в том числе следующие:
Оптимизатор запросов. Определяет, как обрабатывать запрос, основываясь на относительных затратах, которые влечет за собой выполнение определенных типов операций.
Диспетчер буфера. Анализирует используемые страницы данных и предварительно загружает определенные фрагменты файлов данных в память, снижая таким образом зависимость от производительности операций ввода-вывода на диск.
Lazy Writer. Записывает страницы данных, которые были изменены в памяти, в файл данных.
Монитор ресурсов. Оптимизирует кэш планов запросов в соответствии с нагрузкой на память и избирательно удаляет из него старые планы.
Диспетчер блокировок. Динамически управляет множеством блокировок, выполняя балансировку количества затребованных блокировок с их размерами.
содержит собственный уровень ОС, называемый SQLOS, который управляет всеми внутренними ресурсами.
Язык Transact-SQL(T-SQL) — диалект SQL, распознаваемый SQL Server. Ядро SQL Server понимает только этот язык.
Пакеты хранимых команд T-SQL могут выполняться на сервере как хранимые процедуры.
Команды SQL и T-SQL можно разбить на три категории.
Язык манипулирования данными (DML). Включает в себя популярные инструкции SQL select, insert, update и delete.
Язык определения данных (DDL). Содержит инструкции, создающие и модифицирующие таблицы данных, ограничения и прочие объекты базы данных.
Язык управления данными (DCL). Содержит инструкции управления системой безопасности, такие как grant, revoke и deny.
Одним из самых впечатляющих новшеств является возможность совместной работы систем Visual Studio и SQL Server. Сборки, созданные в Visual Studio, могут быть развернуты и запущены в SQL Server в качестве хранимых процедур, триггеров, определенных пользователем обычных или агрегатных функций. К тому же типы данных, созданные в Visual Studio, могут использоваться для определения таблиц и хранения дополнительных данных.
Достаточно важно то, что в SQLOS поддерживается CLR. Это значит, что SQL Server управляет ресурсами CLR. СУБД может разрешить проблемы CLR, завершить выполнение и перезапустить процедуру CLR.
По умолчанию общий интерпретатор языков CLR в SQL Server 2005 отключен. Но при желании его можно специально включить с помощью утилиты Surface Area Configuration Tool или команды T-SQL set. Когда интерпретатор включен, состояние любой сборки или способность доступа к программам вне SQL Server будет тщательно контролироваться.
Службы SQL- Server. Брокер служб. Служба репликаций. Полнотекстовый поиск. Служба уведомлений. Объекты управления сервером (SMO). SQLServerAgent. Координатор распределенных транзакций. SQLMail.
SQL Server—это набор служб и компонентов, связанных с базами данных, которые могут совместно использоваться для построения мощных решений для конечного пользователя.
Брокер служб управляет асинхронными очередями данных, поддерживая ключевые средства производительности и масштабируемости и балансируя загрузку в течение времени.
Брокер служб может буферизовать большие объемы вызовов Web-служб HTTP или хранимых процедур. Вызовы Web-служб помещаются в очередь, и хранимые процедуры могут быть вызваны несколькими экземплярами SQL Server.
Брокер служб может провести через очередь вызов другой хранимой процедуры, которая возьмет на себя основную нагрузку.
SQL Server содержит команды DDL, управляющие брокером служб; есть команды T-SQL, помещающие данные в очередь и извлекающие их из нее. Брокер служб основательно протестирован и спроектирован специально для систем с исключительно большой нагрузкой.
Служба репликаций SQL Server может перемещать транзакции в одностороннем направлении, а также объединять обновления из многих мест с помощью топологии издателя, распространителя и подписчика.
Полнотекстовый поиск индексирует каждое из слов в столбце.Когда полнотекстовый поиск был разработан для столбцов, запросы SQL Server получили возможность использовать при поиске полнотекстовые индексы и быстро находить в строках отдельные слова.
Служба уведомлений может быть запрограммирована для отправки сообщений при возникновении определенных событий с данными.
Server Management Objects (SMO)— это набор объектов, который открывает функции конфигурирования и управления SQL Server для программирования с помощью кода .NET. Объекты SMO не предназначены для разработки приложений баз данных — они используются производителями при разработке инструментария SQL Server, такого как утилита Management Studio, сторонние интерфейсы управления или утилиты резервного копирования. SMO использует пространство имен Microsoft.SQLServer.SMO.
SQL Server Agent представляет собой дополнительный процесс, который выполняет задания SQL и обслуживает прочие автоматизированные задачи.
Координатор распределенных транзакций (DTC) представляет собой процесс, поддерживающий двухфазные подтверждения для транзакций, которые охватывают несколько серверов. Если приложение регулярно использует распределенные транзакции, то лучше сконфигурировать DTC для автоматического запуска при загрузке операционной системы.
Компонент SQL Mail позволяет серверу отправлять электронные сообщения на внешний почтовый ящик по протоколу SMTP. Почтовые сообщения могут генерироваться множеством источников в SQL Server, в том числе кодом T-SQL, заданиями, предупреждениями, службой интеграции и планами обслуживания.