Как стать автором
Обновить
Neoflex
Создаем ИТ-платформы для цифровой трансформации
Сначала показывать

Рецепт собственной системы контроля качества данных

Блог компании Neoflex Data Engineering *
Tutorial

Привет! Меня зовут Василий, я работаю в роли Data Engineer в подразделении Big Data Solutions компании Neoflex. Так сложилось, что уже на двух проектах за прошедший год мне довелось заниматься разработкой систем, помогающих контролировать качество данных в Data Lakes. В ходе работы над проектами было изучено и реализовано довольно много идей, поэтому хотелось бы поделиться этим опытом с вами. Буду признателен, если в комментариях вы выскажите свои замечания или предложите более удачные варианты реализации.

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

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

Блог компании Neoflex Open source *Apache *Big Data *

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

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

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

Блог компании Neoflex Apache *Big Data *

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

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

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

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

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

Блог компании Neoflex Карьера в IT-индустрии
image

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

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

Блог компании Neoflex Open source *Apache *Big Data *

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

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

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

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

Блог компании Neoflex Анализ и проектирование систем *Big Data *Хранилища данных *Облачные сервисы *

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

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

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

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

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

Блог компании Neoflex Python *Программирование *Big Data *
Tutorial

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

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

Читать далее
Всего голосов 2: ↑1 и ↓1 0
Просмотры 2.7K
Комментарии 5

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

Блог компании Neoflex Управление проектами *Управление персоналом *

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

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

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

Блог компании Neoflex MySQL *Big Data *

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

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

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

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

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

Блог компании Конференции Олега Бунина (Онтико) Блог компании Neoflex Машинное обучение *

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

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

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

Блог компании Neoflex Управление проектами *Управление персоналом *

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

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

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

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

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

Блог компании Neoflex Java *
image

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

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

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

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

Мир тебе, юный Люк. Вопрос мой первый слушай ты.
Читать дальше →
Всего голосов 14: ↑7 и ↓7 0
Просмотры 13K
Комментарии 27

Как быстро разрабатывать сервисы обработки данных в реальном времени с помощью PySpark Structured Streaming и Kafka

Блог компании Neoflex Python *Big Data *
Tutorial

Данная статья обобщает базовые шаги по установке и началу работы с PySpark Structured Streaming при участии брокера сообщений Kafka. Предполагается, что читатель уже знаком с языком программирования Python и сервисом Kafka.

При помощи PySpark Structured Streaming можно быстро разрабатывать масштабируемые сервисы обработки данных в реальном времени. Такой подход позволяет в короткие сроки сделать выгодное предложение клиенту, вовремя заметить аномалию в системе или же отображать актуальные данные.

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

Вредные советы для удалёнки: чего точно НЕ нужно делать, чтобы эффективно и комфортно работать из дома

Блог компании Neoflex Удалённая работа

Пришедшая с началом пандемии удалёнка уничтожила главное пространственное ограничение рабочей жизни: необходимость каждый будний день гонять в офис. Некоторые компании сейчас вернулись к прежним строгим условиям, а вот сотрудники ИТ-компании Neoflex, в которой по-прежнему действует гибридный формат работы «офис-удаленка», могут работать из дома, причем делают это в абсолютно разных условиях. Кто-то просто делит небольшую рабочую зону с женой. А кто-то переехал на дачу у леса и теперь вынужден защищать дом от подскакивающих из чащи кабанчиков J. 

Наши коллеги уже опытны в удалёнке и накопили массу наблюдений о ней. Например, о том, как организовать работу эффективно, где бы ты ни находился. И также о том, чего делать точно не нужно, иначе любимая работа на любимой удалёнке станет кошмаром. Полезных советов про удалёнку на Хабре уже много. Так что в этом посте мы для вас собрали вредные. Читайте — и ни в коем случае не следуйте!

Читать далее
Всего голосов 31: ↑17 и ↓14 +3
Просмотры 15K
Комментарии 23

Был техспециалистом, стал руководителем: история про отрицание и выгорание с хеппи-эндом

Блог компании Neoflex Управление персоналом *Карьера в IT-индустрии

Привет, меня зовут Александр. Сейчас я руковожу одной из групп дата-инженеров центра компетенций Big Data Solutions в Neoflex и дополнительно выступаю деливери-менеджером проекта, связанного с дата-инжинирингом. А ещё осенью 2020-го я был уставшим и сердитым дата-инженером, которого добровольно-принудительно перевели на нежеланную управленческую должность. 

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

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

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

Читать далее
Всего голосов 11: ↑9 и ↓2 +7
Просмотры 3.8K
Комментарии 2

Создание документации по проекту с помощью Сonfluence API

Блог компании Neoflex Python *API *

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

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

Специалист Neoflex из подразделения Big Data Solutions рассказывает о проблеме, с которой он столкнулся:

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

Зная такие инструменты как Selenium и язык программирования Python, мною была написана рекурсивная функция от нужного отдела по всем его дочерним объектам. В ходе выполнения наткнулся на большое количество проблем: например, отсутствие id в url, принадлежность одной страницы другому разделу, медленная работа, несоответствие стилей и т.д. Вся работа строилась на простом алгоритме: проходить все страницы, сохранять необходимый текст в тегах в html файл для дальнейшего преобразования в DOCX. Почему пришлось отказаться от данного подхода:

Читать далее
Рейтинг 0
Просмотры 2.6K
Комментарии 0

Графовые базы данных на примере простых запросов

Блог компании Neoflex Хранение данных *
Tutorial

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

Информации по теории графов достаточно много, поэтому в материале будут сугубо прикладные знания, которые существенно облегчат закрепление материала практикой. В данном примере рассматривается работа с локальным экземпляром БД Neo4j. Считаю, что СУБД именно этого вендора позволяет осваивать тему графовых баз данных с достаточно низким порогом входа – нам понадобится только понимание SQL. Иными словами, статья представляет собой краткую сводку/инструкцию о том, какие шаги нужно пройти и что освоить, чтобы начать "играться" с Neo4j на вашем личном ПК или сервере в инфраструктуре вашей компании. Поскольку в этот тип БД заходят специалисты, ранее работавшие с реляционными БД, для облегчения понимания принципов в статье сделан упор на сопоставление языка общения с графовыми базами данных и классическим SQL. Чтобы сделать пример прикладным, в материале приводится  решение типовой бизнес-задачи для графовых БД на простом примере из финансовой предметной области.

Читать далее
Всего голосов 11: ↑10 и ↓1 +9
Просмотры 7.7K
Комментарии 3

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

Блог компании Neoflex SQL *Apache *Hadoop *


Введение


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

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

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

ksqlDb или SQL как инструмент обработки потоков данных

Блог компании Neoflex Hadoop *Софт

Kafka нельзя назвать новым продуктом на рынке ПО. Прошло примерно 10 лет с того времени, как компания разработчик LinkedIn выпустила его в свет. И хотя к тому времени на рынке уже были продукты со схожей функциональностью, но открытый код и широкая поддержка экспертного сообщества прежде всего в лице Apache Incubator позволила ему быстро встать на ноги, а впоследствии составить серьезную конкуренцию альтернативным решениям.

Традиционно Kafka рассматривался как набор сервисов для приема и передачи данных, позволяющий накапливать, хранить и отдавать данные с крайне низкой задержкой и высокой пропускной способностью. Этакий надежный и быстрый (да и в общем-то наиболее популярный на данный момент) брокер сообщений по этой причине весьма востребован во множестве ETL процессов. Преимущества и возможности Kafka многократно обсуждались, в том числе и на Хабре. К тому же, статей на данную тематику весьма много на просторах интернета. Не будем повторять здесь достоинства Kafk-и, достаточно посмотреть на список организаций, выбравших этот продукт  базовым инструментом для технических решений. Обратимся к официальному сайту, согласно которому на данный момент Kafka используется тысячами компаний, в том числе более 60% компаний из списка Fortune 100. Среди них Box, Goldman Sachs, Target, Cisco, Intuit и другие [1].

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

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Просмотры 4.7K
Комментарии 5

Визуализация данных с помощью Oracle Apex

Блог компании Neoflex Oracle *SQL *Визуализация данных *Графический дизайн *

Oracle Apex – компонент для разработки конечных приложений, входящий в состав поставки СУБД Oracle, позволяющий быстро «доставать» данные из базы и доставлять их через веб-интерфейс конечному пользователю. Как правило, данные для просмотра и редактирования выдаются в табличном виде и Apex предоставляет богатые возможности для настраивания отчета: можно накладывать фильтры, делать сортировку и группировку, скрывать имеющиеся столбцы и добавлять расчетные новые, делать сводные отчеты, выгружать данные в формате csv, pdf и даже Excel. Каждый пользователь может сохранить предпочитаемые им настройки каждого отчета как индивидуально, так и для совместного использования. В таком формате Apex функционирует у большинства наших заказчиков.

Однако мало кто использует довольно широкие возможности Apex’а для построения графиков. Эта тема, на наш взгляд, довольно интересна и мало освещена в интернете.

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

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

Информация

Сайт
www.neoflex.ru
Дата регистрации
Дата основания
Численность
1 001–5 000 человек
Местоположение
Россия