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

Компания Neoflex временно не ведёт блог на Хабре

Сначала показывать

Профилирование данных из СУБД Oracle с помощью DataHub и Great Expectations. Часть 1

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

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

Читать далее

Особенности DevSecOps в облаке или как управлять безопасностью с помощью CSPM

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

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

Читать далее

Как развернуть кластерную версию Apache Airflow: пошаговая инструкция

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

Примерно год назад в Neoflex стартовал большой проект в одной из крупнейших строительных компаний по созданию ЕХД, в которое предполагалось мигрировать 100+ систем-источников. Для этого мы выбрали Airflow в качестве оркестратора, но с учетом предполагаемого объема выполняемых задач, необходимо было установить кластерную версию, чтобы мы могли распределять нагрузку и при необходимости легко добавлять новые мощности.

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

Читать далее

Как не загубить потенциал и превратить рабочие задачи в спелые яблоки

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

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

Эта статья о том, как работа с HR-коучем помогла мне преодолеть этот блок и реализоваться внутри компании. Заходите под кат, если хотите разобраться, как преодолеть трудные периоды в карьере, остаться ценным сотрудником, обрести новые смыслы, вдохновение и реализовать свой потенциал с пользой для себя, компании и коллег. 

Читать далее

ClickHouse: как мы уменьшили потребление памяти в 50 раз

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

Мы все чаще используем ClickHouse, и эта СУБД хорошо себя зарекомендовала для построения хранилищ данных и выполнения аналитических проектов. Благодаря column-oriented архитектуре ClickHouse сочетает в себе высокую производительность при вставке больших данных (миллионы строк в секунду) и невероятно быстрый full-scan по большим таблицам. Однако, за такую скорость работы этой СУБД приходится платить определёнными ограничениями, а пользователю – иметь ввиду нюансы (некоторые из них мы описали в предыдущей статье), которые непосредственно влияют на проектирование и разработку решений на базе Clickhouse.

В данной статье покажем – с какими трудностями мы столкнулись из-за архитектурных ограничений ClickHouse и как их преодолели, сократив потребляемые ClickHouse-сервером ресурсы почти в 50 раз.

Читать далее

Истории

MLOps-платформа Dognauts для разработки и эксплуатации ML-моделей. Часть 1: предыстория создания

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

Добрый день! Меня зовут Евгений Овчинцев, я работаю в компании Neoflex и в настоящее время являюсь архитектором продукта Dognauts. В данной серии статей я планирую рассказать о том, как создавался и развивался продукт: почему принимались те или иные решения, с какими проблемами пришлось столкнуться и что из всего этого получилось. 

Читать далее

Основные аспекты формирования маппинга витрины для миграции

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

В настоящее время наша команда в Neoflex выполняет работы по реализации нескольких проектов миграции данных, в рамках которых появляется потребность построения маппинга. Наш опыт основан на проекте крупнейшего в России банка по миграции витрин из СУБД Oracle в СУБД PostgreSQL в рамках импортозамещения отечественным ПО.

Читать далее

Как воспитать GPT модель в домашних условиях [LLaMA Update]

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

Мы решили проверить технологию, на которой основан ChatGPT, посмотреть актуальное состояние open-source GPT-like моделей и ответить на вопрос — можно ли обучить GPT-like модель в домашних условиях?

Для эксперимента выбрали LLaMA и GPT-J и не самый мощный ПК с видеокартой Nvidia GTX 1080TI с 11 GB VRAM. Оказалось, что этого достаточно не только, чтобы загрузить модель, но и дообучить ее (fine-tune). Рассказываем — как мы это сделали.

Читать далее

Алгоритм Forward-Forward: альтернатива backpropagation

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

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

В конце прошлого года Джеффри Хинтон, пионер Deep Learning, на конференции NeurIPS 2022 предложил новый алгоритм обучения нейронных сетей — Forward‑Forward — как альтернативу методу обратного распространения ошибки. FF более гибок и использует меньше памяти, чем backpropagation в архитектурах с множеством скрытых слоев, а его основная отличительная черта в том, что он основывается на современном понимании устройства человеческого мозга.

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

Читать далее

Мониторинг в NiFi. Часть третья. Задачи отчетности Site-to-Site

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

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

Читать далее

Мониторинг в Apache NiFi. Часть вторая

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

Задачи отчетности (Reporting Tasks)

В первой статье мы рассмотрели вопросы мониторинга потоков данных и состояния системы средствами GUI NiFi. Теперь рассмотрим, как передать необходимые метрики и отчеты об ошибках и состоянии кластера во внешние системы. NiFi предоставляет возможность сообщать о состоянии, статистике, показателях и информации мониторинга внешним службам с помощью интерфейса задач отчетности (Reporting Task).

