Добавить в корзинуПозвонить
Найти в Дзене
Postgres DBA

Доменная инструкция PG_EXPECTO + Philosophical_instruction 5.1: Часть-1.

Результаты анализа входных данных (философская инструкция, pg_expecto, промпты, отчёты инцидента), оценка доменной методологии для финального анализа PostgreSQL, обоснование дополнения pg_expecto уровнями достоверности, протоколом обработки противоречий, типовыми порогами метрик и интеграцией с инженерными практиками — на основе Philosophical_instruction_BETA_v5.1 и роли DeepSeek.
Max:
Оглавление

Результаты анализа входных данных (философская инструкция, pg_expecto, промпты, отчёты инцидента), оценка доменной методологии для финального анализа PostgreSQL, обоснование дополнения pg_expecto уровнями достоверности, протоколом обработки противоречий, типовыми порогами метрик и интеграцией с инженерными практиками — на основе Philosophical_instruction_BETA_v5.1 и роли DeepSeek.

PostgreSQL + DeepSeek: эпистемический контроль.
PostgreSQL + DeepSeek: эпистемический контроль.

Max: PG_EXPECTO

GitHub - Комплекс pg_expecto для статистического анализа производительности и нагрузочного тестирования СУБД PostgreSQL

Philosophical_instruction_BETA_v5.1.md - Философское ядро + процедурный скелет автономного AI-агента с встроенной самопроверкой. Эпистемология, этика честности, научный метод, think pipeline (CoVe, ToT, Pre-Mortem, Red Teaming, 7 Грехов). Максимальная правдивость, защита от галлюцинаций и prompt injection.

GitFlic - pg_expecto - статистический анализ производительности и ожиданий СУБД PostgreSQL

Глоссарий терминов | Postgres DBA | Дзен

-2

Предисловие

Настоящий документ представляет собой методологический анализ интеграции доменной инструкции по статистическому анализу производительности PostgreSQL (PG_EXPECTO) и эпистемической дисциплины, заданной философской инструкцией для автономного ИИ-агента (Philosophical_instruction_BETA_v5.1), выполненный с помощью DeepSeek. В ходе работы проверена достаточность исходных материалов для формирования финального отчёта по инциденту, выявлены области усиления инструкции pg_expecto (уровни достоверности, протокол противоречий, пороговые значения метрик, связь с инженерными практиками) и предложены конкретные дополнения, повышающие строгость, воспроизводимость и эпистемическую честность анализа при работе с реальными данными о производительности СУБД.

Уровни уверенности инструкции pg_expecto

Задача

Проанализировать и дополнить инструкцию pg_expecto для более полного применения доменной методологии при подготовке исходных данных для финального анализа с помощью философской инструкции, задающей эпистемическую дисциплину, самопроверку и маркировку достоверности.

Постановка задачи нейросети DeepSeek

-3
При подготовке ответа строго следуй инструкции "Philosophical_instruction_BETA_v5.1.md"
Ты - эксперт по анализу производительности СУБД PostgreSQL.
Входные данные для анализа:
"Philosophical_instruction_BETA_v5.1.md" - филосовская инструкция для подготовки финального анализа
"инструкция_pg_expecto.txt" - инструкция для подготовки исходного анализа
"1.incident-prompt.txt" - промпт для подготовки исходного анализа
"incident.txt" - исходный анализ
"2.prompt-Philosophical_instruction.txt" - промпт для подготовки финального анализа с использованием философской инструкции
"2.analyze.txt" - финальный анализ
Задача
1. Проанализируй входные данные.
2. Проанализируй достаточность материалов для примерения доменная методологии при формировании финального анализа
3. Проанализируй необходимость дополнения "инструкция_pg_expecto.txt" дополнительными материалами доменной методологии
4. При необходимости дополни метарилы по доменной методологии для дополнения "инструкция_pg_expecto.txt"
-4

Инициализация — Onboarding

0. Проверка окружения

⚙️ Для полной функциональности убедитесь, что в настройках чата включены:

  1. Режим мышления (Deep Think / Thinking / Reasoning) — без него не работают внутренние протоколы проверки.
  2. Веб-поиск (Web Search / Browse) — без него все данные ограничены 🟡 (из памяти).

Если оба включены — готов. Если недоступны — продолжаю с ограничениями.

⚠️ Примечание: Я работаю по эпистемической инструкции, а не как узкий доменный эксперт. Для специализированных задач (базы данных, медицина, право, финансы, инженерия) — предоставьте ваши доменные критерии, чтобы мои «светофоры» были точными.
💡 В длинных чатах (20+ сообщений): для точности инструкции полезно подвести краткий итог текущего состояния (TL;DR), чтобы мы оставались синхронизированы.

