Skip to content

sql-monk/pure-utils

Repository files navigation

Основні компоненти проекту:

🔧 MCP інтеграція (Model Context Protocol)

Два .NET 8 сервери, які реалізують протокол для взаємодії з SQL Server через AI-асистентів:

  • PureSqlsMcp - динамічний сервер для отримання метаданих БД:

    • Список баз даних, таблиць, представлень, процедур, функцій
    • Детальна інформація про структуру таблиць (колонки, індекси, партиції)
    • DDL історія змін об'єктів з фільтрацією за часом/користувачем/типом події
    • Генерація скриптів об'єктів з усіма залежностями
  • PlanSqlsMcp - сервер для аналізу планів виконання:

    • Отримання estimated execution plans у форматі XML
    • Автоматичне очищення запитів від службових команд SHOWPLAN
    • Підтримка батчів та складних запитів

📊 Схема util - основна бібліотека (100+ об'єктів)

Управління метаданими:

  • Функції для роботи з розширеними властивостями (MS_Description)
  • Автоматичне витягування описів з коментарів у коді
  • Універсальні функції для отримання ID/назв будь-яких об'єктів БД
  • Процедури встановлення описів для всіх типів об'єктів

Аналіз та оптимізація індексів:

  • indexesGetConventionNames - генерація стандартизованих назв (PK_, CI_, IX_ з суфіксами _INC, _FLT, _UQ)
  • indexesGetMissing - пошук відсутніх індексів з розрахунком переваги створення
  • indexesGetUnused - виявлення невикористовуваних індексів
  • indexesGetSpaceUsed - детальна статистика використання дискового простору
  • Автоматичне перейменування індексів за конвенціями

Робота з SQL кодом:

  • Парсинг та аналіз модулів (процедур, функцій, тригерів)
  • Рекурсивний пошук входжень у визначеннях об'єктів
  • Виділення коментарів (однорядкових/багаторядкових)
  • Розбиття коду на рядки з нумерацією
  • Пошук схожих модулів через токенізацію та хешування

Extended Events моніторинг:

  • Готові XE сесії для відстеження помилок, debug подій, активності користувачів
  • Функції читання даних з XE файлів (xeGetErrors, xeGetDebug, xeGetModules)
  • Таблиці для довготривалого зберігання подій з оптимізованими індексами
  • Відстеження позицій читання для інкрементального завантаження

Генерація DDL скриптів:

  • tablesGetScript - повний DDL таблиць з усіма обмеженнями
  • objesctsScriptWithDependencies - рекурсивна генерація з урахуванням залежностей
  • Підтримка cross-database залежностей та синонімів
  • Правильний порядок створення об'єктів (topological sort)

🔌 Схема mcp - адаптери для AI-інтеграції

Процедури-обгортки, які формують JSON відповіді для MCP протоколу:

🛠️ Допоміжні компоненти

PowerShell скрипти:

Таблиці для аудиту та моніторингу:

Утилітарні функції:

Проект дотримується чітких конвенцій найменування, має детальну документацію в коментарях кожного об'єкта та орієнтований на автоматизацію рутинних задач адміністрування великих DWH з можливістю інтеграції з AI-асистентами для інтелектуального аналізу та оптимізації.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •