Вопрос

Короче говоря

Я полностью сбит с толку множеством доступных служб SQL Server, и мне трудно найти краткое руководство.

Сенсация

Я долгое время являюсь ASP.Сетевой разработчик, который с удовольствием выпускает ASP.Сетевые приложения в течение многих лет.Обычно они основывались на SQL server и ряде пользовательских таблиц и представлений.

Совсем недавно у меня возникла необходимость создать некоторые отчеты, которые немного выходят за рамки простого, и поэтому я начал изучать службы SQL Server Reporting Services (SSRS).Поступая таким образом, я чувствую, что открыл Ящик Пандоры.

Существуют службы отчетов, службы интеграции, службы анализа, бизнес-аналитики и т.д. и т.п.Это заставило меня задуматься, что все они делают, и мог ли я (или должен был) использовать эти инструменты для выполнения некоторой тяжелой работы с .net-приложениями.

Мои непосредственные исследовательские усилия в Microsoft заглушили меня непроницаемой речью о маркетинге и бизнесе.Мои поиски в Google не дали исчерпывающего обзора того, что это за инструменты, или они сочетаются друг с другом, или даже какой инструмент следует использовать, когда.Одна из самых больших проблем, с которыми я сталкиваюсь при осмыслении вариантов, заключается в том, что все они кажутся мне примерно одинаковыми!

Итак, все это говорит о том, что если бы какая-нибудь добрая подошва могла наставить меня на путь истинный и направить в правильном направлении, я был бы очень благодарен :)

Это было полезно?

Решение

Обзор очень высокого уровня:

Основные службы для самого компонента database Engine состоят из самой службы SQL Server (или MSSQLSERVER), а также агента SQL Server и браузера SQL Server.Агент SQL Server является планировщиком заданий для SQL Server и обрабатывает некоторые другие задачи обслуживания и так далее, в то время как служба браузера помогает с принятием логинов и так далее, создавая более простой способ для клиентских приложений подключаться к SQL Server.

Однако все три эти службы являются настоящими "службами" в том смысле, что они являются демонами, запущенными на вашем сервере.Но из этих трех вам нужен ТОЛЬКО запущенный MSSQLSERVER, чтобы иметь возможность работать с механизмом реляционной базы данных.(Две другие услуги являются необязательными.)

Затем, в дополнение к основной функциональности database Engine, существует множество дополнений или дополнительных "продуктов" и инструментов, которые предлагает Microsoft, чтобы помочь сделать SQL Server намного лучше и более привлекательным в качестве платформы / предложения.Как вы уже видели, они обычно продаются как "услуги".

Службы Reporting Services (или SSRS) - отличное решение, которое использует собственную базу данных SQL Server для хранения информации об источниках данных, расписаниях доставки отчетов, разрешениях доступа и так далее...для мощного механизма создания отчетов, который позволяет очень легко выводить отличные отчеты практически из ЛЮБОГО источника данных.Вы просто определяете источники для отчетов, подключаете наборы данных и параметры, затем используете специализированную xml-разметку (Report Definition Language или RDL) для определения внешнего вида, функциональности, формы и так Далее ваших отчетов.Кроме того, Microsoft создала "измененную" версию Visual Studio, чтобы значительно упростить создание / разработку / редактирование этих отчетов.Эта версия visual Studio называется SQL Server Business Intelligence Design Studio (или BIDS).

Аналогичным образом Microsoft также использует BIDS, чтобы помочь разработчикам, администраторам баз данных и аналитикам создавать кубы данных - многомерные таблицы, "соединенные" с использованием специализированной схемы, которая позволяет службам SQL Server Analysis Services (SSAS) использовать практически любую комбинацию связей данных для предоставления "аналитических данных".Итак...допустим, у вас есть компания, продающая виджеты:вы могли бы определить взаимосвязи между продуктами, клиентами, регионами продаж, датами и так Далее - и службы службы безопасности возьмут эти данные (вместе со специально определенными определениями "куба", которые определяют эти взаимосвязи, их детализацию и так далее) и предварительно рассчитают результат практически для любой комбинации этих "измерений" или ракурсов данных - так что вы могли бы сказать что-то вроде:"Покажите мне все виджеты x-brand, проданные продавцами в северо-западном регионе в январе этого года..." и это даст вам сумму проданных запчастей...и даже позволит вам выполнить детализацию по продавцам, магазину и так Далее - при условии, что вы определили свой куб / связи по мере необходимости.

Конечно, эта функциональность довольно мощная, но вы почти никогда не захотите, чтобы эти кубы работали с вашими производственными таблицами...поэтому компании обычно создают хранилища данных или витрины с данными для хранения своих аналитических данных.Но регулярно копировать данные с производства на эти склады / витрины..вам нужен какой-то инструмент, который позволяет легко определить, какие изменения следует учесть, как с ними следует обращаться и какие настройки / изменения вам нужно внести в них, чтобы перенести их из высоко нормализованной производственной среды в высоко денормализованное хранилище / витрину данных (где вы используете схемы snowflake или star)...И этот инструмент / сервис - не что иное, как службы SQL Server Integration Services (SSIS), которые имеют богатый набор соединителей, перекачивающих устройств, преобразований, мониторов и так Далее Для облегчения преобразований данных и миграции на регулярной основе.Однако что очень здорово в этом инструменте / сервисе...заключается в том, что он не просто соединяет / преобразует данные между SQL Server и SQL Server...но он способен подключать большинство источников данных к БОЛЬШИНСТВУ источников данных - так что это мощный инструмент для преобразования, экспорта, импорта, модификации, настройки и так далее всех ваших данных.И...чтобы определить "рабочие процессы" для ваших проектов интеграции / преобразования, вы также используете Business Intelligence Design Studio - то же самое, что и при определении кубов и т. Д. Для служб SQL Server Analysis Services.

В конечном счете, однако, что делает все это таким крутым, так это то, что вы получаете доступ к:

SQL Сервер

Службы отчетов SQL Server

Службы интеграции SQL Server

Службы анализа SQL Server

С выпусками SQL Server Standard и Enterprise - так что нет необходимости покупать дополнительные инструменты / решения / предложения, чтобы иметь возможность воспользоваться этими замечательными функциями.(Корпоративная версия SQL Server, которая стоит примерно в 5 раз дороже стандартной...в некоторых отношениях поставляется с гораздо лучшими / более крутыми функциями ...но вы по-прежнему получаете солидный набор всех функций, используя стандартную версию.)

Другие советы

Вот основной обзор услуг:

Аналитические услуги: Это решение Microsoft для хранения данных.Это позволяет вам создавать кубы данных и другие функции хранилища.Предоставляет инструменты, упрощающие создание сценариев "что, если".Это выполняется поверх SQL Server.Хранилища данных также называются приложениями бизнес-аналитики, поскольку хранилища используются для сбора и анализа данных.

Службы отчетности: Позволяет вам более легко создавать отчеты по базе данных.Он предоставляет конструктор отчетов и функциональные возможности управления.Предполагается, что этот сервис упростит и ускорит создание расширенных отчетов.Служба отчетов также работает со службами обработки данных, отличными от SQL Server.

Услуги по интеграции: Предоставляет функциональные возможности для создания функций извлечения, преобразования, загрузки (ETL).Инструменты ETL объединяют отдельные наборы данных и помогают с извлечением, агрегированием, очисткой и загрузкой данных.Как и другие сервисы, он предоставляет графический интерфейс, который должен упростить создание этих пакетов.

Вы не обязаны использовать три сервиса в одной связке, но они обеспечивают функциональность при совместном использовании.Например, вы можете использовать службы Analysis Services для создания кубов данных, Службы Integration Services для извлечения данных из внешней службы и импорта их в свой куб, а Службы Reporting Services для создания отчетов, содержащих бизнес-показатели, на основе данных, содержащихся в кубе.

Что касается того, должны ли вы их использовать, как всегда, это зависит от того, используете ли вы их.Сервисы предоставляют некоторые отличные услуги, но не всегда соответствуют проекту.Например, службы Reporting Services действительно упрощают создание отчетов, но, по моему опыту, они недостаточно удобны для создания отчетов конечным пользователем в том виде, в каком они рекламируются.Службы Integration Services отлично подходят для выполнения некоторых заданий ETL, но они не такие гибкие, как иногда требовалось.Я пользовался этим сервисом в нескольких проектах, но это всегда заканчивалось большими проблемами, чем я ожидал.Но определенно, взгляните на них.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top