Большие данные в AWS - умное решение для больших данных



Эта статья поможет вам понять, как AWS эффективно работает с большими данными. Он также показывает, как AWS может легко решать проблемы с большими данными.

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

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

характеристики больших данных





Вы можете рассматривать большие данные как объемные, высокоскоростные и / или разнообразные информационные активы, требующие рентабельных, инновационных форм обработки информации, обеспечивающих улучшенное понимание, принятие решений и автоматизацию процессов.

Большие данные состоят из 5 важных V, которые определяют характеристики больших данных. Давайте обсудим их, прежде чем переходить на AWS.



Что такое AWS?

состоит из множества различных продуктов и услуг облачных вычислений. Высокоприбыльное подразделение Amazon предоставляет серверы, хранилище, сети, удаленные вычисления, электронную почту, разработку мобильных приложений, а также безопасность. Более того. AWS состоит из двух основных продуктов: EC2, сервис виртуальных машин Amazon, и S3, система хранения от Amazon. Он настолько велик и присутствует в компьютерном мире, что теперь как минимум в 10 раз превышает размер своего ближайшего конкурента и содержит популярные веб-сайты, такие как Netflix и Instagram.

.

AWS разделен на 12 глобальных регионов по всему миру, в каждом из которых есть несколько зон доступности, в которых расположены его серверы.Эти обслуживаемые регионы разделены, чтобы позволить пользователям устанавливать географические ограничения на свои услуги, а также для обеспечения безопасности за счет диверсификации физических местоположений, в которых хранятся данные.



Почему большие данные в AWS?

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

весенний учебник по MVC для начинающих

Amazon Web Services предоставляет полностью интегрированный портфель сервисов облачных вычислений. Кроме того, он помогает создавать, защищать и развертывать приложения для работы с большими данными. Кроме того, с AWS вам не нужно приобретать оборудование и инфраструктуру для обслуживания и масштабирования. Благодаря этому вы можете сосредоточить свои ресурсы на открытии новых идей.Поскольку новые функции добавляются постоянно, вы всегда сможете использовать новейшие технологии, не принимая на себя долгосрочных инвестиционных обязательств.

Как AWS может решать проблемы больших данных?

Решения AWS для больших данных

AWS предлагает множество решений для всех целей разработки и развертывания. Кроме того, в области науки о данных и больших данных AWS разработала последние разработки в различных аспектах обработки больших данных. Прежде чем переходить к инструментам, давайте разберемся с различными аспектами больших данных, для которых AWS может предоставить решения.

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

  2. Хранение данных
    Любой платформе больших данных требуется безопасный, масштабируемый и надежный репозиторий для хранения данных до или даже после обработки задач. В зависимости от ваших конкретных требований вам также могут потребоваться временные хранилища для данных в пути.

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

  4. Визуализация

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

Инструменты AWS для больших данных

В предыдущих разделах мы рассмотрели области больших данных, в которых AWS может предоставить решения. Кроме того, в арсенале AWS есть несколько инструментов и сервисов, которые позволяют клиентам использовать возможности больших данных.

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

Проглатывание

  1. Кинезис

    Amazon Kinesis Firehose - это полностью управляемый сервис для доставки потоковых данных в реальном времени непосредственно в Amazon S3. Kinesis Firehose автоматически масштабируется в соответствии с объемом и пропускной способностью потоковой передачи данных и не требует постоянного администрирования. Вы можете настроить Kinesis Firehose для преобразования потоковых данных перед их сохранением в Amazon S3.

  2. Снежок
    Ты можешь использовать AWS Snowball для безопасной и эффективной миграции большого количества данных с локальных платформ хранения и кластеров Hadoop в корзины S3. После создания задания в Консоли управления AWS вы автоматически получаете устройство Snowball. После прибытия Snowball подключите его к локальной сети, установите клиент Snowball в локальном источнике данных, а затем используйте клиент Snowball для выбора и передачи файловых каталогов на устройство Snowball.

Место хранения

  1. Amazon S3

Amazon S3 - это безопасное, масштабируемое, надежное объектное хранилище с миллисекундной задержкой для доступа к данным. S3 может хранить любые типы данных из любого места - с веб-сайтов и мобильных приложений, корпоративных приложений и данных с датчиков или устройств IoT. Он также может хранить и извлекать любой объем данных с непревзойденной доступностью и построен с нуля для обеспечения надежности 99,999999999% (11 девяток).

2. Клей AWS

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

Обработка

  1. EMR
    Для обработки больших данных с использованием Spark и Hadoop, Amazon EMR предоставляет управляемую услугу, которая позволяет легко, быстро и экономично обрабатывать огромные объемы данных. Кроме того, EMR поддерживает 19 различных проектов с открытым исходным кодом, включая Hadoop , Искра , и Также он поставляется с управляемыми блокнотами EMR для инженерии данных, разработки науки о данных и совместной работы.

  2. Красное смещение
    Для хранилищ данных, Amazon Redshift предоставляет возможность выполнять сложные аналитические запросы к петабайтам структурированных данных. Также в него входят Redshift Spectrum который выполняет SQL-запросы непосредственно к эксабайтам структурированных или неструктурированных данных в S3 без необходимости ненужного перемещения данных.

Визуализации

  1. Amazon QuickSight

    Для панелей мониторинга и визуализаций Amazon Quicksight предоставляет вам быструю облачную службу бизнес-аналитики. Это позволяет легко создавать потрясающие визуализации и многофункциональные информационные панели. Кроме того, вы можете получить к ним доступ из любого браузера или мобильного устройства.

Демо - Анализ данных об исчезающих видах растений и животных в Австралии.

В этой демонстрации мы будем использовать образцы данных об исчезающих видах растений и животных из штатов и территорий Австралии. Здесь мы создадим кластер EMR и настроим его для выполнения многоэтапных заданий Apache Hive. В кластере EMR будет установлен Apache Hive. Этот кластер будет использовать EMRFS в качестве файловой системы, так что его места ввода и вывода данных будут сопоставлены с корзиной S3. Кластер также будет использовать ту же корзину S3 для хранения файлов журнала.

Теперь мы создадим ряд шагов EMR в кластере для обработки выборки данных. Здесь каждый из этих шагов будет запускать сценарий Hive, а окончательный результат будет сохранен в корзине S3. Эти шаги будут генерировать журналы MapReduce, и это потому, что команды Hive транслируются в задания MapReduce во время выполнения. Файлы журнала для каждого шага собираются из контейнеров, которые он порождает.

Пример данных

Образец набора данных для этого варианта использования общедоступен на сайте Веб-сайт открытых данных правительства Австралии . Этот набор данных касается находящихся под угрозой исчезновения видов животных и растений из разных штатов и территорий Австралии. Описание полей этого набора данных и CSV-файла можно увидеть и скачать Вот .

Шаги обработки

Первый шаг задания EMR здесь включает создание таблицы Hive как схемы для базового исходного файла в S3. На втором этапе задания мы выполним успешный запрос к данным. Таким же образом мы запустим третий и четвертый запросы.

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

Ведро и папки S3

Перед созданием нашего кластера EMR нам нужно было создать корзину S3 для размещения его файлов. В нашем примере мы называем этот сегмент 'arvind1-bucket'. Папки, расположенные под этим сегментом, показаны ниже в Консоли AWS для S3:

  • Входная папка содержит образцы данных

  • Папка сценариев содержит файлы сценариев Hive для шагов задания EMR.

  • Выходная папка, очевидно, будет содержать выходные данные программы Hive

  • Кластер EMR использует папку журналов для сохранения файлов журналов.

Скрипты Hive для шагов задания EMR

1. На этом этапе задания выполняется сценарий Hive.для создания внешней таблицы Hive. В этой таблице описана табличная схема базового файла данных CSV. Сценарий для этого следующий:

СОЗДАТЬ ВНЕШНЮЮ ТАБЛИЦУ `угрожаемые_виды` (строка` научное имя`, строка `общее имя`, строка` текущее научное имя`, строка `угрожаемый статус`, строка` act`, строка `nsw`, строка` nt`, `qld` строка, строка sa, строка tas, строка vic, строка wa, строка aci, строка cki, строка ci, строка csi, строка jbt, nfi строка, строка `hmi`, строка` aat`, строка cma, указанный таксонид кильки, bigint, текущий таксонид кильки, bigint, строка королевства, строка класса, строка профиля, дата извлечения строка, строка `nsl name`, строка` family`, строка `genus`, строка` разновидностей`, строка `infraspecific rank`, строка` infraspecies`, строка `разновидность author`, строка` infraspecies author`) РАЗДЕЛЕННЫЕ ПОЛЯ СТРОЧНОГО ФОРМАТА ЗАКРЫВАЕТСЯ ',' СОХРАНЕНО КАК INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' LOCATION 's3: // arvind1

2. На этом этапе работы выполняется запрос для вычисления пяти основных исчезающих видов в штате Новый Южный Уэльс (NSW). Имя файла запроса Hive: endangeredSpeciesNSW.q и это показано ниже:

ВЫБРАТЬ виды, COUNT (nsw) AS number_of_endangered_species FROM dangerous_species WHERE (nsw = 'Yes' OR nsw = 'Endangered') И 'под угрозой исчезновения' ГРУППА ПО ВИДАМ HAVING COUNT (nsw)> 1 ORDER BY number_of_end DESangered_species

