Pull to refresh
2
0
Кравчук Сергей @alfss

I am the army

Send message

Кластеризация текста в PySpark

Level of difficulty Medium
Reading time 9 min
Views 6K

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

На связи участники профессионального сообщества NTA Кухтенко Андрей, Кравец Максим и Сиянов Артем.

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

Узнать больше о кластеризации текста
Total votes 10: ↑9 and ↓1 +8
Comments 5

«И швец и жнец» или обзор полезных расширений для XWiki

Reading time 4 min
Views 4.8K

 

Вот уже второй год, как мы используем XWiki, вместо Confluence. 

За это время я к ней привык и даже в некотором роде полюбил. Поэтому не могу пройти мимо такого важного события как выход новой LTS версии 4.10.X.

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

Сегодня я не буду вдаваться в технические подробности, а просто сделаю беглый обзор функционала, рассчитанный в первую очередь на людей только что узнавших об XWiki. Обозревать мы будем самую последнюю на текущий момент версию 14.10.2 со Standard Flavor, установленную через Docker образ.

Читать далее
Total votes 7: ↑6 and ↓1 +5
Comments 3

Построение сложных маршрутов в Apache Camel с помощью компонента Direct

Reading time 3 min
Views 1.9K

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

Читать далее
Total votes 4: ↑3 and ↓1 +2
Comments 3

Наглядное руководство по SSH-туннелям

Reading time 8 min
Views 111K

Прим. переводчика: автор статьи рассматривает практические сценарии и примеры организации SSH-туннелей. А для лучшего понимания того, как это работает, графически показывает потоки трафика.

Туннели SSH — это зашифрованные TCP-соединения между клиентами и серверами SSH. Трафик входит с одной стороны туннеля и прозрачно выходит с другой. Изначально этот термин относился к туннелям на виртуальных сетевых интерфейсах TUN/TAP, однако сейчас так обычно называют проброс портов SSH.

Читать далее
Total votes 75: ↑75 and ↓0 +75
Comments 17

Kubernetes в НСПК

Reading time 5 min
Views 7.5K

Всем привет! Меня зовут Назаров Алексей, я работаю в отделе администрирования инфраструктурных сервисов автоматизации Мир Plat.Form (НСПК) и сегодня расскажу о том, как устроены наши кластеры Kubernetes и как мы ими управляем.

Читать далее
Total votes 19: ↑18 and ↓1 +17
Comments 5

Разработка производительной модели обработки данных для Cassandra

Reading time 17 min
Views 5.7K

В DataStax работают над созданием производительной модели данных для Apache Cassandra. В чём заключается эта работа и как её делать правильно, на конференции Cassandra Day Russia 2021 рассказал Артём Чеботко, Solutions Architect в DataStax.


image


Речь пойдет о разработке производительной модели данных для Apache Cassandra. Над этой задачей я долгое время работаю в DataStax. Есть довольно большое количество проектов и use cases, в которых нужна была производительная модель данных. Мы поговорим о методологии и как это сделать правильно.
Начнем с более простых вещей. Обсудим, как Cassandra хранит данные, чтобы понимать, на что нужно особенно обращать внимание. Потом обсудим методологию. Здесь также есть 3 примера, о которых я хотел бы поговорить. Они разные, в них есть разные оптимизации, которые можно обсудить.

Читать дальше →
Total votes 6: ↑6 and ↓0 +6
Comments 2

У ELK’и иголки колки: минимизируем потерю сообщений в Logstash, следим за состоянием Elasticsearch

Reading time 12 min
Views 13K

Это обзор некоторых полезных фич и чек-лист по мониторингу не самых очевидных моментов, чтобы минимизировать потерю сообщений, проходящих через ELK (Elasticsearch, Logstash, Kibana). В статье мы не коснемся тем, связанных с программами-коллекторами (посредством чего сообщения попадают в Logstash) из-за их великого разнообразия: речь пойдет только о core-компонентах. В конце материала приведен небольшой cheat sheet с популярными запросами к Elasticsearch API.

Читать далее
Total votes 41: ↑41 and ↓0 +41
Comments 13

Диаграммы по управлению памятью в Java процессе

Reading time 2 min
Views 4.1K

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

Читать далее
Total votes 13: ↑6 and ↓7 -1
Comments 8

Мой топ полезных инструментов для Unity разработчика

Reading time 3 min
Views 12K

Всем привет! Меня зовут Григорий Дядиченко, и я всё ещё разрабатываю проекты на Unity под ключ. Сегодня хочется поговорить про полезный инструментарий для Unity разработчика. У меня давно на эту тему есть свой топ ассетов или софта, которые используются почти в каждом проекте, плюс несколько своих утилит. Не будем касаться слишком широких и банальных инструментов типа adb, а составим некоторый набор того, что можно использовать почти в каждом проекте.

Читать далее
Total votes 13: ↑11 and ↓2 +9
Comments 11

Очередь задач в PostgreSQL

Reading time 7 min
Views 30K

Очередь слонов - pixabay.com


Для организации обработки потока задач используются очереди. Они нужны для накопления и распределения задач по исполнителям. Также очереди могут обеспечивать дополнительные требования к обработке задач: гарантия доставки, гарантия однократного исполнения, приоритезация и т. д.


Как правило, используются готовые системы очередей сообщений (MQ — message queue), но иногда нужно организовать ad hoc очередь или какую-нибудь специализированную (например, очередь с приоритетом и отложенным перезапуском не обработанных из-за исключений задач). О создании таких очередей и пойдёт речь ниже.


Ограничения применимости


Предлагаемые решения предназначены для обработки потока однотипных задач. Они не подходят для организации pub/sub или обмена сообщениями между слабо связанными системами и компонентами.


Очередь поверх реляционной БД хорошо работает при малых и средних нагрузках (сотни тысяч задач в сутки, десятки-сотни исполнителей), но для больших потоков лучше использовать специализированное решение.


Суть метода в пяти словах


select ... for update skip locked
Читать дальше →
Total votes 30: ↑27 and ↓3 +24
Comments 58

Objective-C вопросы на уровень middle/senior

Reading time 4 min
Views 60K
Что должен знать objc разработчик на уровень middle/senior?
К сожалению, четкой черты на вертикальное развитие нет. Парадокс, но чтобы знать что изучить, нужно знать что ты не знаешь.
Я постарался вспомнить самые интересные вопросы, которые мне задавали самому на различных собеседованиях, а так же расширил их множеством вопросов(тем же уровнем) от себя.
Здесь нет общих вопросов вроде: IoC, design patterns, S.O.L.I.D. и т.п.

ВНИМАНИЕ!!!
Помимо вертикального развития немаловажно и горизонтальное

ВНИМАНИЕ!!! (2)
Не пишите в комментарии ответы на вопросы, это дает возможность людям самостоятельно разобраться.
Однако, если у вас имеются интересные вопросы по теме, я с радостью добавлю их в список.

Конечно, это не заменит живого общения, однако позволит неплохо подготовиться к собеседованиям.


Начинаем


Читать дальше →
Total votes 30: ↑23 and ↓7 +16
Comments 25

Документация разработчика Hibernate – Глава VI. Кэширование

Reading time 7 min
Views 34K
Представляю вашему вниманию перевод шестой главы официальной документации Hibernate.

Перевод статьи актуален для версии Hibernate 4.2.19.Final

Предыдущая главаДокументация разработчика Hibernate – Глава V. Блокировки

Что собой представляют кэш первого и второго уровня в Hibernate, показано на следующий диаграмме (прим. автора).

image

6.1. Кэш запросов


Если у вас есть запросы, выполняющиеся снова и снова, с одними и теми же параметрами, кэширование запросов предоставит выигрыш в производительности.

Кэширование вводит дополнительные накладные расходы в области выполнения транзакций. К примеру, если вы кэшируете результаты запроса по отношению к какому-либо объекту, Hibernate необходимо отслеживать, были ли закоммичены какие-либо изменения по объекту, и в соответствии с этим, аннулировать записи в кэше. В дополнение, плюсы от кэширования запросов ограничены, и очень зависят от шаблонов использования вашего приложения. По этим причинам, Hibernate по-умолчанию выключает кэширование запросов.
Читать дальше →
Total votes 16: ↑16 and ↓0 +16
Comments 2

Создание загружаемых модулей Zabbix на примере добавления протокола Modbus

Reading time 8 min
Views 37K
Еще в версии Zabbix 2.2 добавились загружаемые модули, которые позволили расширять на новом уровне возможности системы. «Зачем это нужно?», — спросите вы, ведь запускать внешние скрипты и программы из Zabbix можно было всегда. Конечно, в первую очередь это скорость — модули, как и сам Zabbix, пишутся на C и при правильном подходе работают максимально быстро, в отличие от внешних программ, которые требуется запускать на каждый опрос. Многих может напугать необходимость писать код, но сегодня я хочу показать вам, что все не так уж и сложно.

Для примера, напишем модуль, который позволит Zabbix собирать информацию с устройств, работающих по широко распространённому в мире протоколу промышленной автоматизации — Modbus и снимем при помощи него показания температурных датчиков, а также получим параметры электроэнергии с счетчика Меркурий 230. В конце разместим наш модуль на портале share.zabbix.com, где пользователи могут делиться своими наработками по Zabbix.


Читать дальше →
Total votes 19: ↑19 and ↓0 +19
Comments 16

Webix 3.0 — новый, лиловый

Reading time 3 min
Views 32K
Webix 3.0


Судя по всему, разработчики этого фреймворка крайне чувствительно относятся к смене сезонов. Раньше я уже писал о новых версиях Webix. И выходили они либо в начале весны, либо в начале лета. На этот раз, судя по всему, в рамках борьбы с осенней депрессией разработчики выкатили мажорный релиз. В новом Webix 3.0, помимо уже привычных нам новых фич и багфиксов, появились два новшества, которыe вполне себе можно считать отдельными продуктами: Webix Jet и Visual Designer. Давайте разберемся, что это такое, зачем это нужно и как это выглядит.
Читать дальше →
Total votes 22: ↑20 and ↓2 +18
Comments 6

Nginx: защищаем урл одноразовым паролем

Reading time 2 min
Views 19K
Появилась задача обезопасить админскую часть на сайте. Причём это надо было сделать без внесения изменений в код самого сайта. Лучшее, что смог я найти — oauth2_proxy и nginx-google-oauth, но они требовали обработку коллбэков. Эти решения мне не понравились и я их отверг.

Пришлось обратиться к одному из модулей nginx и комплектующим для велосипеда.
Читать дальше →
Total votes 19: ↑18 and ↓1 +17
Comments 14

RESTful API — большая ложь

Reading time 7 min
Views 433K
От переводчика:
Я впервые попробовал перевести статью такого объёма и IT-тематики, с радостью прочту ваши комментарии и замечания. Что же касается самой статьи: я не согласен с автором как минимум потому, что, по сути, он заменяет REST на… REST (!!!), но немного в другом обрамлении. Однако, не смотря на то, что в статье преподносится много очевидных вещей, мне она показалась достойной обсуждения на Хабре.

Почему Вам стоит похоронить эту популярную технологию

image
Читать дальше →
Total votes 71: ↑47 and ↓24 +23
Comments 148

Видео докладов с DevOps Meetup про Docker

Reading time 1 min
Views 16K
Недавно в офисе Badoo проходил DevOps Meetup про Docker и контейнерную виртуализацию. Делимся с вами видео докладов.

1. «Docker в Badoo: от восторгов к внедрению».
Антон banuchka Турецкий, Раудсепп Илья, Badoo.



Читать дальше →
Total votes 32: ↑32 and ↓0 +32
Comments 5

Автоматизируем и ускоряем процесс настройки облачных серверов с Ansible. Часть 5: local_action, условия, циклы и роли

Reading time 9 min
Views 36K
В первой части мы начали изучение Ansible, популярного инструмента для автоматизации настройки и развертывания ИТ-инфраструктуры. Ansible был успешно установлен в InfoboxCloud, описаны принципы работы, базовая настройка. В завершении статьи мы показали как быстро установить nginx на несколько серверов.

Во второй части мы разобрались в выводе playbook, научились отлаживать и повторно использовать скрипты Ansible.

В третьей части мы узнали как написать единый Ansible playbook для разных ОС (например с rpm и deb), как обслуживать сотни хостов и не писать их все в inventory и как сгруппировать сервера по регионам InfoboxCloud. Было изучено использование переменных Ansible и файла inventory.

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



В этой части мы рассмотрим, как запускать задачу локально в рамках playbook для удаленных серверов, как использовать условия для выполнения конкретных задач только в определенной ситуации, как использовать циклы для значительного сокращения количества задач в playbook. В завершении мы разберем, как организовывать playbook в роли.
Читать дальше →
Total votes 9: ↑9 and ↓0 +9
Comments 3

Лучшие доклады конференции DevCon 2015 — Топ 10

Reading time 5 min
Views 12K
В конце мая мы проводили нашу традиционную конференцию DevCon, а сегодня мы рады представить вам самые лучшие доклады по мнению оффлайн-участников.

Самым высоко оцененным докладом оказался рассказ Дмитрия Сошникова о практическом применении F#. Не могу не отметить, что гипотезы Димы о том, что влияет на качество доклада, вполне себя оправдали второй год подряд!

Магия F# для обработки данных: монады, провайдеры типов и немножко теории категорий



Автор: Дмитрий Сошников, Microsoft
Описание: На сегодняшний день практически все слышали о функциональном языке программирования F#, но не все включили его в свой набор инструментов разработки. В этом докладе мы рассмотрим серию практических примеров, показывающих преимущества F# для обработки (больших) данных. Поговорим о монадах параллельно-асинхронных вычислений для эффективного доступа к web, об использовании распределенных вычислений в облаке с помощью MBrace, о провайдерах типов и об интеграции с R для решения задач машинного обучения.
И еще 9 лучших докладов конференции
Total votes 18: ↑16 and ↓2 +14
Comments 11

Сборщик мусора в Go: решение проблемы отзывчивости в Go 1.5

Reading time 4 min
Views 25K
Данный материал представляет собой перевод блог поста, который в реальном времени ведут ребята из Sourcegraph с конференции GopherCon 2015, которая проходит в эти дни в Денвере, Колорадо. Полное видео и слайды доклада будут добавлены к посту, как только будут доступны.

Ричард Л. Хадсон (Рик) знаменит по своим работам в управлении памятью, включая изобретение алгоритмов Train, Sapphire и Mississippi Delta, а так же GC stack maps, которые позволили реализовать сборку мусора в статически-типизированных языках вроде Java, C# и Go. Под его авторством были опубликованы документы о рантаймах языков, управлении памятью, многопоточности, синхронизации, моделей памяти и транзакционной памяти. Сейчас Рик является одним из членов команды Go в Google и работает над проблемами сборщика мусора и рантайма.


Читать дальше →
Total votes 30: ↑26 and ↓4 +22
Comments 81
1

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity