Базы Данных (Data Base) | SQL & NoSQL. PostgreSQL, MySQL и Big Data. Урок...
Обновлено: 10.06.2026
0 переходов
@database_info
0
0
Блог предлагает свежие идеи и практические советы по базам данных и IT-технологиям для бизнеса. Здесь обсуждаются актуальные тренды, решения и профессиональные рекомендации для специалистов в области технологий.
Подписчики
2.3Kчеловек
Просмотры
540на пост
Вовлеченность
23.6%ER
Примеры публикаций
Свайп 👉
Антипаттерн: SELECT * - удобно, но опасноИспользовать SELECT * - значит звать всех на вечеринку, даже если звал только двоих.
Почему это плохо:
🔹
Излишняя нагрузка на сеть и СУБД - выбираются все столбцы, включая ненужные.
🔹
Проблемы с индексами - СУБД может не использовать покрывающий индекс.
🔹
Ломается при изменении схемы - добавил столбец → внезапно изменилось поведение приложения.
🔹
Сложнее читать и поддерживать - особенно в JOIN’ах.
✅ Как правильно:
Запрашивай только нужные поля:
SELECT id, name, created_at FROM users;
📌
И даже в админках/аналитике лучше явно указывать поля - это дисциплинирует.
Хочешь писать код, который легко масштабировать и отлаживать - забудь про SELECT *.
Сохрани, чтобы не забыть
💾
Поделись с коллегами, которые всё ещё "звёздят" в SQL ✨
#db
👉
@database_info
🔧Mini-гайд: ускоряем JOIN-ы в больших таблицах
JOIN-ы - мощный инструмент SQL, но на больших объёмах данных могут стать узким горлышком. Вот 5 проверенных способов ускорить их:
1. Индексы по ключам соединения
Без индекса - каждый JOIN превращается в полный перебор.
➤ Пример:
CREATE INDEX idx_user_id ON orders(user_id);
2. Ограничь объём данных до JOIN-а
Фильтруй и агрегируй данные до объединения.
➤ Вместо:
SELECT * FROM orders o JOIN users u ON o.user_id =
u.id
WHERE
u.country
= 'DE';
➤ Лучше:
WITH german_users AS (
SELECT id FROM users WHERE country = 'DE'
)
SELECT * FROM orders o JOIN german_users g ON o.user_id =
g.id
;
3. Учитывай тип JOIN-а
INNER JOIN обычно быстрее OUTER JOIN, особенно при наличии NOT NULL. Иногда EXISTS работает быстрее, чем LEFT JOIN.
4. Следи за типами данных
JOIN по полям с разными типами (например, int и varchar) = неэффективный cast + тормоза.
5. Проверь планы выполнения (EXPLAIN)
Не гадай, а смотри, что реально происходит. EXPLAIN ANALYZE - твой друг.
📌
Даже один лишний JOIN может уронить производительность. Внимательность + EXPLAIN = уверенность.
#db
👉
@database_info
❌ Антипаттерн: булевы значения как строкиВ таблице users встречал такое:
is_active VARCHAR(5) -- значения 'true' или 'false'
На первый взгляд — ерунда. На практике:
– нет валидации: можно вставить 'tru', 'yes', '0',
– медленнее сравнение, чем у BOOLEAN,
– больше места в хранилище,
– сложно агрегировать и строить аналитику.
🔧
Как надо:
is_active BOOLEAN DEFAULT true
– Экономия места (1 байт против 5 и больше)
– Проверка через WHERE is_active
– Простой COUNT(*) FILTER (WHERE is_active) для отчётов
– Автоматическая поддержка в ORM и UI-форматах
📌
Даже если тебе нужно больше состояний - используй ENUM, а не строку.
💡
Чем проще тип, тем меньше шансов на баг.
Сохрани, если в коде встречал такое - и переделай с чистой совестью.
#db
👉
@database_info
Хотите перейти в Компьютерное зрение (CV) или прокачаться до экспертного уровня?Проверьте свои силы, пройдя вступительное тестирование по CV
, сравните уровень с рынком и получите скидку 15% на обучение:
https://vk.cc/cYASQP
Вы сможете оценить свои знания в глубоком обучении, нейросетях для изображений и современных архитектурах компьютерного зрения.
Преимущества программы курса:
🚀
110 часов практики на реальных задачах
🚀
Современный стек: PyTorch, YOLO, CLIP, SAM, Stable Diffusion
🚀
Рабта с видео, 3D-сценами и мультимодальными моделями
🚀
Подготовка моделей к production через ONNX, TensorRT и Triton
🚀
Проект под руководством эксперта для портфолио
Плавный старт курса продлится до 10.06.26. Вы еще успеваете на курс.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
🚀
Подборка полезных IT каналов в Max
Системное администрирование, DevOps
📌
https://max.ru/i_odmin
Все для системного администратора
https://max.ru/bash_srv
Bash Советы
https://max.ru/sysadminof
Книги для админов, полезные материалы
https://max.ru/i_odmin_book
Библиотека Системного Администратора
https://max.ru/i_devops
DevOps: Пишем о Docker, Kubernetes и др.
https://max.ru/tipsysdmin
Типичный Сисадмин
Excel лайфхак
📌
https://t.me/Excel_lifehack
Excel лайфхак
1C разработка
📌
https://max.ru/odin1c_rus
Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++
📌
https://max.ru/cpp_lib
Библиотека C/C++ разработчика
Программирование Go
📌
https://max.ru/golang_lib
Библиотека Go (Golang) разработчика
Программирование React
📌
https://max.ru/react_lib
React
Программирование Python
📌
https://max.ru/python_of
Python академия.
https://max.ru/BookPython
Библиотека Python разработчика
Java разработка
📌
https://max.ru/bookjava
Библиотека Java разработчика
GitHub Сообщество
📌
https://max.ru/githublib
Интересное из GitHub
Базы данных (Data Base)
📌
https://max.ru/database_info
Все про базы данных
Фронтенд разработка
📌
https://max.ru/frontend_1
Подборки для frontend разработчиков
Библиотеки
📌
https...
Подборка полезных IT каналов в Max
Системное администрирование, DevOps
📌
https://max.ru/i_odmin
Все для системного администратора
https://max.ru/bash_srv
Bash Советы
https://max.ru/sysadminof
Книги для админов, полезные материалы
https://max.ru/i_odmin_book
Библиотека Системного Администратора
https://max.ru/i_devops
DevOps: Пишем о Docker, Kubernetes и др.
https://max.ru/tipsysdmin
Типичный Сисадмин
Excel лайфхак
📌
https://t.me/Excel_lifehack
Excel лайфхак
1C разработка
📌
https://max.ru/odin1c_rus
Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++
📌
https://max.ru/cpp_lib
Библиотека C/C++ разработчика
Программирование Go
📌
https://max.ru/golang_lib
Библиотека Go (Golang) разработчика
Программирование React
📌
https://max.ru/react_lib
React
Программирование Python
📌
https://max.ru/python_of
Python академия.
https://max.ru/BookPython
Библиотека Python разработчика
Java разработка
📌
https://max.ru/bookjava
Библиотека Java разработчика
GitHub Сообщество
📌
https://max.ru/githublib
Интересное из GitHub
Базы данных (Data Base)
📌
https://max.ru/database_info
Все про базы данных
Фронтенд разработка
📌
https://max.ru/frontend_1
Подборки для frontend разработчиков
Библиотеки
📌
https...
Наше мнение
🎯 Для кого канал: Этот блог идеально подходит для разработчиков, стремящихся углубить свои знания в области баз данных и оптимизации запросов.
➕ Главные плюсы:
- Подробные уроки по SQL и NoSQL, которые охватывают как теорию, так и практику.
- Актуальные советы по оптимизации производительности, что особенно важно для больших данных.
🔥 Фишка автора: Автор блога делится уникальными инсайтами и практическими примерами, что делает материал доступным и понятным для широкой аудитории.
Похожие каналы
Частые вопросы
Почему использование SELECT * является антипаттерном?
Как можно оптимизировать JOIN-ы в больших таблицах?
Почему булевы значения не следует хранить как строки?