Введение в архитектуру больших данных

Когда дело доходит до управления тяжелыми данными и выполнения сложных операций с этими массивными данными, возникает необходимость в использовании инструментов и методов больших данных. Когда мы говорим об использовании инструментов и методов больших данных, мы фактически имеем в виду, что мы просим использовать различное программное обеспечение и процедуры, которые относятся к экосистеме больших данных и ее сфере. Не существует универсального решения, которое предоставляется для каждого варианта использования, и поэтому оно должно быть разработано и выполнено эффективным образом в соответствии с бизнес-требованиями конкретной компании. Таким образом, возникает необходимость в использовании различной архитектуры больших данных, поскольку сочетание различных технологий приведет к получению конечного варианта использования. Установив фиксированную архитектуру, можно обеспечить жизнеспособное решение для запрашиваемого варианта использования.

Что такое архитектура больших данных?

  • Эта архитектура разработана таким образом, что она обрабатывает процесс приема данных, выполняется обработка данных и анализ данных, которые слишком велики или сложны для того, чтобы обрабатывать традиционные системы управления базами данных.
  • Разные организации имеют разные пороговые значения для своих организаций, некоторые имеют его на несколько сотен гигабайт, в то время как для других даже некоторые терабайты не являются достаточно хорошим пороговым значением.
  • Из-за этого события происходит, если вы посмотрите на товарные системы и товарное хранилище, стоимость и стоимость хранения значительно снизились. Существует огромное разнообразие данных, которые требуют разных способов обслуживания.
  • Некоторые из них представляют собой данные, относящиеся к пакетам, которые поступают в определенное время, и, следовательно, задания должны планироваться аналогичным образом, в то время как другие принадлежат к классу потоковой передачи, где необходимо построить потоковый конвейер в реальном времени, чтобы удовлетворить все потребности. требования. Все эти проблемы решаются с помощью архитектуры больших данных.

Объяснение архитектуры больших данных:

Системы больших данных включают более одного типа рабочей нагрузки, и они в целом классифицируются следующим образом:

  1. Там, где большие источники данных находятся в состоянии покоя, применяется пакетная обработка.
  2. Обработка больших данных в движении для обработки в реальном времени.
  3. Изучение интерактивных инструментов и технологий больших данных.
  4. Машинное обучение и прогнозный анализ.

1. Источники данных

Источники данных включают в себя все те золотые источники, из которых построен конвейер извлечения данных, и, следовательно, можно сказать, что это отправная точка конвейера больших данных.

Примеры включают в себя:
(i) хранилища данных приложений, таких как реляционные базы данных

(ii) Файлы, которые создаются рядом приложений и в основном являются частью статических файловых систем, таких как файлы веб-сервера, генерирующие журналы.

(iii) устройства IoT и другие источники данных в режиме реального времени.

2. Хранение данных

Это включает в себя данные, которые управляются для операций пакетной сборки и хранятся в хранилищах файлов, которые распределены по своей природе, а также способны хранить большие объемы больших файлов различного формата с поддержкой. Это называется озером данных. Как правило, это является той частью, где наши хранилища Hadoop, такие как хранилища HDFS, Microsoft Azure, AWS, GCP, предоставляются вместе с контейнерами BLOB-объектов.

3. Пакетная обработка

Все данные разделены на различные категории или порции, в которых используются долговременные задания, используемые для фильтрации и агрегирования, а также для подготовки данных к состоянию обработки для анализа. Эти задания обычно используют источники, обрабатывают их и обеспечивают вывод обработанных файлов в новые файлы. Пакетная обработка выполняется различными способами с использованием заданий Hive или заданий на основе U-SQL или с помощью Sqoop или Pig вместе с настраиваемыми заданиями редуктора карт, которые обычно пишутся на любом из Java, Scala или любом другом. язык, такой как Python.

4. Загрузка сообщений в реальном времени

Это включает, в отличие от пакетной обработки, все те системы потоковой передачи в реальном времени, которые обслуживают данные, генерируемые последовательно и по фиксированной схеме. Часто это простой витрина или хранилище данных, отвечающее за все входящие сообщения, которые отбрасываются в папку, обязательно используемую для обработки данных. Однако существует большинство решений, в которых требуется хранилище загрузки на основе сообщений, которое действует как буфер сообщений, а также поддерживает обработку на основе масштаба, обеспечивает сравнительно надежную доставку наряду с другой семантикой организации очереди сообщений. Доступны такие варианты, как Apache Kafka, Apache Flume, концентраторы событий из Azure и т. Д.

5. Потоковая обработка

Существует небольшая разница между приемом сообщений в реальном времени и обработкой потоков. Первый учитывает принятые данные, которые сначала собираются, а затем используются как инструмент подписки для публикации. Потоковая обработка, с другой стороны, используется для обработки всех тех потоковых данных, которые происходят в окнах или потоках, и затем записывает данные в выходной приемник. Это включает в себя Apache Spark, Apache Flink, Storm и т. Д.

6. Аналитическое хранилище данных

Это хранилище данных, которое используется для аналитических целей, и поэтому уже обработанные данные затем запрашиваются и анализируются с использованием аналитических инструментов, которые могут соответствовать решениям BI. Данные также могут быть представлены с помощью технологии хранилища данных NoSQL, такой как HBase, или любого другого интерактивного использования базы данных кустов, которая может обеспечить абстракцию метаданных в хранилище данных. Инструменты включают Hive, Spark SQL, Hbase и т. Д.

7. Отчетность и анализ

Аналитика должна генерироваться на обработанных данных, и это эффективно делается с помощью инструментов отчетности и анализа, которые используют их встроенные технологии и решения для создания полезных графиков, анализа и аналитики, полезных для бизнеса. Инструменты включают Cognos, Hyperion и т. Д.

8. Оркестровка

Решения на основе больших данных состоят из операций, связанных с данными, которые являются повторяющимися по своему характеру и также инкапсулированы в рабочие процессы, которые могут преобразовывать исходные данные, а также перемещать данные между источниками, а также приемниками и загружать в хранилища и передавать в аналитические единицы. Примеры включают Sqoop, oozie, фабрику данных и т. Д.

Вывод

В этом посте мы читаем об архитектуре больших данных, которая необходима для внедрения этих технологий в компании или организации. Надеюсь, вам понравилась наша статья.

Рекомендуемые статьи

Это было руководство по архитектуре больших данных. Здесь мы обсуждаем, что такое большие данные? а также мы объяснили архитектуру больших данных вместе с блок-схемой. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -

  1. Технологии больших данных
  2. Аналитика больших данных
  3. Карьера в больших данных
  4. Вопросы по интервью Big Data
  5. Топ 8 устройств IoT, которые вы должны знать
  6. Типы объединений в Spark SQL (примеры)