Search
Write a publication
Pull to refresh
12
0
Роман @vQFd4

Researcher, IT entrepreneur & software engineer

Send message

Ревизор приехал: pg_anon проверяет, всё ли скрыто

Level of difficultyEasy
Reading time21 min
Views2.6K

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

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

Читать далее

Что ищет он в краю далёком? Как найти смысл жизни с PostgreSQL

Level of difficultyMedium
Reading time31 min
Views7.4K

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

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

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

Откроем скрытые смыслы

Быстрее пули: как найти счастье с PostgreSQL

Level of difficultyEasy
Reading time24 min
Views16K

В этой статье мы расскажем о том, как эффективно реализовать полнотекстовый поиск с помощью PostgreSQL. Узнайте, как улучшить скорость и точность поиска по текстовым данным, используя такие инструменты, как tsvector, tsquery и индексы GIN, и как эти возможности могут значительно повысить производительность вашего приложения.

Читать далее

ИИ и сумерки всеобуча

Level of difficultyEasy
Reading time3 min
Views902

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

Читать далее

Кластеры и мир: хроника высокодоступного Pub/Sub в Redis

Level of difficultyEasy
Reading time22 min
Views7.2K

В статье рассматриваются основные принципы и особенности использования Redis в режиме Pub/Sub для масштабируемых и высоконагруженных приложений. Описаны два подхода к обеспечению высокой доступности — Redis Sentinel и Redis Cluster, их преимущества, ограничения и примеры настройки. Приведены примеры использования Pub/Sub в реальных системах, а также практические конфигурации и код для настройки отказоустойчивого кластера Redis. Статья предназначена для разработчиков, которые ищут решения для создания надежных систем обмена сообщениями с высокой производительностью и отказоустойчивостью.

Читать далее

Полнотекстовый поиск в java приложениях с помощью Elasticsearch

Level of difficultyEasy
Reading time41 min
Views6K

Рассмотрим, как использовать Elasticsearch в качестве поискового движка в приложениях на Spring Boot. Поговорим о стратегии реализации полнотекстового поиска, эффективной индексации сущностей JPA и их связей. Уделим внимание использованию аннотаций полей, настройке релевантности с помощью весовых коэффициентов и реализации нечёткого поиска для обработки вариаций запросов. Также обсудим методы настройки синонимических связей, многоуровневых фильтров и ранжирования результатов по релевантности для повышения качества поиска.

Читать далее

Information

Rating
Does not participate
Location
Тверь, Тверская обл., Россия
Works in
Registered
Activity

Specialization

Backend Developer, Software Architect
Lead
From 700,000 ₽
Designing application architecture
Creating project architecture
High-loaded systems
Database
PostgreSQL
Java
Java Spring Framework
Docker
Kubernetes
Apache Kafka