Идеи решения
В этой статье описывается идея решения. Ваш архитектор облака может использовать это руководство, чтобы визуализировать основные компоненты для типичной реализации этой архитектуры. Используйте эту статью в качестве отправной точки для разработки хорошо спроектированного решения, которое соответствует конкретным требованиям рабочей нагрузки.
Ваша организация должна принять данные любого формата, размера и скорости в облаке согласованно. Решение в этой статье соответствует архитектуре, которая реализует извлечение, преобразование и загрузку из источников данных в озеро данных. Озеро данных может содержать все данные, включая преобразованные и курированные версии в различных масштабах. Эти данные можно использовать для аналитики данных, бизнес-аналитики (BI), отчетов, обработки и анализа данных и машинного обучения.
Apache® и Apache Spark™ являются зарегистрированными товарными знаками или товарными знаками Apache Software Foundation в США и/или других странах. Использование этих меток не подразумевает подтверждения от Apache Software Foundation.
Архитектура
Скачайте файл Visio для этой архитектуры.
Поток данных
Данные приемуются следующим образом:
- Очереди событий, такие как Центры событий, Центр Интернета вещей или Kafka, отправляют потоковую передачу данных в Azure Databricks, которая использует оптимизированный компонент Delta Engine для чтения данных.
- Запланированные или активированные конвейеры фабрики данных копируют данные из разных источников данных в необработанных форматах. Автозагрузчик в Azure Databricks обрабатывает данные по мере поступления.
Azure Databricks загружает данные в оптимизированные, сжатые таблицы или папки Delta Lake в бронзовом слое в Data Lake Storage.
Потоковая передача, планирование или активация заданий Azure Databricks считывают новые транзакции из бронзового слоя Data Lake Storage. Задания присоединяются, очищают, преобразуют и агрегируют данные перед использованием транзакций ACID для загрузки их в курированные наборы данных в уровнях Data Lake Storage Silver и Gold.
Наборы данных хранятся в Delta Lake в Data Lake Storage.
Каждая служба отправляет данные в общий формат, чтобы обеспечить согласованность. В архитектуре используется общее озеро данных на основе открытого формата Delta Lake. Необработанные данные передаются из разных источников пакетной и потоковой передачи для формирования единой платформы данных. Платформу можно использовать для подчиненных вариантов использования, таких как аналитика, отчеты бизнес-аналитики, обработка и анализ данных, ИИ и машинное обучение.
Бронзовые, серебряные и золотые уровни хранения
С шаблоном медальона, состоящим из бронзовых, серебряных и золотых слоев хранения, клиенты имеют гибкий доступ и расширяемую обработку данных.
- Бронзовые таблицы предоставляют точку входа для необработанных данных, когда она приземляется в Data Lake Storage. Данные принимаются в формате необработанного источника и преобразуются в открытый, транзакционный формат Delta Lake для обработки. Решение отправляет данные в бронзовый слой с помощью:
- API Apache Spark в Azure Databricks. API считывают события потоковой передачи из Центров событий или Центр Интернета вещей, а затем преобразуют эти события или необработанные файлы в формат Delta Lake.
- Команда COPY INTO . Используйте команду для копирования данных непосредственно из исходного файла или каталога в Delta Lake.
- Автозагрузчик Azure Databricks. Автозагрузчик захватывает файлы при поступлении в озеро данных и записывает их в формат Delta Lake.
- Действие копирования фабрики данных. Клиенты могут использовать этот параметр для преобразования данных из любого из поддерживаемых форматов в формат Delta Lake.
- Серебряные таблицы хранят данные во время оптимизации для бизнес-аналитики и обработки и анализа данных. Бронзовый слой выполняет прием необработанных данных, а затем для фильтрации, очистки, преобразования, объединения и агрегирования данных в наборы данных silver curated. Компании могут использовать согласованный вычислительный модуль, например подсистему Delta Engine с открытыми стандартами, при использовании Azure Databricks в качестве начальной службы для этих задач. Затем они могут использовать знакомые языки программирования, такие как SQL, Python, R или Scala. Компании также могут использовать повторяемые процессы DevOps и временные вычислительные кластеры для отдельных рабочих нагрузок.
- Золотые таблицы содержат обогащенные данные, готовые к аналитике и отчетности. Аналитики могут использовать свой метод выбора, например PySpark, Koalas, SQL, Power BI и Excel, чтобы получить новые аналитические сведения и сформулировать запросы.
Компоненты
- Центры событий анализирует и оценивает потоковые сообщения из различных источников, включая локальные системы, и предоставляет информацию в режиме реального времени.
- Фабрика данных управляет конвейерами данных для приема, подготовки и преобразования всех данных в любом масштабе.
- Data Lake Storage объединяет потоковую передачу и пакетные данные, включая структурированные, неструктурированные и полуструктурированные данные, такие как журналы, файлы и носители.
- Azure Databricks очищает и преобразует наборы данных без структуры и объединяет их со структурированными данными из операционных баз данных или хранилищ данных.
- Центр Интернета вещей обеспечивает высокую безопасность и надежную связь между приложением Интернета вещей и устройствами.
- Delta Lake в Data Lake Storage поддерживает транзакции ACID для надежности и оптимизированы для эффективного приема, обработки и запросов.
Подробности сценария
Прием, ETL и потоковая обработка с помощью Azure Databricks — это простая, открытая и совместная работа:
- Простой. Открытое озеро данных с управляемым слоем в формате с открытым исходным кодом упрощает архитектуру данных. Delta Lake, средство с открытым исходным кодом, предоставляет доступ к озеру данных Azure Data Lake Storage. Delta Lake в Data Lake Storage поддерживает атомарность, согласованность, изоляцию и устойчивость транзакций (ACID) для надежности. Delta Lake оптимизирован для эффективного приема, обработки и запросов.
- Open: Решение поддерживает открытый исходный код, открытые стандарты и открытые платформы. Он также работает с популярными интегрированными средами разработки (IDEs), библиотеками и языками программирования. Благодаря собственным соединителям и API решение также работает с широким спектром других служб.
- Совместная работа: инженеры данных, специалисты по обработке и анализу данных работают вместе с этим решением. Они могут использовать записные книжки для совместной работы, идентификаторы, панели мониторинга и другие средства для доступа к общим базовым данным и их анализа.
Azure Databricks легко интегрируется с другими службами Azure, такими как Data Lake Storage, Фабрика данных Azure, Центры событий Azure и Центр Интернета вещей Azure.
Потенциальные варианты использования
Это решение вдохновляется системой, созданной Службой здравоохранения Предоставления для аналитики в режиме реального времени. Любая отрасль, которая использует пакетные или потоковые данные, также может рассмотреть это решение. Вот некоторые примеры.
- Розничная электронная торговля
- Finance
- Здравоохранение и медико-биологические науки
- Поставщики энергии
Следующие шаги
- Испанские point Technologies создает свой механизм сопоставления с помощью Azure Databricks и Фабрика данных Azure для приема данных в масштабе, чтобы помочь музыкантам получить справедливое оплату.
Связанные ресурсы
Руководства и полностью развернутые архитектуры: