sqlhub | Unsorted

Telegram-канал sqlhub - Data Science. SQL hub

36043

По всем вопросам- @workakkk @itchannels_telegram - 🔥лучшие ит-каналы @ai_machinelearning_big_data - Machine learning @pythonl - Python @pythonlbooks- python книги📚 @datascienceiot - ml книги📚 РКН: https://vk.cc/cIi9vo

Subscribe to a channel

Data Science. SQL hub

🧩 SQL полезный приём

Нужно выбрать из таблицы записи с максимальным или минимальным значением по группе?
Вместо вложенных подзапросов удобно использовать оконные функции.

Пример: найти для каждого пользователя его последний заказ.


WITH ranked AS (
SELECT
user_id,
order_id,
order_date,
ROW_NUMBER() OVER (PARTITION BY user_id ORDER BY order_date DESC) AS rn
FROM orders
)
SELECT user_id, order_id, order_date
FROM ranked
WHERE rn = 1;


📌 Как это работает:

PARTITION BY user_id делит данные по пользователям

ORDER BY order_date DESC сортирует заказы от нового к старому

ROW_NUMBER() присваивает каждой записи номер в рамках группы

WHERE rn = 1 берёт только последний заказ для каждого пользователя

💡 Такой подход легко адаптируется: можно выбирать первый/последний элемент в группе, топ-N значений или фильтровать дубликаты.

@sqlhub

Читать полностью…

Data Science. SQL hub

🖥 Гайд по PostgreSQL для продвинутых разработчиков

PostgreSQL – одна из самых мощных СУБД с открытым исходным кодом. Этот гайд подробно охватывает ключевые аспекты PostgreSQL: от внутренней архитектуры до приёмов оптимизации. Мы рассмотрим администрирование, производительность, расширения, инструменты, а также сравним популярные ORM для Python и Go. В конце приведён список продвинутых вопросов, часто встречающихся на собеседованиях.

🟠Гайд

@sqlhub

Читать полностью…

Data Science. SQL hub

Нужен один «топ-элемент» на группу без оконных функций и лишних джойнов?

В PostgreSQL есть недооценённый приём: DISTINCT ON. Он берёт первую строку в каждой группе по указанным полям, какую именно, ты задаёшь через ORDER BY.

Так за один проход можно выбрать, например, последний заказ клиента, самую дорогую позицию в категории или актуальную запись по состоянию. Важно: в ORDER BY сначала идут поля из DISTINCT ON, а следом — критерий «топа» (например, created_at DESC).

Для скорости добавь составной индекс в том же порядке (ключи группировки → поле сортировки).


-- Возьмём по 1 строке на группу (g1, g2), выбирая «лучшую» по metric DESC
SELECT DISTINCT ON (g1, g2) *
FROM some_table
ORDER BY g1, g2, metric DESC;

-- Пример: последний заказ каждого пользователя
SELECT DISTINCT ON (o.user_id)
o.user_id, o.id AS order_id, o.created_at, o.total
FROM orders o
ORDER BY o.user_id, o.created_at DESC;

-- Рекомендуемый индекс для скорости (соответствует ORDER BY)
CREATE INDEX ON orders (user_id, created_at DESC);

-- Ещё пример: самая дорогая товарная позиция в категории
SELECT DISTINCT ON (p.category_id)
p.category_id, p.id, p.price
FROM products p
ORDER BY p.category_id, p.price DESC;

-- Индекс под этот запрос
CREATE INDEX ON products (category_id, price DESC);


@sqlhub

Читать полностью…

Data Science. SQL hub

💾 Зачем нужен Delta Lake, если есть Parquet

Обычный Parquet хранит только одно состояние таблицы.
Если вы сохранили отфильтрованный DataFrame, то старые данные исчезли навсегда.
❌ Отката (rollback) нет → потеряли 10 000 строк, осталось только 3 500.

Delta Lake работает иначе:
- каждый раз создаётся новая версия данных
- можно вернуться к любой версии в прошлом
- данные всегда под контролем и без потерь

📌 Пример:
- Parquet → фильтр → оригинал стёрт
- Delta Lake → версия 0 (10 000 строк) + версия 1 (3 500 строк) → всегда можно вернуться к версии 0

✅ Итог: с Delta Lake данные становятся версионируемыми и надёжными.



#datalake #parquet #bigdata #delta

Читать полностью…

Data Science. SQL hub

🌐 OrbitDB — распределённая serverless P2P-база данных для децентрализованных приложений

OrbitDB создана для веба без централизованных серверов: блокчейн-систем, локальных оффлайн-сценариев и P2P-приложений.

⚙️ Основные принципы:
- IPFS — хранение данных.
- Libp2p Pubsub — репликация и синхронизация между узлами.
- Merkle-CRDT — гарантирует бесконфликтные записи и объединение данных в условиях многоверсионности.

📊 Типы БД:
- Журнал событий (append-only log)
- Key-Value store
- Документная база
- Индексируемые коллекции

Все они построены на иммутабельном OpLog, который обеспечивает eventual consistency без выделенного сервера.

📌 Github

Читать полностью…

Data Science. SQL hub

PostgreSQL 17: архитектура и тюнинг SQL-запросов

Погрузись в архитектуру и прокачай оптимизацию запросов одной из самых популярных open source СУБД – PostgreSQL.

🌐 В программе курса:

🤩 Разберем, как работают СУБД вообще и PostgreSQL в частности: что такое MVCC, ACID, WAL, LRU, PPC/TPC и другие фундаментальные понятия архитектуры баз данных
🤩 Получите свой собственный выделенный облачный PostgreSQL-сервер (8 vCPU, 12G RAM, 100G NVMe) – БЕСПЛАТНО на время обучения предоставляется
🤩 Получите теорию и практику EXPLAIN и EXPLAIN ANALYZE на разных типа запросов
🤩 Изучите архитектуру хранения данных в PostgreSQL, типы и особенности индексов, а также получите полезные советы и трюки оптимизации БД

Кто мы: R&D-центр Devhands, основатель школы Алексей Рыбак. Автор курса — Николай Ихалайнен, эксперт по СУБД (ex-Percona), со-основатель MyDB, энтузиаст открытого ПО.

🗓 Старт курса: 16 октября, 5 недель обучения.

Изучить программу и записаться можно здесь.

Реклама. ИП Рыбак А.А. ИНН 771407709607 Erid: 2VtzquiQ76e

Читать полностью…

Data Science. SQL hub

Знали ли вы, что у SQLite есть векторное расширение? 🧮

SQLite - самая используемая база данных в мире, работает практически на любом устройстве.
Теперь можно легко строить AI-приложения с помощью SQLite-vec и новой Embedding Gemma прямо на устройстве, без интернета.

На скрине - простой пример с Python + SQLite и Ollama. SQLite-vec совместим с WASM и запускается где угодно. Пример можно адаптировать почти под любой язык: Swift, Kotlin, Java, JavaScript…

🟢Script: https://github.com/philschmid/gemini-samples/blob/main/scripts/embeddinggemma-sqlite-ollama.py
🟢Sqlite-vec: https://alexgarcia.xyz/sqlite-vec/
🟢EmbeddingGemma: https://developers.googleblog.com/en/introducing-embeddinggemma/

@sqlhub

Читать полностью…

Data Science. SQL hub

⁉️ Как понять и улучшить архитектуру IT-системы? Archimate помогает увидеть полную картину, связывая бизнес-цели и технические решения в одну целостную модель.

На курсе «Archimate» мы научим вас моделировать архитектуру на 3 уровнях: бизнес-уровне, программном и технологическом. Вы освоите стратегическое планирование, сможете выявлять «узкие места» и эффективно проектировать IT-решения. Мы научим вас анализировать требования бизнеса и моделировать архитектуру, которая соответствует этим требованиям.

Этот курс поможет архитекторам, аналитикам и тимлидам углубить знания и научиться стратегически мыслить, создавая решения, которые действительно работают. Реальные кейсы, подробные примеры и практика моделирования на Archimate — всё это ждёт вас.

➡️ Старт уже 30 сентября! Оставьте заявку, чтобы получить скидку по промокоду ArchiSept: https://tglink.io/5086a78f95a5?erid=2W5zFHYd6fa

#реклама
О рекламодателе

Читать полностью…

Data Science. SQL hub

⚡️ Chroma — база данных для эмбеддингов с открытым исходным кодом

Если строишь чат-бота или 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

Читать полностью…

Data Science. SQL hub

⚡️ Как тестировать код без настоящей базы данных

Когда вы пишете юнит-тесты, подключение к реальной БД — лишнее:

- это медленно,

- тесты становятся нестабильными,

- нужен живой сервер.

Решение — замокать вызов 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

Читать полностью…

Data Science. SQL hub

⚡️ Предотвращаем потерю данных с ACID-транзакциями в DuckDB!

❌ Без транзакций:
- Списание у 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 гарантирует надёжность даже при сбоях.

Читать полностью…

Data Science. SQL hub

💡Неочевидный SQL-совет

Часто нужно выбрать топ-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, берите на вооружение.

Читать полностью…

Data Science. SQL hub

🗄️ Неочевидный SQL-совет

Иногда нужно выбрать строки с первыми или последними значениями внутри группы — например, последний заказ каждого клиента.
Вместо вложенных подзапросов используйте 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-ам.

Читать полностью…

Data Science. SQL hub

Не пропустите! 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.

Читать полностью…

Data Science. SQL hub

Год назад здесь была реклама нового, но уже довольно любопытного курса по API. За год его автор, тимлид команды аналитиков Глеб Учитель, проделал огромную работу: на курс записалось более 1300 человек. И сейчас его знают многие.

Если вы тоже хотите расти по хардам в IT —
добро пожаловать!

🔹🔹 🔹🔹
Начните с бесплатных уроков по архитектуре и интеграциям в чат-боте курса. Переходите и знакомьтесь.
👇
@studyit_help_bot

Скидка на курс от канала —
1 000₽ по промокоду SQLHUB до 30 сентября.

Читать полностью…

Data Science. SQL hub

Твой шанс прокачаться в ИТ, получить карьерный буст и побороться за призовой фонд 10 250 000 рублей 💰 Успей зарегистрироваться до 20 октября.


МТС приглашает на True Tech Champ — всероссийский чемпионат по программированию. Соревнование будет проходить в двух треках.

Трек 1. Алгоритмический. Индивидуальный зачет [призовой фонд 2 750 000 рублей]

Реши задачи, которые помогут прокачаться в работе с алгоритмами и структурами данных. Похожие задания встречаются на собеседованиях в МТС и других крупных компаниях. До 240 лучших участников попадут в финал и сразятся в лайв-кодинге.

Трек 2. Программирование роботов. Командный формат [призовой фонд 7 500 000 рублей]

Проведи робота по виртуальному лабиринту, затем управляй им дистанционно на офлайн-полигоне, а в финале — пройди испытания на реальной площадке и выбей соперников с платформы. Организаторы отправят командам финалистов по одному роботу Waveshare Cobra Flex для кастомизации. После соревнований они останутся у участников в качестве подарка.

📍 Зрелищный шоу-финал с ИИ-технологиями, кодерскими челленджами и выступлениями международных и российских спикеров пройдет 21 ноября в МТС Live Холл.

🎁 Регистрация участников до 20 октября на сайте.

Читать полностью…

Data Science. SQL hub

💡 SQL trick: уникальные значения прямо в агрегатах

Иногда нужно посчитать уникальные значения по каждому пользователю.
Мало кто знает, что для этого есть COUNT(DISTINCT ...).


SELECT
customer_id,
COUNT(DISTINCT product_id) AS unique_products
FROM orders
GROUP BY customer_id;


🔎 Такой запрос покажет, сколько разных товаров купил каждый клиент.
Работает не только с COUNT(), но и с SUM(DISTINCT ...) или AVG(DISTINCT ...).

@sqlhub

Читать полностью…

Data Science. SQL hub

🖥 Новый курс на Stepik - PostgreSQL для разработчиков: от основ к созданию API

Здесь на пальцах объясняют не только как писать SQL-запросы, а строить настоящие backend-сервисы с базой данных как у профи.

В этом курсе ты шаг за шагом создашь REST API на FastAPI + PostgreSQL:
от установки среды и первых таблиц - до масштабируемого приложения с безопасностью и CRUD-операциями.

🔹 На практике разберете:
• SQL-запросы, фильтры, агрегаты и подзапросы
• Связи между таблицами и нормализацию БД
• Взаимодействие Python и PostgreSQL
• Реализацию REST API и подключение базы
• Оптимизацию и разбор реальных задач с собеседований

⚡ После курса у вас будет свой работающий API-проект и реальные навыки работы с PostgreSQL в продакшене.

🎁 Сегодня –30% от цены!

🚀 Прокачаю свои знания: https://stepik.org/course/255542/

Читать полностью…

Data Science. SQL hub

Новое техношоу о фейлах на дата-платформах

Все упало, все сломалось, бизнес в панике. Для дата-инженеров это обычный вторник, а для шоу «Дропнуто» — повод снять свежий выпуск.

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

Анонсы и ссылки на прямые эфиры появятся в телеграм-боте проекта.

Подписывайтесь, чтобы узнавать о премьерах первыми.

Читать полностью…

Data Science. SQL hub

🖥 Практический гайд по автоматизации процессов на Python

Перед вами подробный практический гайд по автоматизации процессов на Python для продвинутых разработчиков. Он фокусируется на промышленном уровне качества: архитектура, надёжность, наблюдаемость, упаковка и деплой. В каждом разделе - конкретные паттерны и готовые фрагменты кода.

✔️ Подробнее

Читать полностью…

Data Science. SQL hub

Отличный курс для тех, кто хочет разобраться в нейронках с нуля от Андрея Карпати (OpenAI/Tesla).

Внутри бесплатная серия лекций на YouTube (и репа на GitHub), где ты с нуля учишься собирать нейронки. Всё максимально hands-on:

Автор не просто рассказывает теорию, а пишет код вместе с тобой — от самых азов до тренировки сетей.

https://github.com/karpathy/nn-zero-to-hero/

Читать полностью…

Data Science. SQL hub

⚠️ SQL-инъекция через f-string

Если подставлять значения прямо в SQL через f-string, злоумышленник может выполнить любой код в базе:


name = "Alice'; DROP TABLE accounts; --"
query = f"SELECT * FROM accounts WHERE name = '{name}'"
conn.sql(query)


💥 И вот таблица accounts удалена!

Почему так?

Потому что строка с именем вставляется как есть и воспринимается как часть SQL-запроса.

✅ Правильный способ — использовать параметры:


name = "Alice'; DROP TABLE accounts; --"
query = "SELECT * FROM accounts WHERE name = ?"
conn.sql(query, params=(name,))

✔ Имя ищется как текст, база остаётся в безопасности.

👉 Запомни: никогда не вставляй пользовательские данные напрямую в SQL.

Используй параметризованные запросы — это надёжная защита от SQL-инъекций.

@sqlhub

Читать полностью…

Data Science. SQL hub

🟠 ParadeDB — альтернатива Elasticsearch на базе PostgreSQL

В эпоху data-driven решений поиск и аналитика в реальном времени стали обязательной частью любой стратегии.
ParadeDB — это новый open-source игрок: расширение для PostgreSQL, превращающее его в мощный движок полнотекстового поиска и аналитики.

✨ Возможности:

Реал-тайм поиск по данным прямо в Postgres

Высокая производительность без внешних сервисов

Open-source и легко встраивается в существующую инфраструктуру

🔗 Подробнее: blackslate.io/articles/paradedb-an-elasticsearch-alternative-built-on-postgresql

@sqlhub

Читать полностью…

Data Science. SQL hub

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

Читать полностью…

Data Science. SQL hub

🚀 Вышел Postgres 18 — с поддержкой Async I/O

Раньше все операции чтения были блокирующими, теперь - нет.

Результат: огромный прирост производительности для приложений с интенсивным чтением.

⚡️ Async I/O включён по умолчанию в Postgres 18!

Что интересного:
- Новый алгоритм skip scan для многостолбцовых индексов
- Параллельное построение GIN-индексов (JSON, полнотекст)
- Виртуальные генерируемые столбцы (значения считаются на лету)
- Функция uuidv7() — UUID с временной сортировкой
- Сохранение статистики планировщика при мажорных апгрейдах
- Поддержка OAuth 2.0, улучшения TLS и безопасности
- Новый протокол взаимодействия клиентов и утилит — v3.2

🟠 Релиз: https://www.postgresql.org/about/news/postgresql-18-released-3142/

@sqlhub

Читать полностью…

Data Science. SQL hub

🚀 SQL Ultimate Course — бесплатный полный курс по SQL на GitHub

Если хочешь освоить SQL с нуля и дойти до продвинутого уровня — бери готовый репозиторий:

📂 Что внутри:
- datasets/ — реальные данные из ERP и CRM
- scripts/ — готовые SQL-скрипты для практики
- docs/ — документация и материалы курса

✅ MIT-лицензия — можно использовать и менять свободно
🌍 Подходит для всех СУБД (PostgreSQL, MySQL и др.)
🎥 К курсу прилагаются видео и гайды от автора

Автор: Data With Baraa — практик и ютубер, собравший в одном месте полный SQL-путь от простого SELECT до оптимизации запросов и реальных кейсов.

🔗 Репозиторий здесь: https://github.com/DataWithBaraa/sql-ultimate-course

Сохраняй, проходи и прокачивай SQL 💡

@sqlhub

Читать полностью…

Data Science. SQL hub

🔥 Ваши данные стоят слишком дорого, чтобы ими рисковать

Positive Technologies 8 октября запустит новый продукт — PT Data Security. Он создан, чтобы вовремя выявлять угрозы и предотвращать утечки, пока они не привели к кризису.

На онлайн-трансляции вы первыми узнаете:

— Какие задачи и риски сегодня определяют настоящее и будущее рынка защиты данных.
— Какие вызовы стоят перед компаниями на рынке защиты данных.
— Почему Positive Technologies выходит на рынок защиты данных с новым подходом.

🕒 15:00 мск
📍 Онлайн
👉 Регистрация

Читать полностью…

Data Science. SQL hub

💡 SQL: быстрое нахождение первых или последних записей с DISTINCT ON !!!

В PostgreSQL есть полезный приём — DISTINCT ON, который позволяет взять первую строку в каждой группе по определённому полю.


SELECT DISTINCT ON (customer_id)
customer_id,
order_date,
amount
FROM orders
ORDER BY customer_id, order_date DESC;


🔎 Этот запрос вернёт последний заказ каждого клиента без лишних подзапросов или JOIN.

⚡ Работает очень быстро и удобно, если нужно найти «самый первый» или «самый последний» элемент в группе.

@sqlhub

Читать полностью…

Data Science. SQL hub

📈 Гайд по продвинутым вопросам для разработчика LLM

Собеседования на позицию разработчика больших языковых моделей (LLM) в топовых AI-компаниях предъявляют высокие требования к знаниям.

Кандидату необходимо понимать устройство архитектуры трансформеров, владеть методами эффективного обучения и инференса, разбираться в оптимизациях памяти и скорости (таких как LoRA, FlashAttention, vLLM, ZeRO), знать тонкости распределённого тренинга, принципов LLMOps (MLOps для больших моделей) и нюансов продакшн-развертывания LLM.

Также часто проверяют умение решать реальные задачи: от проектирования пайплайна для Sparse MoE до анализа проблем с памятью на GPU, понимания различий между методами обучения с подкреплением (RLHF vs DPO) и способов масштабирования моделей.

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

👉 Гайд

Читать полностью…

Data Science. SQL hub

💡 SQL: использование оконных функций для накопительных сумм

Хотите посчитать «бегущую сумму» или ранжирование без подзапросов?
Используйте WINDOW FUNCTIONS — они считаются построчно, не сворачивая данные.


SELECT
customer_id,
order_date,
amount,
SUM(amount) OVER (
PARTITION BY customer_id
ORDER BY order_date
) AS running_total
FROM orders;


🔎 Здесь для каждого клиента мы получаем накопительную сумму по мере добавления заказов.
Оконные функции позволяют легко строить кумулятивные метрики, рейтинги и скользящие средние прямо в одном запросе.

@sqlhub

Читать полностью…
Subscribe to a channel