Бесплатный урок Официальный курс Google Skills на русском
Урок 03 · Видео · 7 мин

Работа с большими данными в Managed Service for Apache Spark

Урок 3 из 31 курса «Основы Google Cloud: данные, машинное обучение и ИИ»: официальный курс Google Skills (Google Cloud) (Гугл) на русском языке. Этот урок бесплатный.

Урок 03 Работа с большими данными в Managed Service for Apache Spark

Видео открывается после входа через Telegram. Текст урока доступен без входа.

Войти через Telegram
00:00 / 00:00

Субтитры: RU / EN, переключайте кнопкой CC

Текст видео

В этом разделе вы узнаете, как Managed Service for Apache Spark позволяет запускать Apache Hadoop и Apache Spark быстро, просто и с умеренными затратами. Apache Hadoop и Apache Spark представляют собой технологии с открытым исходным кодом, которые часто лежат в основе обработки больших данных.

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

Managed Service for Apache Spark представляет собой управляемый сервис Spark и Hadoop, который позволяет использовать инструменты для работы с данными с открытым исходным кодом для пакетной обработки, выполнения запросов, потоковой обработки и машинного обучения. Автоматизация в Managed Service for Apache Spark помогает быстро создавать кластеры и удобно управлять ими. Кроме того, кластеры обычно работают временно и отключаются, когда вы в них не нуждаетесь, поэтому вы экономите деньги.

Основные возможности

Рассмотрим основные возможности Managed Service for Apache Spark. Экономичность. Стоимость Managed Service for Apache Spark составляет 1 цент за виртуальный процессор в кластере в час, и эта сумма добавляется к стоимости других ресурсов Google Cloud, которые вы используете. Кроме того, в кластеры Managed Service for Apache Spark можно включать прерываемые экземпляры (preemptible instances) с более низкой ценой на вычисления. Вы используете ресурсы и платите за них только тогда, когда они вам нужны.

Скорость и масштабируемость. Кластеры Managed Service for Apache Spark быстро запускаются, масштабируются и завершают работу: в среднем каждая из этих операций занимает не более 90 секунд. Кластеры можно быстро создавать и масштабировать, выбирая из множества типов виртуальных машин, размеров дисков, вариантов количества узлов и сетевых настроек. Экосистема с открытым исходным кодом. С Managed Service for Apache Spark можно использовать инструменты, библиотеки и документацию Spark и Hadoop. Managed Service for Apache Spark часто обновляет нативные версии Spark, Hadoop, Pig и Hive, поэтому изучать новые инструменты или API не нужно, а существующие проекты и ETL-конвейеры можно переносить без повторной разработки.

Полное управление. С кластерами и заданиями Spark или Hadoop можно легко работать без помощи администратора и специального программного обеспечения: через Google Cloud console, Google Cloud SDK или REST API Managed Service for Apache Spark. Когда работа с кластером закончена, его достаточно выключить, чтобы деньги не тратились на простаивающий кластер. Версионирование образов. Функция версионирования образов в Managed Service for Apache Spark позволяет переключаться между разными версиями Apache Spark, Apache Hadoop и других инструментов.

Встроенная интеграция. Встроенная интеграция с Cloud Storage, BigQuery и Bigtable гарантирует, что данные не будут потеряны. Вместе с Cloud Logging и Cloud Monitoring это дает вам полноценную платформу для работы с данными, а не просто кластер Spark или Hadoop. Например, с помощью Managed Service for Apache Spark можно без труда извлекать, преобразовывать и загружать терабайты необработанных данных журналов прямо в BigQuery для бизнес-отчетности.

Сценарии использования

Рассмотрим несколько сценариев использования Managed Service for Apache Spark. В первом примере клиент обрабатывает 50 гигабайт текстовых данных журналов в день, поступающих из нескольких источников. Цель состоит в том, чтобы получить агрегированные данные и загрузить их в базы данных, из которых собираются метрики для ежедневной отчетности, управленческих дашбордов и анализа. До сих пор для хранения и обработки журналов с помощью MapReduce клиент использовал выделенный локальный кластер.

Какое здесь решение? Во-первых, Cloud Storage может служить недорогой зоной приема (landing zone) для данных журналов. Затем менее чем за 2 минуты можно создать кластер Managed Service for Apache Spark, чтобы обработать эти данные с помощью уже имеющегося MapReduce. После завершения работы кластер Managed Service for Apache Spark можно сразу удалить. Что это дает: вместо того чтобы работать постоянно и приносить расходы даже тогда, когда он не используется, Managed Service for Apache Spark запускается только для обработки журналов, что снижает затраты и сложность.

Теперь разберем второй пример. В этой организации аналитики полагаются на Spark Shell и привыкли с ним работать. Однако ИТ-отдел обеспокоен ростом нагрузки и тем, как масштабировать кластер, который работает в автономном режиме (standalone mode). Решение состоит в том, чтобы с помощью Managed Service for Apache Spark создавать кластеры, которые масштабируются для повышения скорости и устраняют любую единую точку отказа. Поскольку Managed Service for Apache Spark поддерживает Spark, Spark SQL и PySpark, аналитики могут использовать веб-интерфейс, Cloud SDK или нативный Spark Shell через SSH. Ценность заключается в способности Managed Service for Apache Spark быстро открыть возможности облака для любого человека без дополнительной технической сложности. Сложные вычисления занимали бы секунды вместо минут или часов.

В третьем примере клиент использует библиотеки машинного обучения Spark (MLlib) для запуска алгоритмов классификации на очень больших наборах данных. Он работает на облачных машинах, где самостоятельно устанавливает и настраивает Spark. Поскольку Spark и MLlib можно установить на любой кластер Managed Service for Apache Spark, клиент может сэкономить время, быстро создавая такие кластеры. Любые дополнительные настройки легко применить ко всему кластеру с помощью действий инициализации (initialization actions). Для мониторинга рабочих процессов можно использовать встроенные Cloud Logging и Cloud Monitoring. Что это дает: с Managed Service for Apache Spark ресурсы можно сосредоточить на данных, а не тратить на создание кластеров и управление ими. Интеграции с новыми продуктами Google Cloud также открывают для кластеров Spark новые возможности.

Перевод официального курса Google «Основы Google Cloud: данные, машинное обучение и ИИ». Оригинал на английском.

Полезные гиды