В этом блоге будут рассмотрены всесторонне:
(а) Что такое хранилище данных
(b) Подходы к моделированию данных для хранилища данных
(c) Хранилище данных на AWS и, наконец,
(d) Хранилище данных для снижения операционной нагрузки с использованием управляемого сервиса.
Давайте разберемся с точки зрения непрофессионала « Что такое хранилище данных »
Согласно Википедии , хранилище данных (DW или DWH), также известное как хранилище корпоративных данных (EDW), представляет собой систему, используемую для отчетности и анализа данных, и считается основным компонентом бизнес-аналитики . Хранилища данных — это центральные хранилища интегрированных данных из одного или нескольких разрозненных источников. Они хранят текущие и исторические данные в одном месте, которое используется для создания аналитических отчетов для работников всего предприятия. Это выгодно компаниям, поскольку позволяет им запрашивать данные, извлекать информацию из них и принимать решения.
Проще говоря, это искусство сбора, хранения и эффективного предоставления информации (бизнес-аналитики), помогающей бизнесу стать организацией, управляемой данными. В некотором смысле это еще одна база данных транзакций, оптимизированная для аналитических рабочих нагрузок.
Согласно приведенной выше диаграмме, данные собираются из источника, преобразуются в зависимости от использования (ETL/ELT) и сохраняются в DWH/киоске данных и Insights, предоставляемых с помощью инструментов бизнес-аналитики.
Во времена локальной настройки все выглядело просто, когда не существовало ELT (ETL vs ELT), Cloud DWH (AWS Redshift, Google Big Query, Snowflake, Databricks) и других решений для управления данными, которые в последнее время упрощались и масштабировались. радиус действия СХД. В этом блоге давайте разберем каждый аспект по одному.
Для простоты давайте исходим из того, что не существует бесконечных вычислений и хранения и что транзакционная система не может эффективно обрабатывать аналитические запросы. Именно здесь требовался эффективный способ создания хранилища данных, оптимального по размеру хранилища, эффективно обрабатывающего аналитические запросы (нарезка/кубирование и т. д.) и обеспечивающего требуемую задержку.
При этом возникли две теоретические модели проектирования хранилища данных :
(a) Билл Инмон – подход «сверху вниз» (EDW) и
(б) Ральф Кимбалл – подход «снизу вверх» (киоск данных).
Подход Inmon заключается в централизованном построении в глобальном масштабе с учетом медленного построения, тогда как подход Кимбалла состоит в том, чтобы создать независимую витрину данных по отдельности и соединить ее позже. Не будем углубляться в то, какая модель лучше или какую выбрать. В моем случае, если коротко, обе модели работают, и это полностью зависит от варианта использования и зрелости организации. Еще одним ключевым моментом в этом дизайне является «Представление данных», размерное моделирование с использованием схемы «звезда», схемы «снежинка» или гибрида «звезда» и «снежинка», что является ключевым моментом для более быстрых запросов и размерности.
Единственный важный вывод: несмотря на бесконечную логистику, хороший дизайн хранилища данных может решить многомерную проблему. Так что лучше не игнорировать это.
Следующим шагом в создании хранилища данных является выбор платформы, которая может варьироваться от локальной (Teradata, IBM DB2, Oracle и т. д.) до облачного хранилища данных (Snowflake, Redshift, BigQuery и т. д.). Создание традиционного хранилища данных является сложной задачей, а постоянное управление и обслуживание могут быть сложными и дорогостоящими. В следующем разделе мы углубимся в то, как строить с помощью AWS Redshift (нет споров, лучше локальное хранилище или облако, или какое облачное хранилище данных лучше).
Amazon Redshift — это полностью управляемое хранилище данных корпоративного уровня в петабайтном масштабе, обеспечивающее исключительную производительность для аналитических запросов, простое в использовании и экономически эффективное. Amazon Redshift снижает операционные накладные расходы, необходимые для традиционных хранилищ данных, за счет автоматизации таких задач, как установка исправлений, резервное копирование и подготовка оборудования. Вы можете настроить кластер Amazon Redshift, где вы сможете настроить инфраструктуру и базовые показатели производительности для своего хранилища данных. Amazon Redshift также предоставляет настройки Redshift Spectrum, Datashare, Redshift ML и Serverless, которые позволяют использовать кластер Amazon Redshift за пределами хранилища DWH.
Путь к настройке,
На данный момент имеет смысл использовать Cloud DWH, но как это вписывается в общую схему решения DWH + Data Lake/Managed Services for Data ? На изображении ниже показано, как озера данных и хранилища данных работают вместе. AWS RDS служит источником данных, обеспечивая экономичное и надежное решение, которое передается в Amazon S3 . Затем данные преобразуются с помощью процессов ETL и передаются в Redshift. Дополнительные сервисы AWS, такие как Athena, Glue, Spectrum, Lake Formation и другие, играют решающую роль в устранении разрыва и создании комплексного решения для обработки данных.
В заключение, в этом блоге рассматриваются основы хранилища данных, углубляется в подход к реализации как теоретически, так и с акцентом на технологический стек. Мы также получили общее представление о том, как оно легко интегрируется в более широкий спектр решений для обработки данных.