Проектирование и оптимизация БД с помощью ИИ

Продвинутое программирование с ИИ-ассистентами

Thalia Barrera

AI Engineering Curriculum Manager, DataCamp

Подключение реальных данных

 

sql-table-error.png

 

  • Новая папка в директории /usecase Atlas
  • sqlite3.OperationalError: no such table: activity_events
  • ❗ Таблица существует под другим именем: несоответствие схем
Продвинутое программирование с ИИ-ассистентами

ИИ для сопоставления схем

schema-mismatch.png

🤖 Запрос на согласование схем:

Приведите схему базы данных в соответствие с требованиями Atlas. Используйте таблицы из продакшн-базы и таблицы, ожидаемые Atlas. Безопасно переименуйте таблицы и столбцы, укажите соответствие между исходными и новыми данными.

Продвинутое программирование с ИИ-ассистентами

ai-table-squema.mp4

Продвинутое программирование с ИИ-ассистентами

Обновление данных в реальных условиях

mermaid: datacamp-purple: конвейер согласования данных

 

  • Wayfarer получает события от партнёров
  • Партнёры присылают дубликаты, исправления и корректировки
  • Устаревшие данные → неточные KPI
  • Согласование через CRUD-операции
Продвинутое программирование с ИИ-ассистентами

Обнаружение дубликатов с помощью ИИ

 

  • Партнёры присылают новые пакеты событий бронирования
  • Несколько провайдеров обращаются к одному API → дубликаты неизбежны
  • Необходимо обнаружить дубликаты перед вставкой в продакшн

nanobanana: center: обнаружение дубликатов в таблицах базы данных

Продвинутое программирование с ИИ-ассистентами

Разработка запроса для обнаружения дубликатов

sql-duplication.png

Продвинутое программирование с ИИ-ассистентами

Оптимизация производительности запросов

SQL-запрос:

sql-innefficient-query2.png

🤖 Запрос на оптимизацию производительности:

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

Продвинутое программирование с ИИ-ассистентами

ai-efficient-query.mp4

Продвинутое программирование с ИИ-ассистентами

Проектирование БД в условиях масштабирования

 

🤖 Запрос на проектирование базы данных:

Исходя из этой схемы и нагрузки (частые операции чтения KPI по дате и городу, ежедневная пакетная вставка), предложите улучшения нормализации, стратегии партиционирования и варианты масштабирования.

Приоритизируйте изменения с наилучшим соотношением эффекта и трудозатрат.

sql-data-growth.png

Продвинутое программирование с ИИ-ассистентами

ai-sql-partitioning.mp4

Продвинутое программирование с ИИ-ассистентами

Давайте попрактикуемся!

Продвинутое программирование с ИИ-ассистентами

Preparing Video For Download...