====================================================================== 📘 TITLE: 💻 ГАЙД: ОПТИМИЗАЦИЯ ТЯЖЕЛЫХ SQL ЗАПРОСОВ И ИНДЕКСОВ В CLAUDE 💻 | АВТОВЫДАЧА 📂 CATEGORY: Claude 📄 FILENAME: gayd_optimizatsiya_tyazhelyh_sql_zaprosov_i_indeksov_v_claude_avt_guide.txt ====================================================================== 💻 ГАЙД: АНАЛИЗ ПЛАНОВ ВЫПОЛНЕНИЯ (EXPLAIN ANALYZE) И ОПТИМИЗАЦИЯ POSTGRESQL / MYSQL В CLAUDE 💻 🔹 ВВЕДЕНИЕ: Медленные SQL-запросы с полным сканированием таблиц (Sequential Scan) на базах данных в десятки миллионов строк приводят к перегрузке CPU и падению сервисов. Claude 3.5 Sonnet умеет детально читать вывод `EXPLAIN (ANALYZE, BUFFERS)`, находить узкие места в JOIN'ах и предлагать точечные составные индексы (B-Tree, GIN, BRIN). 🔹 ШАГ 1: ПРОМПТ ДЛЯ ОПТИМИЗАЦИИ ЗАПРОСА ```xml Ты — Senior Database Administrator (PostgreSQL High-Load Specialist). Оптимизируй медленный SQL-запрос и вывод плана выполнения EXPLAIN ANALYZE. [ВСТАВЬТЕ ВАШ SQL ЗАПРОС] [ВСТАВЬТЕ ВЫВОД EXPLAIN (ANALYZE, BUFFERS)] 1. Объясни, почему запрос выполняется медленно (Seq Scan, Hash Join, Disk Spills). 2. Перепиши SQL с использованием CTE, Window Functions или партиционирования. 3. Предоставь DDL-команды создания необходимых составных или частичных индексов (Partial Indexes). ``` 🔹 ШАГ 2: ПРИМЕР ЧАСТИЧНОГО ИНДЕКСА (PARTIAL INDEX) Claude часто находит решения, ускоряющие запросы в 100 раз при экономии 90% дискового пространства: ```sql -- Вместо индексации всей таблицы на 50 млн строк: CREATE INDEX idx_orders_unprocessed ON orders (created_at) WHERE status = 'PENDING'; ``` 💡 Если у вас возникнут любые вопросы по выполнению шагов из этого гайда — напишите в чат заказа, я с радостью подскажу!