Год назад здесь была реклама нового, но уже довольно любопытного курса по API. За год его автор, тимлид команды аналитиков Глеб Учитель, проделал огромную работу: на курс записалось более 1300 человек. И сейчас его знают многие.
Если вы тоже хотите расти по хардам в IT —
добро пожаловать!
🔹🔹 🔹🔹
Начните с бесплатных уроков по архитектуре и интеграциям в чат-боте курса. Переходите и знакомьтесь.
👇
@studyit_help_bot
Скидка на курс от канала —
1 000₽ по промокоду SQLHUB до 30 сентября.
Если вы тоже хотите расти по хардам в IT —
добро пожаловать!
🔹🔹 🔹🔹
Начните с бесплатных уроков по архитектуре и интеграциям в чат-боте курса. Переходите и знакомьтесь.
👇
@studyit_help_bot
Скидка на курс от канала —
1 000₽ по промокоду SQLHUB до 30 сентября.
❤1
Собеседования на позицию разработчика больших языковых моделей (LLM) в топовых AI-компаниях предъявляют высокие требования к знаниям.
Кандидату необходимо понимать устройство архитектуры трансформеров, владеть методами эффективного обучения и инференса, разбираться в оптимизациях памяти и скорости (таких как LoRA, FlashAttention, vLLM, ZeRO), знать тонкости распределённого тренинга, принципов LLMOps (MLOps для больших моделей) и нюансов продакшн-развертывания LLM.
Также часто проверяют умение решать реальные задачи: от проектирования пайплайна для Sparse MoE до анализа проблем с памятью на GPU, понимания различий между методами обучения с подкреплением (RLHF vs DPO) и способов масштабирования моделей.
Этот гайд структурирован по ключевым темам, соответствующим областям знаний, которые обычно проверяются на собеседованиях. Для каждой темы мы рассмотрим, что пытаются проверить интервьюеры, приведём пример формулировки вопроса и дадим подробный разбор ответа с обсуждением трэйд-оффов, примеров кода или схем, где это уместно. Вы можете изучать материал по разделам, чтобы сфокусироваться на интересующей области.
👉 Гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍1🔥1
Не пропустите! 24 сентября в 20:00 пройдет бесплатный урок “Маленькие хитрости GROUP BY” от онлайн-курса “PostgreSQL для администраторов баз данных и разработчиков”.
Группировка строк с использованием GROUP BY - один из самых мощных инструментов в арсенале аналитиков и разработчиков. Узнайте теоретические основы и практические возможности этого инструмента на открытом уроке.
Что вас ждет на вебинаре:
- Вспомним, как устроен GROUP BY, и рассмотрим его на наглядных примерах
- Оптимизируем работу группировки в связке с индексами
- Разберемся с особенностями группировки строк в PostgreSQL
- Изучим несколько полезных приемов для работы с GROUP BY
Что будет на уроке:
- Разберём логику работы GROUP BY и типичные ошибки, которые тормозят запросы
- Оптимизация группировки с помощью индексов — когда она действительно работает
- Специфика GROUP BY в PostgreSQL: что можно, а что лучше не делать
- Несколько приёмов, которые ускорят и упростят обработку больших наборов данных
Результат участия:
- Поймёте, как извлекать максимум из GROUP BY в PostgreSQL
- Сможете оптимизировать работу запросов с большими объёмами данных
- Получите набор трюков, которые можно применять прямо в продакшене
Успейте записаться на урок: https://otus.pw/uQQf/?erid=2W5zFK131ig
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
Группировка строк с использованием GROUP BY - один из самых мощных инструментов в арсенале аналитиков и разработчиков. Узнайте теоретические основы и практические возможности этого инструмента на открытом уроке.
Что вас ждет на вебинаре:
- Вспомним, как устроен GROUP BY, и рассмотрим его на наглядных примерах
- Оптимизируем работу группировки в связке с индексами
- Разберемся с особенностями группировки строк в PostgreSQL
- Изучим несколько полезных приемов для работы с GROUP BY
Что будет на уроке:
- Разберём логику работы GROUP BY и типичные ошибки, которые тормозят запросы
- Оптимизация группировки с помощью индексов — когда она действительно работает
- Специфика GROUP BY в PostgreSQL: что можно, а что лучше не делать
- Несколько приёмов, которые ускорят и упростят обработку больших наборов данных
Результат участия:
- Поймёте, как извлекать максимум из GROUP BY в PostgreSQL
- Сможете оптимизировать работу запросов с большими объёмами данных
- Получите набор трюков, которые можно применять прямо в продакшене
Успейте записаться на урок: https://otus.pw/uQQf/?erid=2W5zFK131ig
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
❤6😁1
💡 SQL: быстрое нахождение первых или последних записей с DISTINCT ON !!!
В PostgreSQL есть полезный приём —
🔎 Этот запрос вернёт последний заказ каждого клиента без лишних подзапросов или JOIN.
⚡ Работает очень быстро и удобно, если нужно найти «самый первый» или «самый последний» элемент в группе.
@sqlhub
В PostgreSQL есть полезный приём —
DISTINCT ON
, который позволяет взять первую строку в каждой группе по определённому полю.
SELECT DISTINCT ON (customer_id)
customer_id,
order_date,
amount
FROM orders
ORDER BY customer_id, order_date DESC;
🔎 Этот запрос вернёт последний заказ каждого клиента без лишних подзапросов или JOIN.
⚡ Работает очень быстро и удобно, если нужно найти «самый первый» или «самый последний» элемент в группе.
@sqlhub
🔥26❤8👍6🥰1
🗄️ Неочевидный SQL-совет
Иногда нужно выбрать строки с первыми или последними значениями внутри группы — например, последний заказ каждого клиента.
Вместо вложенных подзапросов используйте
👉 Результат: по каждому customer_id вернётся только одна строка — с самым свежим заказом.
Очень компактная и быстрая альтернатива оконным функциям или JOIN-ам.
Иногда нужно выбрать строки с первыми или последними значениями внутри группы — например, последний заказ каждого клиента.
Вместо вложенных подзапросов используйте
DISTINCT ON
(PostgreSQL):
SELECT DISTINCT ON (customer_id)
customer_id, order_id, created_at
FROM orders
ORDER BY customer_id, created_at DESC;
👉 Результат: по каждому customer_id вернётся только одна строка — с самым свежим заказом.
Очень компактная и быстрая альтернатива оконным функциям или JOIN-ам.
❤23👍4🔥2
🔥 Ваши данные стоят слишком дорого, чтобы ими рисковать
Positive Technologies 8 октября запустит новый продукт — PT Data Security. Он создан, чтобы вовремя выявлять угрозы и предотвращать утечки, пока они не привели к кризису.
На онлайн-трансляции вы первыми узнаете:
— Какие задачи и риски сегодня определяют настоящее и будущее рынка защиты данных.
— Какие вызовы стоят перед компаниями на рынке защиты данных.
— Почему Positive Technologies выходит на рынок защиты данных с новым подходом.
🕒 15:00 мск
📍 Онлайн
👉 Регистрация
Positive Technologies 8 октября запустит новый продукт — PT Data Security. Он создан, чтобы вовремя выявлять угрозы и предотвращать утечки, пока они не привели к кризису.
На онлайн-трансляции вы первыми узнаете:
— Какие задачи и риски сегодня определяют настоящее и будущее рынка защиты данных.
— Какие вызовы стоят перед компаниями на рынке защиты данных.
— Почему Positive Technologies выходит на рынок защиты данных с новым подходом.
🕒 15:00 мск
📍 Онлайн
👉 Регистрация
💡Неочевидный SQL-совет
Часто нужно выбрать топ-N строк внутри каждой группы — например, два самых дорогих товара в категории.
Вместо сложных оконных функций можно использовать
👉 Результат: по каждой категории вернутся только два товара с наибольшей ценой.
Этот приём делает запрос короче и понятнее, убирая необходимость во вложенных подзапросах. Если вы используете СУБД с поддержкой QUALIFY, берите на вооружение.
Часто нужно выбрать топ-N строк внутри каждой группы — например, два самых дорогих товара в категории.
Вместо сложных оконных функций можно использовать
QUALIFY
(в Snowflake, BigQuery, DuckDB, Trino):
SELECT category_id, product_id, price
FROM products
QUALIFY ROW_NUMBER() OVER (PARTITION BY category_id ORDER BY price DESC) <= 2;
👉 Результат: по каждой категории вернутся только два товара с наибольшей ценой.
Этот приём делает запрос короче и понятнее, убирая необходимость во вложенных подзапросах. Если вы используете СУБД с поддержкой QUALIFY, берите на вооружение.
👍13🤔2❤1
🚀 SQL Ultimate Course — бесплатный полный курс по SQL на GitHub
Если хочешь освоить SQL с нуля и дойти до продвинутого уровня — бери готовый репозиторий:
📂 Что внутри:
- datasets/ — реальные данные из ERP и CRM
- scripts/ — готовые SQL-скрипты для практики
- docs/ — документация и материалы курса
✅ MIT-лицензия — можно использовать и менять свободно
🌍 Подходит для всех СУБД (PostgreSQL, MySQL и др.)
🎥 К курсу прилагаются видео и гайды от автора
Автор: Data With Baraa — практик и ютубер, собравший в одном месте полный SQL-путь от простого
🔗 Репозиторий здесь: https://github.com/DataWithBaraa/sql-ultimate-course
Сохраняй, проходи и прокачивай SQL 💡
@sqlhub
Если хочешь освоить SQL с нуля и дойти до продвинутого уровня — бери готовый репозиторий:
📂 Что внутри:
- datasets/ — реальные данные из ERP и CRM
- scripts/ — готовые SQL-скрипты для практики
- docs/ — документация и материалы курса
✅ MIT-лицензия — можно использовать и менять свободно
🌍 Подходит для всех СУБД (PostgreSQL, MySQL и др.)
🎥 К курсу прилагаются видео и гайды от автора
Автор: Data With Baraa — практик и ютубер, собравший в одном месте полный SQL-путь от простого
SELECT
до оптимизации запросов и реальных кейсов. 🔗 Репозиторий здесь: https://github.com/DataWithBaraa/sql-ultimate-course
Сохраняй, проходи и прокачивай SQL 💡
@sqlhub
❤7👍4🔥3
⚡️ Предотвращаем потерю данных с ACID-транзакциями в DuckDB!
❌ Без транзакций:
- Списание у Alice прошло ✅
- Пополнение у Bob сломалось ❌
➡️ Итог: деньги «пропали».
✅ С транзакцией (ACID):
- Оба обновления либо проходят вместе, либо откатываются
- Баланс остаётся консистентным
- Никаких «висящих» операций
Пример:
🔹 Atomicity — либо всё, либо ничего
🔹 Consistency — база не ломается
🔹 Isolation — параллельные операции не мешают
🔹 Durability — данные не теряются
🛡 ACID гарантирует надёжность даже при сбоях.
❌ Без транзакций:
- Списание у Alice прошло ✅
- Пополнение у Bob сломалось ❌
➡️ Итог: деньги «пропали».
✅ С транзакцией (ACID):
- Оба обновления либо проходят вместе, либо откатываются
- Баланс остаётся консистентным
- Никаких «висящих» операций
Пример:
conn.execute("BEGIN TRANSACTION")
try:
conn.execute("UPDATE accounts SET balance = balance - 200 WHERE name = 'Alice'")
conn.execute("UPDATE accounts SET balance = balance + 200 WHERE name = 'Bob'")
conn.execute("COMMIT")
except:
conn.execute("ROLLBACK")
🔹 Atomicity — либо всё, либо ничего
🔹 Consistency — база не ломается
🔹 Isolation — параллельные операции не мешают
🔹 Durability — данные не теряются
🛡 ACID гарантирует надёжность даже при сбоях.
👍9❤5🥰2🤔1🤬1
🚀 Вышел Postgres 18 — с поддержкой Async I/O
Раньше все операции чтения были блокирующими, теперь - нет.
Результат: огромный прирост производительности для приложений с интенсивным чтением.
⚡️ Async I/O включён по умолчанию в Postgres 18!
Что интересного:
- Новый алгоритм skip scan для многостолбцовых индексов
- Параллельное построение GIN-индексов (JSON, полнотекст)
- Виртуальные генерируемые столбцы (значения считаются на лету)
- Функция
- Сохранение статистики планировщика при мажорных апгрейдах
- Поддержка OAuth 2.0, улучшения TLS и безопасности
- Новый протокол взаимодействия клиентов и утилит — v3.2
🟠 Релиз: https://www.postgresql.org/about/news/postgresql-18-released-3142/
@sqlhub
Раньше все операции чтения были блокирующими, теперь - нет.
Результат: огромный прирост производительности для приложений с интенсивным чтением.
⚡️ Async I/O включён по умолчанию в Postgres 18!
Что интересного:
- Новый алгоритм skip scan для многостолбцовых индексов
- Параллельное построение GIN-индексов (JSON, полнотекст)
- Виртуальные генерируемые столбцы (значения считаются на лету)
- Функция
uuidv7()
— UUID с временной сортировкой - Сохранение статистики планировщика при мажорных апгрейдах
- Поддержка OAuth 2.0, улучшения TLS и безопасности
- Новый протокол взаимодействия клиентов и утилит — v3.2
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
❤15👍10🔥8
🔥Не упустите шанс прокачать свой скилл и решать проблемы с производительностью на опережение!
Думаете, что знаете об оптимизации PostgreSQL всё? Проверим.
Приглашаем разработчиков и администраторов БД на интенсивный практикум, где мы не будем говорить об очевидных вещах.
1 октября в 20:00 технический директор 1С-Старт Дмитрий Кириллов разберет "по косточкам" оптимизацию PostgreSQL на открытом практическом уроке "Неочевидные оптимизации PostgreSQL на основе его исходного кода".
👨💻 Разработчики, научитесь писать запросы, учитывая скрытые механизмы планировщика, и использовать индексы максимально эффективно
👨💻Администраторы БД, поймете, какие параметры конфигурации реально влияют на производительность, а какие можно не трогать
👨💻Архитекторы систем, сможете лучше проектировать структуру БД и прогнозировать ее масштабирование на основе «внутренней логики» PostgreSQL
А в подарок - три мини-курса для практической работы с SQL от OTUS.
Бесплатно по предварительной записи - практикум для тех, кто хочет докопаться до сути: https://tglink.io/7f513343e3bc
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963. erid: 2W5zFFy6NPA
Думаете, что знаете об оптимизации PostgreSQL всё? Проверим.
Приглашаем разработчиков и администраторов БД на интенсивный практикум, где мы не будем говорить об очевидных вещах.
1 октября в 20:00 технический директор 1С-Старт Дмитрий Кириллов разберет "по косточкам" оптимизацию PostgreSQL на открытом практическом уроке "Неочевидные оптимизации PostgreSQL на основе его исходного кода".
👨💻 Разработчики, научитесь писать запросы, учитывая скрытые механизмы планировщика, и использовать индексы максимально эффективно
👨💻Администраторы БД, поймете, какие параметры конфигурации реально влияют на производительность, а какие можно не трогать
👨💻Архитекторы систем, сможете лучше проектировать структуру БД и прогнозировать ее масштабирование на основе «внутренней логики» PostgreSQL
А в подарок - три мини-курса для практической работы с SQL от OTUS.
Бесплатно по предварительной записи - практикум для тех, кто хочет докопаться до сути: https://tglink.io/7f513343e3bc
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963. erid: 2W5zFFy6NPA
👎1
Когда вы пишете юнит-тесты, подключение к реальной БД — лишнее:
- это медленно,
- тесты становятся нестабильными,
- нужен живой сервер.
Решение — замокать вызов
pandas.read_sql
и вернуть подставные данные.Пример функции:
def query_user_data(user_id):
query = f"SELECT id, name FROM users WHERE id = {user_id}"
return pd.read_sql(query, "postgresql://localhost/mydb")
Тест с моком:
from unittest.mock import patch
import pandas as pd
@patch("pandas.read_sql")
def test_database_query_mocked(mock_read_sql):
mock_read_sql.return_value = pd.DataFrame(
{"id": [123], "name": ["Alice"]}
)
result = query_user_data(user_id=123)
assert result["name"].iloc[0] == "Alice"
Теперь вместо запроса в реальную базу тест подставляет фейковые данные. Так можно проверить бизнес-логику функции быстро и надёжно.
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤4
Redis и Valkey – изучите секреты самых популярных open source key-value СУБД
В высоко-нагруженных сервисах Redis — не просто кэш, а важная подсистема, на которой строится значимая часть бизнес-логики. От его стабильности, масштабируемости и отказоустойчивости зависит производительность всего сервиса. Valkey - это современный производительный форк Redis с открытым исходным кодом, поддерживаемый сообществом и рядом крупных компаний. Valkey набирает популярность, поддержан крупными облачными провайдерами, и вполне возможно потеснит или вовсе заменит Redis со временем.
Наш курс — для тех, кто хочет держать свой стэк и знания актуальными и глубоко разбираться, как устроен Redis и Valkey.
🌐 В программе курса:
🤩 Как эффективно использовать базовые и продвинутые структуры данных: HyperLogLog, Bitmaps и Bisields, Streams, Geospatial-индексы, Bloom Filters
🤩 Как проектировать in-memory системы, которые не разваливаются под нагрузкой, что влияет на отказоустойчивость и как её добиться
🤩 Как работает репликация и кластеризация на практике (режимы Sentinel и Cluster)
🤩 Как встроить Redis/Valkey в реальный прод с учётом безопасности, интеграций и современных практик мониторинга.
Кто мы: R&D-центр Devhands, основатель школы Алексей Рыбак. Автор курса — Константин Ратвин, преподаватель МФТИ на кафедре БИТ (совместно со СберТех), эксперт по распределённым системам и банковским ИТ, автор курсов по СУБД и инфраструктуре, спикер HighLoad++ и PGConf.
🗓 Старт курса: 7 октября, 6 недель обучения.
Изучить программу и записаться можно здесь.
Ждем вас!
Реклама. ИП Рыбак А.А. ИНН 771407709607 Erid: 2VtzqxNnFKA
В высоко-нагруженных сервисах Redis — не просто кэш, а важная подсистема, на которой строится значимая часть бизнес-логики. От его стабильности, масштабируемости и отказоустойчивости зависит производительность всего сервиса. Valkey - это современный производительный форк Redis с открытым исходным кодом, поддерживаемый сообществом и рядом крупных компаний. Valkey набирает популярность, поддержан крупными облачными провайдерами, и вполне возможно потеснит или вовсе заменит Redis со временем.
Наш курс — для тех, кто хочет держать свой стэк и знания актуальными и глубоко разбираться, как устроен Redis и Valkey.
Кто мы: R&D-центр Devhands, основатель школы Алексей Рыбак. Автор курса — Константин Ратвин, преподаватель МФТИ на кафедре БИТ (совместно со СберТех), эксперт по распределённым системам и банковским ИТ, автор курсов по СУБД и инфраструктуре, спикер HighLoad++ и PGConf.
Изучить программу и записаться можно здесь.
Ждем вас!
Реклама. ИП Рыбак А.А. ИНН 771407709607 Erid: 2VtzqxNnFKA
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍2👎2❤1
Если строишь чат-бота или RAG-систему — Chroma даст твоему приложению память и быстрый поиск по векторным представлениям.
✨ Что умеет:
- Поддержка Python и JavaScript
- Быстрый поиск и фильтрация по embeddings
- Интеграция с LangChain и LlamaIndex
- Простое API для добавления документов и метаданных
🚀 Установка:
pip install chromadb
# или
npm install chromadb
chroma run --path ./chroma_db
🧩 Пример на Python:
import chromadb
client = chromadb.Client()
col = client.create_collection("docs")
col.add(documents=["Doc1","Doc2"], ids=["1","2"])
res = col.query(query_texts=["найди похожее"], n_results=1)
▪Github
▪Colab
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1