Хранилище данных (Data warehouse)
С концептуальной точки зрения хранилище данных — это, прежде всего, единый прозрачный источник данных о бизнесе компании для ее руководства.
Каталог BI-решений и проектов доступен на TAdviser.ru
Содержание |
В приведенном выше определении одинаково важны все части[1]:
- Источник должен быть един. Любая современная компания обладает набором IT-систем. В случае банков это могут быть АБС, процессинг, отдельные CRM и ERP-системы. Каждая из перечисленных систем оптимизирована под работу с текущими данными, поэтому исторические данные, накопленные этими системами, часто лежат мертвым грузом. Чтобы IT-система могла именоваться хранилищем данных — она должна объединять в себе все необходимые данные о различных аспектах и временных периодах деятельности компании.
- Источник должен быть ориентированным на бизнес компании. Такие системы, как CRM, ERP, АБС или процессинг, имеют собственные структуры данных, оказывающие влияние на бизнес-процессы компании. При этом в процессе развития компании версии и марки CRM, ERP и процессинга могут меняться. Поэтому структуры данных хранилища должны отражать бизнес компании, а не специфику отдельных используемых систем. Хранилище должно содержать все необходимые данные о базовых бизнес-сущностях: «счет», «банкомат» или «клиент». При этом формат хранения данных должен быть независим от вида и версии системы-источника данных.
- Источник предназначен для руководства компании (среднего и старшего менеджмента). В то время, как системы процессинга ориентированы на максимальную точность самых элементарных данных (транзакции, и т.п.), хранилище данных должно предоставлять данные, удобным образом агрегированные для содержательного анализа. Хранилище данных не используется для решения задачи поиска отдельных транзакций. Оно предназначено, например, для анализа доходности отдельных банковских продуктов на протяжении истории и оперативного отслеживания изменений в динамике продаж по всем филиалам.
- Источник должен быть прозрачен и понятен для пользователей. Как упоминалось ранее, все данные, которые могут быть помещены в хранилище, обычно уже доступны в других IT-системах компании. Однако совокупный анализ этих данных в их исходном представлении требует значительных технических знаний о средствах и методиках работы с данными. Хранилище данных должно быть простым и понятным источником информации для построения различной интегральной отчетности, KPI (ключевых показателей эффективности) и применения средств Data Mining.
Краткий итог приведенных выше положений: хранилище данных — это способ превратить разнообразные данные, полученные и получаемые через IT-системы компании, в мощный и эффективный инструмент оперативного анализа и управления бизнесом.
Применение хранилищ данных
Как именно может применяться хранилище данных для оптимизации управления бизнесом?
Существует три основных подхода, дополняющих друг друга:
- Статическая и динамическая отчетность. Наличие единого источника данных о бизнесе компании позволяет как с минимальными затратами строить статические отчеты, так и свободно создавать новые виды отчетов, предоставляющие новую точку зрения на бизнес компании. На рынке существует множество решений для построения отчетности от крупнейших мировых IT-производителей, полноценное применение которых возможно только при наличие полноценного хранилища данных. К подобным решениям относятся, например, Microsoft SQL Server: Reporting Services, Crystal Reports, Oracle Reports.
- Интеллектуальный анализ данных (Data Mining и Business Intelligence). Наличие в хранилище всей совокупности данных об истории бизнеса компании позволяет аналитикам использовать современные средства интеллектуального анализа данных для поиска скрытых закономерностей в поведение клиентов/конкурентов. На рынке данных средств присутствует множество компаний, от лидеров IT-рынка с универсальными решениями, такими как Oracle BI или Microsoft SQL Server: Analysis Services, до небольших компаний со специализированными отраслевыми решениями.
- Вычисление в реальном времени ключевых показателей эффективности (KPI). В современном бизнесе ситуация на рынке может меняться очень быстро. Своевременное отслеживание подобных изменений и адекватное реагирование на них является основой для выживания и роста компаний. Общепринятым средством отслеживания изменений, доступным для владельцев хранилищ данных, является создание набора считаемых в реальном времени ключевых показателей эффективности (KPI). Например, классическим KPI для банковской сферы может быть сумма средств, снятых с банкоматов некоторого района за последние сутки. Резкий скачок подобного показателя позволит своевременно отследить панику среди вкладчиков. Наличие полноценного хранилища данных позволяет компании реализовывать и поддерживать самые разнообразные KPI с минимальными трудовыми и временными затратами.
Создание хранилищ данных
Специфика хранилища данных требует наличия у IT-специалистов, взявшихся за его реализацию, целого ряда специальных навыков и квалификаций.
Ниже перечислен список потенциальных рисков, возникающих при создании хранилища, и указаны навыки, необходимые для минимизации этих рисков.
Возможные риски при создании хранилища
- Ориентация на имеющиеся технологии, а не на бизнес. Хранилище данных, чтобы быть успешным инструментом, должно отражать, прежде всего, бизнес-процессы заказчика. Это значит, что в разработке должны принимать самое непосредственное участие специалисты по бизнесу компании-заказчика. Попытка реализовать хранилище на основе расширения имеющейся IT-системы или сторонних разработок может привести к появлению еще одной из множества IT-систем, не решающей задач хранилища. Для минимизации данного риска исполнитель должен обладать опытом анализа бизнес-процессов, знанием предметной области и умением общаться со специалистами из других областей.
- Ориентация на данные, а не на их использование. Хранилище данных должно не только содержать информацию, но и делать удобной ее анализ/использование. Для достижения этой цели при проектировании хранилища нужно понимать, для каких групп задач оно будет применяться. Для минимизации данного риска исполнитель должен обладать богатым опытом построения отчетности и технического анализа данных. Только в таком случае он сможет правильно предсказывать требования к хранилищу данных исходя из пожеланий его будущих пользователей.
- Игнорирование сложности ETL процессов. Хранилище данных должно заполняться данными из разнообразных внешних источников, часто имеющих разную природу. Часть данных заказчика может хранится в реляционных БД, часть — в Excel или же XML файлах. Данные разных систем могут дублировать друг друга или противоречить друг другу. При этом наполнение хранилища данным является не разовым процессом, а должно выполняться регулярно, для пополнения хранилища новыми данными. Данная комплексная задача может быть адекватно и надежно решена только за счет использования современных промышленных ETL-решений, таких как Microsoft SQL Server: Integration Services или же Oracle Data Integrator.
- Отсутствие понимания используемой технологии хранения данных. Хранилище данных должно не просто хранить данные, оно должно успевать обновляться за заданные временные промежутки, а также удовлетворять требованиями заказчика по скорости генерации отчетов и выполнения запросов. Для соответствия данному требованию разработчик должен обладать богатым опытом реализации значительных баз данных на данной конкретной технологии, будь то Microsoft SQL Sever 2008, Oracle 11g или же Teradata 12. Одна и та же структура данных, реализованная на технологиях хранения данных от Oracle и Teradata, может обладать кардинально различными параметрами скорости отклика и уровня доступности.
Онлайн-хранилище данных
Онлайн-хранилища позволяют получать различные виды статистик — управление работой организации, поступление средств и их оборот, видов взаимодействия компании и т. п. Растет спрос на решения в области хранилищ данных, в которых предусмотрена онлайн-функциональность. Такие решения дают возможность на основании транзакционных данных и информации из разных источников сформировать полную и реальную картину бизнеса в режиме real-time для повышения качества и скорости принимаемых решений.
Существуют различные методы извлечения данных, изменившихся с момента последней загрузки в режиме онлайн: логические, на основе анализа журналов БД и др. В настоящее время во многих российских финансовых компаниях в качестве источника данных используется большое количество однотипных систем.
Решение, которое работает в режиме реального времени, должно быть всегда доступно. Оно становится критичным для заказчика. Поэтому важно, чтобы в архитектуру онлайн-хранилища данных было включено специальное программное обеспечение, позволяющее в случае сбоя автоматически перекладывать процессы на параллельно стоящий сервер. Наличие этой опции зависит от задач заказчика. [1]