1. Получаем разрешение на доступ к OLAP-кубу SQL Server Analysis Services (SSAS)
2. На вашем компьютере должен быть установлен MS Excel 2016 / 2013 / 2010 (можно и MS Excel 2007, но в нем работать не удобно, и совсем бедная функциональность MS Excel 2003)
3. Открываем MS Excel, запускаем мастер настройки соединения с аналитической службой:
3.1 Указываем имя или IP-адрес действующего сервера OLAP (иногда требуется указать номер открытого порта, например, 192.25.25.102:80); используется доменная аутентификация:
3.2 Выбираем многомерную базу данных и аналитический куб (в случае наличия прав доступа к кубу):
3.3 Настройки соединения с аналитической службой будут сохранены в odc-файле на Вашем компьютере:
3.4 Выбираем вид отчета (сводная таблица/график) и указываем место для его размещения:
Если в книге Excel уже создано подключение, то им можно воспользоваться повторно: главное меню «Данные» -> «Существующие подключения» -> выбираем подключение в этой книге -> вставляем сводную таблицу в указанную ячейку.
4. Успешно подключились к кубу, можно приступать к интерактивному анализу данных:
Приступая к интерактивному анализу данных необходимо определить, какие из полей будут участвовать в формировании строк, столбцов и фильтров (страниц) сводной таблицы. В общем случае сводная таблица является трехмерной, и можно считать, что третье измерение расположено перпендикулярно экрану, а мы наблюдаем сечения, параллельные плоскости экрана и определяемые тем, какая «страница» выбрана для отображения. Фильтрацию можно осуществить путем перетаскивания мышью соответствующих атрибутов измерений в область фильтров отчета. Фильтрация ограничивает пространство куба, уменьшая нагрузку на сервер OLAP, поэтому предпочтительнее в первую очередь установить необходимые фильтры. Затем следует размещать атрибуты измерений в областях строк, столбцов и показатели в область данных сводной таблицы.
Каждый раз, когда изменяется сводная таблица, на сервер OLAP автоматически отправляется MDX-инструкция, по исполнении которой возвращаются данные. Чем больше и сложнее объем обрабатываемых данных, рассчитываемых показателей, тем дольше время исполнения запроса. Отменить исполнение запроса можно нажатием клавиши Escape. Последние выполненные операции можно отменить (Ctrl+Z) или вернуть (Ctrl+Y).
Как правило, для наиболее часто используемых сочетаний атрибутов измерений в кубе хранятся заранее рассчитанные агрегированные данные, поэтому время отклика таких запросов несколько секунд. Однако все возможное комбинации агрегаций просчитать невозможно, так как для этого может потребоваться очень много времени и места для хранения. Для исполнения массивных запросов к данным на уровне детализации могут потребоваться значительные вычислительные ресурсы сервера, поэтому время их исполнения может быть продолжительным. После чтения данных с дисковых накопителей сервер помещает их в кэш оперативной памяти, что позволяет последующим таким запросам выполняться мгновенно, поскольку данные будут извлекаться уже из кэша.
Если Вы считаете, что ваш запрос будет часто использоваться и время его исполнения неудовлетворительно, Вы можете обратиться в службу сопровождения аналитических разработок для оптимизации выполнения запроса.
После размещения иерархии в области строк / столбцов возможно скрыть отдельные уровни:
У ключевых атрибутов (реже — для атрибутов выше по иерархии) измерений могут быть свойства — описательные характеристики, которые могут отображаться как во всплывающих подсказках, так и в виде полей:
Если требуется отобразить сразу несколько свойств полей, то можно воспользоваться соответствующим диалоговым списком:
Определяемые пользователем наборы
В Excel 2010 появилась возможность интерактивного создания собственных (определяемых пользователем) наборов из элементов измерения:
В отличие от наборов создаваемых и хранящихся централизованно на стороне куба, пользовательские наборы сохраняются локально в книге Excel и могут использоваться в дальнейшем:
Продвинутые пользователи могут создавать наборы, используя MDX конструкции:
Настройка свойств сводной таблицы
Посредством пункта «Параметры сводной таблицы…» контекстного меню (щелчок правой кнопкой мыши в рамках сводной таблицы) предоставляется возможность настройки сводной таблицы, например:
— вкладка «Вывод», параметр «Классический макет сводной таблицы» — сводная таблица становится интерактивной, можно перетаскивать поля (Drag&Drop);
— вкладка «Вывод», параметр «Показывать элементы без данных в строках» — в сводной таблице будут отображаться пустые строки, не содержащие ни одного значения показателя по соответствующим элементам измерений;
— вкладка «Разметка и формат», параметр «Сохранять форматирование ячеек при обновлении» — в сводной таблице можно переопределить и сохранить формат ячеек при обновлении данных;
Создание сводных диаграмм
Для имеющейся сводной OLAP-таблицы можно создать сводную диаграмму – круговую, линейчатую, гистограмму, график, точечную и другие виды диаграмм:
При этом сводная диаграмма будет синхронизирована со сводной таблицей – при изменении состава показателей, фильтров, измерений в сводной таблице также обновляется сводная таблица.
Создание информационных панелей
Выделим исходную сводную таблицу, скопируем ее в буфер обмена (Ctrl+C) и вставим её копию (Ctrl+V), в которой изменим состав показателей:
Для одновременного управления несколькими сводными таблицами вставим срез (новый функционал, доступный, начиная с версии MS Excel 2010). Подключим наш Slicer к сводным таблицам – щелчок правой кнопкой мыши в рамках среза, выбор в контекстном меню пункта «Подключения к сводной таблице…». Следует отметить, что может быть несколько панелей срезов, которые могут обслуживать одновременно сводные таблицы на разных листах, что позволяет создавать скоординированные информационные панели (Dashboard).
Панели срезов можно настраивать: необходимо выделить панель, затем см. пункты «Размер и свойства…», «Настройки среза», «Назначить макрос» в контекстном меню, активируемого по правому щелку мыши или пункт «Параметры» главного меню. Так, возможно установить кличество столбцов для элементов (кнопок) среза, размеры кнопок среза и панели, определить для среза цветовую гамму и стиль оформления из имеющегося набора (или создать свой стиль), определить собственный заголовок панели, назначить программный макрос, посредством которого можно расширить функционал панели.
Исполнение MDX запроса из Excel
- Прежде всего, необходимо выполнить операцию DRILLTHROUGH на каком-нибудь показателе, т.е. спуститься к детализированным данным (детализированные данные отображаются на отдельном листе), и открыть список подключений;
- Открыть свойства подключения, перейти на вкладку «Определение»;
- Выбрать тип команды по умолчанию, а в поле текста команды разместить заранее подготовленный MDX запрос;
- При нажатии кнопки после проверки правильности синтаксиса запроса и наличия соответствующих прав доступа запрос исполнится на сервере, а результат будет представлен в текущем листе в виде обычной плоской таблицы.
Посмотреть текст MDX-запроса, генерируемого Excel, можно с помощью установки бесплатного дополнения OLAP PivotTable Extensions, которое предоставляет также и другие дополнительные функциональные возможности.
Перевод на другие языки
Аналитический куб поддерживает локализацию на русский и английский языки (при необходимости возможна локализация на другие языки). Переводы распространяются на наименования измерений, иерархий, атрибутов, папок, мер, а также элементы отдельных иерархий в случае наличия для них переводов на стороне учетных систем/ хранилища данных. Чтобы сменить язык, необходимо открыть свойства подключения и в строке подключения добавить следующую опцию:
Extended Properties=»Locale=1033″
где 1033 — локализация на английский язык
1049 — локализация на русский язык
Дополнительные расширения Excel для Microsoft OLAP
Возможности работы с OLAP-кубами Microsoft возрастут, если использовать дополнительные расширения, например, OLAP PivotTable Extensions, благодаря которому можно пользоваться быстрым поиском по измерению:
dvbi.ru
2011-01-11 16:57:00Z
Последнее изменение: 2021-12-12 22:27:25Z
Возрастная аудитория: 14-70
Комментариев: 0
Кубы данных OLAP (Online Analytical Processing — оперативный анализ данных) позволяют эффективно извлекать и анализировать многомерные данные. В отличие от других типов баз данных, базы данных OLAP разработаны специально для аналитической обработки и быстрого извлечения из них всевозможных наборов данных. На самом деле существует несколько ключевых различий между стандартными реляционными базами данных, такими как Access или SQL Server, и базами данных OLAP. [1]
Рис. 1. Для подключения куба OLAP к книге Excel воспользуйтесь командой Из служб аналитики
Скачать заметку в формате Word или pdf
В реляционных базах данных информация представляется в виде записей, которые добавляются, удаляются и обновляются последовательно. В базах данных OLAP хранится только моментальный снимок данных. В базе данных OLAP информация заархивирована в виде единого блока данных и предназначается только для вывода по запросу. Хотя в базу данных OLAP и можно добавлять новую информацию, существующие данные редко редактируются и тем более удаляются.
Реляционные базы данных и базы данных OLAP различаются структурно. Реляционные базы данных обычно состоят из набора таблиц, которые связаны между собой. В отдельных случаях реляционная база данных содержит так много таблиц, что очень сложно определить, как же они все-таки связаны. В базах данных OLAP связь между отдельными блоками данных определяется заранее и сохраняется в структуре, известной под названием кубы OLAP. В кубах данных хранятся полные сведения об иерархической структуре и связях базы данных, которые значительно упрощают навигацию по ней. К тому же создавать отчеты намного проще, если заранее известно, где располагаются извлекаемые данные и какие еще данные с ними связаны.
Основная же разница между реляционными базами данных и базами данных OLAP заключается в способе хранения информации. Данные в кубе OLAP редко представлены в общем виде. Кубы данных OLAP обычно содержат информацию, представленную в заранее разработанном формате. Таким образом, операции группировки, фильтрации, сортировки и объединения данных в кубах выполняются перед заполнением их информацией. Это делает извлечение и вывод запрашиваемых данных максимально упрощенной процедурой. В отличие от реляционных баз данных, нет необходимости в упорядочении информации должным образом перед выводом ее на экран.
Базы данных OLAP обычно создаются и поддерживаются администраторами IT-отдела. Если в вашей организации нет структуры, которая отвечает за управление базами данных OLAP, то можете обратиться к администратору реляционной базы данных с просьбой реализовать в корпоративной сети хотя бы отдельные OLAP-решения.
Подключение к кубу данных OLAP
Чтобы получить доступ к базе данных OLAP, сначала нужно установить подключение к кубу OLAP. Начните с перехода на вкладку ленты Данные. Щелкните на кнопке Из других источников и выберите в раскрывающемся меню команду Из служб аналитики (рис. 1).
При выборе указанной команды на экране появится диалоговое окно мастера подключения к данным (рис. 2). Основная его задача — это помочь вам установить соединение с сервером, который будет использован программой Excel при управлении данными.
1. Сначала нужно предоставить Excel регистрационную информацию. Введите в полях диалогового окна имя сервера, регистрационное имя и пароль доступа к данным, как показано на рис. 2. Щелкните на кнопке Далее. Если вы подключаетесь с помощью учетной записи Windows, то установите переключатель Использовать проверку подлинности Windows.
Рис. 2. Введите регистрационные данные
2. Выберите в раскрывающемся списке базу данных, с которой будете работать (рис. 3). В текущем примере используется база данных Analysis Services Tutorial. После выбора этой базы данных в расположенном ниже списке предлагается импортировать все доступные в ней кубы OLAP. Выберите необходимый куб данных и щелкните на кнопке Далее.
Рис. 3. Выберите рабочую базу данных и куб OLAP, который планируете применять для анализа данных
3. В следующем диалоговом окне мастера, показанном на рис. 4, вам требуется ввести описательную информацию о создаваемом подключении. Все поля диалогового окна, показанного на рис. 4, не обязательны для заполнения. Вы всегда можете проигнорировать текущее диалоговое окно, не заполняя его, и это никак не скажется на подключении.
Рис. 4. Измените описательную информацию о соединении
4. Щелкните на кнопке Готово, чтобы завершить создание подключения. На экране появится диалоговое окно Импорт данных (рис. 5). Установите переключатель Отчет сводной таблицы и щелкните на кнопке ОК, чтобы начать создание сводной таблицы.
Рис. 5. Завершив настройку подключения, можете приниматься за создание сводной таблицы
Структура куба OLAP
В процессе создания сводной таблицы на основе базы данных OLAP вы заметите, что окно области задач Поля сводной таблицы будет отличаться от такового для обычной сводной таблицы. Причина кроется в упорядочении сводной таблицы так, чтобы максимально близко отобразить структуру куба OLAP, присоединенного к ней. Чтобы максимально быстро перемещаться по кубу OLAP, необходимо детально ознакомиться с его компонентами и способами их взаимодействия. На рис. 6 показана базовая структура типичного куба OLAP.
Рис. 6. Базовая структура куба данных OLAP
Как видите, основные компоненты куба OLAP – это размерности, иерархии, уровни, члены и меры:
- Размерности. Основная характеристика анализируемых элементов данных. К наиболее общим примерам размерностей относятся Products (Товары), Customer (Покупатель) и Employee (Сотрудник). На рис. 6 показана структура размерности Products.
- Иерархии. Заранее определенная агрегация уровней в указанной размерности. Иерархия позволяет создавать сводные данные и анализировать их на различных уровнях структуры, не вникая во взаимосвязи, существующие между этими уровнями. В примере, показанном на рис. 6, размерность Products имеет три уровня, которые агрегированы в единую иерархию Product Categories (Категории товаров).
- Уровни. Уровни представляют собой категории, которые агрегируются в общую иерархию. Считайте уровни полями данных, которые можно запрашивать и анализировать отдельно друг от друга. На рис. 6 представлены всего три уровня: Category (Категория), SubCategory (Подкатегория) и Product Name (Название товара).
- Члены. Отдельный элемент данных в пределах размерности. Доступ к членам обычно реализуется через OLАР-структуру размерностей, иерархий и уровней. В примере на рис. 6 члены заданы для уровня Product Name. Другие уровни имеют свои члены, которые в структуре не показаны.
- Меры — это реальные данные в кубах OLAP. Меры сохраняются в собственных размерностях, которые называются размерностями мер. С помощью произвольной комбинации размерностей, иерархий, уровней и членов можно запрашивать меры. Подобная процедура называется «нарезкой» мер.
Теперь, когда вы ознакомились со структурой кубов OLAP, давайте по-новому взглянем на список полей сводной таблицы. Организация доступных полей становится понятной и не вызывает нареканий. На рис. 7 показано, как в списке полей представляются элементы сводной таблицы OLAP.
Рис. 7. Список полей сводной таблицы OLAP
В списке полей сводной таблицы OLAP меры выводятся первыми и обозначаются значком суммирования (сигма). Это единственные элементы данных, которые могут находиться в области ЗНАЧЕНИЯ. После них в списке указываются размерности, обозначенные значком с изображением таблицы. В нашем примере используется размерность Customer. В эту размерность вложен ряд иерархий. После развертывания иерархии можно ознакомиться с отдельными уровнями данных. Для просмотра структуры данных куба OLAP достаточно перемещаться по списку полей сводной таблицы.
Ограничения, накладываемые на сводные таблицы OLAP
Работая со сводными таблицами OLAP, следует помнить, что взаимодействие с источником данных сводной таблицы осуществляется в среде Analysis Services OLAP. Это означает, что каждый поведенческий аспект куба данных, начиная с размерностей и заканчивая мерами, которые включены в куб, также контролируется аналитическими службами OLAP. В свою очередь, это приводит к ограничениям, накладываемым на операции, которые можно выполнять в сводных таблицах OLAP:
- нельзя поместить в область ЗНАЧЕНИЯ сводной таблицы поля, отличные от мер;
- невозможно изменить функцию, применяемую для подведения итогов;
- нельзя создать вычисляемое поле или вычисляемый элемент;
- любые изменения в именах полей отменяются сразу же после удаления этого поля из сводной таблицы;
- не допускается изменение параметров поля страницы;
- недоступна команда Показать страницы;
- отключен параметр Показывать подписи элементов при отсутствии полей в области значений;
- отключен параметр Промежуточные суммы по отобранным фильтром элементам страницы;
- недоступен параметр Фоновый запрос;
- после двойного щелчка в поле ЗНАЧЕНИЯ возвращаются только первые 1000 записей из кеша сводной таблицы;
- недоступен флажок Оптимизировать память.
Создание автономных кубов данных
В стандартной сводной таблице исходные данные хранятся на локальном жестком диске. Таким образом, вы всегда можете управлять ими, а также изменять структуру, даже не имея доступа к сети. Но это ни в коей мере не касается сводных таблиц OLAP. В сводных таблицах OLAP кеш не находится на локальном жестком диске. Поэтому сразу же после отключения от локальной сети ваша сводная таблица OLAP утратит работоспособность. Вы не сможете переместить ни одного поля в такой таблице.
Если все же нужно анализировать OLAP-данные при отсутствии подключения к сети, создайте автономный куб данных. Это отдельный файл, который представляет собой кеш сводной таблицы. В этом файле хранятся OLAP-данные, просматриваемые после отключения от локальной сети. Чтобы создать автономный куб данных, сначала создайте сводную таблицу OLAP. Поместите курсор в сводную таблицу и щелкните на кнопке Средства OLAP контекстной вкладки Анализ, входящей в набор контекстных вкладок Работа со сводными таблицами. Выберите команду Автономный режим OLAP (рис. 8).
Рис. 8. Создание автономного куба данных
На экране появится диалоговое окно Настройка автономной работы OLAP (рис. 9). Щелкните на кнопке Создать автономный файл данных. На экране появится первое окно мастера создания файла куба данных. Щелкните на кнопке Далее, чтобы продолжить процедуру.
Рис. 9. Начальное окно мастера создания автономного куба данных
На втором шаге (рис. 10), укажите размерности и уровни, которые будут включаться в куб данных. В диалоговом окне необходимо выбрать данные, импортируемые из базы данных OLAP. Нужно выделить только те размерности, которые понадобятся после отключения компьютера от локальной сети. Чем больше размерностей укажете, тем больший размер будет иметь автономный куб данных.
Рис. 10. Укажите размерность и уровни, включаемые в автономный куб данных
Щелкните на кнопке Далее для перехода к третьему шагу (рис. 11). В этом окне нужно выбрать члены или элементы данных, которые не будут включаться в куб. Если флажок не установлен, указанный элемент не будет импортироваться и занимать лишнее место на локальном жестком диске.
Рис. 11. He устанавливайте флажки для элементов данных, которые не должны включаться в автономный куб данных
Укажите расположение и имя куба данных (рис. 12). Файлы кубов данных имеют расширение .cub.
Рис. 12. Укажите имя и расположение файла куба данных
Спустя некоторое время Excel сохранит автономный куб данных в указанной папке. Чтобы протестировать его, дважды щелкните на файле, что приведет к автоматической генерации рабочей книги Excel, которая содержит сводную таблицу, связанную с выбранным кубом данных. После создания вы можете распространить автономный куб данных среди всех заинтересованных пользователей, которые работают в режиме отключенной локальной сети.
После подключения к локальной сети можно открыть файл автономного куба данных и обновить его, а также соответствующую таблицу данных. Учтите, что хотя автономный куб данных применяется при отсутствии доступа к сети, он в обязательном порядке обновляется после восстановления подключения к сети. Попытка обновления автономного куба данных после разрыва соединения с сетью приведет к сбою.
Применение функций куба данных в сводных таблицах
Функции куба данных, которые применяются в базах данных OLAP, могут запускаться и из сводной таблицы. В устаревших версиях Excel вы получали доступ к функциям кубов данных только после установки надстройки Пакет анализа. В Excel 2013 данные функции встроены в программу, а потому доступны для применения. Чтобы в полной мере ознакомиться с их возможностями, рассмотрим конкретный пример.
Один из самых простых способов изучения функций куба данных заключается в преобразовании сводной таблицы OLAP в формулы куба данных. Эта процедура очень простая и позволяет быстро получить формулы куба данных, не создавая их «с нуля». Ключевой принцип — заменить все ячейки в сводной таблице формулами, которые связаны с базой данных OLAP. На рис. 13 показана сводная таблица, связанная с базой данных OLAP.
Рис. 13. Обычная сводная таблица OLAP
Поместите курсор в любом месте сводной таблицы, щелкните на кнопке Средства OLAP контекстной вкладки ленты Анализ и выберите команду Преобразовать в формулы (рис. 14).
Рис. 14. Преобразование сводной таблицы в формулы куба данных
Если ваша сводная таблица содержит поле фильтра отчета, то на экране появится диалоговое окно, показанное на рис. 15. В этом окне следует указать, нужно ли преобразовывать в формулы раскрывающиеся списки фильтров данных. При положительном ответе раскрывающиеся списки будут удалены, а вместо них будут отображены статические формулы. Если же вы в дальнейшем планируете использовать раскрывающиеся списки для изменения содержимого сводной таблицы, то сбросьте единственный флажок диалогового окна. Если вы работаете над сводной таблицей в режиме совместимости, то фильтры данных будут преобразовываться в формулы автоматически, без предварительного предупреждения.
Рис. 15. В Excel можно преобразовать фильтры данных сводной таблицы в статические формулы
Спустя несколько секунд вместо сводной таблицы отобразятся формулы, которые выполняются в кубах данных и обеспечивают вывод в окне Excel необходимой информации. Обратите внимание на то, что при этом удаляются ранее примененные стили (рис. 16).
Рис. 16. Взгляните на строку формул: в ячейках содержатся формулы куба данных
Учитывая то, что просматриваемые вами значения теперь не являются частью объекта сводной таблицы, можно добавлять столбцы, строки и вычисляемые элементы, комбинировать их с другими внешними источниками, а также изменять отчет самыми разными способами, в том числе и перетаскивая формулы.
Добавление вычислений в сводные таблицы OLAP
В предыдущих версиях Excel в сводных таблицах OLAP не допускались пользовательские вычисления. Это означает, что в сводные таблицы OLAP было невозможно добавить дополнительный уровень анализа подобно тому, как это делается в обычных сводных таблицах, допускающих добавление вычисляемых полей и элементов (подробнее см. Вычисляемые поля и вычисляемые элементы в Excel 2013; прежде чем продолжить чтение, убедитесь, что вы хорошо знакомы с этим материалом).
В Excel 2013 появились новые инструменты OLAP — вычисляемые меры и вычисляемые элементы многомерных выражений. Теперь вы не ограничены использованием мер и элементов в кубе OLAP, предоставленных администратором базы данных. Вы получаете дополнительные возможности анализа путем создания пользовательских вычислений.
Знакомство с MDX. При использовании сводной таблицы вместе с кубом OLAP вы отсылаете базе данных запросы MDX (Multidimensional Expressions — многомерные выражения). MDX — это язык запросов, применяемый для получения данных из многомерных источников (например, из кубов OLAP). В случае изменения или обновления сводной таблицы OLAP соответствующие запросы MDX передаются базе данных OLAP. Результаты выполнения запроса возвращаются обратно в Excel и отображаются в области сводной таблицы. Таким образом обеспечивается возможность работы с данными OLAP без локальной копии кеша сводных таблиц.
При создании вычисляемых мер и элементов многомерных выражений применяется синтаксис языка MDX. С помощью этого синтаксиса сводная таблица обеспечивает взаимодействие вычислений с серверной частью базы данных OLAP. Примеры, рассматриваемые в книге, основаны на базовых конструкциях MDX, демонстрирующих новые функции Excel 2013. Если необходимо создавать сложные вычисляемые меры и элементы многомерных выражений, придется потратить время на более глубокое изучение возможностей MDX.
Создание вычисляемых мер. Вычисляемая мера представляет собой OLAP-версию вычисляемого поля. Идея заключается в создании нового поля данных на основе некоторых математических операций, выполняемых по отношению к существующим полям OLAP. В примере, показанном на рис. 17, используется сводная таблица OLAP, которая включает перечень и количество товаров, а также доход от продажи каждого из них. Нужно добавить новую меру, которая будет вычислять среднюю цену за единицу товара.
Рис. 17. В сводную таблицу OLAP будет добавлена мера, вычисляющая среднюю цену единицы товара
Поместите курсор в любом месте сводной таблицы и выберите контекстную вкладку Анализ из набора контекстных вкладок Работа со сводными таблицами. В раскрывающемся меню Средства OLAP выберите пункт Вычисляемая мера многомерного выражения (рис. 18).
Рис. 18. Выберите пункт меню Вычисляемая мера многомерного выражения
На экране появится диалоговое окно Создание вычисляемой меры (рис. 19).
Рис. 19. В данном окне создается вычисляемая мера
Выполните следующие действия:
1. Присвойте вычисляемой мере имя.
2. Выберите группу мер, в которой будет находиться новая вычисляемая мера. Если этого не сделать, Excel автоматически поместит новую меру в первую доступную группу мер.
3. В поле Многомерное выражение (MDX) введите код, задающий новую меру. Чтобы ускорить процесс ввода, воспользуйтесь находящимся слева списком для выбора существующих мер, которые будут использованы в вычислениях. Дважды щелкните на нужной мере, чтобы добавить ее в поле Многомерное выражение. Для вычисления средней цены продажи единицы товара используется следующее многомерное выражение:
IIF (
[Measures].[Internet Sales-Order Quantity] = 0
,NULL
,[Measures].[Internet Sales-Sales Amount]/
[Measures].[Internet Sales-Order Quantity]
)
4. Кликните ОК.
Обратите внимание на кнопку Проверить MDX, которая находится в правой нижней части окна. Щелкните на этой кнопке, чтобы проверить корректность синтаксиса многомерного выражения. Если синтаксис содержит ошибки, отобразится соответствующее сообщение.
После завершения создания новой вычисляемой меры перейдите в список Поля сводной таблицы и выберите ее (рис. 20).
Рис. 20. Добавьте в сводную таблицу OLAP новую вычисляемую меру
Только что созданная вычисляемая мера добавила еще один уровень анализа в сводную таблицу (рис. 21).
Рис. 21. В сводной таблице появилась новая вычисляемая мера
Область действия вычисляемой меры распространяется только на текущую книгу. Другими словами, вычисляемые меры не создаются непосредственно в кубе OLAP сервера. Это означает, что никто не сможет получить доступ к вычисляемой мере, если только вы не откроете общий доступ к рабочей книге либо не опубликуете ее в Интернете.
Создание вычисляемых элементов многомерных выражений. Вычисляемый элемент многомерного выражения представляет собой OLAP-версию обычного вычисляемого элемента. Идея заключается в создании нового элемента данных, основанного на некоторых математических операциях, выполняемых по отношению к существующим элементам OLAP. В примере, показанном на рис. 22, используется сводная таблица OLAP, включающая сведения о продажах за 2005–2008 годы (с поквартальной разбивкой). Предположим, нужно выполнить агрегирование данных, относящихся к первому и второму кварталам, создав новый элемент First Half of Year (Первая половина года). Также объединим данные, относящиеся к третьему и четвертому кварталам, сформировав новый элемент Second Half of Year (Вторая половина года).
Рис. 22. Мы собираемся добавить новые вычисляемые элементы многомерных выражений, First Half of Year и Second Half of Year
Поместите курсор в любом месте сводной таблицы и выберите контекстную вкладку Анализ из набора контекстных вкладок Работа со сводными таблицами. В раскрывающемся меню Средства OLAP выберите пункт Вычисляемый элемент многомерного выражения (рис. 23).
Рис. 23. Создание нового вычисляемого элемента многомерного выражения
На экране появится диалоговое окно Создание вычисляемого элемента (рис. 24).
Рис. 24. Окно Создание вычисляемого элемента
Выполните следующие действия:
1. Присвойте вычисляемой мере имя.
2. Выберите родительскую иерархию, для которой создаются новые вычисляемые элементы. Настройке Родительский элемент присвойте значение Все. Благодаря этой настройке Excel получает доступ ко всем элементам родительской иерархии при вычислении выражения.
3. В окне Многомерное выражение введите синтаксис многомерного выражения. Чтобы немного сэкономить время, воспользуйтесь отображенным слева списком для выбора существующих элементов, используемых в многомерном выражении. Дважды щелкните на выбранном элементе, и Excel добавит его в окно Многомерное выражение. В примере, показанном на рис. 24, вычисляется сумма первого и второго кварталов:
[Ship Date].[Calendar Quarter].&[2005]&[1] +
[Ship Date].[Calendar Quarter]. &[2005]& [2] +
[Ship Date].[Calendar Quarter]. &[2006]&[1] + …
4. Щелкните ОК. Excel отобразит только что созданный вычисляемый элемент многомерного выражения в сводной таблице. Как показано на рис. 25, новый вычисляемый элемент отображается вместе с другими вычисляемыми элементами сводной таблицы.
Рис. 25. Excel добавляет новый вычисляемый элемент в поле сводной таблицы
На рис. 26 иллюстрируется аналогичный процесс, применяемый для создания вычисляемого элемента Second Half of Year.
Рис. 26. Повторите описанный ранее процесс для создания других вычисляемых элементов многомерного выражения
Обратите внимание: Excel даже не пытается удалить исходные элементы многомерного выражения (рис. 27). В сводной таблице по-прежнему отображаются записи, соответствующие 2005–2008 годам с поквартальной разбивкой. В рассматриваемом случае это не страшно, но в большинстве сценариев следует скрывать «лишние» элементы во избежание появления конфликтов.
Рис. 27. Excel отображает созданный вычисляемый элемент многомерного выражения наравне с исходными элементами. Но все же лучше удалять исходные элементы во избежание конфликтов
Помните: вычисляемые элементы находятся только в текущей рабочей книге. Другими словами, вычисляемые меры не создаются непосредственно в кубе OLAP сервера. Это означает, что никто не сможет получить доступ к вычисляемой мере либо вычисляемому элементу, если только вы не откроете общий доступ к рабочей книге либо не опубликуете ее в Интернете.
Следует отметить, что в случае изменения родительской иерархии или родительского элемента в кубе OLAP вычисляемый элемент многомерного выражения перестает выполнять свои функции. Потребуется повторно создать этот элемент.
Управление вычислениями OLAP. В Excel поддерживается интерфейс, позволяющий управлять вычисляемыми мерами и элементами многомерных выражений в сводных таблицах OLAP. Поместите курсор в любом месте сводной таблицы и выберите контекстную вкладку Анализ из набора контекстных вкладок Работа со сводными таблицами. В раскрывающемся меню Средства OLAP выберите пункт Управление вычислениями. В окне Управления вычислениями доступны три кнопки (рис. 28):
- Создать. Создание новой вычисляемой меры или вычисляемого элемента многомерного выражения.
- Изменить. Изменение выбранного вычисления.
- Удалить. Удаление выделенного вычисления.
Рис. 28. Диалоговое окне Управление вычислениями
Выполнение анализа «что, если» по данным OLAP. В Excel 2013 можно выполнять анализ «что, если» для данных, находящихся в сводных таблицах OLAP. Благодаря этой новой возможности можно изменять значения в сводной таблице и повторно вычислять меры и элементы на основании внесенных изменений. Можно также распространить изменения обратно на куб OLAP. Чтобы воспользоваться возможностями анализа «что, если», создайте сводную таблицу OLAP и выберите контекстную вкладку Анализ, находящуюся в наборе контекстных вкладок Работа со сводными таблицами. В раскрывающемся меню Средства OLAP выберите команду Анализ «что, если» –> Включить анализ «что, если» (рис. 29).
Рис. 29. После включения анализа «что, если» можно изменять данные в сводной таблице
Начиная с этого момента можно изменять значения сводной таблицы. Чтобы изменить выбранное значение в сводной таблице, щелкните на нем правой кнопкой мыши и в контекстном меню выберите пункт Учесть изменение при расчете сводной таблицы (рис. 30). Excel повторно выполнит все вычисления в сводной таблице с учетом внесенных правок, включая вычисляемые меры и вычисляемые элементы многомерных выражений.
Рис. 30. Выберите пункт Учесть изменение при расчете сводной таблицы, чтобы внести изменения в сводную таблицу
По умолчанию правки, внесенные в сводную таблицу в режиме анализа «что, если», являются локальными. Если же вы хотите распространить изменения на сервер OLAP, выберите команду для публикации изменений. Выберите контекстную вкладку Анализ, находящуюся в наборе контекстных вкладок Работа со сводными таблицами. В раскрывающемся меню Средства OLAP выберите пункты Анализ «что, если» – > Опубликовать изменения (рис. 31). В результате выполнения этой команды включится «обратная запись» на сервере OLAP, что означает возможность распространения изменений на исходный куб OLAP. (Чтобы распространять изменения на сервер OLAP, нужно обладать соответствующими разрешениями на доступ к серверу. Обратитесь к администратору баз данных, который поможет вам получить разрешения на доступ в режиме записи к базе данных OLAP.)
Рис. 31. В Excel 2013 можно распространить изменения обратно на исходный куб OLAP
[1] Заметка написана на основе книги Джелен, Александер. Сводные таблицы в Microsoft Excel 2013. Глава 9.
Время на прочтение
3 мин
Количество просмотров 4.7K
Всем привет! Меня зовут Сергей Коньков — я работаю архитектором в компании CloudReports. Сегодня я расскажу, как мы создали продукт, который помогает пользователям работать с данными и в какой-то мере соединяет два мира аналитики: Excel и облачные хранилища данных.
Задача
BigQuery и другие аналитические хранилища в сочетании с современными BI инструментами перевернули работу с данными за последние годы. Возможность обрабатывать терабайты информации за секунды, интерактивные дашборды в DataStudio и PowerBI, сделали работу очень комфортной.
Однако если посмотреть глубже, можно увидеть — выиграли от этих изменений в основном профессионалы, владеющие SQL и Python и бизнес пользователи на руководящих позициях, для которых разрабатываются дашборды.
А как быть с сотнями миллионов сотрудников, для которых главным инструментом анализа был и остается Microsoft Excel? Они в каком-то смысле, остались за бортом новых изменений. Это менеджеры по продажам, владельцы малого бизнеса, руководители небольших отделов. Освоить PowerBI у них нет времени. Все что им остается это экспортировать данные из отчетов в свой любимый Excel и продолжить работу там, но это не очень удобно, занимает время и есть ограничения по объему данных.
Мы часто наблюдаем, как наши клиенты использующих Google BigQuery загружают данные в Excel с помощью различных коннекторов, натыкаясь на ограничения. И родилась идея: если Excel не теряет популярности, а данные уходят в облака, то давайте придумаем способ как помочь пользователю работать из Excel с облаком.
Вспоминаем OLAP
Да, сегодня Excel по-прежнему самый популярный инструмент для работы с информацией в мире. А Сводная таблица, это то что используют миллионы пользователей каждый день. А раньше было еще больше. Если вы работали с данными в крупной компании десять лет назад вы наверняка слышали про технологию OLAP кубов от Microsoft и других вендоров, которые создаются поверх реляционных SQL баз, и позволяют получать результаты обработки миллионов строк данных за секунды. Самым популярным способом работы с OLAP кубами была и есть сводная таблица Excel. К слову OLAP по прежнему очень распространен в корпоративном мире, это все так же часть Microsoft SQL Server, однако имеет ряд ограничений по объемам и скорости обработки и все больше уступает рынок облачным аналитическим хранилищам.
Так вот в решении этой задачи нам поможет OLAP. Как я уже писал выше в Excel есть готовый клиент для работы с OLAP, мы будем использовать его.
Kогда Microsoft выводил на рынок данную технологию был опубликован открытый протокол для работы с OLAP базами — XMLA (XML для аналитики). Именно этот протокол и использует Excel когда подключается к OLAP серверу. Все работает примерно так:
Решение
Идея проста — вместо OLAP сервера мы сделаем Python приложение , которое будет делать следующее:
-
принимать XMLA запросы от Excel
-
конвертировать логику XMLA запроса в SQL код
-
отправлять SQL запрос в BigQiery
-
полученный от BigQuery ответ конвертировать в XMLA и отправлять обратно в Excel
Данное приложение (App) можем опубликовать в облаке, так как Excel имеет возможность отправлять запросы XMLA запросы по протоколу HTTPS. Все будет работать примерно так:
Использование
После того как мы разработали и опубликовали приложение, администратору BigQuery для начала использования достаточно просто создать таблицу и определить для соответсnвующих полей типы агрегации (сумма, минимум, максимум и т.д.). Далее пользователь в Excel используя подключение к службам аналитики (OLAP) соединяется с нашим сервисом:
После этого мы получаем доступ к таблице BigQuery непосредственно из сводной таблицы. И можем легко «играть» с данными.
Кроме того, мы реализовали в данном сервисе слой кэширования данных для ускорения запросов и экономии затрат на BigQuery.
Что дальше
Сейчас мы активно тестируем сервис на своих клиентах и думаем над добавлением нового функционала.
Например, SQL запросы наряду с BigQuery поддерживают и другие облачные хранилища данных. Добавив один класс в наше приложение мы реализовали аналогичный механизм для ClickHouse. Скоро будет готова версия для Snowflake и Amazon Redshift.
Будем рады услышать вопросы и мнение коллег в комментариях.
В стандартной сводной таблице исходные данные хранятся на локальном жестком диске. Таким образом, вы всегда можете управлять ими и переорганизовывать их, даже не имея доступа к сети. Но это ни в коей мере не касается сводных таблиц OLAP. В сводных таблицах OLAP кеш никогда не хранится на локальном жестком диске. Поэтому сразу же после отключения от локальной сети ваша сводная таблица утратит работоспособность. Вы не сможете переместить в ней ни одного поля.
Если вам все же необходимо анализировать OLAP-данные после отключения от сети, создайте автономный куб данных. Автономный куб данных — это отдельный файл, который представляет собой кеш сводной таблицы и хранит OLAP-данные, просматриваемые после отключения от локальной сети. OLAP-данные, скопированные в сводную таблицу, можно распечатать, на сайте http://everest.ua подробно об этом рассказано.
Чтобы создать автономный куб данных, сначала создайте сводную таблицу OLAP. Поместите курсор в пределах сводной таблицы и щелкните на кнопке Средства OLAP (OLAP Tools) контекстной вкладки Параметры (Tools), входящей в группу контекстных вкладок Работа со сводными таблицами (PivotTable Tools). Выберите команду Автономный режим OLAP (Offline OLAP) (рис. 9.8).
Рис. 9.8. Создание автономного куба данных
На экране появится диалоговое окно настроек автономного куба данных OLAP. Щелкните в нем на кнопке Создать автономный файл данных (Create Offline Data File). Вы запустили мастер создания файла куба данных. Щелкните на кнопке Далее (Next), чтобы продолжить процедуру.
Cначала необходимо указать размерности и уровни, которые будут включаться в куб данных. В диалоговом окне необходимо выбрать данные, которые будут импортироваться из базы данных OLAP. Идея состоит в том, чтобы указать только те размерности, которые понадобятся после отключения компьютера от локальной сети. Чем больше размерностей укажете, тем больший размер будет иметь автономный куб данных.
Щелкните на кнопке Далее для перехода к следующему диалоговому окну мастера. В нем вы получаете возможность указать члены или элементы данных, которые не будут включаться в куб. В частности, вам не потребуется мера Internet Sales-Extended Amount, поэтому флажок для нее будет сброшен в списке. Сброшенный флажок указывает на то, что указанный элемент не будет импортироваться и занимать лишнее место на локальном жестком диске.
На последнем этапе укажите расположение и имя куба данных. В нашем случае файл куба будет назван MyOfflineCube.cub и будет располагаться в папке Work.
Файлы кубов данных имеют расширение .cub
Спустя некоторое время Excel сохранит автономный куб данных в указанной папке. Чтобы протестировать его, дважды щелкните на файле, что приведет к автоматической генерации рабочей книги Excel, которая содержит сводную таблицу, связанную с выбранным кубом данных. После создания вы можете распространить автономный куб данных среди всех заинтересованных пользователей, которые работают в режиме отключенной локальной сети.
После подключения к локальной сети можно открыть автономный файл куба данных и обновить его, а также соответствующую таблицу данных. Главный принцип гласит, что автономный куб данных применяется только для работы при отключенной локальной сети, но он в обязательном порядке обновляется после восстановления соединения. Попытка обновления автономного куба данных после разрыва соединения приведет к сбою.
Рассмотрим, каким
образом можно построить OLAP
– куб, используя простейший оперативный
источник данных (ОИД) в Excel.
Средствами разработки
OLAP
кубов в Excel
являются сводные таблицы.
Сводные таблицы
создают с помощью мастера сводных
таблиц.
Рассмотрим случай
применения сводной таблицы, когда ОИД
находится в рабочей книге Excel.
Откройте MS
Excel.
Выделите щелчком
мышки корешок первого рабочего листа,
так как показано на рисунке.
Введите с клавиатуры
имя – ОИД (оперативный источник данных).
Нажмите Enter.
На рабочем листе
Введите данные в соответствии с таблицей,
показанной на рис.1.
При вводе
используйте форму ввода.
Рис.1. Исходный ОИД
(Модель хранилища данных)
Внимание!
Для применения
формы выполните следующие действия.
При вводе данных
необходимо ввести заголовок таблицы и
данные в первую строку таблицы, например:
Далее выполнить
команду Данные Форма. Открыть форму ,
ввести данные. Добавлять записи (строки
таблицы) кнопкой Добавить.
Задание
1. Создание сводной таблицы
-
Запустите мастер
сводных таблиц, воспользовавшись
командами: Данные,
Сводная
таблица.
В результате
появляется первое окно Мастера сводных
таблиц, в котором следует
выбрать источник данных. Поскольку
в рассматриваемом примере источник
данных находится в рабочей таблице,
выберем в поле «Создать
таблицу на основе данных, находящихся
…» переключатель
«в списке
или базе данных Microsoft Excel». -
После выбора
источника данных следует нажать кнопку
Далее.
В следующем диалоговом окне мастера
(рис.2) в поле Диапазон
нужно указать диапазон ячеек, где
располагается таблица исходных данных.
Внимание!
Если курсор находится внутри диапазона
источника данных, то диапазон будет
указан автоматически. После завершения
второго шага в алгоритме построения
сводных таблиц следует нажать кнопку
Далее.
Рис.2. Диалоговое
окно мастера сводных таблиц
-
Шаг 3 заключается
в определении места расположения
сводной таблицы: на существующем листе
или на новом и создании макета сводной
таблицы. Выберите переключатель Новый
лист и нажмите
кнопку Макет.
В диалоговом окне Макет (рис. 3) поля
базы данных расположены в правой части
макета в виде кнопок. Каждую из них
следует разместить (перетащить с помощью
«мыши») в одну из 4 областей макета
сводной таблицы: область страниц, строк,
столбцов, данных. Следует учитывать
типы перетаскиваемых полей. Поля
– измерения
можно добавлять в области страниц,
столбцов или строк. Поля
– меры
(числа), добавлять только в область
данных. В рассматриваемом ОИД, мерами
будут столбцы: Количество
и Стоимость
услуги.
Таким образом,
формируется куб OLAP.
Добавляя в каждую из областей страниц,
строк и столбцов только
по одному полю – измерению,
мы получим трехмерный куб. Многомерные
кубы получаются, если в эти области
размещать по нескольку полей. При
размещении кнопки поля в области
страниц, строк, столбцов имена полей
становятся заголовками строк, столбцов
и страниц соответственно. При размещении
кнопки поля в области данных мастер
сводных таблиц использует формулу СУММ
(SUM)
по умолчанию, если значение поля
является числом, и формулу СЧЕТ (COUNT),
если поле содержит нечисловое значение.
При определении макета сводной таблицы
необязательно все поля должны быть
размещены в указанных областях, в
каждой области можно разместить одно
или более полей. Если порядок размещения
полей вам не понравился, вы можете
вынести поле за пределы макета.
Рис.3. Макет сводной
таблицы
-
Щелкните левой
кнопкой манипулятора мышь по полю
Наименование
и, удерживая кнопку мыши, перетащите
поле в область Страницы;
получим первое измерение. -
Щелкните левой
кнопкой манипулятора мышь по полю
Клиент
и перетащите его в область Столбцы.
Получим второе измерение. -
Щелкните левой
кнопкой манипулятора мышь по полю
Сотрудники
и перетащите поле в область Строки.
Получим
третье измерение. -
Щелкните левой
кнопкой манипулятора мышь по полю
Количество
и перетащите его в область Данные.
В куб будет добавлена мера. В результате
получится макет сводной таблицы, который
представлен на рис.4. Нажмите кнопки ОК
и Готово.
Рис.4. Мастер сводных
таблиц после размещения на нем полей
-
В результате на
новом листе разместится сводная
таблица, и будут открыты две новых
панели инструментов Сводная
таблица и
Список полей
сводной таблицы.
Щелкните дважды
по ярлычку вновь появившегося рабочего
листа. Переименуйте рабочий лист, выбрав
имя Услуги
БНТИ. Щелкните
по раскрывающемуся списку значения
поля страницы (все) и выберите
Ксерокопирование.
В результате получите сводную таблицу,
представленную на рис.5. С помощью этой
таблицы можно легко установить, каким
клиентам, и в каком объеме
оказывались услуги по ксерокопированию,
а также определить общий объем
услуг по
ксерокопированию.
Рис.5. Сводная
таблица, содержащая услуги по
ксерокопированию
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #