Что такое Big Data Reconciliation: согласование больших данных c Apache Spark

обучение инженеров данных, курсы дата-инженеров, обучение Spark, курсы Apache Spark, Big Data, Большие данные, обработка данных, архитектура, Spark, Data Lake, облака, SQL, PySpark, AWS Spark

Мы уже рассказывали, почему качество данных является важнейшим аспектом разработки и эксплуатации Big Data систем. Приемлемое для эффективного использования качество массивов информации достигается не только с помощью процессов подготовки датасета к машинному обучению и профилирования данных, но и за счет их согласования. Читайте далее, что такое Data reconciliation, зачем это нужно для бизнеса и как оно реализуется в Apache Spark и AWS. Что такое согласование данных и при чем здесь Big Data Как правило, реализация комплексной Big Data системы, в т.ч. на базе облачных сервисов, например, кластер Hadoop в Google DataProc или аналитика больших данных на веб-сервисах Amazon, начинается c репликации данных из исходных реляционных СУБД в единый репозиторий  — озеро данных (Data Lake). Однако, прежде чем приступить к анализу Далее …

CDC-репликация Big Data в реальном времени с Apache Kafka и Debezium в Confluent Cloud

обработка данных, большие данные, Big Data, архитектура, Kafka, SQL

В этой статье поговорим про интеграцию данных с помощью CDC-подхода и репликацию SQL-таблиц из корпоративной СУБД в несколько разных удаленных хранилищ в реальном времени с применением Apache Kafka и Debezium, развернутых в Kafka Connect и Confluent Cloud. Постановка задачи: CDC с Big Data в реальном времени Рассмотрим кейс, который часто встречается в реальной жизни: головному офису предприятия с распределенной структурой требуется оперативно передать данные из своей корпоративной СУБД в удаленные филиалы. В разбираемом примере франчайзеру нужно реплицировать несколько таблиц из своего хранилища данных в системы разных франчайзи в реальном времени. При этом такая односторонняя интеграция должна обрабатывать репликацию большого количества обновлений, внесенных в таблицы исходной СУБД, с возможностью масштабирования по мере роста сети франчайзи, т.е. увеличения числа целевых баз-приемников данных Далее …

Ускоряем конвейеры Apache Spark: 3 простых способа

курсы Big Data, обучение Большие данные, курсы Spark SQL, обучение Spark, обучение инженеров данных, курсы дата-инженер, Apache Spark для инженеров данных

Сегодня рассмотрим несколько простых способов ускорить обработку больших данных в рамках конвейера задач Apache Spark. Читайте далее про важность тщательной оценки входных и выходных данных, рандомизацию рабочей нагрузки Big Data кластера и замену JOIN-операций оконными функциями. Оптимизируй это: почему конвейеры аналитической обработки больших данных с Apache Spark замедляются Обычно со временем объемы данных только растут, а логика их обработки становится только сложнее. Поэтому каждый дата-инженер сталкивается с проблемой повышения производительности конвейера обработки Big Data, пытаясь решить ее наиболее эффективно, что означает максимум положительных результатов при минимальных изменениях архитектуры самого pipeline’а. Для этого можно воспользоваться следующими 3-мя способами: навести порядок в выводе конвейера; сбалансировать нагрузку с помощью рандомизации; заменить JOIN-соединения оконными функциями. Каждый из этих способов мы подробнее рассмотрим далее, а Далее …

Stateful-проблемы JOIN-операций в Apache Spark Structured Streaming и их решения

Big Data, Большие данные, обработка данных, JOIN, Spark, SQL, Spark SQL

Недавно мы уже рассматривали выполнение Join-операций в Apache Spark SQL. Сегодня поговорим про особенности потокового соединения в модуле Structured Streaming этого популярного фреймворка аналитики больших данных. Читайте далее, в чем специфика внешних и внутренних соединений потоков Big Data в Apache Spark Structured Streaming, а также как и зачем Inner/Outer Join используют водяные знаки (watermark). Соединение потоков в Apache Spark Structured Streaming Соединение (Join) считается достаточно сложной операцией в SQL. А соединение потоков данных усложняется задержками поступления информаций. Для ограниченного источника данных, такого, как статичная СУБД, все данные для соединения имеются в наличии, тогда как в случае потокового источника данные непрерывно перемещаются, причем с непостоянной скоростью. Это может быть связано с техническими причинами, такими как проблемы с конвейером приема, или из-за Далее …

