Microsoft TechDays Косяков Иван Microsoft MVP Russian BI User Group, PASS Chapter.

Презентация:



Advertisements
Похожие презентации
Косяков Иван Microsoft MVP Russian BI User Group, PASS Chapter.
Advertisements

Microsoft TechDays Павел Маслов MVP, Directory Services.
Microsoft TechDays Марат Бакиров Эксперт по разработке ПО Microsoft
Microsoft TechDays Людмила Шайкина Quarta Consulting
Microsoft TechDays Дмитрий Рудых.
Microsoft TechDays Константин Трещев MCITP: Enterprise Administrator
Microsoft TechDays Никоноров Евгений разработчик EPAM Systems.
Ромуальд Здебский Microsoft.
Электронная Библиотека Президента Полнотекстовый поиск на базе iFTS SQL Server Июнь 2009| MSC.
Microsoft TechDayshttp:// Коршиков Андрей Фёдорович ведущий инженер-программист ЗАО «НИПИ «ИнжГео» MCT, MCITP, MCPD.
Microsoft TechDays Евгений Марченков Эксперт по технологиям разработки ПО Microsoft.
Microsoft TechDays Ксения Хмелёва Специалист по технологиям Microsoft.
Microsoft TechDays Павел Дугаев Руководитель проектов Вебзавод
Новые продукты Microsoft для повышения качества и эффективности образования Амит Миталь Старший вице-президент Microsoft по развитию социальных проектов.
Microsoft TechDays Леонид Шапиро MCT ЦКО «Специалист»
Microsoft TechDays Богомолов Алексей MCP
Microsoft TechDays Тучков Вячеслав
Microsoft TechDays Николай Миляев консультант Microsoft.
Microsoft TechDays Заграничнов Александр Microsoft.
Будущее режима /hosting в Exchange Иван Макаров Менеджер по маркетингу Exchange Microsoft Россия.
Транксрипт:

Microsoft TechDays Косяков Иван Microsoft MVP Russian BI User Group, PASS Chapter

Microsoft TechDays Архитектура запросов Диагностика проблемы Методы улучшения производительности запросов Ресурсы

Microsoft TechDays MDX- запросы MDX- запросы Обработка индексов и агрегатов Обработка данных Обработка измерений

Microsoft TechDays Выполнение запросов Извлечение данных XMLA приемник Менеджер сессий Обработчик запросов Кэш обработчика запросов Движок хранения Кэш движка хранения MDX-запрос клиентского приложения Управление сессиями Данные измерений и групп мер

Microsoft TechDays ЗапросЗапрос Свойство CoordinatorExecutionMode: 0 – автоматически, на основе нагрузки и ресурсов +N – число параллельных работ на сервер -N – число параллельных работ на процессор Координирующая работа Работа 1 ПотокПоток Работа 2 ПотокПоток Работа N ПотокПоток …… ПотокПоток

Microsoft TechDays НормализацияНормализация Создание плана запуска Операции со вложенными кубами Расчет количества ячеек Заполнение координат Синтаксический анализ Обработчик запросов Менеджер сессий Движок хранения Запросы к вложенным кубам Семантический анализ Оптимизация пространства Контекст запроса Контекст сессии Глобальный контекст Кэш движка формул

Microsoft TechDays Запрос к вложенному кубу Движок хранения Кэш движка хранения Данные измерений Хранилище атрибутов Хранилище иерархий Данные групп мер Фактические данные АгрегатыАгрегаты Обработчик запросов Менеджер сессий

Microsoft TechDays Запрос к вложенному кубу Координирующая работа Работа 1-го сегмента Поток Работа 2-го сегмента Поток Работа N-го сегмента Поток … …

Microsoft TechDays Архитектура запросов Диагностика проблемы Методы улучшения производительности запросов Ресурсы

Microsoft TechDays Фиксируем «точку отсчета» «Холодный» кэш движков «Теплый» кэш системы Производим диагностику проблемы

Microsoft TechDays

Обработчик запросов Оптимизация MDX-запросов Разогревание кэша Движок хранения Оптимизация измерений Настройка агрегирования Использование секций Аппаратные ресурсы Добавление памяти, процессоров; улучшение I/O Много- пользовательский режим

Microsoft TechDays Обработчик запросов Оптимизация MDX-запросов Разогревание кэша Движок хранения Оптимизация измерений Настройка агрегирования Использование секций Аппаратные ресурсы Добавление памяти, процессоров; улучшение I/O Много- пользовательский режим

Microsoft TechDays Если заданы атрибутивные отношения: Используются индексы, а не ключевой атрибут Эффективно рассчитываются агрегаты

Microsoft TechDays Натуральные и ненатуральные иерархии

Microsoft TechDays

Обработчик запросов Оптимизация MDX-запросов Разогревание кэша Движок хранения Оптимизация измерений Настройка агрегирования Использование секций Аппаратные ресурсы Добавление памяти, процессоров; улучшение I/O Много- пользовательский режим

Microsoft TechDays Проблема: трассировка показала, что более 60% времени запрашиваются секции Как обнаружить: отслеживать события Get Data From Aggregation и Query Subcube Verbose Решение проблемы: Оптимизировать агрегаты, использовать Usage Based optimization wizard для расчета агрегатов Совместить с существующими наборами агрегирования или заменить их

Microsoft TechDays Возможность пересмотра и модификации настроек использования агрегатов Имена настроек агрегирования

Microsoft TechDays Full – атрибут будет включен во все агрегации Unrestricted – атрибут может быть включен в агрегации None – ни одна агрегация не может содержать атрибут Default Атрибут «Все» и атрибут уровня ключа измерения = Unrestricted Измерения «M2M», не материализованные измерения и измерения «data mining» = None Натуральные иерархии = Unrestricted Статистически не обрабатываемые атрибуты = Full Все остальные = None

