🛠️ Что нового в SQLite — свежие обновления и улучшения
🔗 https://www.sqlite.org/changes.html
SQLite — одна из самых популярных встраиваемых баз данных в мире, и каждое обновление приносит не только исправления, но и серьёзные улучшения производительности и безопасности.
Вот ключевые изменения из последних версий:
🆕 SQLite 3.46.0 (май 2024)
- Добавлена поддержка
- Новый флаг
- Оптимизации для
- Улучшено поведение
🧪 Расширенные тесты:
- SQLite теперь использует дополнительный fuzzing для анализа стабильности ядра при высоких нагрузках и необычных SQL
🧹 Также исправлены:
- Ошибки в индексах при сложной комбинации
- Утечка памяти при специфическом использовании
💡 SQLite остаётся одной из самых лёгких, надёжных и удобных баз данных, которую можно использовать буквально везде: от браузеров и мобильных приложений до IoT и CLI-утилит.
📚 Полный список изменений — здесь:
https://www.sqlite.org/changes.html
@sqlhub
🔗 https://www.sqlite.org/changes.html
SQLite — одна из самых популярных встраиваемых баз данных в мире, и каждое обновление приносит не только исправления, но и серьёзные улучшения производительности и безопасности.
Вот ключевые изменения из последних версий:
🆕 SQLite 3.46.0 (май 2024)
- Добавлена поддержка
contentless-delete
для таблиц FTS5 — меньше места, выше скорость - Новый флаг
SQLITE_DBCONFIG_STMT_SCANSTATUS
— можно отключать сбор статистики по выполнению запросов - Оптимизации для
LEFT JOIN
+ OR
условий в WHERE
— запросы выполняются заметно быстрее - Улучшено поведение
WITHOUT ROWID
таблиц с составными ключами🧪 Расширенные тесты:
- SQLite теперь использует дополнительный fuzzing для анализа стабильности ядра при высоких нагрузках и необычных SQL
🧹 Также исправлены:
- Ошибки в индексах при сложной комбинации
JOIN + USING
- Утечка памяти при специфическом использовании
PRAGMA function_list
💡 SQLite остаётся одной из самых лёгких, надёжных и удобных баз данных, которую можно использовать буквально везде: от браузеров и мобильных приложений до IoT и CLI-утилит.
📚 Полный список изменений — здесь:
https://www.sqlite.org/changes.html
@sqlhub
📧🤖 ART: интеллектуальный e-mail-агент с памятью, действиями и "мыслями"
OpenPipe представили подробный разбор архитектуры ART (Action–Recall–Thought) — это не просто бот, а полноценный агент, который может читать письма, анализировать контекст, планировать действия и запоминать диалог. Такой себе LLM-секретарь, который не забывает, что вы писали неделю назад, и умеет реагировать правильно.
🧠 Что такое ART?
ART — это архитектура, построенная вокруг трёх основных элементов:
1️⃣ Action — агент может действовать: писать ответы, создавать события, ставить задачи, отправлять follow-up.
2️⃣ Recall — агент вспоминает: использует векторную память, чтобы помнить важные детали переписки.
3️⃣ Thought — агент думает: размышляет о контексте, выбирает нужные шаги и обновляет своё внутреннее состояние.
Каждый запуск агента — это один цикл мышления, в котором он анализирует новое письмо, сравнивает его с памятью и решает, что делать.
🧩 Как работает?
Архитектура построена на LangGraph — фреймворке для создания LLM-агентов с управляемыми потоками данных (узлы, переходы, состояния).
🧬 Компоненты:
- Nodes:
-
-
-
-
-
- Memory:
- Используется ChromaDB (векторная база), куда сохраняются ключевые сообщения, решения, действия и мысли.
- Tools:
- Встроенные функции-агенты (tools) для генерации писем, событий, напоминаний, оповещений и т.п.
- Всё вызывается динамически через LLM, как в OpenAI function calling.
🔁 Как агент работает на практике?
Пример цикла:
1. Приходит e-mail →
2.
3.
4.
5.
Следующее письмо будет уже обрабатываться с учётом прошлого контекста. Агент понимает цепочку, тему, задачи и автоматически действует.
💡 Что делает ART особенным?
✅ Работает в несколько итераций, не просто «prompt → response»
✅ Помнит прошлые письма, решения, даже ошибки
✅ Сам планирует, что делать: отвечать, пересылать, напоминать
✅ Обновляет свои действия при изменении входных данных
✅ Настраивается под любые задачи: продажи, саппорт, личные письма, менеджмент
📎 Полный разбор от OpenPipe с примерами кода, схемами и демонстрацией:
👉 https://openpipe.ai/blog/art-e-mail-agent
Если ты хочешь строить LLM-агентов с настоящей памятью и логикой — это must-read. Это шаг к настоящим автономным ассистентам.
#AI #LLM #autonomousagents #LangGraph #e-mail #productivity #openpipe #инструменты
@sqlhub
OpenPipe представили подробный разбор архитектуры ART (Action–Recall–Thought) — это не просто бот, а полноценный агент, который может читать письма, анализировать контекст, планировать действия и запоминать диалог. Такой себе LLM-секретарь, который не забывает, что вы писали неделю назад, и умеет реагировать правильно.
🧠 Что такое ART?
ART — это архитектура, построенная вокруг трёх основных элементов:
1️⃣ Action — агент может действовать: писать ответы, создавать события, ставить задачи, отправлять follow-up.
2️⃣ Recall — агент вспоминает: использует векторную память, чтобы помнить важные детали переписки.
3️⃣ Thought — агент думает: размышляет о контексте, выбирает нужные шаги и обновляет своё внутреннее состояние.
Каждый запуск агента — это один цикл мышления, в котором он анализирует новое письмо, сравнивает его с памятью и решает, что делать.
🧩 Как работает?
Архитектура построена на LangGraph — фреймворке для создания LLM-агентов с управляемыми потоками данных (узлы, переходы, состояния).
🧬 Компоненты:
- Nodes:
-
Reader
: разбирает новое письмо -
Memory Retriever
: ищет релевантные воспоминания -
Planner
: решает, что делать -
Executor
: выполняет действия (ответ, событие и т.д.) -
Reflector
: обновляет размышления агента- Memory:
- Используется ChromaDB (векторная база), куда сохраняются ключевые сообщения, решения, действия и мысли.
- Tools:
- Встроенные функции-агенты (tools) для генерации писем, событий, напоминаний, оповещений и т.п.
- Всё вызывается динамически через LLM, как в OpenAI function calling.
🔁 Как агент работает на практике?
Пример цикла:
1. Приходит e-mail →
Reader
извлекает суть.2.
Memory Retriever
ищет похожие прошлые переписки.3.
Planner
решает: ответить? создать задачу? проигнорировать?4.
Executor
выполняет нужное действие.5.
Reflector
обновляет память и размышления.Следующее письмо будет уже обрабатываться с учётом прошлого контекста. Агент понимает цепочку, тему, задачи и автоматически действует.
💡 Что делает ART особенным?
✅ Работает в несколько итераций, не просто «prompt → response»
✅ Помнит прошлые письма, решения, даже ошибки
✅ Сам планирует, что делать: отвечать, пересылать, напоминать
✅ Обновляет свои действия при изменении входных данных
✅ Настраивается под любые задачи: продажи, саппорт, личные письма, менеджмент
📎 Полный разбор от OpenPipe с примерами кода, схемами и демонстрацией:
👉 https://openpipe.ai/blog/art-e-mail-agent
Если ты хочешь строить LLM-агентов с настоящей памятью и логикой — это must-read. Это шаг к настоящим автономным ассистентам.
#AI #LLM #autonomousagents #LangGraph #e-mail #productivity #openpipe #инструменты
@sqlhub
🧠 Хитрая задача по SQL: максимум без агрегатов?
У тебя есть таблица
📌 Задача:
Для каждого клиента (`customer_id`) найти наиболее поздний заказ (по
🔥 Уловка:
💡 Подумай:
Как ты решишь эту задачу только с
📥 Ожидаемый результат:
```
🧩 Подсказка:
Можно использовать
📎 Такой приём полезен:
• Когда нельзя использовать оконные функции
• Когда ты работаешь на старых версиях СУБД
• Когда нужна универсальность между MySQL / Oracle / SQLite
#SQL #Задача #БазыДанных #DataEngineering #Оптимизация
@sqlhub
У тебя есть таблица
orders
со следующими полями:
orders(id, customer_id, order_date, amount)
📌 Задача:
Для каждого клиента (`customer_id`) найти наиболее поздний заказ (по
order_date`), **не используя `GROUP BY
и `MAX()`**.🔥 Уловка:
DISTINCT ON
, TOP 1 WITH TIES
и RANK()
нельзя — ты ограничен базовым SQL, работающим на большинстве СУБД.💡 Подумай:
Как ты решишь эту задачу только с
JOIN
, WHERE
и EXISTS
?📥 Ожидаемый результат:
```sql
customer_id | order_id | order_date | amount
------------|----------|------------|--------
1001 | 87 | 2024-12-01 | 320.00
1002 | 91 | 2024-12-05 | 175.00
...
```
🧩 Подсказка:
Можно использовать
NOT EXISTS
, чтобы выбрать заказы, у которых нет более новых у того же клиента.
SELECT o.*
FROM orders o
WHERE NOT EXISTS (
SELECT 1
FROM orders o2
WHERE o2.customer_id = o.customer_id
AND o2.order_date > o.order_date
)
📎 Такой приём полезен:
• Когда нельзя использовать оконные функции
• Когда ты работаешь на старых версиях СУБД
• Когда нужна универсальность между MySQL / Oracle / SQLite
#SQL #Задача #БазыДанных #DataEngineering #Оптимизация
@sqlhub
Сейчас каждая компания собирает тонны данных: продажи, клиенты, маркетинг, логистика. Но сырые цифры бесполезны, если их нельзя превратить в понятные отчёты и выводы.
Приглашаем вас на вебинар 3 июня в 18:30 по МСК, где наш новый спикер — Владислав Вареник, Data Engineer в Сравни.ру — расскажет кто такие дата-инженеры и как они ускоряют работу бизнеса.
Что вы узнаете на вебинаре?
Даже если вы далеки от аналитики — покажем, как начать с нуля и быстро получить результат. Не упустите шанс научиться тому, что будет цениться ещё десятки лет! 🚀
🕗 Встречаемся 3 июня в 18:30 по МСК
Please open Telegram to view this post
VIEW IN TELEGRAM
🚀 Как построить ML-пайплайн в Apache Spark: пошаговый гайд
В свежей статье на KDnuggets рассматривается, как с помощью Apache Spark и библиотеки MLlib можно построить масштабируемый пайплайн машинного обучения для задач, таких как прогноз оттока клиентов.
🔧 Компоненты пайплайна:
- Transformers: преобразуют данные (например,
- Estimators: обучают модели (например, `LogisticRegression`)
- Pipeline: объединяет все шаги в единую последовательность
🧪 Пример:
1. Загрузка и очистка данных
2. Преобразование категориальных признаков
3. Сборка признаков в вектор
4. Масштабирование данных
5. Обучение модели логистической регрессии
6. Оценка качества модели (accuracy, precision, recall, F1)
📌 Ключевые преимущества:
- Высокая скорость обработки больших объемов данных
- Удобная интеграция с Python через PySpark
- Гибкость и масштабируемость для промышленных задач
Полный разбор с кодом и примерами:
👉 https://www.kdnuggets.com/implementing-machine-learning-pipelines-with-apache-spark
В свежей статье на KDnuggets рассматривается, как с помощью Apache Spark и библиотеки MLlib можно построить масштабируемый пайплайн машинного обучения для задач, таких как прогноз оттока клиентов.
🔧 Компоненты пайплайна:
- Transformers: преобразуют данные (например,
StringIndexer
, `StandardScaler`)- Estimators: обучают модели (например, `LogisticRegression`)
- Pipeline: объединяет все шаги в единую последовательность
🧪 Пример:
1. Загрузка и очистка данных
2. Преобразование категориальных признаков
3. Сборка признаков в вектор
4. Масштабирование данных
5. Обучение модели логистической регрессии
6. Оценка качества модели (accuracy, precision, recall, F1)
📌 Ключевые преимущества:
- Высокая скорость обработки больших объемов данных
- Удобная интеграция с Python через PySpark
- Гибкость и масштабируемость для промышленных задач
Полный разбор с кодом и примерами:
👉 https://www.kdnuggets.com/implementing-machine-learning-pipelines-with-apache-spark
Диплом vs курсы: золотая середина для карьеры в IT
Без профильного образования в IT можно расти, но для серьезных позиций часто нужен диплом. На помощь приходит магистратура и онлайн-курсы, но проблема в том, что обучение в вузе сложно совмещать с работой, а короткие онлайн-курсы дают лишь поверхностные знания.
6 июня в 18:00 (мск) Анатолий Карпов (автор онлайн-курсов по Data Science) и Евгений Соколов (научный руководитель ФКН НИУ ВШЭ) расскажут о совместной онлайн-магистратуре karpov courses и НИУ ВШЭ — «Аналитика больших данных» на бесплатном вебинаре.
От ВШЭ — экспертиза и опыт одного из крупнейших вузов России, а от karpov courses — практические навыки в сфере анализа данных.
На встрече вы узнаете:
- преимущества высшего онлайн-образования и какие тренды есть на рынке;
- какие этапы необходимо пройти, чтобы поступить в онлайн-магистратуру НИУ ВШЭ и karpov courses;
- почему так популярна и востребована сфера аналитики данных в 2025 году.
Присоединяйтесь ко дню открытых дверей онлайн-магистратуры «Аналитика больших данных» от НИУ ВШЭ и karpov courses: https://clc.to/erid_2W5zFHNZGxY
Реклама. ООО "КАРПОВ КУРСЫ". ИНН 7811764627. erid: 2W5zFHNZGxY.
Без профильного образования в IT можно расти, но для серьезных позиций часто нужен диплом. На помощь приходит магистратура и онлайн-курсы, но проблема в том, что обучение в вузе сложно совмещать с работой, а короткие онлайн-курсы дают лишь поверхностные знания.
6 июня в 18:00 (мск) Анатолий Карпов (автор онлайн-курсов по Data Science) и Евгений Соколов (научный руководитель ФКН НИУ ВШЭ) расскажут о совместной онлайн-магистратуре karpov courses и НИУ ВШЭ — «Аналитика больших данных» на бесплатном вебинаре.
От ВШЭ — экспертиза и опыт одного из крупнейших вузов России, а от karpov courses — практические навыки в сфере анализа данных.
На встрече вы узнаете:
- преимущества высшего онлайн-образования и какие тренды есть на рынке;
- какие этапы необходимо пройти, чтобы поступить в онлайн-магистратуру НИУ ВШЭ и karpov courses;
- почему так популярна и востребована сфера аналитики данных в 2025 году.
Присоединяйтесь ко дню открытых дверей онлайн-магистратуры «Аналитика больших данных» от НИУ ВШЭ и karpov courses: https://clc.to/erid_2W5zFHNZGxY
Реклама. ООО "КАРПОВ КУРСЫ". ИНН 7811764627. erid: 2W5zFHNZGxY.
🧠 SQL-задача с подвохом: "Невидимые дубликаты"
В таблице
🎯 Цель:
Найти количество уникальных пользователей, если:
- Регистр не учитывается (`alice` = `ALICE`)
- Пробелы игнорируются
- Для
— Убираются точки в имени
— Всё после
✅ SQL-решение:
🔍 Как это работает:
LOWER(TRIM(email)) — убираем пробелы и регистр
SPLIT_PART(..., '+', 1) — отрезаем всё после +
REGEXP_REPLACE(..., '\.', '', 'g') — удаляем точки
Считаем DISTINCT, чтобы получить число уникальных email'ов
🔥 Используй такие трюки для:
• антифрода
• чистки базы
• аналитики поведения пользователей
#SQL #PostgreSQL #Gmail #EmailNormalization #DevTools #AntiFraud #DataCleaning #Analytics
В таблице
users
хранятся email-адреса пользователей. Некоторые юзеры регистрируются повторно, маскируя один и тот же email по-разному:| id | name | email |
|----|----------|--------------------------|
| 1 | Alice | [email protected] |
| 2 | Bob | [email protected] |
| 3 | Charlie | [email protected] |
| 4 | Dave | [email protected] |
| 5 | Eve | [email protected] |
🎯 Цель:
Найти количество уникальных пользователей, если:
- Регистр не учитывается (`alice` = `ALICE`)
- Пробелы игнорируются
- Для
@gmail.com
: — Убираются точки в имени
— Всё после
+
отрезается✅ SQL-решение:
SELECT COUNT(DISTINCT normalized_email) AS unique_users
FROM (
SELECT
CASE
WHEN email ILIKE '%@gmail.com' THEN
REGEXP_REPLACE(
SPLIT_PART(SPLIT_PART(LOWER(TRIM(email)), '+', 1), '@', 1),
'\.', '', 'g'
) || '@gmail.com'
ELSE
LOWER(REPLACE(TRIM(email), ' ', ''))
END AS normalized_email
FROM users
) AS cleaned;
🔍 Как это работает:
LOWER(TRIM(email)) — убираем пробелы и регистр
SPLIT_PART(..., '+', 1) — отрезаем всё после +
REGEXP_REPLACE(..., '\.', '', 'g') — удаляем точки
Считаем DISTINCT, чтобы получить число уникальных email'ов
🔥 Используй такие трюки для:
• антифрода
• чистки базы
• аналитики поведения пользователей
#SQL #PostgreSQL #Gmail #EmailNormalization #DevTools #AntiFraud #DataCleaning #Analytics
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.
🗓 Старт курса: 9 июня, 6 недель обучения.
Изучить программу и записаться можно здесь.
Ждем вас!
Реклама. ИП Рыбак А.А. ИНН 771407709607 Erid: 2VtzqxNnFKA
В высоко-нагруженных сервисах Redis — не просто кэш, а важная подсистема, на которой строится значимая часть бизнес-логики. От его стабильности, масштабируемости и отказоустойчивости зависит производительность всего сервиса. Valkey - это современный производительный форк Redis с открытым исходным кодом, поддерживаемый сообществом и рядом крупных компаний. Valkey набирает популярность, поддержан крупными облачными провайдерами, и вполне возможно потеснит или вовсе заменит Redis со временем. Наш курс — для тех, кто хочет держать свой стэк и знания актуальными и глубоко разбираться, как устроен Redis и Valkey.
Изучить программу и записаться можно здесь.
Ждем вас!
Реклама. ИП Рыбак А.А. ИНН 771407709607 Erid: 2VtzqxNnFKA
Please open Telegram to view this post
VIEW IN TELEGRAM
📦 Outbox — надёжная реализация outbox-паттерна на Go для микросервисов
Если твои сервисы пишут в базу и одновременно публикуют события в Kafka, RabbitMQ или другие брокеры — знай: без outbox-паттерна ты рискуешь потерять данные.
🔧
🧠 Что она делает:
1. Сохраняет событие в таблицу
2. Отдельный воркер читает сообщения и отправляет их в брокер
3. После успешной доставки — сообщение помечается как доставленное
💡 Особенности:
- Поддержка PostgreSQL
- Готовые адаптеры для Kafka и RabbitMQ
- Возможность использовать свой брокер (реализуй интерфейс)
- Поддержка сериализации / форматирования событий
- Использует
🧩 Подходит для:
- надёжной синхронизации БД ↔ событий
- микросервисов, где важна консистентность
- систем, где нужна повторная доставка без дублей
🔥 Отличный выбор, если ты хочешь atomic-публикацию событий без тяжёлых фреймворков и сервисов.
#Go #OutboxPattern #Kafka #RabbitMQ #Microservices #EventDriven #PostgreSQL
🔗 https://github.com/oagudo/outbox
@sqlhub
Если твои сервисы пишут в базу и одновременно публикуют события в Kafka, RabbitMQ или другие брокеры — знай: без outbox-паттерна ты рискуешь потерять данные.
🔧
Outbox
— это лёгкая и удобная библиотека на Go, которая помогает сделать доставку сообщений атомарной и надёжной, без лишней сложности.🧠 Что она делает:
1. Сохраняет событие в таблицу
outbox
в рамках транзакции2. Отдельный воркер читает сообщения и отправляет их в брокер
3. После успешной доставки — сообщение помечается как доставленное
💡 Особенности:
- Поддержка PostgreSQL
- Готовые адаптеры для Kafka и RabbitMQ
- Возможность использовать свой брокер (реализуй интерфейс)
- Поддержка сериализации / форматирования событий
- Использует
sqlx
и стандартную database/sql
🧩 Подходит для:
- надёжной синхронизации БД ↔ событий
- микросервисов, где важна консистентность
- систем, где нужна повторная доставка без дублей
🔥 Отличный выбор, если ты хочешь atomic-публикацию событий без тяжёлых фреймворков и сервисов.
#Go #OutboxPattern #Kafka #RabbitMQ #Microservices #EventDriven #PostgreSQL
🔗 https://github.com/oagudo/outbox
@sqlhub
🚀 Solune — высокопроизводительная NoSQL-база данных на Go
Solune — это быстрая и гибкая NoSQL-база данных, разработанная с упором на масштабируемость, низкую задержку и производительность. Она использует приоритетную работу с данными в памяти, чтобы обеспечить молниеносный доступ и минимальную задержку при высоких нагрузках.
🧠 Почему Go?
Solune построена на Go — и вот почему это важно:
• Горутины и каналы — идеально для обработки тысяч запросов одновременно
• Высокая скорость исполнения — Go отлично подходит для чувствительных к производительности систем
• Простота и читаемость — легче поддерживать и развивать проект
• Богатая экосистема — множество библиотек и инструментов для создания надёжных систем
Фокус на хранении в памяти:
• Мгновенный доступ — чтение из памяти быстрее, чем с диска
• Минимальные задержки — нет тяжёлых операций I/O
• Гибкое масштабирование — просто увеличивайте объём RAM
💡 Подходит для:
• Высоконагруженных API
• Систем, где критична скорость доступа
• Приложений с минимальной допустимой задержкой
📌 Solune — это выбор для тех, кто ищет быструю, масштабируемую и современную NoSQL-БД, идеально подходящую для in-memory архитектур.
🔗 GitHub
@sqlhub
Solune — это быстрая и гибкая NoSQL-база данных, разработанная с упором на масштабируемость, низкую задержку и производительность. Она использует приоритетную работу с данными в памяти, чтобы обеспечить молниеносный доступ и минимальную задержку при высоких нагрузках.
Solune построена на Go — и вот почему это важно:
• Горутины и каналы — идеально для обработки тысяч запросов одновременно
• Высокая скорость исполнения — Go отлично подходит для чувствительных к производительности систем
• Простота и читаемость — легче поддерживать и развивать проект
• Богатая экосистема — множество библиотек и инструментов для создания надёжных систем
Фокус на хранении в памяти:
• Мгновенный доступ — чтение из памяти быстрее, чем с диска
• Минимальные задержки — нет тяжёлых операций I/O
• Гибкое масштабирование — просто увеличивайте объём RAM
💡 Подходит для:
• Высоконагруженных API
• Систем, где критична скорость доступа
• Приложений с минимальной допустимой задержкой
📌 Solune — это выбор для тех, кто ищет быструю, масштабируемую и современную NoSQL-БД, идеально подходящую для in-memory архитектур.
git clone https://github.com/thijsrijkers/solune.git
cd solune
🔗 GitHub
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
🔢 PGVector: векторный поиск прямо в PostgreSQL — гайд
Если ты работаешь с embedding'ами (OpenAI, HuggingFace, LLMs) и хочешь делать семантический поиск в SQL — тебе нужен
📦 Установка PGVector (Linux)
Или просто:
• macOS:
• Docker:
• PostgreSQL 13+ (через APT/YUM)
🔌 Подключение расширения в базе
После этого ты можешь использовать новый тип данных
🧱 Пример использования
Создаём таблицу:
Добавляем данные:
Поиск ближайшего вектора:
🧠 Операторы сравнения
PGVector поддерживает несколько видов расстояний между векторами:
-
-
-
-
-
-
Также можно усреднять вектора:
🚀 Индексация для быстрого поиска
HNSW (лучшее качество):
Параметры можно настраивать:
#### IVFFlat (быстрее создаётся, но чуть менее точный):
🔍 Проверка версии и обновление
📌 Особенности
- Работает с PostgreSQL 13+
- Поддержка до 2000 измерений
- Расширяемый синтаксис
- Можно использовать
- Подходит для RAG-пайплайнов, NLP и встраивания LLM-поиска в обычные SQL-приложения
🔗 Подробнее
💡 Храни embedding'и прямо в PostgreSQL — и делай семантический поиск без внешних векторных БД.
Если ты работаешь с embedding'ами (OpenAI, HuggingFace, LLMs) и хочешь делать семантический поиск в SQL — тебе нужен
pgvector
. Это расширение позволяет сохранять и сравнивать векторы прямо внутри PostgreSQL.📦 Установка PGVector (Linux)
git clone --branch v0.8.0 https://github.com/pgvector/pgvector.git
cd pgvector
make
sudo make install
Или просто:
• macOS:
brew install pgvector
• Docker:
pgvector/pgvector:pg17
• PostgreSQL 13+ (через APT/YUM)
🔌 Подключение расширения в базе
CREATE EXTENSION vector;
После этого ты можешь использовать новый тип данных
vector
.🧱 Пример использования
Создаём таблицу:
CREATE TABLE items (
id bigserial PRIMARY KEY,
embedding vector(3)
);
Добавляем данные:
INSERT INTO items (embedding) VALUES ('[1,2,3]'), ('[4,5,6]');
Поиск ближайшего вектора:
SELECT * FROM items
ORDER BY embedding <-> '[3,1,2]'
LIMIT 5;
🧠 Операторы сравнения
PGVector поддерживает несколько видов расстояний между векторами:
-
<->
— L2 (евклидово расстояние)-
<#>
— скалярное произведение-
<=>
— косинусное расстояние-
<+>
— Manhattan (L1)-
<~>
— Хэммингово расстояние (для битовых векторов)-
<%>
— Жаккар (для битовых векторов)Также можно усреднять вектора:
SELECT AVG(embedding) FROM items;
🚀 Индексация для быстрого поиска
HNSW (лучшее качество):
CREATE INDEX ON items USING hnsw (embedding vector_l2_ops);
Параметры можно настраивать:
SET hnsw.ef_search = 40;
#### IVFFlat (быстрее создаётся, но чуть менее точный):
CREATE INDEX ON items USING ivfflat (embedding vector_l2_ops) WITH (lists = 100);
SET ivfflat.probes = 10;
🔍 Проверка версии и обновление
SELECT extversion FROM pg_extension WHERE extname='vector';
ALTER EXTENSION vector UPDATE;
📌 Особенности
- Работает с PostgreSQL 13+
- Поддержка до 2000 измерений
- Расширяемый синтаксис
- Можно использовать
DISTINCT
, JOIN
, GROUP BY
, ORDER BY
и агрегации- Подходит для RAG-пайплайнов, NLP и встраивания LLM-поиска в обычные SQL-приложения
🔗 Подробнее
💡 Храни embedding'и прямо в PostgreSQL — и делай семантический поиск без внешних векторных БД.
Авито открыл AI‑кухню на Data Fest 2025
Компания поделилась секретами работы над искусственным интеллектом.
Особенно заинтересовал их подход к обучению собственной языковой модели. Их секрет ー собственный токенизатор, который эффективнее других моделей обрабатывает русскоязычные тексты на 29%. Это, кстати, дает генерацию текста в два раза быстрее зарубежных LLM на русском языке. Для обучения использовались и открытые датасеты, и обезличенные данные Авито и даже олимпиадные задачи.
Также в компании активно разрабатывают мультимодальную VLM A‑Vision с технологией автоматического распознавания символов в изображениях. В обучении использовали 200 тысячах реальных фото и миллион пар вопрос-ответ. При этом использовали большие языковые модели как «учителей» для автоматической генерации разметки.
А еще Авито упаковал весь ML‑цикл на единой ML‑платформе. Теперь все фичи, разметки, инференсы и обучение в одном месте. Как рассказали в Авито, главная цель платформы ー реализация no-code интерфейса, позволяющий запускать модели без программирования.
Кстати, над моделями 7B в Авито работают в том числе и стажеры, которые используют свежие научные данные и современные стеки, такие как LLM, LoRA, vLLM. Например, один стажерский проект по анализу звонков с помощью большой языковой модели сократил расходы на автоматическую проверку в 10 раз.
Компания поделилась секретами работы над искусственным интеллектом.
Особенно заинтересовал их подход к обучению собственной языковой модели. Их секрет ー собственный токенизатор, который эффективнее других моделей обрабатывает русскоязычные тексты на 29%. Это, кстати, дает генерацию текста в два раза быстрее зарубежных LLM на русском языке. Для обучения использовались и открытые датасеты, и обезличенные данные Авито и даже олимпиадные задачи.
Также в компании активно разрабатывают мультимодальную VLM A‑Vision с технологией автоматического распознавания символов в изображениях. В обучении использовали 200 тысячах реальных фото и миллион пар вопрос-ответ. При этом использовали большие языковые модели как «учителей» для автоматической генерации разметки.
А еще Авито упаковал весь ML‑цикл на единой ML‑платформе. Теперь все фичи, разметки, инференсы и обучение в одном месте. Как рассказали в Авито, главная цель платформы ー реализация no-code интерфейса, позволяющий запускать модели без программирования.
Кстати, над моделями 7B в Авито работают в том числе и стажеры, которые используют свежие научные данные и современные стеки, такие как LLM, LoRA, vLLM. Например, один стажерский проект по анализу звонков с помощью большой языковой модели сократил расходы на автоматическую проверку в 10 раз.
🌊 RisingWave — современная платформа для обработки потоковых данных с открытым исходным кодом. Проект сочетает возможности stream processing и хранения данных, предлагая PostgreSQL-совместимый интерфейс для работы с реальным временем.
Проект имеет встроенную интеграцию с Apache Iceberg, позволяющая непрерывно обогащать данные и сохранять результаты в открытом формате. Платформа оптимизирована для работы с облачными хранилищами S3 и поддерживает эластичное масштабирование ресурсов. Доступны варианты развертывания через Docker и Kubernetes, а также управляемый сервис RisingWave Cloud.
🤖 GitHub
@sqlhub
Проект имеет встроенную интеграцию с Apache Iceberg, позволяющая непрерывно обогащать данные и сохранять результаты в открытом формате. Платформа оптимизирована для работы с облачными хранилищами S3 и поддерживает эластичное масштабирование ресурсов. Доступны варианты развертывания через Docker и Kubernetes, а также управляемый сервис RisingWave Cloud.
🤖 GitHub
@sqlhub
🔥 Успех в IT = скорость + знания + окружение
Здесь ты найдёшь всё это — коротко, по делу и без воды.
Пока другие ищут, где “подглядеть решение”, ты уже используешь самые свежие инструменты!
AI: www.tg-me.com/ai_machinelearning_big_data
Python: www.tg-me.com/pythonl
Linux: www.tg-me.com/linuxacademiya
Собеседования DS: www.tg-me.com/machinelearning_interview
C++ www.tg-me.com/cpluspluc
Docker: www.tg-me.com/DevopsDocker
Хакинг: www.tg-me.com/linuxkalii
Devops: www.tg-me.com/DevOPSitsec
Data Science: www.tg-me.com/data_analysis_ml
Javascript: www.tg-me.com/javascriptv
C#: www.tg-me.com/csharp_ci
Java: www.tg-me.com/java_library
Базы данных: www.tg-me.com/Data Science SQL hub/com.sqlhub
Python собеседования: www.tg-me.com/python_job_interview
Мобильная разработка: www.tg-me.com/mobdevelop
Golang: www.tg-me.com/Golang_google
React: www.tg-me.com/react_tg
Rust: www.tg-me.com/rust_code
ИИ: www.tg-me.com/vistehno
PHP: www.tg-me.com/phpshka
Android: www.tg-me.com/android_its
Frontend: www.tg-me.com/front
Big Data: www.tg-me.com/bigdatai
МАТЕМАТИКА: www.tg-me.com/data_math
Kubernets: www.tg-me.com/kubernetc
Разработка игр: https://www.tg-me.com/gamedev
Haskell: www.tg-me.com/haskell_tg
Физика: www.tg-me.com/fizmat
💼 Папка с вакансиями: www.tg-me.com/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: www.tg-me.com/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: www.tg-me.com/addlist/eEPya-HF6mkxMGIy
Папка ML: https://www.tg-me.com/addlist/2Ls-snqEeytkMDgy
Папка FRONTEND: https://www.tg-me.com/addlist/mzMMG3RPZhY2M2Iy
😆ИТ-Мемы: www.tg-me.com/memes_prog
🇬🇧Английский: www.tg-me.com/english_forprogrammers
🧠ИИ: www.tg-me.com/vistehno
🎓954ГБ ОПЕНСОРС КУРСОВ: @courses
📕Ит-книги бесплатно: https://www.tg-me.com/addlist/BkskQciUW_FhNjEy
Подпишись, если хочешь быть в числе тех, кого зовут в топовые проекты!
Здесь ты найдёшь всё это — коротко, по делу и без воды.
Пока другие ищут, где “подглядеть решение”, ты уже используешь самые свежие инструменты!
AI: www.tg-me.com/ai_machinelearning_big_data
Python: www.tg-me.com/pythonl
Linux: www.tg-me.com/linuxacademiya
Собеседования DS: www.tg-me.com/machinelearning_interview
C++ www.tg-me.com/cpluspluc
Docker: www.tg-me.com/DevopsDocker
Хакинг: www.tg-me.com/linuxkalii
Devops: www.tg-me.com/DevOPSitsec
Data Science: www.tg-me.com/data_analysis_ml
Javascript: www.tg-me.com/javascriptv
C#: www.tg-me.com/csharp_ci
Java: www.tg-me.com/java_library
Базы данных: www.tg-me.com/Data Science SQL hub/com.sqlhub
Python собеседования: www.tg-me.com/python_job_interview
Мобильная разработка: www.tg-me.com/mobdevelop
Golang: www.tg-me.com/Golang_google
React: www.tg-me.com/react_tg
Rust: www.tg-me.com/rust_code
ИИ: www.tg-me.com/vistehno
PHP: www.tg-me.com/phpshka
Android: www.tg-me.com/android_its
Frontend: www.tg-me.com/front
Big Data: www.tg-me.com/bigdatai
МАТЕМАТИКА: www.tg-me.com/data_math
Kubernets: www.tg-me.com/kubernetc
Разработка игр: https://www.tg-me.com/gamedev
Haskell: www.tg-me.com/haskell_tg
Физика: www.tg-me.com/fizmat
💼 Папка с вакансиями: www.tg-me.com/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: www.tg-me.com/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: www.tg-me.com/addlist/eEPya-HF6mkxMGIy
Папка ML: https://www.tg-me.com/addlist/2Ls-snqEeytkMDgy
Папка FRONTEND: https://www.tg-me.com/addlist/mzMMG3RPZhY2M2Iy
😆ИТ-Мемы: www.tg-me.com/memes_prog
🇬🇧Английский: www.tg-me.com/english_forprogrammers
🧠ИИ: www.tg-me.com/vistehno
🎓954ГБ ОПЕНСОРС КУРСОВ: @courses
📕Ит-книги бесплатно: https://www.tg-me.com/addlist/BkskQciUW_FhNjEy
Подпишись, если хочешь быть в числе тех, кого зовут в топовые проекты!
This media is not supported in your browser
VIEW IN TELEGRAM
Просто напиши: *«Создай базу для пиццерии»* — и получишь готовую структуру:
таблицы, связи, ER-диаграмму.
🛠 Что можно дальше:
• Редактировать таблицы
• Сгенерировать тестовые данные
• Экспортировать в SQL
• Задеплоить в Supabase (AWS — скоро)
https://database.build/
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
🔧 Основные функции
- Анализ поведения БД: разбирает использование pg_stat_statements и выявляет «горячие» запросы
- Оптимизация схемы: помогает исправлять проблемы структуры таблиц и индексов
- Библиотека запросов: хранит часто используемые SQL-запросы в JSON‑файле (например myqueries.json)
Linting SQL: встроенный Python‑Sqlfluff для проверки стиля и синтаксиса
- OpenAI/LLM‑помощь: при наличии API-ключа к OpenAI, Ollama или другому LLM вы можете автоматически улучшать запросы и планы выполнения
- Экспорт DDL: получает DDL через pg_dump для анализа через LLM
- Автоматизация параметров: использует pgtune и Docker‑compose для настройки ALTER SYSTEM и генерации конфигураций
github.com
.- Запуск через Docker или Flask: легко стартовать локально или в контейнере .
💡 Как начать?
- Убедитесь, что установлен модуль pg_stat_statements.
- Вы можете сразу запустить готовым Docker-образом.
- Вариант без Docker — через Python/Flask.
- При наличии LLM‑ключа — подключите OpenAI, Ollama и т.д.
- Настройте свою коллекцию запросов в myqueries.json.
- Используйте анализ, lint, советы по индексам и конфигам!
pgAssistant — мощный инструмент для анализа и оптимизации PostgreSQL. Он сочетает детерминированные проверки и интеллектуальные подсказки LLM, и отлично подойдёт как разработчикам, так и начинающим администраторам баз данных. Если нужно — могу помочь с примерами использования, настройкой LLM или запуском через Docker/Flask.
Репозиторий на GitHub насчитывает более 1 300+ ⭐ и активно развивается .
📌 Github
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
Авито выпустил BAT — первую за 12 лет открытую платформу для тестирования алгоритмов ставок в рекламных аукционах. До этого индустрия использовала только iPinYou (2013), но за это время все изменилось: появились новые форматы рекламы, выросли объемы данных, а алгоритмы ставок стали сложнее.
Что умеет BAT?
✔️ В 1000 раз больше данных, чем в iPinYou.
✔️ Работает с современными нагрузками (миллионы запросов в секунду).
✔️ Позволяет тестировать алгоритмы в условиях, максимально близких к реальным.
Что это дает?
✔️ Разработчики могут быстрее и дешевле тестировать модели.
✔️ Рекламодатели получат до 20% больше кликов за те же деньги.
✔️ Пользователи увидят более релевантную рекламу.
BAT — это новый стандарт для индустрии, и он уже доступен в опенсорсе.
Что умеет BAT?
✔️ В 1000 раз больше данных, чем в iPinYou.
✔️ Работает с современными нагрузками (миллионы запросов в секунду).
✔️ Позволяет тестировать алгоритмы в условиях, максимально близких к реальным.
Что это дает?
✔️ Разработчики могут быстрее и дешевле тестировать модели.
✔️ Рекламодатели получат до 20% больше кликов за те же деньги.
✔️ Пользователи увидят более релевантную рекламу.
BAT — это новый стандарт для индустрии, и он уже доступен в опенсорсе.
🎓 Магистратура по ИИ от МТС и НИУ ВШЭ «Исследования и предпринимательство в искусственном интеллекте» — очная программа для тех, кто хочет учиться на реальных кейсах и работать с большими языковыми моделями, видеоаналитикой, синтезом речи и ML в бизнесе.
📍 Где и как:
• Кампус ВШЭ в Москве
• 30 оплачиваемых мест от МТС
• Обучение с доступом к MWS Cloud и GPU
• 70% преподавателей — специалисты из MTS AI / MWS
🛠 Что в программе:
• LLM под задачи бизнеса
• ML на edge-устройствах
• Распознавание и синтез речи
• Технологическое предпринимательство
👨🏻🎓 Поступление:
• Портфолио
• Мотивационное письмо
• Онлайн-экзамен
• Собеседование
• Конкурс на Kaggle
Лучшие студенты получают офферы и стажировки уже в процессе обучения.
Приём заявок стартует 20 июня.
@sqlhub
📍 Где и как:
• Кампус ВШЭ в Москве
• 30 оплачиваемых мест от МТС
• Обучение с доступом к MWS Cloud и GPU
• 70% преподавателей — специалисты из MTS AI / MWS
🛠 Что в программе:
• LLM под задачи бизнеса
• ML на edge-устройствах
• Распознавание и синтез речи
• Технологическое предпринимательство
👨🏻🎓 Поступление:
• Портфолио
• Мотивационное письмо
• Онлайн-экзамен
• Собеседование
• Конкурс на Kaggle
Лучшие студенты получают офферы и стажировки уже в процессе обучения.
Приём заявок стартует 20 июня.
@sqlhub
🗂️ Entity Framework Core — ORM нового поколения для работы с БД. Этот инструмент от Microsoft кардинально меняет подход к взаимодействию с реляционными и NoSQL базами данных.
Для работы инструмент предоставляет мощный слой абстракции, позволяя работать с данными как с объектами, автоматизируя CRUD-операции и миграции схемы. EF Core поддерживает широкий пласт СУБД: от классических SQL Server и PostgreSQL до документоориентированной Cosmos DB. Для SQLite-разработчиков есть отдельный оптимизированный провайдер Microsoft.Data.Sqlite.
🤖 GitHub
@sqlhub
Для работы инструмент предоставляет мощный слой абстракции, позволяя работать с данными как с объектами, автоматизируя CRUD-операции и миграции схемы. EF Core поддерживает широкий пласт СУБД: от классических SQL Server и PostgreSQL до документоориентированной Cosmos DB. Для SQLite-разработчиков есть отдельный оптимизированный провайдер Microsoft.Data.Sqlite.
🤖 GitHub
@sqlhub
🧩 От кода к сообществу: коллективный вклад в SQL Server 2025
Сегодня, 16 июня 2025, Microsoft анонсировала публичный превью SQL Server 2025 — релиз, который они называют самым масштабным за последние 10 лет.
● 🔐 Безопасность и производительность
Более 50 улучшений в движке: усиленная защита (интеграция с Entra), оптимизация tempdb и решение «Halloween problem».
Партнёры вроде HPE демонстрируют отличную масштабируемость в продакшене.
● 🤖 Встроенный AI и векторный поиск
Нативная поддержка векторных индексов и embeddings — можно запускать генеративные модели и семантический поиск прямо внутри SQL Server без ETL.
Алгоритмы DiskANN позволяют делать это эффективно даже без GPU.
● 👨💻 Новый уровень для разработчиков
Поддержка JSON‑типов, RegEx-функций, REST‑API и стриминга изменений (Change Event Streaming).
Вышли SSMS 21 и новая редакция Standard Developer.
● ☁️ Гибрид и облако через Azure
Фича Fabric mirroring позволяет делать live-зеркало в Microsoft Fabric для real-time аналитики.
Расширенная поддержка Azure Arc позволяет управлять SQL Server в гибридной инфраструктуре (on-premises + облако).
● 🤝 Сообщество в центре внимания
Над релизом работали MVP, инженеры Microsoft и партнёры.
В блоге есть доклады с Build 2025, интервью и видео от Bob Ward, Muazma Zahid, Anthony Nocentino и других.
SQL Server 2025 — это AI-оптимизированный движок нового поколения: безопасный, гибкий, ориентированный на разработчиков и тесно интегрированный с облаком.
Подробнее
@sqlhub
Сегодня, 16 июня 2025, Microsoft анонсировала публичный превью SQL Server 2025 — релиз, который они называют самым масштабным за последние 10 лет.
● 🔐 Безопасность и производительность
Более 50 улучшений в движке: усиленная защита (интеграция с Entra), оптимизация tempdb и решение «Halloween problem».
Партнёры вроде HPE демонстрируют отличную масштабируемость в продакшене.
● 🤖 Встроенный AI и векторный поиск
Нативная поддержка векторных индексов и embeddings — можно запускать генеративные модели и семантический поиск прямо внутри SQL Server без ETL.
Алгоритмы DiskANN позволяют делать это эффективно даже без GPU.
● 👨💻 Новый уровень для разработчиков
Поддержка JSON‑типов, RegEx-функций, REST‑API и стриминга изменений (Change Event Streaming).
Вышли SSMS 21 и новая редакция Standard Developer.
● ☁️ Гибрид и облако через Azure
Фича Fabric mirroring позволяет делать live-зеркало в Microsoft Fabric для real-time аналитики.
Расширенная поддержка Azure Arc позволяет управлять SQL Server в гибридной инфраструктуре (on-premises + облако).
● 🤝 Сообщество в центре внимания
Над релизом работали MVP, инженеры Microsoft и партнёры.
В блоге есть доклады с Build 2025, интервью и видео от Bob Ward, Muazma Zahid, Anthony Nocentino и других.
SQL Server 2025 — это AI-оптимизированный движок нового поколения: безопасный, гибкий, ориентированный на разработчиков и тесно интегрированный с облаком.
Подробнее
@sqlhub