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

Apache *

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

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

Как быстро писать в Apache Ignite

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


Что такое квадриллион? Это единица с 15-ю нулями, численность популяции муравьев на планете или 100 световых лет в километрах. А еще это объем торгов в рублях на Московской бирже за 2021 год.

Чтобы достичь такого результата, компания должна быть очень технологичной, очень надежной и очень быстрой. Поэтому более 50% штата Биржи – айтишники, работающие с передовым набором технологий, уровень надежности наших ИТ-систем стабильно составляет 99,99%, а еще мы постоянно разгоняем наши системы и процессы. Об одном из примеров такого ускорения рассказывает Григорий Доможиров, разработчик сервиса Data Grid.

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

Каким должно быть хранилище, чтобы выдерживать такие скорости? Во-первых In-memory, чтобы не тормозить о диск, во-вторых, – распределённым, чтобы распараллеливать запись. Такой класс решений называется In-Memory Data Grid, и яркий его представитель — Apache Ignite. Но просто установить его мало – чтобы добиться от него максимальной производительности, нужно правильно его «приготовить». И сейчас я расскажу, как.

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

Микросервисы, Apache Kafka и Domain-Driven Design

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

Почему Apache Kafka стала стандартом и основой архитектуры микросервисов. Как Kafka не только заменяет другое промежуточное ПО, но и позволяет создавать сами микросервисы с помощью DDD и нативных API Kafka: Kafka Streams, ksqlDB и Kafka Connect.

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

Области применения инструмента Apache Sqoop

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


Введение


Часто перед дата-инженерами ставится задача по миграции данных из какого-либо источника или системы в целевое хранилище. Для этого существует множество различных инструментов. Если говорить про платформу Big Data, то чаще всего у разработчиков на слуху Apache NiFi или ETL-задачи, написанные на Spark, ввиду универсальности этих инструментов. Но давайте предположим, что нам необходимо провести миграцию данных из РСУБД в Hadoop. Для подобного рода задач существует очень недооцененный пакетный ETL-инструмент – Apache Sqoop. Его особенность в следующем:

  • Облегчает работу разработчиков, предоставляя интерфейс командной строки. Для работы с этим инструментом достаточно заполнить основную информацию: источник, место назначения и детали аутентификации базы данных;
  • Автоматизирует большую часть процесса;
  • Использует инфраструктуру MapReduce для импорта и экспорта данных, что обеспечивает параллельный механизм и отказоустойчивость;
  • Для работы с этим инструментом требуется иметь базовые знания компьютерной технологии и терминологии, опыт работы с СУБД, с интерфейсами командной строки (например bash), а также знать, что такое Hadoop и обладать знаниями по его эксплуатации;
  • Относительно простая установка и настройка инструмента на кластере.

Выглядит любопытно? Но что на счёт вышеупомянутой задачи по миграции данных? Давайте разбираться.
Читать дальше →
Всего голосов 1: ↑0 и ↓1-1
Комментарии5

Настройка LEMP сервера для простых проектов. Инструкция для самых маленьких. Часть третья

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

Приветствую читателей! В рамках текущей серии статей я рассказываю о том, как настроить сервер для простых проектов. Имеется ввиду сервер для работы нескольих сайтов, с небольшой нагрузкой под наиболее популярной CMS такой например как Bitrix. Основная цель статьи указать на ошибки допускаемых младшими специалистами при выполнении подобной настройки. Также указать на какие то вещи, которые сделают troubleshooting простым и удобным.

Это не совсем стэк LEMP, так как здесь используется Apache2, но вы можете использовать PHP-FPM вместо этого, если разработчик не против внедрения такого решения.

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

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

Предыдущие части статей доступны по следующим ссылкам:

Читать далее
Всего голосов 18: ↑14 и ↓4+10
Комментарии20

Истории

Big Data с «кремом» от LinkedIn: инструкция о том, как правильно строить архитектуру системы

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

«Традиционно, самым узким местом в архитектуре любой информационной системы является система управления базами данных (СУБД). Можно сколько угодно оптимизировать прикладное программное обеспечение (ПО), но все равно упремся в ограничения в части производительности запросов». В своем материале я рассказываю о том, как построить архитектуру системы без слабых мест, и кого для этого стоит принести в жертву.


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

Загрузка stage слоя DWH. Часть 2

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

Всем доброго дня. Я Иван Клименко, и я разработчик потоков данных в компании Аскона. Данная статья посвящена параметризации NIFI-потока и информированию СУБД об окончании загрузки.

Продолжаю рассказывать о разработке потоков ETL на Apache NIFI. Первая статья была более общей, в текущей я более подробно остановлюсь на параметрах процессоров в основных шагах, о применил атрибутов, как средства параметризации выполнения потока, и о применил для внесения в целевую систему с процессора PutDatabaseRecord.

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

Настройка LEMP сервера для простых проектов. Инструкция для самых маленьких. Часть вторая

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

Данная статья является продолжением предыдущей статьи https://habr.com/ru/company/nixys/blog/645451/. Статья является обучающим материалом для начинающих администраторов, а также для разработчиков, которые хотели бы познакомиться с миром администрирования проектов. Если вы являетесь опытным администратором, можете смело пропускать данный материал.

Целью серии статей является описание подготовки работы сервера со стеком LEMP (Linux, Nginx, MySQL, PHP), отмечу, что в качестве PHP интерпретатора здесь используется Apache2, а не PHP-FPM, так как показывает практика многим разработчикам по прежнему необходим файл.htaccess, работу с которыми PHP-FPM из коробки не поддерживает.

Со своей стороны мы переносим правила из файла .htaccess в Nginx при необходимости установки PHP-FPM, однако это также занимает определенное время, зачастую разработчикам проще и быстрее внести нужные правила для текущих площадок именно в .htaccess файл. Также статьи описывают развертывание стэка и поднятие на нем работающих площадок. Инструкция подойдет для небольших Bitrix проектов, а тажке для проектов развернутых под любой популярной CMS.

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

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

Читать далее
Всего голосов 28: ↑16 и ↓12+4
Комментарии17

Настройка LEMP сервера для простых проектов. Инструкция для самых маленьких. Часть первая

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

Ведение

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

Целью серии статей является описание подготовки работы сервера со стоком LEMP (Linux, Nginx, MySQL, PHP, Apache), развертывание стэка и поднятие на нем работающих площадок. Инструкция подойдет для небольших Bitrix проектов, а тажке для проектов развернутых под любой популярной CMS.

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

Большая часть проектов базируется на ОС Ubuntu, Debian в статьях будут отражены настройки для этих систем. 

В данной статье будут описаны такие вещи как:

Читать далее
Всего голосов 24: ↑18 и ↓6+12
Комментарии19

Bitrix и Kafka: настраиваем интеграцию с брокером очередей

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

Привет! Меня зовут Саша Шутай, я тимлид в AGIMA. В прошлой статье я рассказывал, что делать, если на проекте Bitrix сожительствует с Vue.js и поисковые боты не видят контента сайта. А в этой помогу разобраться, как на Bitrix-проекте произвести интеграцию с брокером очередей Apache Kafka, почему этот вариант кажется мне более удобным, чем привычная система очередей в RabbitMQ, и как это можно подвязать на автотесты, не отправляя тестовые сообщения в продюсера.

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

Что нового в Apache Spark 3.2.0 — RocksDB state store

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

Это важное событие для всех пользователей Apache Spark Structured Streaming. RocksDB теперь доступен как state store бэкенд, поддерживаемый ванильным Spark!

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

Apache Spark, объяснение ключевых терминов

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

Как отмечено в статье Survey shows huge popularity spike for Apache Spark:

«Apache Spark - это Тейлор Свифт программного обеспечения в мире больших данных. Технология с открытым исходным кодом существует и популярна в течении нескольких лет. Но 2015 год стал важной вехой, когда Spark прошел путь от перспективной технологии до настоящей суперзвезды. 

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

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

Толстые проблемы интеграций и их тонкие решения

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

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

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

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

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

Kafka, Python и золотая рыбка

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

