ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 04.05.2024
Просмотров: 16
Скачиваний: 0
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
МИНИСТЕРСТВО СЕЛЬСКОГО ХОЗЯЙСТВА РОССИЙСКОЙ ФЕДЕРАЦИИ
ИРКУТСКИЙ ГОСУДАРСТВЕННЫЙ АГРАРНЫЙ УНИВЕРСИТЕТ
ИМЕНИ А.А. ЕЖЕВСКОГО
КАФЕДРА ИНФОРМАТИКИ И МАТЕМАТИЧЕСКОГО МОДЕЛИРОВАНИЯ
Доклад по дисциплине «Информатика»
Тема: Инструменты для обработки больших данных (big data).
Подготовила: студентка 1 гр. курса
23.03.03 Эксплуатация транспортно-технологических машин и комплексов.
2023
Мир больших данных становится только еще больше. Организации всех мастей производят огромное количество данных из года в год, и находят все больше способов использовать их для улучшения работы, лучшего понимания клиентов, более быстрой доставки продукции и снижения затрат, а также для других целей. Кроме того, руководители компаний, стремящиеся быстрее получить отдачу от данных, ищут возможности анализа в режиме реального времени.
Все это стимулирует значительные инвестиции в инструменты и технологии работы с большими данными. В своем отчете за август 2021 года компания IDC, занимающаяся исследованием рынка, оценила ожидаемые мировые расходы на системы больших данных и аналитики в $215,7 млрд в 2021 году, что на 10,1% больше, чем в прошлом году. Она также прогнозирует, что расходы будут расти на 12,8% в год до 2025 года.
Список технологий больших данных длинный: существует множество коммерческих продуктов, которые помогут организациям реализовать полный спектр аналитических инициатив на основе данных — от отчетности в реальном времени до приложений машинного обучения.
Кроме того, существует множество инструментов больших данных с открытым исходным кодом, некоторые из которых также предлагаются в коммерческих версиях или как часть платформ больших данных и управляемых услуг. На данный момент существуют следующие нструменты для обработки, управления и анализа больших данных.
1. Airflow
Airflow — это платформа управления рабочими процессами для планирования и запуска сложных дата-пайплайнов в системах больших данных. Она позволяет инженерам по обработке данных и другим пользователям гарантировать, что каждая задача в рабочем процессе будет выполняться в установленном порядке и иметь доступ к необходимым системным ресурсам. Airflow также рекламируется как простой в использовании: Рабочие процессы создаются на языке программирования Python, и его можно использовать для построения моделей машинного обучения, передачи данных и других различных целей.
Платформа появилась на Airbnb в конце 2014 года и была официально объявлена как технология с открытым исходным кодом в середине 2015 года; в следующем году она присоединилась к программе инкубаторов Apache Software Foundation, а в 2019 году стала проектом верхнего уровня Apache. Airflow также включает следующие ключевые особенности:
-
модульная и масштабируемая архитектура, построенная на концепции направленных ациклических графов (DAG), которые иллюстрируют зависимости между различными задачами в рабочих процессах; -
пользовательский интерфейс веб-приложения для визуализации дата-пайплайнов, мониторинга их продакшн-статуса и устранения неполадок; и -
реди-мэйд интеграции с основными облачными платформами и другими сторонними сервисами.
2. Delta Lake
Databricks Inc., вендор программного обеспечения, основанный создателями механизма обработки Spark, разработал Delta Lake, а затем в 2019 году открыл доступ к технологии на базе Spark через Linux Foundation. Компания описывает Delta Lake как "слой хранения данных в открытом формате, который обеспечивает надежность, безопасность и производительность вашего озера данных для потоковых и пакетных операций".
Delta Lake не заменяет озера данных; скорее, она предназначена для того, чтобы расположиться поверх них и создать единое хранилище для структурированных, полуструктурированных и неструктурированных данных, устраняя тем самым их изолированность, которая может помешать приложениям больших данных. Кроме того, использование Delta Lake может помочь предотвратить повреждение данных, ускорить запросы, повысить свежесть данных и поддержать усилия по соблюдению нормативных требований, согласно Databricks. Технология также
-
поддерживает транзакции ACID; -
хранит данные в открытом формате Apache Parquet; и -
включает набор API, совместимых со Spark.
3. Drill
На сайте Apache Drill описывается как "распределенный механизм запросов с низкой задержкой для больших наборов данных, включая структурированные и полуструктурированные/вложенные данные". Drill может масштабироваться на тысячи узлов кластера и способен выполнять запросы к петабайтам данных, используя SQL и стандартные API подключения.
Разработанный для изучения наборов больших данных, Drill накладывается поверх множества источников данных, позволяя пользователям запрашивать широкий спектр информации в различных форматах, от Hadoop-файлов последовательностей и журналов сервера до баз данных NoSQL и облачных хранилищ объектов. Он также может делать следующее:
-
получать доступ к большинству реляционных баз данных через плагин; -
работать с широко используемыми инструментами BI, такими как Tableau и Qlik; и работать в любой распределенной кластерной среде, хотя для этого требуется программное обеспечение ZooKeeper от Apache для поддержания информации о кластерах.
4. Druid
Druid - это аналитическая база данных реального времени, обеспечивающая низкую задержку запросов, высокий параллелизм, многопользовательские возможности и мгновенную видимость потоковых данных. По словам ее сторонников, несколько конечных пользователей могут одновременно запрашивать данные, хранящиеся в Druid, без какого-либо воздействия на производительность.
Написанная на языке Java и созданная в 2011 году, Druid стала технологией Apache в 2018 году. Обычно она считается высокопроизводительной альтернативой традиционным хранилищам информации, которая лучше всего подходит для данных, управляемых событиями. Как и хранилище данных, она использует ориентированное на столбцы решение для хранения и может загружать файлы в пакетном режиме. Однако в ней также используются функции поисковых систем и баз данных временных рядов, включая следующие:
-
нативные инвертированные поисковые индексы для ускорения поиска и фильтрации данных; -
разделение данных по времени и формирование запросов; и -
гибкие схемы с собственной поддержкой полуструктурированных и вложенных данных.
5. Flink
Еще одна технология Apache с открытым исходным кодом, Flink — это фреймворк обработки потоков для распределенных, высокопроизводительных и всегда доступных приложений. Он поддерживает вычисления с учетом состояния над ограниченными и неограниченными потоками данных и может использоваться для пакетной, графовой и итеративной обработки.
Одним из основных преимуществ Flink, о которых говорят поклонники этой технологии, является ее скорость: она может обрабатывать миллионы событий в реальном времени при низкой задержке и высокой пропускной способности. Flink, разработанная для работы во всех распространенных кластерных средах, также включает следующие возможности:
-
вычисления в памяти с возможностью доступа к дисковому хранилищу при необходимости; -
три уровня API для создания различных типов приложений; и -
набор библиотек для комплексной обработки событий, машинного обучения и других распространенных случаев использования больших данных.
6. Hadoop
Распределенная среда для хранения данных и запуска приложений на кластерах стандартного аппаратного обеспечения (commodity hardware), (т.н. метод массовых кластерных вычислений). Hadoop была разработана как передовая технология работы с большими данными для обработки растущих объемов структурированной, неструктурированной и полуструктурированной информации. Впервые выпущенная в 2006 году, она стала практически синонимом больших данных; с тех пор ее частично затмили другие технологии, но она по-прежнему широко используется.
Hadoop состоит из четырех основных компонентов:
-
Hadoop Distributed File System (HDFS), которая разделяет информацию на блоки для хранения на узлах кластера, использует методы репликации для предотвращения потери данных и управляет доступом к ним; -
YARN, сокращение от Yet Another Resource Negotiator, который планирует выполнение заданий на узлах кластера и выделяет под них системные ресурсы; -
Hadoop MapReduce, встроенный механизм пакетной обработки, который разделяет большие объемы вычислений и запускает их на разных узлах для повышения скорости и балансировки нагрузки; и -
Hadoop Common, общий набор утилит и библиотек.
Первоначально Hadoop была ориентирована только на выполнение пакетных приложений MapReduce. Добавление YARN в 2013 году открыло ее для других механизмов обработки и вариантов использования, но фреймворк по-прежнему тесно связан с MapReduce. Более широкая экосистема Apache Hadoop также включает в себя различные инструменты и дополнительные фреймворки для обработки, управления и анализа больших данных.
7. Hive
Hive — это программное обеспечение инфраструктуры хранилища данных на базе SQL для чтения, записи и управления большими датасетами в распределенных средах хранения. Оно было создано компанией Facebook, но затем стало открытым источником для компании Apache, которая продолжает развивать и поддерживать эту технологию.
Hive запускается поверх Hadoop и используется для обработки структурированной информации; точнее, оно применяется для обобщения и анализа данных, а также для запросов к большим объемам данных. Хотя его нельзя использовать для обработки транзакций в режиме онлайн, обновлений в реальном времени, запросов или заданий, требующих получения данных с малой задержкой, разработчики описывают Hive как масштабируемое, быстрое и гибкое.
Другие ключевые особенности включают следующее:
-
стандартная функциональность SQL для запросов и аналитики данных; -
встроенный механизм, помогающий пользователям накладывать структуру на различные форматы данных; и -
доступ к HDFS-файлам и файлам, хранящимся в других системах, таких как база данных Apache HBase.
8. HPCC Systems
HPCC Systems — это платформа обработки больших данных, разработанная компанией LexisNexis и получившая открытый исходный код в 2011 году. В соответствии со своим полным названием — High-Performance Computing Cluster — технология по своей сути представляет собой кластер компьютеров, созданный на основе стандартного аппаратного обеспечения для обработки, управления и доставки больших данных.
Продакшн-реди платформа озера данных, которая обеспечивает быструю разработку и исследование данных, HPCC Systems включает три основных компонента:
-
Thor, механизм переработки данных, который используется для очистки, объединения и преобразования данных, а также для профилирования, анализа и подготовки их к использованию в запросах; -
Roxie, механизм доставки данных, используемый для предоставления подготовленной информации из системы очистки; -
Enterprise Control Language (ECL), язык программирования для разработки приложений.
9. Hudi
Hudi (произносится как "худи") — это сокращение от Hadoop Upserts Deletes and Incrementals. Еще одна технология с открытым исходным кодом, поддерживаемая Apache, используется для управления вводом и хранением больших аналитических датасетов на файловых системах, совместимых с Hadoop, включая HDFS и облачные сервисы хранения объектов.
Впервые разработанная компанией Uber, Hudi предназначена для обеспечения эффективного ввода и подготовки данных с низкой задержкой. Более того, она включает в себя структуру управления данными, которую организации могут использовать для выполнения следующих задач:
-
упростить инкрементную обработку данных и разработку дата-пайплайна; -
улучшить качество информации в системах больших данных; и -
управлять жизненным циклом датасетов.
10. Iceberg
Iceberg — это открытый формат таблицы, используемой для управления данными в озерах, что частично достигается путем отслеживания отдельных файлов с информацией в таблицах, а не в каталогах. Созданная компанией Netflix для использования со своими таблицами петабайтного размера, Iceberg теперь является проектом Apache. Согласно сайта, Iceberg обычно "используется в продакшне, где одна таблица может содержать десятки петабайт данных".
Разработанная для улучшения стандартных схем, существующих в таких инструментах, как Hive, Presto, Spark и Trino, таблица формата Iceberg имеет функции, аналогичные SQL в реляционных базах данных. Однако она также приспособлена для использования нескольких механизмов, работающих с одним и тем же датасетом. К другим примечательным особенностям относятся следующие: