📝 Курс от OTUS: «Администрирование PostgreSQL. Экспертный уровень» — продвинутое погружение в работу с базой данных PostgreSQL в любых средах.
Освойте управление PostgreSQL на экспертном уровне: от настройки локальной инфраструктуры до развёртывания высокодоступных кластеров в облаках и Kubernetes. Научитесь автоматизировать процессы, оптимизировать производительность и экономить ресурсы — без лишних сервисов и избыточных затрат.
🔥 Приглашаем на серию из 2 бесплатных вебинаров курса — для DevOps‑инженеров, SRE, архитекторов данных, администраторов БД и разработчиков, которые хотят выйти на новый уровень владения PostgreSQL. 🔧💾
📅 26 марта в 20:00 МСК: «Путешествие запроса в PostgreSQL: от разбора до исполнения (от parser до executor)»
На вебинаре разберём, как PostgreSQL превращает текст запроса в результат — вскроем «чёрный ящик» и изучим каждый этап:
• От текста к дереву: как работают лексер и парсер, что такое parse tree и query tree, и зачем нужен rule rewriter (на примере того, как VIEW превращается в подзапрос).
• Планировщик изнутри: как оптимизатор строит plan nodes, оценивает стоимость через статистику (pg_statistic, correlation, MCV) и почему иногда ошибается.
• Executor и runtime: как plan tree исполняется итераторной моделью (Volcano model), где живут данные в памяти.
• Как читать EXPLAIN ANALYZE, чтобы видеть реальные узкие места.
Результат: вы поймёте, как именно PostgreSQL обрабатывает запросы, научитесь осознанно оптимизировать производительность — без метода подбора индексов. Уйдёте с чётким алгоритмом анализа и устранения «узких мест».
📅 9 апреля в 20:00 МСК: «PostgreSQL как векторная база данных: ИИ‑поиск без лишних сервисов»
На вебинаре разберём, как использовать PostgreSQL с расширением pgvector для семантического поиска и RAG‑систем — без внедрения отдельной векторной БД.
Программа:
• Работа с pgvector: установка, типы данных, индексы.
• Сравнение PostgreSQL и специализированных векторных БД по скорости и точности.
• Проектирование гибридного поиска (точный + семантический) в рамках одной базы.
• Выбор между индексами IVFFlat и HNSW для своей задачи.
• Примеры RAG‑запросов с комбинацией tsvector и векторного поиска.
• Успешные кейсы использования PostgreSQL для ИИ.
Результат: вы сможете добавить ИИ‑функции в продукт без усложнения инфраструктуры. Уйдёте с готовым планом внедрения векторного поиска на базе PostgreSQL.
🎯 Почему стоит участвовать:
- Получите практические инструменты: разбор реальных кейсов, шаблоны конфигураций, чек‑листы для аудита производительности.
- Изучите современные решения: pg_probackup, Wal‑G, pg_rewind, pgvector.
- Научитесь автоматизировать: используйте Terraform для установки ВМ и Ansible для развёртывания ПО.
- Разберётесь в облаках: отличия GCP, Yandex Cloud, SberCloud, VKCloud и как эффективно работать в каждом.
- Сможете задать вопросы практикующим инженерам и архитекторам PostgreSQL в прямом эфире.
- Примените знания сразу после вебинаров: с готовыми скриптами и инструкциями.
👉 Регистрируйтесь сейчас, а мы напомним о вебинаре накануне. OTUS.RU
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Освойте управление PostgreSQL на экспертном уровне: от настройки локальной инфраструктуры до развёртывания высокодоступных кластеров в облаках и Kubernetes. Научитесь автоматизировать процессы, оптимизировать производительность и экономить ресурсы — без лишних сервисов и избыточных затрат.
🔥 Приглашаем на серию из 2 бесплатных вебинаров курса — для DevOps‑инженеров, SRE, архитекторов данных, администраторов БД и разработчиков, которые хотят выйти на новый уровень владения PostgreSQL. 🔧💾
📅 26 марта в 20:00 МСК: «Путешествие запроса в PostgreSQL: от разбора до исполнения (от parser до executor)»
На вебинаре разберём, как PostgreSQL превращает текст запроса в результат — вскроем «чёрный ящик» и изучим каждый этап:
• От текста к дереву: как работают лексер и парсер, что такое parse tree и query tree, и зачем нужен rule rewriter (на примере того, как VIEW превращается в подзапрос).
• Планировщик изнутри: как оптимизатор строит plan nodes, оценивает стоимость через статистику (pg_statistic, correlation, MCV) и почему иногда ошибается.
• Executor и runtime: как plan tree исполняется итераторной моделью (Volcano model), где живут данные в памяти.
• Как читать EXPLAIN ANALYZE, чтобы видеть реальные узкие места.
Результат: вы поймёте, как именно PostgreSQL обрабатывает запросы, научитесь осознанно оптимизировать производительность — без метода подбора индексов. Уйдёте с чётким алгоритмом анализа и устранения «узких мест».
📅 9 апреля в 20:00 МСК: «PostgreSQL как векторная база данных: ИИ‑поиск без лишних сервисов»
На вебинаре разберём, как использовать PostgreSQL с расширением pgvector для семантического поиска и RAG‑систем — без внедрения отдельной векторной БД.
Программа:
• Работа с pgvector: установка, типы данных, индексы.
• Сравнение PostgreSQL и специализированных векторных БД по скорости и точности.
• Проектирование гибридного поиска (точный + семантический) в рамках одной базы.
• Выбор между индексами IVFFlat и HNSW для своей задачи.
• Примеры RAG‑запросов с комбинацией tsvector и векторного поиска.
• Успешные кейсы использования PostgreSQL для ИИ.
Результат: вы сможете добавить ИИ‑функции в продукт без усложнения инфраструктуры. Уйдёте с готовым планом внедрения векторного поиска на базе PostgreSQL.
🎯 Почему стоит участвовать:
- Получите практические инструменты: разбор реальных кейсов, шаблоны конфигураций, чек‑листы для аудита производительности.
- Изучите современные решения: pg_probackup, Wal‑G, pg_rewind, pgvector.
- Научитесь автоматизировать: используйте Terraform для установки ВМ и Ansible для развёртывания ПО.
- Разберётесь в облаках: отличия GCP, Yandex Cloud, SberCloud, VKCloud и как эффективно работать в каждом.
- Сможете задать вопросы практикующим инженерам и архитекторам PostgreSQL в прямом эфире.
- Примените знания сразу после вебинаров: с готовыми скриптами и инструкциями.
👉 Регистрируйтесь сейчас, а мы напомним о вебинаре накануне. OTUS.RU
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Каков будет результат выполнения следующего запроса:
SELECT AVG(Age) FROM Persons
SELECT AVG(Age) FROM Persons
Anonymous Quiz
16%
150
40%
100
20%
75
9%
UNKNOWN, поскольку присутствует NULL
15%
Запрос не выполнится (завершится ошибкой), поскольку присутствует NULL
Альтернатива вашим планам на пятничный вечер — 27 марта, при условии, что вы любите базы данных:
✔️ Как не угробить чувствительные данные на DBaaS
✔️ FoundationDB vs Cassandra 5 — битва титанов в Авито
✔️ S3 в Авито: как 100 000+ бакетов не превращаются в хаос
Все это и многое другое — на Avito Database Meetup в московском офисе Avito (или на онлайн-трансляции).
Нашли ссылку
✔️ Как не угробить чувствительные данные на DBaaS
✔️ FoundationDB vs Cassandra 5 — битва титанов в Авито
✔️ S3 в Авито: как 100 000+ бакетов не превращаются в хаос
Все это и многое другое — на Avito Database Meetup в московском офисе Avito (или на онлайн-трансляции).
Нашли ссылку
❤1
Вопрос на SQL собеседовании.
Что не так с этим запросом? Исправьте его, если нужно.
Ответ будет вечером.
#sql #собеседование
Что не так с этим запросом? Исправьте его, если нужно.
SELECT Id, YEAR(BillingDate) AS BillingYear
FROM Invoices
WHERE BillingYear >= 2010;
Ответ будет вечером.
#sql #собеседование
Ответ на предыдущий вопрос:
Неверное выражение BillingYear в условии WHERE. Несмотря на то, что он определен как алиас в выборке SELECT перед WHERE, логический порядок обработки условий отличается.
Правильный запрос будет выглядеть так:
#sql #собеседование
Неверное выражение BillingYear в условии WHERE. Несмотря на то, что он определен как алиас в выборке SELECT перед WHERE, логический порядок обработки условий отличается.
Правильный запрос будет выглядеть так:
SELECT Id, YEAR(BillingDate) AS BillingYear
FROM Invoices
WHERE YEAR(BillingDate) >= 2010;
#sql #собеседование
Выберите корректный пример использования функции CONCAT:
Anonymous Quiz
2%
SELECT CONCAT = index AND city FROM Orders;
8%
SELECT CONCAT IN (`index`, `city`) FROM Orders;
73%
SELECT CONCAT(`index`, " ", `city`) FROM Orders;
11%
Нет правильного примера
7%
Узнать ответ
Вопрос на SQL собеседовании.
Как вы понимаете SELF JOIN?
Ответ:
SELF JOIN используется для соединения таблицы с ней самой.
При этом каждая строка таблицы соединяется с самой собой и с другими строками — в зависимости от заданных условий.
Синтаксис:
SELECT a.column_name, b.column_name
FROM table a, table b
WHERE condition;
SELF JOIN часто используется тогда, когда у разных полей одной таблицы могут быть одинаковые значения.
Например, один и тот же участник музыкальной группы может быть и вокалистом, и, например, клавишником. Если из базы музыкальных групп понадобится извлечь те, где вокалист и клавишник — одно лицо, потребуется SELF JOIN.
#sql #собеседование
Как вы понимаете SELF JOIN?
Ответ:
При этом каждая строка таблицы соединяется с самой собой и с другими строками — в зависимости от заданных условий.
Синтаксис:
SELECT a.column_name, b.column_name
FROM table a, table b
WHERE condition;
SELF JOIN часто используется тогда, когда у разных полей одной таблицы могут быть одинаковые значения.
Например, один и тот же участник музыкальной группы может быть и вокалистом, и, например, клавишником. Если из базы музыкальных групп понадобится извлечь те, где вокалист и клавишник — одно лицо, потребуется SELF JOIN.
#sql #собеседование
🙏3😁1
Готов к космическому разгону AI‑продукта?
Приходи на One Day Offer для Product Analysts! 🚀
20 июня команда GigaChat планирует найти будущего коллегу — продуктового аналитика, который поможет вывести LLM‑платформу на новую орбиту.
Ты будешь:
✔️ анализировать поведение пользователей;
✔️ проводить A/B‑тесты;
✔️ создавать дашборды;
✔️ работать с метриками.
А ещё ты станешь частью крупнейшего IT‑комьюнити.
Хочешь влиять на продукт для миллионов? Регистрируйся на One Day Offer прямо сейчас!
Приходи на One Day Offer для Product Analysts! 🚀
20 июня команда GigaChat планирует найти будущего коллегу — продуктового аналитика, который поможет вывести LLM‑платформу на новую орбиту.
Ты будешь:
✔️ анализировать поведение пользователей;
✔️ проводить A/B‑тесты;
✔️ создавать дашборды;
✔️ работать с метриками.
А ещё ты станешь частью крупнейшего IT‑комьюнити.
Хочешь влиять на продукт для миллионов? Регистрируйся на One Day Offer прямо сейчас!
👍1🙏1
Отличаются ли в SQL операторы AND и & (амперсанд)?
Anonymous Quiz
16%
Между ними нет различий
56%
Оператор & не поддерживается стандартом SQL
10%
Приоритет AND ниже, чем приоритет &
6%
Приоритет AND выше, чем приоритет &
12%
Узнать ответ
Задача. Напишите SQL запрос.
Есть таблица transactions - картинка номер 1 (верхняя)
Где cash_flow — это выручка минус затраты за каждый день.
Нужно написать запрос, чтобы получить нарастающий итог для денежного потока каждый день таким образом, чтобы в конечном итоге получилась таблица в такой форме - картинка номер 2 (нижняя)
Ответ:
SELECT date, cash_flow,
SUM(cash_flow) OVER (ORDER BY date ASC) AS cumulative_cf
FROM transactions;
Есть таблица transactions - картинка номер 1 (верхняя)
Где cash_flow — это выручка минус затраты за каждый день.
Нужно написать запрос, чтобы получить нарастающий итог для денежного потока каждый день таким образом, чтобы в конечном итоге получилась таблица в такой форме - картинка номер 2 (нижняя)
Ответ:
SUM(cash_flow) OVER (ORDER BY date ASC) AS cumulative_cf
FROM transactions;
🔥24 июня в 20.00 мск. приглашаем на открытый урок: "Отказоустойчивый и высоко-доступный кластер RabbitMQ"
На вебинаре разберём практические подходы к созданию отказоустойчивой и высоко-доступной очереди сообщений для высоконагруженных систем.
📌 Что будет:
— Запуск и настройка кластера: Quorum Queues и Mirrored Queues (синхронная репликация)
— Синхронизация очередей и обеспечение согласованности
— Dead Letter Queue + правильные настройки durability
— Гарантии доставки для Producer: баланс между надёжностью и производительностью
— Asynchronous cluster-to-cluster message routing: Exchange Federation и Shovels
🎯 После вебинара вы сможете:
— Самостоятельно развернуть отказоустойчивый кластер RabbitMQ
— Настраивать Quorum Queues и Mirrored Queues под разные сценарии
— Правильно работать с Dead Letter Queues и гарантиями доставки
— Организовывать межкластерное взаимодействие сообщений
— Проектировать надёжные асинхронные коммуникации в микросервисной архитектуре
👉 Регистрация открыта: https://vk.cc/cYRCK4
Вебинар приурочен к старту курса «Высоконагруженные системы: архитектура и масштабирование».
🎁При покупке курса вы получите в подарок мини-курс по Kafka, который поможет подготовиться к собеседованию в бигтех
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
На вебинаре разберём практические подходы к созданию отказоустойчивой и высоко-доступной очереди сообщений для высоконагруженных систем.
📌 Что будет:
— Запуск и настройка кластера: Quorum Queues и Mirrored Queues (синхронная репликация)
— Синхронизация очередей и обеспечение согласованности
— Dead Letter Queue + правильные настройки durability
— Гарантии доставки для Producer: баланс между надёжностью и производительностью
— Asynchronous cluster-to-cluster message routing: Exchange Federation и Shovels
🎯 После вебинара вы сможете:
— Самостоятельно развернуть отказоустойчивый кластер RabbitMQ
— Настраивать Quorum Queues и Mirrored Queues под разные сценарии
— Правильно работать с Dead Letter Queues и гарантиями доставки
— Организовывать межкластерное взаимодействие сообщений
— Проектировать надёжные асинхронные коммуникации в микросервисной архитектуре
👉 Регистрация открыта: https://vk.cc/cYRCK4
Вебинар приурочен к старту курса «Высоконагруженные системы: архитектура и масштабирование».
🎁При покупке курса вы получите в подарок мини-курс по Kafka, который поможет подготовиться к собеседованию в бигтех
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
❤1👍1