UA-11904844-8

Сводные таблицы или представления?

Один из вариантов набора данных предприятия — набор сводных таблиц, которые обновляются с помощью запланированного процесса. У аналитического набора данных, основанного на таблицах, есть ряд преимуществ.

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

Другое преимущество состоит в том, что б?льшая часть передовых аналитических процессов подразумевает интенсивное использование исторических данных. Слегка устаревшие данные не окажут значительного влияния на результат. Возможно, организация обновляет данные о продажах в EADS каждую ночь или раз в неделю. Для большинства передовых аналитических проектов это нормально. Кумулятивные показатели также не окажутся сильно затронутыми. Например, когда для расчета показателя используются данные за предыдущий год, средний размер покупательской корзины не очень изменится, если не будет учтена сегодняшняя продажа.

Последнее преимущество заключается в том, что у аналитиков будет уходить мало времени на ожидание данных, поскольку они смогут обратиться к уже существующим таблицам EADS. Больше не нужно ждать, пока обработаются большие запросы. Специалисты смогут сразу приступить к анализу.

У EADS, основанного на таблицах, есть и недостатки. Первый: таблицы аналитического набора данных предприятия не будут содержать самых последних данных. Второй заключается в том, что они будут использовать дисковое пространство системы, вероятно, довольно большое. Последний недостаток связан с необходимостью определения подходящего графика обновления для различных компонентов и налаживания соответствующих процессов.

Второй вариант набора данных предприятия — серия представлений, которые запускаются по требованию. У этого подхода есть несколько преимуществ.

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

Делайте то, что необходимо

Вам нужно решить, как часто следует обновлять аналитический набор данных предприятия. Вам также нужно решить, следует ли хранить EADS в виде физических таблиц, логических представлений или их сочетания. В каком направлении следует двигаться, помогут определить конкретные требования. В большинстве случаев используется комбинация таблиц и представлений.

У аналитических наборов данных предприятия, основанных на представлениях, также есть недостатки. Во-первых, нагрузка на систему не обязательно будет сильно снижена, поскольку, хотя аналитики используют одно и то же представление, процесс запускается каждый раз при обработке запроса. Далее, существует такое огромное преимущество, как согласованность и прозрачность вычислений. Последний недостаток связан с тем, что аналитикам придется дольше ждать, чтобы получить данные, поскольку они будут не вычисляться заранее, а генерироваться по необходимости.

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

Используя таблицы, постарайтесь ограничить объем хранящихся данных. Не сохраняйте соотношения или другие аналогичные производные метрики — для вычисления таких показателей пользуйтесь представлениями поверх базовой таблицы. Например, если EADS содержит общий объем продаж и общее количество транзакций, нет смысла хранить и объем продаж на одну транзакцию. Создайте представление, которое делит объем продаж на количество транзакций. Вычисление этого показателя практически не требует дополнительных системных ресурсов и экономит много места.