
Данни формират гръбнака на всяко приложение, съхранявайки важна информация, която управлява процеси и системи. Независимо дали става въпрос за малък проект или за критично приложение на ниво предприятие, капацитетът на базата данни се превръща в съществен фактор, който трябва да се вземе предвид. Лошо управлявана база данни може да доведе до влошена производителност и неуспешно извличане на информация. Цялостните операции на даден бизнес могат да бъдат значително засегнати, ако към базата данни не се приложи строг мониторинг и контрол.
Следователно, като част от рутинното управление на база данни, е необходимо да се следи обемът на наличните данни и размерът на базата данни. За стабилни СУБД като SQL това е особено вярно. С безпроблемното манипулиране на данни, предлагано от SQL, размерът на базата данни може да се разшири по-бързо от очакваното. Това прави решаващо за разработчика или инженера на база данни да разбере как да оцени размера на базата данни в SQL.
Определяне на размера на базата данни с помощта на SQL
Размерът на базата данни може да бъде получен в SQL с помощта на вградени функции или схеми, които значително опростяват процеса. Въпреки че конкретните команди може да се различават в зависимост от вашата SQL версия, общият подход е последователен.
Първо, важно е да разберете защо получаването на размера на базата данни е важно. Тези данни помагат на администраторите в:
- Анализиране на пространството, използвано от отделните бази данни
- Планиране на архивиране на бази данни
- Вземане на решение за подходящите стратегии за мащабиране и прогнозиране на хардуерните изисквания
Кодът е обяснен
Използвайки някои вградени схеми и функции, можем да извлечем размера на базата данни. Схемата `sys-database_files` съдържа информация за данните и регистрационните файлове на базата данни.
SELECT sum(size * 8.0/1024) as 'Size (MB)' FROM sys.master_files WHERE database_id = DB_ID('YourDatabaseName') AND type = 0;
Кодът работи на прост принцип. Той умножава размера по 8.0 (тъй като размерът се връща в страници, където 1 страница се равнява на 8KB) и след това го разделя на 1024, за да върне размера в MB.
Разбиране на SQL библиотеки и функции
`sys.master_files` е изглед на системен каталог, който връща ред за всеки файл от конкретна база данни (данни или регистрационни файлове). Функцията `DB_ID` връща конкретния идентификатор на базата данни, към която е приложена. Прилагането на функцията `sum` върху резултата ни позволява да получим общия размер на базата данни. В нашия случай вземаме сумата от размера на всички файлове с данни, където „тип = 0“ означава файлове с данни.
Чрез разбирането на тези вградени изгледи и функции, SQL разработчикът може не само без усилие да борави с бази данни, но и да ги наблюдава умело и да гарантира, че винаги са високо оптимизирани и работят по най-добрия начин. Фино настроената SQL база данни е от ключово значение за доставянето на бързи и ефективни приложения, които да обслужват вашите бизнес нужди.