Data Science. SQL hub
35.8K subscribers
966 photos
56 videos
37 files
1.01K links
По всем вопросам- @workakkk

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

@ai_machinelearning_big_data - Machine learning

@pythonl - Python

@pythonlbooks- python книги📚

@datascienceiot - ml книги📚

РКН: https://vk.cc/cIi9vo
Download Telegram
🖥 Практический гайд по автоматизации процессов на Python

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

✔️ Подробнее
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍3🥰1
🌐 OrbitDB — распределённая serverless P2P-база данных для децентрализованных приложений

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

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

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

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

📌 Github
5👍2🔥2
Новое техношоу о фейлах на дата-платформах

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

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

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

Подписывайтесь, чтобы узнавать о премьерах первыми.
1👍1
💾 Зачем нужен 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
11👍5🔥3👎1😁1
🖥 Новый курс на Stepik - PostgreSQL для разработчиков: от основ к созданию API

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

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

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

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

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

🚀 Прокачаю свои знания: https://stepik.org/course/255542/
Please open Telegram to view this post
VIEW IN TELEGRAM
8🔥3👍2🥰1
This media is not supported in your browser
VIEW IN TELEGRAM
Нужен один «топ-элемент» на группу без оконных функций и лишних джойнов?

В 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
👍14🔥75
💡 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
👍157🥰3🔥1
🖥 Гайд по PostgreSQL для продвинутых разработчиков

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

🟠Гайд

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍106🔥5
🧩 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
14👍10🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
🔥 no-code база данных, которая сама превращает SQL в Airtable-стиль интерфейс

Что умеет:
- Подключается к MySQL, Postgres, SQLite, MSSQL и сразу показывает данные в виде удобных таблиц
- Делает представления: таблицы, календари, канбан, формы, Гантт
- Генерирует готовые REST и GraphQL API прямо поверх базы
- Делится видами: публично или под паролем, поддерживает загрузку файлов и картинок
- Настраивает роли и доступ до уровня отдельного столбца

Плюс интеграции со Slack, Discord, мессенджерами, почтой и десятками сервисов.

По сути — Airtable, но напрямую поверх твоей базы.

https://github.com/nocodb/nocodb
6🔥2👍1🤔1
🔍 Marker — инструмент от Datalab.to, который быстро и точно превращает документы в Markdown + JSON

Что умеет Marker:
- Поддержка PDF, изображений, PPTX, DOCX, XLSX, HTML, EPUB и др.
- Форматирует таблицы, формы, уравнения, математические выражения, ссылки, кодовые блоки.
- Извлекает изображения из документов.
- Убирает колонтитулы, заголовки, другие артефакты форматирования.
- Есть бета-версия для “структурированного извлечения” на основе схемы JSON.
- Можно включить LLM-модуль, чтобы повысить точность в сложных местах (например, объединение таблиц, корректное форматирование).

Преимущества:
- Быстрота + точность по сравнению с конкурентами (Mathpix, Llamaparse и др.).
- Работает и без LLM, но с флагом --use_llm становится ещё лучше.
- Можно запускать локально, на серверах, GPU / CPU, использовать параллельную обработку.

Ограничения и нюансы:
- Сложные макеты и вложенные таблицы / формы ещё не всегда обрабатываются идеально.
- Иногда требуется OCR, особенно если PDF плохо “разложен” на текст.

Кому полезно:
- Тем, кто работает с научными статьями, отчётами, бухгалтерскими документами, презентациями и хочет автоматизировать преобразование в читаемый формат.
- Для RAG-pipelines, документации и любых задач, где надо извлечь структуру и контент.

https://github.com/datalab-to/marker
9🔥1
⚡️ Pytest совет: экономим время на тестах с большими данными

Если в тестах используется тяжёлый датасет, важно правильно выбрать scope для фикстуры.

По умолчанию (`scope="function"`) данные будут загружаться заново для каждого теста. Это тратит ресурсы и замедляет выполнение.

С scope="session" датасет загружается один раз и переиспользуется во всех тестах. Это ускоряет процесс и снижает нагрузку.

Используйте session scope для больших и неизменяемых данных, чтобы тесты работали быстрее и стабильнее.
🔥11👍31
🖥 pg_flo — библиотека для работы с PostgreSQL, которая упрощает создание и выполнение потоковых операций в базе данных! Она также предоставляет удобный интерфейс для выполнения операций с данными, что может быть полезно для задач, требующих последовательной обработки данных.

🔐 Лицензия: Apache-2.0

🖥 Github

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥54
🚀 Современный ORM и генератор SQL для C++20

sqlgen — это типобезопасный ORM и генератор SQL, вдохновленный SQLAlchemy и Diesel. Он обеспечивает компоновку запросов с проверкой типов на этапе компиляции и защитой от SQL-инъекций, что делает его идеальным для создания надежных ETL-пайплайнов.

🚀Основные моменты:
- 🔒 Компиляция с проверкой схем таблиц и запросов
- 🛡️ Защита от SQL-инъекций с параметризованными запросами
- 🔄 Удобный интерфейс для составления сложных запросов
- 🚀 Высокая производительность с пакетными операциями
- 📦 Поддержка PostgreSQL и SQLite