1. Режимы и светофоры

Режимы — управляют глубиной и форматом:

  • Normal (по умолчанию) — 70% практика / 30% контекст.
  • Brief («кратко», «TL;DR») — только факты, без оформления.
  • Ultra-Brief («одно предложение», «3 строки») — минимум слов.
  • Deep («глубже», «как мастер») — принципы, аналогии, философия.
  • Debug («не работает», «ошибка») — пошаговая диагностика.
  • Review («проверь мой код») — оценка с итоговым статусом.
  • Brainstorming («что если», «давай порассуждаем») — спекулятивный режим.

Светофоры — уровень уверенности в каждом факте:

  • 🟢 Подтверждено источником или детерминированной логикой.
  • 🟡 Вероятно, но не подтверждено.
  • 🔴 Предположение или устаревшие данные. Проверьте перед использованием.
  • ⬛ Термин или концепт не найден ни в одном источнике.

Светофоры не подлежат обсуждению — это Приоритет 1 (эпистемическая честность). Отключить их невозможно.

Готов. Что делаем?

Анализ входных данных и методологии

1. Анализ входных данных

Предоставлены следующие файлы:

  • 🟢 Philosophical_instruction_BETA_v5.1.md — полная философско-процедурная инструкция для ИИ-агента, определяющая эпистемические принципы, протоколы проверки, обработку неопределённости, приоритеты честности.
  • 🟢 инструкция_pg_expecto.txt — доменная инструкция для эксперта по PostgreSQL: правила анализа метрик, требования к строгости, критерии недостаточности данных, глоссарий.
  • 🟢 1.incident-prompt.txt — промпт, задающий структуру исходного отчёта по инциденту производительности за два периода.
  • 🟢 incident.txt — готовый исходный анализ, выполненный в соответствии с промптом и инструкцией pg_expecto. Содержит детальные метрики, корреляции, выводы.
  • 🟢 2.prompt-Philosophical_instruction.txt — промпт для финального анализа с требованием использовать философскую инструкцию и pg_expecto.
  • 🟢 2.analyze.txt — финальный отчёт, подготовленный на основе incident.txt с применением философской инструкции (содержит светофоры, явные указания на недостаточность данных, структурированные выводы).

Вывод по п.1: 🟢 Все входные данные представлены в полном объёме, соответствуют заявленным целям. Финальный анализ (2.analyze.txt) демонстрирует применение принципов философской инструкции: светофоры расставлены гранулярно, указаны пробелы в данных, рекомендации носят диагностический, а не спекулятивный характер.

2. Достаточность материалов для применения доменной методологии при формировании финального анализа

Доменная методология в контексте данного запроса — это совокупность правил и критериев из инструкция_pg_expecto.txt, адаптированная для работы под управлением философской инструкции.

Анализ 2.analyze.txt показывает:

  • 🟢 Соблюдена структура, заданная в 2.prompt-Philosophical_instruction.txt: Общая информация → Ключевые проблемы → Рекомендации → Необходимая дополнительная информация.
  • 🟢 Применены светофоры согласно Philosophical_instruction_BETA_v5.1.md: каждая метрика и вывод промаркированы уровнем достоверности (🟢 для подтверждённых отчётом цифр, 🟡 для предположений, 🔴 для критических пробелов).
  • 🟢 Строго соблюдён принцип «Не придумывай» из pg_expecto: там, где данных недостаточно (например, hit ratio, план запроса), даны явные указания на необходимость дополнительной информации, без попытки домыслить.
  • 🟢 Проведён анализ внутренней согласованности: отмечено, что доминирование IO в ожиданиях тривиально (так как IO ~100% WAITINGS), что соответствует требованию pg_expecto не делать ложных выводов из математических зависимостей.
  • 🟢 Выдержана профессиональная терминология и ссылки на параметры PostgreSQL.
  • 🟢 Указаны границы применимости: финальный отчёт явно перечисляет, какие именно выводы невозможны без дополнительных данных (текст запроса, план, pg_stat_statements и т.д.).

Вывод по п.2: 🟢 Материалов достаточно для применения доменной методологии. Финальный анализ полностью соответствует требованиям как pg_expecto, так и философской инструкции. Пробелы в данных честно признаны, рекомендации сосредоточены на диагностике, а не на спекулятивных изменениях конфигурации.

3. Необходимость дополнения инструкция_pg_expecto.txt дополнительными материалами доменной методологии

Анализ инструкция_pg_expecto.txt выявляет следующие сильные стороны:

  • 🟢 Чёткие правила: не придумывать, опираться только на предоставленные данные.
  • 🟢 Требование указывать, каких именно данных не хватает.
  • 🟢 Учёт математических зависимостей (например, если A = B + C, корреляция A и B неинформативна).
  • 🟢 Глоссарий ключевых терминов (скользящая медиана, операционная скорость, ВКО, CPI).
  • 🟢 Требование анализировать тренды, а не точечные значения.

Однако при сопоставлении с философской инструкцией и практикой анализа инцидентов можно выделить области для потенциального усиления:

  1. Отсутствие явной шкалы уверенности. В pg_expecto не предусмотрена маркировка выводов по степени достоверности. В финальном отчёте эта функция была добавлена благодаря философской инструкции (светофоры).
  2. 🟡 Рекомендация: Дополнить pg_expecto разделом о градациях уверенности (аналогично светофорам), чтобы даже в исходном анализе различать подтверждённые метрики и предположения.
  3. Отсутствие протокола действий при противоречивых данных. В pg_expecto сказано «отметь аномалии и объясни возможные сценарии, но без домыслов». Философская инструкция содержит более детальный протокол: явно зафиксировать конфликт, применить иерархию доверия, предложить проверку.
  4. 🟡 Рекомендация: Добавить в pg_expecto краткий алгоритм разрешения противоречий (например, при расхождении метрик vmstat и iostat).
  5. Не указаны конкретные пороговые значения для «тревожных» метрик. В pg_expecto есть общие требования (например, «существенно отличается от рекомендуемого»), но нет числовых критериев. В философской инструкции для Danger Zones заданы чёткие типы (A/B) и действия.
  6. 🟡 Рекомендация: Дополнить pg_expecto таблицей типовых порогов для PostgreSQL (например, hit ratio < 95% — 🟡, < 90% — 🔴; checkpoint_timeout относительно WAL объёма; avg(wa) > 10% — 🟡 и т.д.). Это повысит воспроизводимость анализа.
  7. Отсутствие явной связи с общеинженерными принципами. Философская инструкция опирается на 7 смертных грехов инженерии, Pre-Mortem, Red Teaming. В pg_expecto эти концепции не упоминаются, хотя применимы к анализу отказов СУБД.
  8. 🟡 Рекомендация: Включить в pg_expecto ссылки на общие инженерные практики (например, при анализе запросов проверять на наличие silent error swallowing или race conditions в логике приложения, генерирующего запросы).

4. Дополнительные материалы по доменной методологии для дополнения инструкция_pg_expecto.txt

На основе выводов п.3 предлагаю следующий дополнительный блок для включения в инструкция_pg_expecto.txt. Он сохраняет стиль исходной инструкции, но усиливает её методологическую строгость и связь с философскими принципами.

text

### ДОПОЛНЕНИЕ К ИНСТРУКЦИИ pg_expecto (версия 1.1)

## 5. Уровни достоверности выводов

При формулировании каждого утверждения указывай его статус:

- "Уровень-1:Подтверждено данными" — значение получено непосредственно из предоставленных метрик или является прямым математическим следствием (например, сумма типов ожиданий).

- "Уровень-2:Вероятно, но требует проверки" — вывод основан на косвенных признаках, корреляциях или общеизвестных практиках, но не подтверждён прямыми данными в отчёте.

- "Уровень-3:Предположение/ устаревшее" — гипотеза, для проверки которой необходимы дополнительные данные, либо данные отсутствуют в принципе.

- "Уровень-4:Невозможно оценить" — термин или метрика не фигурируют в отчёте, и их значение неизвестно.

Пример:

- Уровень-1: Медианное значение SPEED во втором периоде = 241876 (из данных).

- Уровень-2: Вероятно, рост DataFileRead связан с seq scan большой таблицы (требуется план запроса).

- Уровень-3: Точная причина падения производительности не установлена (недостаточно данных).

## 6. Протокол обработки противоречий в данных

Если две метрики дают противоречивую картину (например, util диска низкий, а ожидания IO высокие):

1. Зафиксировать факт противоречия в явном виде (Уровень-1).

2. Применить иерархию доверия: прямые измерения СУБД (pg_stat_*) > данные ОС (iostat/vmstat) > косвенные корреляции.

3. Предложить гипотезы, объясняющие расхождение (Уровень-2).

4. Указать, какие дополнительные данные необходимы для разрешения противоречия (Уровень-3).

## 7. Типовые пороговые значения для PostgreSQL (справочно)

При анализе используй следующие ориентиры для классификации проблем (если применимо к предоставленным данным):

| Метрика | Уровень-1 (Норма) | Уровень-2 (Внимание) | Уровень-3 (Критично) |

|---------|-------------------|----------------------|----------------------|

| **Cache Hit Ratio** (blks_hit/(blks_hit+blks_read)) | > 95% | 90–95% | < 90% |

| **CPU iowait (wa)** | < 5% | 5–10% | > 10% |

| **Checkpoint frequency** (по логам) | < 1 в 5 мин | 1–5 в 5 мин | > 5 в 5 мин |

| **Dead tuples ratio** (n_dead_tup / n_live_tup) | < 10% | 10–30% | > 30% |

| **Average read latency (r_await)** | < 5 мс | 5–15 мс | > 15 мс |

| **Average write latency (w_await)** | < 10 мс | 10–30 мс | > 30 мс |

| **Run queue (procs/r) vs CPU cores** | < 50% ядер | 50–100% ядер | > 100% ядер |

> Важно: Данные пороги являются ориентировочными. Окончательный вывод всегда должен опираться на комплексный анализ трендов и корреляций в предоставленных данных. При отсутствии точных измерений используй статус "Уровень-2" или "Уровень-3".

## 8. Связь с общеинженерными практиками

При анализе запросов и конфигурации обращай внимание на признаки типовых инженерных ошибок:

- **Silent error swallowing** — наличие в логах предупреждений, которые не приводят к ошибкам, но могут указывать на проблемы (например, `could not write to log file`).

- **Resource leaks** — монотонный рост числа соединений, временных файлов, потребления памяти со временем.

- **Copy-paste without understanding** — наличие в конфигурации параметров, явно не соответствующих аппаратному обеспечению (например, `random_page_cost=4` на SSD).

- **Race conditions** в приложении — косвенно проявляются как высокая частота переключений контекста (cs) при низкой нагрузке CPU.

При обнаружении таких признаков отмечай их в разделе «Проблемы инфраструктуры» со статусом "Уровень-2" и рекомендацией проверить код приложения или конфигурацию ОС.

Итоговое заключение по задаче

  1. 🟢 Анализ входных данных выполнен: все предоставленные файлы соответствуют целям, финальный отчёт 2.analyze.txt демонстрирует успешную интеграцию философской инструкции и доменной экспертизы PostgreSQL.
  2. 🟢 Достаточность материалов подтверждена: финальный анализ полностью удовлетворяет требованиям как pg_expecto, так и философской инструкции, честно указывая границы применимости.
  3. 🟡 Необходимость дополнения инструкция_pg_expecto.txt выявлена для повышения методологической строгости: добавление уровней достоверности, протокола противоречий, пороговых значений и связи с инженерными практиками.
  4. 🟢 Дополнительные материалы представлены в виде блока, готового к включению в инструкцию pg_expecto, с использованием уточнённых формулировок «Уровень-1:Подтверждено данными» и т.д.

-5

Общий итог

Проведённый анализ подтвердил, что входные данные (Philosophical_instruction_BETA_v5.1, инструкция pg_expecto, промпты и отчёты инцидента) являются достаточными для применения доменной методологии PostgreSQL при формировании финального эпистемически честного отчёта: финальный анализ 2.analyze.txt корректно использует светофоры, указывает пробелы в данных и избегает спекулятивных выводов. Вместе с тем выявлена возможность усилить саму инструкцию pg_expecto: добавление уровней достоверности (🟢/🟡/🔴/⬛), формального протокола разрешения противоречий в метриках, справочных пороговых значений для ключевых показателей PostgreSQL (hit ratio, iowait, checkpoint frequency, r_await и др.) и явной связи с общеинженерными антипаттернами (silent error swallowing, resource leaks, race conditions). Предложенный блок дополнений повышает методологическую строгость, воспроизводимость и совместимость pg_expecto с философской инструкцией, не нарушая её принципов максимальной правдивости и защиты от галлюцинаций.

Послесловие

Представленные дополнения к pg_expecto не являются заменой исходной инструкции, а служат надстройкой, активируемой при работе под управлением Philosophical_instruction или в сценариях, требующих повышенной эпистемической дисциплины (например, постмортем критических инцидентов, рецензирование аналитических отчётов, обучение ИИ-агентов). Рекомендуется внедрить их как отдельный раздел «Опциональное усиление для философского режима» или включить в основную инструкцию версии 1.1, сохранив обратную совместимость. При дальнейшем развитии методологии полезно дополнить pg_expecto шаблонами автоматизированной проверки согласованности метрик (например, скриптами-валидаторами на базе PL/pgSQL или Python) и сценариями red teaming для тестирования устойчивости выводов к преднамеренно искажённым входным данным.