Data Science. SQL hub
35.9K subscribers
1.16K photos
95 videos
37 files
1.17K links
По всем вопросам- @workakkk

@itchannels_telegram - 🔥лучшие ит-каналы

@ai_machinelearning_big_data - Machine learning

@pythonl - Python

@pythonlbooks- python книги📚

@datascienceiot - ml книги📚

РКН: https://vk.cc/cIi9vo

#VRHSZ
Download Telegram
Вырастили целое дерево из агентов 🌳

Мы в Авито разработали единую платформу для процессов. Самые лучшие и популярные становятся агентами. В итоге каждый сотрудник может создать свой процесс или воспользоваться готовым. Классно? Не то слово! Поэтому мы написали статью, как создавали это решение.

О чём узнаете, если прочитаете:
🔸как устроена архитектура платформы,
🔸как процесс становится агентом,
🔸как измерять качество агентов.

Читать статью 🚀
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍1
Media is too big
VIEW IN TELEGRAM
DELETE не удаляет строку. Кто на самом деле освобождает место в PostgreSQL

DELETE только ставит строке метку, физически она остаётся в файле. Старую версию держит MVCC: пока её могут читать другие транзакции, трогать её нельзя. Мёртвые кортежи убирает уже VACUUM, и только после этого место реально возвращается.
👍6
Успейте подать заявку на E-CUP 2026 Students от Ozon Tech до 30 августа

E-CUP 2026 Students — ежегодное соревнование от Ozon Tech. В этом сезоне — для студентов, которые интересуются ML, Data Science, Big Data и аналитикой данных.

Вас ждут три трека: поиск дубликатов товаров, ИИ-модерация карточек маркетплейса и прогнозирование поведения пользователей. Все задачи основаны на реальных обезличенных данных Ozon.

Участвовать можно по одиночке или в команде до пяти человек. Соревнование проходит онлайн с финалом на масштабной конференции E-CODE.

Что ждёт участников:
- призовой фонд 7 200 000 ₽;
- обратная связь от инженеров Ozon Tech;
- нетворк с экспертами индустрии;
- лимитированный мерч;
- билеты на конференцию E-CODE, где наградят победителей.

Подробнее — на сайте E-CUP 2026 Students.
➡️ Регистрация уже открыта!

Присоединяйтесь, чтобы выйти за рамки учебных проектов, попробовать свои силы в задачах настоящего бигтеха и сравнить своё решение с лучшими участниками.
👏32🔥1
🚀 SQL: индекс есть, но база специально его игнорирует

Есть индекс:



CREATE INDEX idx_users_status ON users(status);


И запрос:


SELECT *
FROM users
WHERE status != 'active';

Кажется, что индекс должен ускорить поиск.

Но если условие возвращает большую часть таблицы, индекс может оказаться дороже обычного Seq Scan.

Например, если 'active' — только 10% строк, то:


status != 'active'


вернёт примерно 90% таблицы.

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

Проверить можно так:


EXPLAIN ANALYZE
SELECT *
FROM users
WHERE status != 'active';


Смотреть нужно не только на наличие индекса, а на селективность условия.

Особенно часто это проявляется с:


<>
NOT IN
IS NOT NULL


Индекс может быть идеальным, но если запрос выбирает почти всю таблицу, оптимизатор вполне разумно его проигнорирует.
👍6🔥51🥰1
SQL как ремесло и SQL как инструмент бизнеса — разные навыки

Владеть SQL — значит написать корректный запрос под любую задачу. Работать продуктовым аналитиком — значит понять, какую задачу решает заказчик, и превратить выгрузку в ответ на его вопрос. Первое проверяется тестом на соединениях таблиц, второе — на реальных проектах.

25 августа karpovꓸcourses проводят бесплатный вебинар про этот второй пласт. На реальных задачах разберут:

— какие вопросы задать до запроса, чтобы выгрузка отвечала на задачу заказчика;
— как проверять данные после выгрузки и находить ошибки, которые SQL не подсвечивает;
— типичные ловушки в расчетах, из-за которых технически верный запрос дает неверный ответ;
— как переводить таблицу с цифрами в вывод для бизнеса.

Разбирает Дмитрий Бакаев — продуктовый аналитик в «Передовых Платежных Решениях» и выпускник курса «Аналитик данных» karpovꓸcourses. Вопросы принимает в эфире.

За регистрацию сразу приходит карьерный гайд по профессиям в аналитике, после эфира — запись вебинара
Регистрируйтесь по ссылке — https://clc.to/erid_2W5zFJogLHX   

Реклама. ООО «КАРПОВ КУРСЫ». ИНН 7811764627. erid: 2W5zFJogLHX 
У SQLite один writer. И иногда это не ограничение, а очень удобная архитектура.

Работал с SQLite и увидел необычную схему: база работала сразу на нескольких машинах, но запись всё равно шла только через одну.

За это отвечал LiteFS.

Он не пытается превратить SQLite в полноценную distributed database. Вместо этого одна машина выбирается primary через distributed lease и получает право писать. Остальные работают как реплики.

Если primary пропадает, lease истекает и другой узел может занять его место.

В итоге сложная на первый взгляд задача сводится к довольно простой идее:

«Просто гарантируй, что в каждый момент времени пишет только одна машина».


А на скрине как раз часть Go-кода LiteFS, которая продлевает этот lease и следит, чтобы узел не продолжал считать себя primary после истечения TTL.
6👍3🔥3
🔥 Хочешь быстрее расти в IT? Хватит учиться в одиночку

Окружение решает больше, чем кажется.

Собрал папки и каналы, где можно быстрее влиться в нужное направление, следить за трендами и не вариться в своём пузыре.

AI: t.me/ai_machinelearning_big_data
Python: t.me/pythonl
Linux: t.me/linuxacademiya
Хакинг: t.me/linuxkalii
DevOps: t.me/DevOPSitsec
Docker: https://t.me/+90Z5TAyfuNU5YmRi
Golang: t.me/Golang_google
Rust: t.me/rust_code
C++: t.me/cpluspluc
C#: t.me/csharp_1001_notes
Java: t.me/javatg
JavaScript: t.me/javascriptv
React: t.me/react_tg
Frontend: t.me/front
PHP: t.me/phpshka
Android: t.me/android_its
Мобильная разработка: t.me/mobdevelop
Базы данных: t.me/sqlhub
Data Science: t.me/data_analysis_ml
Big Data: t.me/bigdatai
Математика: t.me/data_math
Физика: t.me/fizmat
Kubernetes: t.me/kubernetc
GameDev: https://t.me/gamedev
Haskell: t.me/haskell_tg

Собеседования и карьера:

DS собеседования: t.me/machinelearning_interview
Python собеседования: t.me/python_job_interview

Папка с вакансиями: t.me/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: t.me/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.me/addlist/eEPya-HF6mkxMGIy
Папка ML: https://t.me/addlist/2Ls-snqEeytkMDgy
Папка Frontend: https://t.me/addlist/mzMMG3RPZhY2M2Iy

Полезное сверху:

ИТ-мемы: t.me/memes_prog
Английский для программистов: t.me/english_forprogrammers
ИИ и технологии: t.me/vistehno
954 ГБ open-source курсов: https://t.me/+rKBQEMccAA01MTcy
ИТ-книги бесплатно: https://t.me/addlist/BkskQciUW_FhNjEy

Max Ai: https://max.ru/ai_machinelearning_big_data
Max python: https://max.ru/pythonl
ТЕХНО: https://max.ru/vistehno
Max Go: https://max.ru/Golang_google
Max Linux: https://max.ru/linuxkalii
Devops: https://max.ru/DevOPSitsec
C#: https://max.ru/csharp_ci
C++: https://max.ru/cpluspluc
SQL: https://max.ru/sqlhub
Java: https://max.ru/javatg

Подписывайся на нужные направления и собирай себе ленту, которая реально двигает вперёд.
2👍2🔥2👎1
🔥 SQL-запрос внезапно стал медленным? Проверь не только индексы, но и статистику

Оптимизатор выбирает план запроса на основе статистики по данным. Если она устарела, база может решить, что строк мало, выбрать Nested Loop и в итоге прогнать миллионы сравнений.

В PostgreSQL быстро обновить статистику можно так:


ANALYZE users;


А проверить, насколько оценки оптимизатора отличаются от реальности:


EXPLAIN (ANALYZE, BUFFERS)
SELECT *
FROM users
WHERE status = 'active';


Смотри на разницу между rows= и actual rows=.

Если PostgreSQL ожидал 100 строк, а реально получил 500 000, проблема может быть не в индексе, а в плохой статистике.

Особенно часто это всплывает после массовых INSERT, UPDATE, импорта данных или резкого изменения распределения значений.
👍72
This media is not supported in your browser
VIEW IN TELEGRAM
☁️☁️☁️☁️☁️☁️☁️

24 сентября Yandex Cloud проведёт ежегодную флагманскую технологическую конференцию Yandex Scale 2026.

