Как стать автором
Обновить
8.29

Apache *

Свободный веб-сервер

Сначала показывать
Порог рейтинга
Уровень сложности

Все, что вам нужно знать об Airflow DAGs, ч.1 — Основы и расписания

Время на прочтение 20 мин
Количество просмотров 55K

Полное руководство по созданию DAG в Apache Airflow DAG, позволяющих создать конвейер данных из разных источников, запускаемый в определенные периоды времени с заданной логикой. Первая часть. Источник: DAGs: The Definitive Guide от astronomer.io

Добро пожаловать в полное руководство по Apache Airflow DAG, представленное командой Astronomer. Эта электронная книга охватывает все, что вам нужно знать для работы с DAG, от строительных блоков, из которых они состоят, до рекомендаций по их написанию, динамической генерации, тестированию, отладке и многому другому. Это руководство, написанное практикующими для практикующих.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 0

Apache Superset. Первый взгляд на BI инструмент

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 56K

В последнее время изучая вакансии на сайтах по поиску работы, все чаще стал отмечать, что помимо платных инструментов BI от кандидатов требуется знание еще бесплатных платформ. Мой предыдущий опыт работы по построению графической отчетности был связан исключительно с коммерческими продуктами, поэтому я решил выделить время на ознакомление с альтернативными решениями. Выбор Superset был случайным, так как я обратил внимание на него лишь потому, что он входит в экосистему Apache. Сразу хочу оговориться, что в данной заметке не будет сравнения Superset с платными инструментами. Такое сопоставление функционала просто некорректно из-за разных “весовых категорий”. Также я не буду выделять плюсы и минусы решения по сравнению с бесплатными аналогами, так как это очень дискуссионный вопрос. Неизбежно найдутся адепты того или иного продукта, которые будут доказывать ошибочность моих суждений. Поэтому я построил публикацию в форме простого описания “нюансов”, которые я выделил для себя, начав знакомство с Superset. Читатели же сами смогут сделать свои выводы.

Читать далее
Всего голосов 8: ↑8 и ↓0 +8
Комментарии 4

Рецепт готовки Apache Kafka: как создавался Data Lake на 80 Тb

Время на прочтение 7 мин
Количество просмотров 5.5K

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

О не очень стандартном использовании Apache Kafka и лайфхаках по созданию Data Lake на его основе нам рассказал Михаил Кобик, директор департамента инфраструктурных решений в SMART Technologies SOFT. В 2017 году перед командой Михаила встала непростая задачка - создать хранилище данных на 80 Tb. В распоряжении был спек, примерные нагрузки и абсолютное непонимание, что с этим делать со стороны заказчика.

Читать далее
Всего голосов 13: ↑12 и ↓1 +11
Комментарии 9

Пять советов по исправлению перекошенных соединений в Apache Spark

Время на прочтение 9 мин
Количество просмотров 2.1K

Соединения (Joins) являются одними из наиболее фундаментальных преобразований в типичной процедуре обработки данных. Оператор Join позволяет коррелировать, обогащать и фильтровать два входных набора (пакета / блока) данных (Datasets).
Обычно два входных набора данных классифицируются как левый и правый на основе их расположения по отношению к пункту/оператору Join.
По сути, соединение работает на основе условного оператора, который включает логическое выражение, основанное на сравнении между левым ключом, полученным из записи левого блока данных, и правым ключом, полученным из записи правого комплекса данных. Левый и правый ключи обычно называются соединительными ключами (Join Keys). Логическое выражение оценивается для каждой пары записей из двух входных наборов данных. На основе логического вывода, полученного в результате оценки выражения, условный оператор включает условие выбора — для отбора либо одной из записей (из пары), либо комбинированной записи (из записей, образующих пару).
Читать дальше →
Всего голосов 4: ↑3 и ↓1 +2
Комментарии 0

Истории

Как собрать платформу обработки данных «своими руками»?

Время на прочтение 5 мин
Количество просмотров 10K


Большое количество российских компаний столкнулись с ограничениями в области ПО. Они теперь не имеют возможности использовать многие важные инструменты для работы с данными. Но, как говорится, одна дверь закрылась — другая открылась. Альтернатива зарубежным решениям есть: платформу обработки данных можно создать своими силами. Расскажем, как мы в ITSumma это сделали, какие компоненты использовали, с какими ограничениями столкнулись и зачем вообще всё это нужно.

Предыстория (очень короткая)


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

В итоге всё прошло хорошо и заказчик доволен. А у нас возникла идея скомпоновать свою платформу — такую, чтобы она была доступной не только большому бизнесу, но и компаниям среднего и малого масштаба. То есть сделать так, чтобы можно было получать большие возможности и не платить при этом огромные деньги.
Читать дальше →
Всего голосов 30: ↑30 и ↓0 +30
Комментарии 5

Apache Kafka — как мы работаем с данными

Время на прочтение 10 мин
Количество просмотров 7K

Привет, Хабр!

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

Вроде всё хорошо, но у такого подхода обнаружились и недостатки – например, обработка данных при таком подходе откладывается на самый последний этап, когда нам уже понадобилась аналитика. А это может занять довольно много времени, что приводит к задержкам аналитики. Это натолкнуло на мысль о том, что порой удобнее думать о мире в парадигме событий. Каждое событие тоже может иметь своё описание, как и вещь – но главная идея состоит в том, что событие является указанием во времени о появлении факта. Например, если бы мы для подсчёта абонентов имели поток событий – добавление нового абонента, отключение или перевод – мы могли бы быстро посчитать количество абонентов на текущий момент, если бы мы знали их начальное количество и постоянно обрабатывали этот поток.

Для хранения потоковой информации использовать структуру под названием log. Название вам знакомо, и не случайно вы с ней сталкиваетесь, читая консольный вывод приложений. Суть в том, что log – это просто упорядоченная во времени последовательность объектов. Когда происходит событие, мы можем просто добавлять его в конец лога с небольшим описанием происшедшего. Это скажет нам о том, что это событие произошло в определённое время относительно других событий. Всё это выглядит достаточно просто.

Читать далее
Всего голосов 10: ↑10 и ↓0 +10
Комментарии 5

Потоковая передача данных с помощью Apache Spark и MongoDB

Время на прочтение 8 мин
Количество просмотров 2.1K

MongoDB объявила о выпуске 10.0 версии коннектора MongoDB для Apache Spark. В этой версии используется новый API Spark Data Sources второй версии (V2) с поддержкой структурированной потоковой передачи данных Spark (Spark Structured Streaming).

Зачем нужна новая версия?


Текущая версия MongoDB Spark Connector была первоначально написана в 2016 году и основана на API Spark Data Sources первой версии (V1). Хотя эта версия API по-прежнему поддерживается, компания Databricks выпустила обновлённую версию API, облегчающую работу таких источников данных (Data Sources), как MongoDB, со Spark. Благодаря тому, что MongoDB Spark коннектор использует V2 API, непосредственным преимуществом является более тесная интеграция со структурированной потоковой передачей данных Spark.
Читать дальше →
Всего голосов 12: ↑11 и ↓1 +10
Комментарии 1

Обкафкился по полной: 3 фейла с Apache Kafka

Время на прочтение 6 мин
Количество просмотров 20K

Недавно мы проводили вебинар «Обкафкился по полной. Фейлы с Apache Kafka». На нём спикер Всеволод Севостьянов, Engineering Manager в HelloFresh, поделился фейлами из личной практики, а ещё рассказал, как мастерски ходить по тонкому льду Kafka и прокачать свой бэкенд. Для тех, кто пропустил или предпочитает читать, а не смотреть, подготовили текстовый вариант.

Читать далее
Всего голосов 31: ↑29 и ↓2 +27
Комментарии 27

Реальные примеры применения Kafka в автопроме

Время на прочтение 8 мин
Количество просмотров 5.9K

Apache Kafka широко используется в самых разных сферах автопрома. В этой статье мы рассмотрим реальные примеры развёртывания в разных контекстах, включая подключенные транспортные средства, умное производство и инновационные услуги перевозок, и в разных компаниях, включая автопроизводителей, вроде Audi, BMW, Porsche и Tesla, и провайдеров сервисов мобильности — Uber, Lyft и Here Technologies.

Читать далее
Всего голосов 10: ↑8 и ↓2 +6
Комментарии 2

Apache NiFi: как починить ошибки, которые не гуглятся

Время на прочтение 16 мин
Количество просмотров 8.6K
Настройка и запуск Apache NiFi и Zookeeper, настройка авторизации по LDAP и работа NiFi по HTTPS, настройка и запуск Apache NiFi Registry, пример запуска NiFi c Kerberos — вот темы, которые будут в этой статье.



Не вижу смысла полностью рассказывать, как настраивать NiFi и NiFi Registry — есть официальная документация и мануалы в сети. Я сосредоточился на ошибках, информации по которым нет, в том числе и на английском. При самостоятельном поиске решения, это реально масса времени. Я провел месяцы в режиме DEBUG и TRACE, чтобы понять, как всё сделать правильно. Готов поделится.
Читать дальше →
Всего голосов 18: ↑18 и ↓0 +18
Комментарии 11

VintageOffice: Интеллектуальная защита

Уровень сложности Простой
Время на прочтение 3 мин
Количество просмотров 1.8K

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

Как часто испытываем разочарование, увидев в важном документе досадную ошибку, после отправки электронного письма?

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

Читать далее
Всего голосов 1: ↑0 и ↓1 -1
Комментарии 3

Apache NiFi. Быстрый доступ к логам

Время на прочтение 2 мин
Количество просмотров 4.6K

