Базы Данных (Data Base) | SQL & NoSQL. PostgreSQL, MySQL и Big Data. Уроки для Backend и Data Engineer. Архитектура БД, Оптимизация и Design.
Базы Данных (Data Base) | SQL & NoSQL. PostgreSQL, MySQL и Big Data. Уроки для Backend и Data Engineer. Архитектура БД, Оптимизация и Design.
2 336 подписчиков · @database_info
К каналу →
Антипаттерн: использование SELECT * в продакшене Кажется безобидным, правда? Особенно на этапе прототипирования. Но как только ваш запрос с SELECT * уходит в прод, начинаются проб…
Читать далее →
5 107
🔴 Антипаттерн: игнорирование поведения NULL в SQL Когда ты пишешь WHERE column != 'value', ты можешь думать, что фильтруешь всё, что не равно 'value'. Но если в колонке есть NULL,…
Читать далее →
5 151

Полнотекстовый поиск в PostgreSQL: когда ILIKE уже не тянет

Как понять, что вашему проекту нужен полнотекстовый поиск, а не ILIKE

Часто разработчики в PostgreSQL начинают с простого:

SELECT * FROM articles WHERE title ILIKE '%postgres%';

Но уже при 10k+ строк и регулярных запросах начинаются тормоза. Значит, пора на следующий уровень — полнотекстовый поиск.

🔍 Когда ILIKE — плохо:
– Сложные запросы с несколькими ILIKE
– Не масштабируется: без индексов → full scan
– Нет нормализации слов: postgres, PostgreSQL, постгрес — всё разное

💡 Решение: to_tsvector + to_tsquery

SELECT * FROM articles
WHERE to_tsvector('russian', title) @@ to_tsquery('russian', 'postgres');

📈 Плюсы:
– Работают GIN-индексы
– Поддержка морфологии и синонимов
– Быстрее и точнее на больших объемах

⚠️ Подводные камни:
– Нужна настройка языкового словаря
– tsquery не такая гибкая, как regex
– Требуется обновление индекса при INSERT/UPDATE

🛠 Как включить GIN-индекс:

CREATE INDEX idx_articles_title_search
ON articles USING GIN (to_tsvector('russian', title));

👉 Если пользователи ищут по тексту — не тормозите ILIKE, внедряйте полнотекст!

Сохрани, чтобы потом не мучиться с explain-ами 😉


#db

👉 @database_info
🧱 Антипаттерн: использование UUID как Primary Key без оглядки На первый взгляд, UUID — классный способ генерировать уникальные идентификаторы: – не зависят от последовательности –…
Читать далее →
5 279
Хотите узнать секрет оптимизации SQL-запросов? Очень важно понимать порядок выполнения. В SQL-запросе операторы выполняются в следующем порядке: 1. FROM / JOIN 2. WHERE 3. GROUP…
Читать далее →
5 305
Другие главы канала «Базы Данных (Data Base) | SQL & NoSQL. PostgreSQL, MySQL и Big Data. Уроки для Backend и Data Engineer. Архитектура БД, Оптимизация и Design.»
Выберите главу, чтобы продолжить чтение
Все посты →
Глава от 18.06.2026
Мини-гайд: VACUUM в PostgreSQL — когда, зачем и как? PostgreSQL не удаляет стро…
👁 344 просмотров
Глава от 18.06.2026
Когда баз много, администрирование превращается в ручное управление хаосом: серв…
👁 325 просмотров
Глава от 18.06.2026
🎯 Типы баз данных - кратко и по делу Выбирая базу данных для проекта, важно пон…
👁 380 просмотров
Глава от 16.06.2026
Мини-гайд по трём ключевым сущностям PostgreSQL: соединения, буфер и WAL 1. Сое…
👁 512 просмотров
Глава от 16.06.2026
👩‍💻 Контейнеризация Java-приложений с Docker Приглашаем на открытый урок. 🗓 22…
👁 470 просмотров
Глава от 16.06.2026
Антипаттерн: N+1 запросов и как его избежать Что такое N+1? При выборке связанн…
👁 524 просмотров
Глава от 15.06.2026
Мини-гайд: Как не превратить индексы в PostgreSQL в ловушку для производительнос…
👁 627 просмотров
Глава от 14.06.2026
🔗 Сравнение: Типы JOIN в SQL и когда их применять Зачем понимать JOIN’ы? Правил…
👁 657 просмотров
Глава от 13.06.2026
Получи грант до 1,35 млн руб. на обучение в магистратуре Хочешь развиваться в с…
👁 495 просмотров

Популярные посты канала «Базы Данных (Data Base) | SQL & NoSQL. PostgreSQL, MySQL и Big Data. Уроки для Backend и Data Engineer. Архитектура БД, Оптимизация и Design.»

🚀 Подборка полезных IT каналов в Max Системное администрирование, DevOps 📌 https://max.ru/i_odmin Все для системного администратора https…
👁 6 003 просмотров
Типы JOIN в SQL и когда их применять - INNER JOIN - пересечение множеств (только совпавшие строки). - LEFT JOIN - все слева + совпавшие спр…
👁 5 924 просмотров
🔥 Неправильные типы данных в БД — тихий убийца производительности Одна из самых частых ошибок — выбирать тип “на всякий случай побольше”. …
👁 5 912 просмотров
Многопользовательская игра, похожая на DOOM, написанная на чистом SQL DOOMQL - это экспериментальный проект, который позволяет играть в DOO…
👁 5 901 просмотров
🚀 Подборка полезных IT каналов в Max Системное администрирование, DevOps 📌 https://max.ru/i_odmin Все для системного администратора https…
👁 5 889 просмотров
Антипаттерн: N+1 запросов — как заметить и починить Вы берёте список сущностей, а потом в цикле для каждой тянете связанные данные. В итоге…
👁 5 862 просмотров
🚨 Антипаттерн: Почему OFFSET убивает твою базу (и как делать пагинацию правильно) Привет! Если вы когда-нибудь реализовывали каталог товаро…
👁 5 828 просмотров
⚔️ SQL vs NoSQL: Что выбрать для вашего проекта? Выбор базы данных - одно из ключевых архитектурных решений. Нет универсальной "серебряной …
👁 5 777 просмотров
7 SQL-запросов, которые решают 90% всех задач на работе Каждый день одно и то же. Открываешь клиент базы данных, чтобы что-то проверить, по…
👁 5 724 просмотров
Продвинутый курс SQL за час - проще некуда Сегодня я продолжу рассказывать про SQL и мы погрузимся уже в чуть более интересные запросы, свя…
👁 5 694 просмотров
🔥 Индексы в PostgreSQL: когда они реально помогают, а когда мешают Многие ставят индексы “на всё подряд”, а потом удивляются, почему БД тор…
👁 5 684 просмотров
🖥 Основы SQL за час - бесплатно и проще некуда Содержание: 00:00 - подготавливаем базу 04:36 - выбираем данные SELECT 08:30 - указываем тек…
👁 5 646 просмотров
🚨 Антипаттерн: хранить пароли в базе "как есть" Да, звучит как очевидный совет, но на практике до сих пор встречаются проекты, где пароль с…
👁 5 637 просмотров
⚠️ Можно знать алгоритмы машинного обучения и всё равно получать плохие результаты. Большинство проблем моделей начинаются с некачественной …
👁 5 606 просмотров
Немного юмора) #db 👉 @database_info
👁 5 605 просмотров
Антипаттерны JOIN-ов в SQL и как их избежать JOIN - мощная штука, но может легко превратиться в генератор тормозов и дублей. Вот топ-4 лову…
👁 5 599 просмотров
Визуализация SQL-запроса #db 👉 @database_info
👁 5 581 просмотров
5 нормальных форм баз данных, которые должен знать каждый разработчик #db 👉 @database_info
👁 5 574 просмотров
💡 Универсальная шпаргалка по SQL #db 👉 @database_info
👁 5 559 просмотров
Базы данных классифицируются в первую очередь по методу организации данных, способу их поиска и хранения, производительности при доступе к д…
👁 5 527 просмотров

Связанные темы в других каналах

Каналы из той же тематики, где часто появляются близкие сюжеты
Вся тема →
@canalmaxone
AntiCloudMod
AntiCloudMod — сообщество для тех, кто ценит свободу общения без облачной цензуры. Здесь обсуждают альтернативные мессенджеры, инструменты для приватности и децентрализов…
👥 374 427 · +71 907/7д
@WylsacomRed
Wylsacom Red
Официальный канал Wylsacom в Max. Тут всё про технологии и жизнь в ногу со временем! Номер заявления для регистрации в РКН: № 6979154178 Розыгрыши: kichaev@wylsacom.med…
👥 154 615 · +9 691/7д
@BelgorodDRONE
Информация БПЛА Белгород, Белгородский район
Информация БПЛА Белгород, Белгородский район — специализированный канал в мессенджере Макс, посвященный новостям и информации о беспилотных летательных аппаратах в регион…
👥 139 292 · +8 854/7д
@TikTokModCloud
TikTokModCloud
Официальные обновления стабильного мода TikTok Чат: https://clck.ru/3S6mVh По рекламе: https://iimax.ru/dim4ugan
👥 83 578 · +19 478/7д
@hitech
Hi-Tech
Оперативные новости, обзоры гаджетов, собственное видео, трансляции мировых анонсов и мероприятий По вопросам сотрудничества и размещения рекламы i.ostapenko@corp.mail.r…
👥 53 184 · -199/7д
@na_kruchok
ГЛЕНТ | МЕМЫ
Глент мемы Это фан-сообщество, созданное преданными поклонниками для поддержки творчества Глента. Данный канал НЕ является официальным и ведется фанатом.
👥 48 675 · +37 656/7д
🏷 Темы и теги
#db #архитектура бд #data engineer #оптимизация запросов #sql #postgresql #nosql #Технологии
📋 О канале Базы Данных (Data Base) | SQL & NoSQL. PostgreSQL, MySQL и Big Data. Уроки для Backend и Data Engineer. Архитектура БД, Оптимизация и Design.
Всё о проектировании и работе с данными. Глубокий разбор SQL (Join, Index, Query Tuning). Реляционные СУБД: Postgres, Oracle, MS SQL. NoSQL технологии: MongoDB, Redis, Cassandra, ClickHouse. Архитектура высоконагруженных систем: репликация, шардинг, CAP-теорема, ACID транзакции. Оптимизация медленных запросов. Моделирование данных и нормализация. ETL процессы и миграция.
🔍 Архив всех постов Макс
Поиск по 8,756,475 постам из 201,186 каналов
Попробовать за 1 ₽ →
Удалить пост или канал с МАКСОТЕКИ
Заявка подтверждается через бота Макс: нужно быть администратором канала и добавить бота МАКСОТЕКИ в администраторы. После проверки канал или конкретный пост скрывается с сайта.
📊 Аналитика канала «Базы Данных (Data Base) | SQL & NoSQL. PostgreSQL, MySQL и Big Data. Уроки для Backend и Data Engineer. Архитектура БД, Оптимизация и Design.» ➡️ Перейти в канал Макс
Заявка в МАКСОТЕКА
Добавьте свой канал в каталог
Зарегистрируйтесь в личном кабинете и добавьте канал за пару кликов.
Перейти в личный кабинет →

Бесплатная регистрация, быстрая модерация.