🎨🎨🎨🎨🎨🎨🎨🎨🎨🎨
🎨🎨🎨🎨🎨🎨🎨🎨🎨🎨
🎨🎨🎨🎨🎨🎨🎨🎨🎨
В программе четыре продуктовых трека — AI, Data, Security и Hybrid Infrastructure & DevOps, — и отдельный углублённый технологический трек DeepTech, который пройдёт только онлайн.

В треке Data расскажем, как Yandex Cloud развивает аналитику от отдельных сервисов к единой бесшовной среде: от загрузки данных до готовых бизнес-инсайтов, где ИИ помогает на каждом этапе. Разберём, как YDB помогает строить рекомендательные и поисковые системы и ИИ‑ассистентов. «Додо Пицца» представит честную историю миграции десятков терабайт данных в Yandex Cloud, а также расскажет о сравнении с западным облаком и совместном преодолении ограничений. Расскажем, как Yandex Cloud движется к самоуправляемым базам данных на основе опыта эксплуатации тысяч баз в Яндексе. «Азбука вкуса» разберёт миграцию Oracle Exadata на Lakehouse в Yandex Cloud без единого аврала. И покажем, как Yandex Managed Service for Valkey научили растягиваться под нагрузку — и вширь, и вглубь.

🎨🎨🎨🎨🎨🎨🎨🎨🎨🎨
🎨🎨🎨🎨🎨🎨🎨🎨🎨🎨
🎨🎨🎨🎨🎨🎨🎨🎨🎨
Отдельно пройдут воркшопы по Data: разберём ключевые сценарии использования ИИ‑агента Нейроаналитика в Yandex DataLens. На практике посмотрим, как PGHouse позволяет OLTP‑базе PostgreSQL прозрачно выполнять OLAP‑запросы в ClickHouse без переписывания SQL. И соберём поисковую систему на Serverless YDB с настройкой полнотекстовых и векторных индексов.

🎨🎨🎨🎨🎨🎨🎨🎨🎨🎨
🎨🎨🎨🎨🎨🎨🎨🎨🎨🎨

И это ещё не всё: демозоны, питчинг решений, IT-квест и мерч — офлайн, а розыгрыши призов и секретный гость — в онлайн-студии.


Вся программа — на сайте, регистрация занимает пару минут, а участие бесплатное!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥21👎1😁1
🔥 SQL-совет: `COUNT(*)` иногда можно вообще не считать

Если в PostgreSQL тебе нужно не точное число строк, а быстрая оценка размера огромной таблицы, не запускай:


SELECT COUNT(*) FROM events;


На большой таблице это может читать миллионы строк.

Для быстрой оценки можно взять статистику PostgreSQL:


SELECT reltuples::bigint
FROM pg_class
WHERE relname = 'events';


reltuples хранит примерную оценку количества строк, которую PostgreSQL обновляет после ANALYZE и VACUUM.

Это полезно для админок, мониторинга, дашбордов и проверок вида «в таблице примерно 10 млн или 100 млн строк?», где абсолютная точность не нужна.

А если нужна актуальная оценка:


ANALYZE events;


После этого reltuples станет ближе к реальному количеству строк.

На таблицах в сотни миллионов строк разница между мгновенной оценкой и настоящим COUNT(*) может быть огромной.
6👍5
Готовитесь или интересуетесь поступлением в ШАД в 2027 году?

До 24 августа идет набор в текущий поток подготовки ШАД Хелпер.

Программа рассчитана на 11 месяцев и охватывает все темы, необходимые для успешной сдачи экзамена в ШАД: линейная алгебра, матанализ, теория вероятностей, дискретная математика, алгоритмы и анализ данных.

Основная задача курса - не просто пройти теорию, а научиться решать задачи именно в формате вступительных:
- с проверяемыми домашними
- обратной связью
- пробными экзаменами.

Преподают опытные преподаватели с учеными степенями из МГУ и МФТИ.
Уже 120+ учеников поступили в ШАД и ML-магистратуры.

До 24 августа - скидка 30% на первый взнос по промокоду START30

Если не поступите - зачислим на следующий поток бесплатно.

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

→ Посмотреть формат, программу и стоимость курса по ссылке

Реклама, ООО "ШВМ", ИНН 9728100991 Erid: 2VtzquuCwpo
2🔥2👍1👎1
Как называется механизм PostgreSQL, позволяющий ограничить видимость строк в таблице для пользователя на основе определенных правил (политик)?
Anonymous Quiz
8%
Column-Level Security
16%
Table Access Control
11%
View-Only Access
65%
Row-Level Security (RLS)
🎉2