Поймал как-то программист золотую рыбку, а она ему и говорит человеческим голосом: «Отпусти меня в синее море, я исполню любое твоё желание». Программист ЦПУшечкой поскрипел, да и выдал техзадание. «Построй мне», – говорит, – «систему обработки неидемпотентных запросов, да чтоб она была высокопроизводительной, масштабируемой, гибкой и отказоустойчивой!». Охнула сперва золотая рыбка, но взяла себя в плавники и молвила: «Не печалься, ступай себе домой, код написан, система развёрнута. Отпускай меня уже». Удивился программист: «Да ладно? Ну, сейчас проверю и отпущу». «Нет», – возражает рыбка – «пока ты проверяешь, я уж засохну, и всё волшебство исчезнет». Программист задумался: «Что же делать: сначала отпустить, а потом проверить, или сначала проверить, а потом сушёную рыбу к пиву получить?».

Мечты о золотой рыбке не раз посещали умы даже опытных разработчиков. В погоне за оптимальной системой обработки запросов многие отдают недели и месяцы своей жизни, а некоторые готовы отдать и душу, чтобы всё работало без сбоев.
Но нужны ли такие жертвы? Нет... Ведь у вас есть мегабыстрая Apache Kafka, супергибкий Python и возможности NoSQL баз данных. Все эти решения прекрасны по отдельности, но как из них собрать один конвейер для обработки данных, не растеряв их преимущества? Рассмотрим под катом.

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

Как мы собираем данные для аналитики с помощью Apache NiFi

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

Привет, Хабр! Мы команда мониторинга и анализа данных биотехнологической компании BIOCAD. Хотим рассказать вам о том, как мы собираем данные для аналитики из практически всех сервисов компании и при этом вполне успешно справляемся без полноценного дата-инженера.

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

Миграция данных из различных RDBMS в HADOOP

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

В статье будет рассмотрен процесс экспорта данных в Hadoop из различных РСУБД посредством фреймворка Spark. Для взаимодействия с фреймворком Spark будет использован язык программирования Python с применением api pySpark.

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

Airflow + Ray: Data Science История

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

Всем привет! Основным инструментом оркестрации задач для обработки данных в Леруа Мерлен является Apache Airflow, подробнее о нашем опыте работы с ним можно прочитать тут. А также мы находимся в постоянном поиске инструментов и фреймворков для упрощения работы наших дата сайентистов и дата инженеров. Один из таких инструментов – фреймворк Ray, который позволяет создавать ML пайплайны из DAGов Airflow. В статье от Astronomer подробно рассматривается, как начать его использовать и с его помощью быстро развернуть и обучить модель.

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

Мониторинг Spark Streaming в Kubernetes с помощью Prometheus и Grafana

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

Развертывание Apache Spark в Kubernetes, вместо использования управляемых сервисов таких как AWS EMR, Azure Databricks или HDInsight, может быть обусловлено экономической эффективностью и переносимостью. Подробнее о миграции с AWS EMR в K8s вы можете прочитать в этой статье

Однако при уходе с управляемых сервисов возникает ряд проблем. И, вероятно, самая большая из них — потеря мониторинга и алертинга. Например, в AWS EMR есть действительно мощные встроенные инструменты мониторинга в виде CloudWatch, Ganglia, CloudTrail и YARN history server. В этой статье рассмотрим реализацию мониторинга для Apache Spark в Kubernetes с помощью Prometheus и Grafana.

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

Как мы развернули коммунальный Apache Airflow для 30+ команд и сотни разработчиков

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

О том как мы внедряли Apache Airflow для использования различными командами в нашей компании, какие задачи мы хотели решить этим сервисом. Внутри описание архитектуры деплоя и наш Infrastructure as Code (IaC).

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

Опыт работы с Apache Kafka: интервью с inDriver

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

DevOps-инженеры компании inDriver Радик Сейфуллин и Александр Плотников распилили старое монолитное приложение и создают новое, а Евгений Бутырин, технический редактор Слёрма, пообщался с ребятами об этом: опыте с Kafka, проблемах, решениях и обучении. 

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