Что под капотом ретаргетинга: прогнозирование намерений пользователя с Apache Hadoop и Spark Structured Streaming на сервисах Amazon

курсы по большим данным, обучение Big Data, аналитика больших данных в реальном времени, Big Data, Kafka, Spark, архитектура, Большие данные, маркетинг, обработка данных, предиктивная аналитика, реклама, машинное обучение, Machine Learning, SQL, Hive, Hadoop, Amazon Web Services, AWS Kinesis

Мы уже рассказывали о возможностях ретаргетинга и использовании Apache Spark Structured Streaming для реализации этого рекламного подхода на примере Outbrain. Такое применение технологий Big Data сегодня считается довольно распространенным. Чтобы понять, как это работает на практике, рассмотрим кейс маркетинговой ИТ-компании MIQ, которая запускает Spark-приложения на платформе Qubole и сервисах Amazon, создавая конвейеры потоковой передачи и аналитики больших данных с использованием готовых соединителей и операторов, а также компонентов экосистемы Apache Hadoop — Presto и Hive. Еще раз о том, что такое ретаргетинг и при чем здесь Big Data c Machine Learning Ретаргетинг в сфере e-commerce – это техника убеждения потенциальных клиентов вернуться на веб-сайт после того, как этот ресурс был закрыт без покупки или другого конвертирующего действия (оставить заявку, подписаться на Далее …

Безопасность + надежность: чем хорош транзакционный протокол фиксации Spark-заданий от Databricks

курсы по Spark, Apache Spark Для разработчиков и аналитиков больших данных, Big Data, Большие данные, обработка данных, архитектура, Spark, SQL, Spark SQL, Delta Lake, Data Lake, Data Lake, Hadoop, HDFS, DBIO commit-protocol for Spark transactions by Databricks, курсы Hadoop, обучение Apache Hadoop

Продолжая разговор про фиксацию заданий Apache Spark при работе с облачными хранилищами больших данных, сегодня подробнее рассмотрим, насколько эффективны commit-протоколы экосистемы Hadoop, предоставляемые по умолчанию, и почему известный разработчик Big Data решений, компания Databricks, разработала собственный алгоритм. Читайте далее про сравнение протоколов фиксации заданий в Spark-приложениях: результаты оценки производительности и транзакционности – бенчмаркинговый тест. 3 варианта commit-протоколов Apache Hadoop для фиксации Spark-заданий в облаке Напомним, протокол фиксации заданий (commit) необходим для предотвращения потери или дублирования данных при работе с облачным объектным хранилищем. Он гарантирует, что видимыми становятся только результаты успешно выполненных задач и заданий Apache Spark. По умолчанию этот Big Data фреймворк включает 2 стандартных commit-протокола экосистемы Hadoop [1]: версия 1, когда выходные файлы задачи перемещаются в их окончательные местоположения Далее …

Сложности перехода: от локальных Hadoop-кластеров к облачным объектным хранилищам для приложений Apache Spark

курсы по Spark, Apache Spark Для разработчиков и аналитиков больших данных, Big Data, Большие данные, обработка данных, архитектура, Spark, SQL, Spark SQL, Delta Lake, Data Lake, Data Lake, Hadoop, HDFS

Сегодня поговорим про особенности транзакций в Apache Spark, что такое фиксация заданий в этом Big Data фреймворке, как она связано с протоколами экосистемы Hadoop и чем это ограничивает переход в облако с локального кластера. Читайте далее, как найти компромисс между безопасностью и высокой производительностью, а также чем облачные хранилища отличаются от локальных файловых систем и каким образом это влияет на Spark-приложения. Зачем нужны протоколы фиксации заданий или что не так с облачными Spark-приложениями С учетом стремительной тенденции перехода от локальных решений к облачным, в. т.ч в области Big Data, cloud-хранилища становятся все более востребованными. Например, очень часто локальное озеро данных (Data Lake) на Apache Hadoop HDFS заменяется на Amazon S3 или Delta Lake от Databricks. Подробнее о том, что такое Далее …

Большая разница: чем структурированная потоковая передача в Apache Spark отличается от Spark Streaming

курсы по Apache Spark, Spark SQL, Apache Spark Structured Streaming, обучение Spark SQL, Apache Spark Для аналитиков и разработчиков Big Data, Big Data, Большие данные, обработка данных, Spark, SQL, Spark SQL, Hadoop

В этой статье рассмотрим, что такое Apache Spark Structured Streaming и Spark Streaming, чем они отличаются и что общего между этими 2-мя способами обработки потоковых данных в самом популярном фреймворке аналитики больших данных. Читайте далее, как микро-пакетная передача приближается к режиму реального времени и при чем здесь структуры данных для распределенной обработки Big Data. Основы потоковой обработки Big Data в Apache Spark для начинающих: что такое Spark Streaming и Structured Streaming Apache Spark предоставляет 2 способа работы с потоковыми данными [1]: Spark Streaming – отдельная библиотека в Spark для обработки непрерывных потоковых данных. В его основе лежит дискретизированный поток DStream, который имеет API на базе главной структуры данных Spark – RDD (Resilient Distributed Dataset, надежная распределенная коллекция типа таблицы), которая Далее …

Ускоряем и масштабируем Apache Spark Structured Streaming: 2 проблемы строго однократной доставки и их решения

курсы по Apache Spark, exactly once, Spark SQL, Apache Spark Structured Streaming, обучение Spark SQL, Apache Spark Для аналитиков и разработчиков Big Data, Big Data, Большие данные, обработка данных, Spark, SQL, Spark SQL, Hadoop, HDFS

Вчера мы говорили про реализацию exactly once семантики доставки сообщений в Apache Spark Structured Streaming. Сегодня рассмотрим, что не так с размером компактных файлов для хранения контрольных точек потоковой передачи, какие параметры конфигурации Spark SQL отвечают за такое логирование и как ускорить микро-пакетную обработку больших данных и чтение результатов выполнения заданий в этом Big Data фреймворке.   Проблема увеличения размера компактных файлов в Apache Spark Structured Streaming Напомним, чтобы гарантировать отсутствие дублей и потерь данных, Apache Spark Structured Streaming реализует строго однократную (exactly once) семантику доставки сообщений с помощью механизма контрольных точек (checkpoint) и commit-файлов для каждого микропакета. Основная цель контрольных точек – обеспечить отказоустойчивость потоковых заданий. Благодаря метаданным, хранящимся в файлах контрольных точек, можно перезапустить обработку в случае сбоя Далее …

Только сегодня и только сейчас: как устроена строго однократная доставка сообщений в Apache Spark Structured Streaming

курсы по Apache Spark, exactly once, Spark SQL, Apache Spark Structured Streaming, обучение Spark SQL, Apache Spark Для аналитиков и разработчиков Big Data, Big Data, Большие данные, обработка данных, Spark, SQL, Spark SQL, Hadoop, HDFS

Недавно мы рассматривали оптимизацию SQL-запросов и выполнение JOIN-операций в Apache Spark. Сегодня поговорим, что обеспечивает строго однократную семантику доставку сообщений (exactly once) в этом Big Data фреймворке и как на это влияют особенности микро-пакетной обработки больших данных с помощью заданий Spark Structured Streaming. Особенности exactly once доставки сообщений в Apache Spark Structured Streaming Сперва напомним, как обеспечивается гарантия строго однократной доставки сообщений в Apache Spark Structured Streaming. Семантика exactly once означает, что каждое сообщение будет доставлено ровно 1 раз, без повторов (дублей) и потерь данных. Это наиболее оптимальный вариант с точки зрения бизнес-логики, однако, самый сложный в реализации. Чем она отличается от других семантик доставки сообщений (хотя бы 1 раз – at least once и не более 1-го раза at Далее …