3.На этом этапе работы выполняется запрос для расчета общего количества исчезающих видов растений для каждого семейства растений в Австралии. Имя файла запроса Hive:endangeredPlantSpecies.qи показано ниже

ВЫБРАТЬ семейство, COUNT (виды) AS number_of_endangered_species FROM dangerous_species2 ГДЕ царство = 'Plantae' И 'угрожаемый статус' = 'Endangered' ГРУППА ПО семье

4. На этом этапе перечисляются научные названия вымерших видов животных в австралийском штате Квинсленд. Файл сценария называется extinctAnimalsQLD.q и показано ниже:

ВЫБЕРИТЕ 'общее имя', 'научное название' ИЗ угроз_видов, ГДЕ царство = 'Животное' И (qld = 'Да' ИЛИ ​​qld = 'Вымершие') И 'угрожаемый статус' = 'Вымершие'

Агрегация журналов

Здесь мы также загрузили файл JSON с именем logAggregation.json в папку сценариев корзины S3. Мы используем этот файл для агрегирования файлов журнала YARN. Агрегация журналов настраивается в файле конфигурации yarn-site.xml при запуске кластера. Содержимое файла logAggregation.json выглядит следующим образом:

как выйти из программы Java

[{«Классификация»: «пряжа-сайт», «Свойства»: {«yarn.log-aggregation-enable»: «true», «yarn.log-aggregation.retain-seconds»: «-1», «пряжа) .nodemanager.remote-app-log-dir »:« s3: // arvind1-bucket / logs »}}]

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

Настройка кластера EMR

В первом образе для настройки кластера в консоли AWS мы сохранили все приложения, рекомендованные EMR, включая Hive. Нам не нужно использовать AWS Glue для хранения метаданных Hive, и в настоящее время мы не добавляем никаких этапов задания. Однако нам нужно добавить программную настройку для Hive. Здесь вы должны внимательно следить за тем, как мы указываем путь к JSON-файлу агрегации журналов в этом поле.

На следующем этапе мы сохранили все настройки по умолчанию. Для нашего теста кластер будет иметь один главный узел и два основных узла. Каждый узел здесь является экземпляром m3.xlarge и имеет корневой том 10 ГБ. Мы назовем кластер arvind1-cluster на следующем шаге и укажем пользовательское местоположение s3 для его файлов журнала.

Наконец, мы указали пару ключей EC2 для доступа к главному узлу кластера. Роли IAM по умолчанию для EMR, профиля экземпляра EC2 и параметров автоматического масштабирования не меняются. Кроме того, главный и базовый узлы по умолчанию используют доступные группы безопасности. Обычно это настройка по умолчанию для кластера EMR. Когда все будет готово, кластер находится в состоянии «ожидания», как показано ниже:

Отправить шаги работы Hive

После этого нам нужно разрешить доступ по SSH.

  1. Откройте консоль Amazon EMR по адресу https://console.aws.amazon.com/elasticmapreduce/ .
  2. выберите Кластеры .
  3. Выбрать имя кластера.
  4. Под Безопасность и доступ выбрать Группы безопасности для Мастера ссылка на сайт.
  5. выберите ElasticMapReduce-master из списка.
  6. выберите Входящий , редактировать .
  7. Найдите правило со следующими настройками и выберите Икс значок, чтобы удалить его:
    • Тип SSH
    • Порт 22
    • Источник Пользовательский 0.0.0.0/0
  8. Прокрутите список правил до конца и выберите Добавить правило .
  9. Для Тип , Выбрать SSH .Это автоматически входит TCP для Протокол и 22 для Диапазон портов .
  10. В качестве источника выберите Мой IP .Это автоматически добавляет IP-адрес вашего клиентского компьютера в качестве исходного адреса. В качестве альтернативы вы можете добавить ряд На заказ IP-адреса доверенных клиентов и выберите добавить правило создавать дополнительные правила для других клиентов. Во многих сетевых средах вы назначаете IP-адреса динамически, поэтому вам может потребоваться периодически редактировать правила группы безопасности, чтобы обновлять IP-адреса доверенных клиентов.
  11. выберите Сохранить .
  12. При желании выберите ElasticMapReduce-раб из списка и повторите описанные выше шаги, чтобы разрешить SSH-клиенту доступ к основным узлам и узлам задач от доверенных клиентов.

Поскольку кластер EMR запущен и работает, мы добавили четыре этапа задания. Это шаги, которые EMR будет выполнять один за другим. На следующем изображении показаны шаги из консоли AWS EMR:

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

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

Если вы считаете, что большие данные в AWS актуальны, вы можете ознакомиться с живым курсом Edureka под руководством инструктора на , совместно созданный практиками отрасли.

Есть вопрос к нам? Пожалуйста, укажите это в разделе комментариев к статье Как развернуть веб-приложение Java в AWS, и мы свяжемся с вами.