Microsoft TechDays DefaultDefault FullFull UnrestrictedUnrestricted NoneNone Атрибут часто используется, Не более 10 атрибутов Unrestricted Атрибут почти всегда используется, Мало элементов Атрибут редко используется, участвует в натуральных иерархиях

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

Microsoft TechDays Создание новой структуры агрегирования Объединение с существующей структурой агрегирования

Microsoft TechDays

Обработчик запросов Оптимизация MDX-запросов Разогревание кэша Движок хранения Оптимизация измерений Настройка агрегирования Использовани е секций Аппаратные ресурсы Добавление памяти, процессоров; улучшение I/O Много- пользовательский режим

Microsoft TechDays Срезы – секции без данных не запрашиваются Индивидуальный набор агрегатов для каждой секции – в зависимости от запросов

Microsoft TechDays Секции упорядочены по колонке «distinct count» Потоки, сканирующие секции, скоординированы по значению «distinct count» Поэтому потоки на одной секции могут ждать, чтобы их догнали другие, если значения «distinct count» перекрываются Перекрывающиеся секции Не перекрывающиеся секции Подробнее:

Microsoft TechDays

Обработчик запросов Оптимизация MDX-запросов Разогревание кэша Движок хранения Оптимизация измерений Настройка агрегирования Использование секций Аппаратные ресурсы Добавление памяти, процессоров; улучшение I/O Много- пользовательский режим

Microsoft TechDays Measures.[Sales Amount] (Measures.[Sales Amount], Product.[Product Categories].Parent) / = Measures.[Product Contribution]

Microsoft TechDays Известные факты A = Product.CurrentMember B = Product.Parent Только когда A is not NULL, тогда A / B is not NULL B – всегда константа Движок хранения запрашивает только непустые данные Заключение Выполнять вычисления только тогда, когда значения числителя возвращаются движком хранения, а знаменатель – константа

Microsoft TechDays Measures.[Sales Amount] Measures.[Product Contribution] (Measures.[Sales Amount], Product.[Product Categories].Parent) Шаг 1: Получить определенные (not NULL) значения Шаг 2: Вычислить выражение Шаг 3: Добавить значения NULL в результаты запроса

Microsoft TechDays Используйте блочный режим вычислений. Избегайте использования : Псевдонимов (WITH SET y AS … MEMBER) Позднего связывания в функциях (LinkMember, StrToSet, StrToMember, StrToValue) Пользовательских хранимых процедур LookupCube Оптимизируйте использование IIF (EAGER/STRICT планы) Создавайте отдельный вычисляемый элемент (CREATE MEMBER …) для повторного использования Исключайте меняющиеся атрибуты в выражениях с наборами (FILTER, AGGREGATE, AVERAGE) Используйте NULL для пустых ячеек В выражении «expr1*expr2» разряженное выражение – в левую часть

Microsoft TechDays

Обработчик запросов Оптимизация MDX-запросов Разогревание кэша Движок хранения Оптимизация измерений Настройка агрегирования Использование секций Аппаратные ресурсы Добавление памяти, процессоров; улучшение I/O Много- пользовательский режим

Microsoft TechDays Кэш пустой после того как запускается сервер или обрабатывается секция «Разогревание» кэша - предварительный запуск типичных запросов Создайте приложение VB.NET или C#.NET Используйте ascmd.exe Добавьте задание со скриптом в пакет Integration Services

Microsoft TechDays Обработчик запросов Оптимизация MDX-запросов Разогревание кэша Движок хранения Оптимизация измерений Настройка агрегирования Использование секций Аппаратные ресурсы Добавление памяти, процессоров; улучшение I/O Много- пользователь- ский режим

Microsoft TechDays Установите настройки Threadpool\Query\MaxThreads – максимальное количество рабочих потоков в пуле запросов Threadpool\Process\MaxThreads – максимальное количество потоков в пуле обработки CoordinatorExecutionMode – количество работ на процессор Отслеживайте узкие места количество конкурентных работ и потоков Подробнее ice/ssasqptb.mspx ice/ssasqptb.mspx

Microsoft TechDays Попробуйте использовать NTLFH heap manager вместо OLAP heap manager

Microsoft TechDays Попробуйте предотвратить блокировку коротких запросов более длительными запросами

Microsoft TechDays Кластер серверов SSAS (server farm) Network Load Balancing (NLB) – функция Windows Server® База read-only – если многопользовательская нагрузка мала на движок хранения, но велика на обработчик запросов Подробнее про Scalable Shared Database для SSAS:

Microsoft TechDays Статьи SQL Server 2008 Analysis Services Performance Guide 88D-E7AA-4078-A050-AE39912D2E43&displaylang=en 88D-E7AA-4078-A050-AE39912D2E43&displaylang=en Identifying and Resolving MDX Query Performance Bottlenecks in SQL Server 2005 Analysis Services ilyId=975C5BB B4E-BE7C- 06AC86E24C13&displaylang=en ilyId=975C5BB B4E-BE7C- 06AC86E24C13&displaylang=en Analysis Services Distinct Count ebf-9d1c-405f-84b1-08f492af52dd&displaylang=en ebf-9d1c-405f-84b1-08f492af52dd&displaylang=en Performance Improvements for MDX in SSAS us/library/bb934106(SQL.100).aspx us/library/bb934106(SQL.100).aspx

Microsoft TechDays Презентации PASS Community Summit Порталы SQL Customer Advisory Team SQL Server Web site SQL Server TechCenter SQL Server DevCenter

Microsoft TechDays Для вопросов – Мой блог – Russian Business Intelligence ( – группа пользователей, отделение PASShttp://rubi.ineta.ru

Microsoft TechDays © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.