Business DWH (DataWareHouse): аналитическое хранилище данных
Система хранилища данных (например на базе аналитических СУБД - Arenadata, PostgrePro) позволяет организации проводить мощную аналитику больших объемов данных так, как это не может сделать обычная база данных.
Системы хранения данных являются частью решений для бизнес-аналитики (BI) уже более трех десятилетий, но в последнее время они претерпели изменения в связи с появлением новых типов данных и методов их размещения. Традиционно хранилище данных размещалось на локальном компьютере, часто на мейнфрейме, и его функциональность заключалась в извлечении данных из других источников, очистке и подготовке данных, а также в загрузке и поддержке данных в реляционной базе данных. В последнее время хранилище данных может размещаться на специализированном устройстве или в облаке, а большинство хранилищ данных дополнено возможностями аналитики, средствами визуализации и представления данных.
Как правило, хранилища данных имеют трехуровневую архитектуру, которая состоит из:
- Нижнего уровня: Нижний уровень состоит из сервера хранилища данных, обычно реляционной системы баз данных, которая собирает, очищает и преобразует данные из нескольких источников данных с помощью процесса, известного как Extract, Transform, and Load (ETL) или процесса, известного как Extract, Load, and Transform (ELT). В большинстве организаций, использующих ETL, этот процесс основан на автоматизации и является эффективным, четко определенным, непрерывным и пакетным.
- Среднего уровня: Средний уровень состоит из сервера OLAP (онлайновой аналитической обработки), который обеспечивает высокую скорость запросов. На этом уровне могут использоваться три типа OLAP-моделей, которые известны как ROLAP, MOLAP и HOLAP. Тип используемой OLAP-модели зависит от типа существующей системы баз данных.
- Верхнего уровня: Верхний уровень представляет собой некий внешний пользовательский интерфейс или инструмент отчетности, который позволяет конечным пользователям проводить специальный анализ бизнес-данных.
Для чего используются хранилища данных?
Хранилища данных используются в BI, отчетности и анализе данных для извлечения и обобщения данных из оперативных баз данных. Информация, которую сложно получить непосредственно из транзакционных баз данных, может быть получена с помощью хранилищ данных. Например, руководство хочет знать общую выручку, полученную каждым продавцом за месяц по каждой категории товаров. Транзакционные базы данных могут не получить эти данные, но хранилище данных может их получить.
ETL и ELT в хранилище данных
ETL (Extract, Transform, Load) и ELT (Extract, Load, Transform) - это два разных способа преобразования данных. Инженеры по обработке данных часто используют ETL, или extract-transform-load, для извлечения данных из различных источников и переноса их в хранилище данных, где они могут легко очистить и структурировать их. ELT, с другой стороны, сначала загружает данные в хранилище в их исходном формате, а затем очищает и структурирует их в процессе обработки.
ETL обычно выполняется более централизованно с помощью команд Enterprise Data Engineering для применения правил очистки и согласования данных в масштабах всей компании. ELT подразумевает преобразования на более поздних этапах, которые, как правило, в большей степени зависят от конкретного проекта или бизнес-команды - для обеспечения аналитики самообслуживания.
Обработка транзакций (OLTP) против аналитической обработки (OLAP)
- Система обработки транзакций (OLTP) собирает и хранит транзакционные данные в базе данных. Транзакции включают в себя отдельные записи в базе данных, состоящие из нескольких полей или столбцов. Базы данных OLTP обычно используются в таких приложениях, как онлайн-банкинг, ERP-системы или управление запасами, позволяя быстро обновлять данные на уровне строк, которые обрабатываются практически мгновенно.
- Система Online Analytical Processing (OLAP) применяет сложные запросы к большим объемам исторических данных, собранных из баз данных OLTP и других источников, для добычи данных, аналитики и бизнес-аналитики. Хранилища данных являются системами OLAP. Базы данных OLAP и хранилища данных предоставляют аналитикам и лицам, принимающим решения, возможность использовать пользовательские инструменты отчетности для преобразования данных в информацию и действия. Сбой запроса в базе данных OLAP не прерывает и не задерживает обработку транзакций для клиентов, но он может задержать или повлиять на точность выводов бизнес-аналитики.
Преимущества хранилища данных
- Улучшение доступа к данным и отчетности: Хранилище данных облегчает пользователям доступ к данным из различных источников и подготовку отчетов по ним. Это позволяет организациям получить более полное представление о своих данных.
- Более эффективное принятие решений: Когда все данные организации собраны в одном месте, лицам, принимающим решения, легче получать информацию и принимать более эффективные решения.
- Повышение производительности: Хранилища данных оптимизированы для составления отчетов и анализа, что позволяет повысить общую производительность организации.
- Повышение качества данных: Данные обычно очищаются и преобразуются перед загрузкой в хранилище данных, что повышает их качество. Это важно, поскольку неточные данные могут привести к принятию неверных решений.
- Улучшение управления данными: Хранилища данных помогают улучшить управление данными, предоставляя централизованное место для управления данными и контроля доступа. Это помогает обеспечить точность, актуальность и безопасность данных.
- Масштабируемость: Хранилища данных предназначены для масштабирования в соответствии с потребностями растущих организаций. Это означает, что организации могут легко расширять возможности хранения и обработки данных по мере изменения своих потребностей.
- Историческая информация: Хранилище данных объединяет данные из многих источников, чтобы показать исторические тенденции.
- Cогласованность и точность данных: Хранилища данных используют стандартный набор семантики для данных, включая согласованность имен, коды для различных типов продуктов, языков, валют и так далее.
- Стандартизация данных: Хранилище данных централизует данные из различных источников данных, таких как транзакционные системы, операционные базы данных и плоские файлы. Затем оно очищает оперативные данные, устраняет дубликаты и стандартизирует их, чтобы создать единый источник истины.
- Получение и наращивание конкурентных преимуществ: Все вышеперечисленное в совокупности помогает организации находить в данных больше возможностей, причем быстрее, чем это возможно при использовании разрозненных хранилищ данных.
Как построить хранилище данных за 7 шагов:
- Выясните цели DWH на уровне компании, отдела и бизнес-пользователей.
- Концептуализируйте возможности DWH и выберите оптимальную платформу.
- Создание бизнес-кейса и разработка дорожной карты проекта.
- Разработка политик очистки и безопасности данных, моделей данных и основных компонентов архитектуры.
- Настройка выбранной платформы DWH и разработка конвейеров ETL/ELT.
- Миграция данных в DWH.
- Настройка конвейеров ETL/ELT и регулировка производительности DWH.
Среды для разработки DWH
Озеро данных VS хранилище данных
Озеро данных и хранилище данных - это два разных подхода к управлению и хранению данных.
Озеро данных - это хранилище неструктурированных или полуструктурированных данных, которое позволяет хранить огромные объемы необработанных данных в их исходном формате. Озера данных предназначены для приема и хранения всех типов данных - структурированных, полуструктурированных и неструктурированных - без каких-либо предопределенных схем. Данные часто хранятся в исходном формате, не подвергаются очистке, преобразованию или интеграции, что упрощает хранение и доступ к большим объемам данных.
С другой стороны, хранилище данных - это структурированный репозиторий, в котором хранятся данные из различных источников в хорошо организованном виде с целью обеспечения единого источника истины для бизнес-анализа и аналитики. Данные очищаются, преобразуются и интегрируются в схему, оптимизированную для запросов и анализа.
Перед принятием решения важно оценить различные варианты хранилищ данных и учесть такие факторы, как масштабируемость, производительность, стоимость и простота использования. Кроме того, важно учитывать, будет ли хранилище данных интегрироваться с другими инструментами и системами, уже существующими в вашей организации.
В целом, хранилище данных может принести организации ряд преимуществ, включая улучшение доступа к данным и отчетности, совершенствование процесса принятия решений, повышение производительности, улучшение качества данных, совершенствование управления данными, экономию средств и масштабируемость. Наличие централизованного хранилища для всех данных вашей организации позволяет пользователям получать доступ к данным из различных источников и составлять отчеты в одном месте, что облегчает получение информации и принятие более эффективных решений.
Еще по теме:
-
Файлы-примеры из книг Кимбалла для разработки хранилища данных
-
Серии советов популяризатора технологий хранилищ данных Ральфа Кимбалла
-
Гайд по созданию Big Data-проектов в облаке: технологический стек, этапы и подводные камни
Продукт Эксперт-BI