Apache NiFi предоставляет несколько вариантов задач отчетности для поддержки внешних систем мониторинга, таких как AmbariGrafana, Prometheus и т. д. Разработчик может создать пользовательскую задачу отчетности или настроить встроенные задачи для отправки метрик NiFi во внешние системы мониторинга.

Читать далее

Бросить всё и уйти в IT: три истории наших сотрудников, кардинально сменивших профессию

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

Что общего у сотрудника ЖКХ предпенсионного возраста, бизнесмена, разводящего на продажу червей для рыбалки, и руководителя отдела по работе с клиентами в строительной фирме? Все они сменили свои профессии на IT и ныне работают в Neoflex. Мы решили познакомить вас с их историями, чтобы показать: ни возраст, ни пол, ни образование или жизненный опыт не помеха для тех, кто решительно настроен заняться IT.
Читать дальше →

Мониторинг в Apache NiFi. Часть первая

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

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

Первая статья посвящена мониторингу потоков данных с помощью инструмента GUI NiFi. В последующих материалах мы рассмотрим задачи отчетности, опишем примеры сбора метрик и визуализации при помощи таких популярных систем, как Prometheus и Grafana.

Читать далее

Особенности построения хранилища данных на базе ClickHouse в Yandex Cloud

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

В данной статье делимся опытом внедрения решения на базе СУБД ClickHouse и сервисов Yandex Cloud. Мы не коснёмся тонких настроек ClickHouse или его масштабирования, но затронем достаточно интересные на наш взгляд темы:

• как загружать данные из On-premise в облачный ClickHouse с использованием сервисов Yandex Cloud – Functions, Object Storage, Message Queue;

• как обрабатывать/преобразовывать данные в облачном ClickHouse – очищать и строить витрины; какие «подводные камни» нам встретились на этом пути.

Читать далее

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

4 – 5 апреля
Геймтон «DatsCity»
Онлайн
8 апреля
Конференция TEAMLY WORK MANAGEMENT 2025
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань
20 – 22 июня
Летняя айти-тусовка Summer Merge
Ульяновская область

Заметки дата-инженера: интеграция Kafka и PySpark

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

Данная статья будет полезна тем, чья деятельность связана с Data Engineering, и тем, кто только знакомится с этой славной профессией. Вы узнаете про особенности настройки и интеграции Kafka со Structured Streaming, а также увидите различные способы чтения данных, работы с водяными метками и скользящим окном.

Привет, меня зовут Андрей, я работаю дата-инженером и по совместительству тимлидом разработки на проекте из банковского сектора. За плечами у меня и моих коллег большое количество успешных проектов, касающихся проектирования DWH и разработки ETL-процессов. Нам всем стали уже «родными» такие системы и инструменты как: Oracle, PostgreSQL, GreenPlum, Hive, Impala, YARN, Spark и Airflow (и прочие бигдата-покемоны), которые применялись в режиме пакетной обработки данных. А вот с потоковыми процессами на тот момент плотно работать ещё не приходилось. Нашей команде предстояло разработать «под ключ» систему типа «Real Time Marketing» – в онлайн формате анализировать действия пользователей в мобильном и интернет банке, сверяться и джойниться с множеством различных источников данных, чтобы в итоге эффективно генерировать актуальные и выгодные предложения для каждого из пользователей.

Читать далее

Типовые ошибки менеджера при расширении команды. Гайд – как делать не стоит. Часть II

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

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

Читать далее

Grafana как инструмент визуализации потока данных в Kafka

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

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

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

Инструмент, на котором хотелось бы остановиться более подробно – Kafka.

Читать далее

Использование Seldon Core для машинного обучения

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

Широкое распространение машинного обучения помогло стимулировать инновации, которые всё труднее предсказать и создавать на их основе интеллектуальный опыт для продуктов и услуг бизнеса. Чтобы решить эту задачу, важно применять передовые методы. Сергей Десяк, ведущий эксперт центра компетенций DevOps компании Neoflex, делится опытом использования Seldon Core для машинного обучения, в частности, для «выкатки» моделей.

Читать далее

Типовые ошибки менеджера при расширении команды. Гайд – как делать не стоит. Часть I

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

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

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

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

Читать далее

Эпизод 1. Скрытая угроза Java Core. Уровень Юнглинг

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

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

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

Давным-давно,
в далекой-далекой галактике…

Юного Люка Скайуокера мучает разного рода вопросами пытливый мастер Йода. А Йода, как известно, писал код, когда мы еще с вами под стол ходили. Причем кодил он прямо в блокноте без дебаггера, intellij idea и прочей богомерзкой ерунды. Когда же он уставал от нововведений, то просто пихал в дисковод компьютера перфокарты…

Мир тебе, юный Люк. Вопрос мой первый слушай ты.
Читать дальше →