Рассмотрим простой способ получить информацию из лога Nifi с помощью самого Nifi. Это может быть полезно при разработке, тестировании, отладке потоков. А также, поможет организовать получение событий, если у вас еще не готова инфраструктура мониторинга и логирования.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 0

Apache Atlas – доступный data catalog

Время на прочтение 14 мин
Количество просмотров 12K

В задачах построения и развития Data Platform с течением времени мы всегда приходим к вопросу эффективного управления данными.

Chief Data Officer, задавшись целью развить, вывести на новый уровень функцию управления данными, склоняются к “тяжеловесным” шагам, внедряя дорогостоящее вендорское ПО или начиная собственную разработку инструментов.

В то же время в открытом доступе есть законченные, испытанные временем продукты, с которых можно начать испытывать и развивать процессы и компетенции в области Data Governance, применив минимум затрат на внедрение и двигаясь поступательно методом “маленьких побед”.

Apache Atlas является одним из таких доступных open source-инструментов класса Data Catalog, который нам удалось полноценно опробовать и успешно замкнуть на него ряд процессов управления данными.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 9

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн

Apache Kafka и RabbitMQ: в чем разница и что лучше изучать?

Время на прочтение 6 мин
Количество просмотров 49K

Мы решили внести свой скромный вклад в развитие комьюнити и перевели оригинальную статью. Статья опубликована на сайте Simplilearn.

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

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

Читать далее
Всего голосов 23: ↑19 и ↓4 +15
Комментарии 8

Apache Guacamole и взаимодействие с API: реальный кейс использования oVirt

Время на прочтение 4 мин
Количество просмотров 12K

Рассказываем о методах удаленного управления серверами, не зависящих от операционной системы. Мы уже писали о разработанной в HOSTKEY веб-консоли для материнских плат Supermicro, которая не требует локальной установки Java. Оборудованием Dell тоже можно управлять удаленно с помощью встроенной в DRAC консоли VNC. Показываем, как.

Узнать подробности
Всего голосов 6: ↑6 и ↓0 +6
Комментарии 0

Apache OpenOffice. Динамические массивы

Уровень сложности Средний
Время на прочтение 21 мин
Количество просмотров 2.2K

— Указатели в СтарБейсике видишь?
— …
— А они там есть.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 0

Прыжок горбатой лошади или как мы обновляем наши системы

Время на прочтение 6 мин
Количество просмотров 3K

Привет! Меня зовут Евгений Сальников и я тимлид одной из команд Outbound, которая входит в департамент Business Process Automation в Lamoda. В нашем направлении мы отвечаем за сервисы доставки.

Эта статья написана по мотивам реальной задачи по обновлению нашей большой системы, а именно — переход с очень старой версии Apache Camel на актуальную. Я не расскажу чего-то особо нового, но если у вас уже есть Apache Camel и вам «только спросить», как с ним управляться — милости просим.

Читать далее
Всего голосов 17: ↑17 и ↓0 +17
Комментарии 5

Как мы построили корпоративную шину данных на Kafka, которая обрабатывает до 3 млн сообщений в секунду

Время на прочтение 10 мин
Количество просмотров 26K

Привет! Меня зовут Иван Гаас, я руковожу автоматизацией процессов разработки в Почтатехе — компании, создающей цифровые продукты для Почты России.

Среднее количество сообщений, которые мы обрабатываем в Почте — от 500 тысяч до миллиона в секунду. В пики, когда наша big data прогоняет свои 25 петабайт данных — до 3 миллионов. При этом кластер Kafka состоит всего из 12 серверов в каждом из 3 дата-центров и справляется с этим.

C 2016 года мы в три раза увеличили количество новых цифровых сервисов. Корпоративная шина на Kafka помогла быстро масштабироваться: количество интеграций за последнее время упало с 1000 до 300 и теперь растёт незначительно. Если раньше интеграция сервиса растягивалась на месяцы, то теперь достаточно нескольких дней.

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

Читать дальше
Всего голосов 37: ↑36 и ↓1 +35
Комментарии 14

Apache Camel: direct для новичков

Время на прочтение 2 мин
Количество просмотров 3.1K

Многие из вас давно работают с различными Java-фреймворками, их в опенсорсе целое множество, и у каждого есть свои преимущества и недостатки. Сегодня хотим обсудить Apache Camel, а именно, компонент direct. Эта статья от инженера-программиста Nexign Андрея Малыгина будет полезна тем, кто уже работает на этом фреймворке и хочет сделать свою работу чуточку легче.

Узнать больше о компоненте direct
Всего голосов 4: ↑2 и ↓2 0
Комментарии 1

Поднимаем Apache Superset — необходимый и достаточный гайд

Время на прочтение 9 мин
Количество просмотров 38K

Пингвины для привлечения внимания. Как поднять Apache Superset, подключить к нему локальный Postgres и чтобы потом на вас коллеги не смотрели косо.

Читать далее
Всего голосов 5: ↑4 и ↓1 +3
Комментарии 12