📌 GitHub: https://github.com/getml/sqlgen

#cpp
5
🚀 Удобный инструмент для миграции схем PostgreSQL

pgschema — это CLI утилита, которая упрощает процесс миграции схем в PostgreSQL, используя декларативный подход, похожий на Terraform. Она позволяет создавать, редактировать и применять изменения к схемам, обеспечивая контроль над миграциями без необходимости в дополнительных таблицах.

🚀 Основные моменты:
- Декларативное управление схемами PostgreSQL
- Поддержка всех основных объектов и версий PostgreSQL
- Генерация плана миграции с предварительным просмотром изменений
- Прямое взаимодействие с файлами схем и базой данных без временных БД

📌 GitHub: https://github.com/pgschema/pgschema

#go
6👍4🔥1
Для многих разработчиков моменты, когда они пишут код не по работе, а для профессионального вызова, становятся ключевыми в их росте. Именно таким вызовом может стать Yandex Cup 2025 — чемпионат, где встречаются сильнейшие разработчики, и один из треков которого посвящён машинному обучению.

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

Участие — способ не просто проверить свои навыки, но и заявить о себе в профессиональном сообществе. Лучшие участники получают приглашения на упрощённый отбор в команды Яндекса.


Финал пройдёт в Стамбуле, призовой фонд — 12 млн ₽.

Регистрация заканчивается совсем скоро. Если вы чувствуете, что готовы выйти за пределы привычных задач — самое время.

💡 yandex.ru/cup/2025
5👍1👎1🔥1
🪄 Открытая альтернатива Firebase — на стероидах PostgreSQL

Платформа, которая даёт всё, чтобы собрать современное веб-, мобильное или AI-приложение — без проприетарных SDK и боли.

Что внутри:
⚙️ Хостинг Postgres с realtime-синхронизацией
🧩 Автогенерация REST и GraphQL API
🔐 Аутентификация и авторизация через JWT
Edge-функции и серверные триггеры
📦 Хранилище файлов с поддержкой S3
🧠 AI-инструменты: векторные индексы, эмбеддинги, семантический поиск
🪶 Всё open source и доступно для self-host.

По сути это Firebase-опыт, но построенный на «взрослых» open-source технологиях:
PostgreSQL, Elixir, GoTrue, PostgREST, pg_graphql.

Платформа, где можно запустить идею, вырастить продукт и не упереться в чьи-то закрытые лимиты.
#Postgres #OpenSource #Backend #AI #GraphQL #Realtime #FirebaseAlternative

https://github.com/supabase/supabase
5👍2👎2🔥2
⚡️ Вышел pgbalancer 1.0 - интеллектуальный балансировщик нагрузки для PostgreSQL

Представлен первый стабильный релиз pgbalancer 1.0 — балансировщика нагрузки для PostgreSQL, построенного на основе pgpool-II с существенными доработками.

Проект позиционируется как решение с элементами адаптивной маршрутизации запросов, управляемое через REST API и поддерживающее MQTT для потоковой передачи событий в реальном времени.

Ключевые особенности:
• Управление пулом соединений и распределение нагрузки между репликами PostgreSQL;
•Поддержка HTTP/REST для конфигурации и мониторинга;
• Интеграция с MQTT для стриминга метрик и событий;
• Реализация на языке C с сохранением производительности оригинального pgpool-II;
• Распространяется под открытой лицензией PostgreSQL.

https://www.pgelephant.com/pgbalancer
👍104👎2🔥2
🤖 Авито готовит к запуску собственного ИИ-ассистента «Ави»

Технологическая платформа Авито подала заявку на регистрацию товарного знака для своего интеллектуального ассистента — «Ави», сообщает «Коммерсант».

🧩 Что умеет
«Ави» построен на базе большой языковой модели и умеет вести живой диалог с пользователем. Он не просто отвечает на вопросы — ассистент помогает разобраться в деталях покупки, уточняет цели и критерии выбора, советует подходящие предложения и объясняет различия между ними. Фактически, это персональный консультант внутри платформы, который знает рынок лучше любого менеджера.

💡 Почему это важно
Крупные компании одна за другой внедряют собственные ИИ-решения — это уже не эксперимент, а стратегия. Такие ассистенты позволяют:
• собирать контекст из разговоров с пользователями,
• повышать вовлеченность и лояльность,
• увеличивать продажи.

Эксперты оценивают вложения в проект примерно в 500 млн рублей. Но для Авито эти траты — часть планомерного развития: компания уже заявляла о планах инвестировать в развитие генеративного ИИ около 12 млрд рублей и к 2028 году заработать более 21 млрд на новых технологиях.

Собственные модели компании уже можно оценить в деле — Авито выпустила две нейросети:

• A-Vibe — текстовая LLM,
• A-Vision — мультимодальная модель, работающая с текстом и изображениями.

Их успех говорит сам за себя: A-Vibe за первую неделю собрала 1400+ скачиваний и попала в топ трендовых моделей на Hugging Face.

🚀 Что дальше
Сейчас «Ави» проходит тесты в разных категориях площадки. В планах — уже в следующем году запустить универсальную версию, которая сможет работать во всех вертикалях Авито.
4👎4👍1🥰1