Skip to content

Реализация безопасности SQL Server с помощью хранимых процедур и представлений

Пересказ статьи K. Brian Kelley. Implementing SQL Server Security with Stored Procedures and Views


Проблема


Я понимаю, что посредством использования цепочки владения SQL Server можно ограничить доступ к таблицам с данными, в то же время позволяя приложениям запрашивать и модифицировать данные. Как это работает? Имеются ли примеры, которые я мог бы использовать в собственном коде?


Continue reading "Реализация безопасности SQL Server с помощью хранимых процедур и представлений"

PostgreSQL: как обновлять большие таблицы

Пересказ статьи Amelia P. PostgreSQL: How To Update Large Tables


Обновление таблиц в PostgreSQL может вызвать затруднения, особенно при добавлении столбцов в таблицу с сотнями миллионов строк.
Continue reading "PostgreSQL: как обновлять большие таблицы"

Синонимы в SQL Server

Пересказ статьи Greg Larsen. SQL Server Synonyms


В грамматике синоним обозначает существительное, которое имеет тот же смысл, что и другое слово. SQL Server позволяет вам создавать синонимы, поэтому вы можете определять альтернативные имена для уже существующих объектов. Синонимы работают подобно алиасам столбцов или таблиц. Однако синоним создается как объект в базе данных, а не определяется временно при выполнении. В этой статье я объясню, как создавать и использовать синонимы, помогающие разрабатывать и управлять кодом T-SQL.

Continue reading "Синонимы в SQL Server"

Как узнать, чьи запросы больше всего используют ЦП

Пересказ статьи Brent Ozar. How to Find Out Whose Queries are Using The Most CPU


У вас есть множество пользователей на одном SQL Server, и вы хотите узнать, кто из них потребляет больше ресурсов. В SQL Server это сделать нелегко. Вы можете сделать запрос к некоторым административным представлениям, чтобы увидеть запросы или базы данных, которые потребляют большую часть ресурсов, но вы не можете сказать, какие пользователи это делают.
Continue reading "Как узнать, чьи запросы больше всего используют ЦП"

Неиндексированные внешние ключи могут ухудшить производительность

Пересказ статьи Brent Ozar. Unindexed Foreign Keys Can Make Performance Worse


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

Но их тоже нужно проиндексировать. Continue reading "Неиндексированные внешние ключи могут ухудшить производительность"

Как узнать, что мой запрос достаточно хорош для рабочей системы?

Пересказ статьи Brent Ozar. How Do I Know If My Query Is Good Enough for Production?


Когда меня об этом спрашивают, вот что мне приходит в голову:

  • Сколько раз я собираюсь выполнять его? Это одноразовая задача, или он будет выполняться тысячи раз в секунду на главной странице популярного веб-сайта?

  • В какое время дня/недели он будет выполняться? Будут ли это пиковые нагрузки или нерабочее время?

  • Этот сервер обычно выполняет небольшие транзакции, или он является сервером для создания отчетов?

  • Удерживает ли мой запрос блокировки во время выполнения?


Continue reading "Как узнать, что мой запрос достаточно хорош для рабочей системы?"