Запитання з тегом «query-performance»

Питання щодо підвищення продуктивності та / або ефективності запитів до бази даних.

1
SQL Server - обробка локалізації рядків у вкладених недетермінованих стеках перегляду
Профілюючи базу даних, я натрапив на думку, яка посилається на деякі недетерміновані функції, які отримують доступ 1000-2500 разів на хвилину за кожне з'єднання в пулі цього додатка. Простий SELECTз виду дає такий план виконання: Це здається складним планом для подання, що містить менше тисячі рядків, у яких може з’являтися зміна …

6
Продуктивність a = 0 і b = 0 і… z = 0 проти a + b + c + d = 0
Це просте запитання, на яке я не можу знайти відповідь. Що стосується продуктивності, Якщо у мене є WHEREположення, такі як a=0 and b=0 and ... z=0: Чи отримав би я якісь результати, якби замінив цю умову a+b+...+z=0? Іншими словами, чи є підвищення продуктивності, замінивши наступне Select * From MyTable Where …

3
Величезні дані та продуктивність у SQL Server
Я написав заявку на сервер SQL Server, який збирає та зберігає та надзвичайно велику кількість записів. Я підрахував, що на піку середня кількість записів знаходиться десь у проспекті 3-4 мільярди на день (20 годин роботи). Моє оригінальне рішення (до того, як я фактично зробив обчислення даних) - моє додаток вставляв …

2
T-SQL-запит із використанням абсолютно іншого плану в залежності від кількості рядків, які я оновлюю
У мене є оператор SQL UPDATE з пунктом "TOP (X)", і рядок, в якому я оновлюю значення, містить близько 4 мільярдів рядків. Коли я використовую "TOP (10)", я отримую один план виконання, який виконується майже миттєво, але коли я використовую "TOP (50)" або більше, запит ніколи (принаймні, не під час …

5
Використання IF у T-SQL послаблює або порушує кешування плану виконання?
Мені було припущено, що використання операторів IF у партіях t-SQL шкодить продуктивності. Я намагаюся знайти якесь підтвердження або підтвердити це твердження. Я використовую SQL Server 2005 та 2008 років. Ствердження полягає в наступному: IF @parameter = 0 BEGIN SELECT ... something END ELSE BEGIN SELECT ... something else END SQL …

3
Вимушення розрізнення потоку
У мене така таблиця: CREATE TABLE Updates ( UpdateId INT NOT NULL IDENTITY(1,1) PRIMARY KEY, ObjectId INT NOT NULL ) По суті, відстеження оновлень для об’єктів зі збільшенням ідентифікатора. Споживач цієї таблиці вибере фрагмент із 100 різних ідентифікаторів об'єкта, упорядкований UpdateIdта починаючи з конкретного UpdateId. По суті, слідкуйте за тим, …

2
ВИМОГА КОНСТРЕЙН, варто?
Я зазвичай проектую свої бази даних, керуючись наступними правилами: Ніхто інший, ніж db_owner та sysadmin, не мають доступу до таблиць баз даних. Ролі користувачів керуються на рівні програми. Зазвичай я використовую одну db роль, щоб надати доступ до переглядів, збережених процедур та функцій, але в деяких випадках я додаю друге …

1
Однорядний ВСТАВКА… ВИБІРИ набагато повільніше, ніж окремий SELECT
Враховуючи наступну таблицю купи з 400 рядками, пронумерованими від 1 до 400: DROP TABLE IF EXISTS dbo.N; GO SELECT SV.number INTO dbo.N FROM master.dbo.spt_values AS SV WHERE SV.[type] = N'P' AND SV.number BETWEEN 1 AND 400; та наступні налаштування: SET NOCOUNT ON; SET STATISTICS IO, TIME OFF; SET STATISTICS XML …

2
Питання про ефективність "SELECT TOP"
У мене є запит, який працює набагато швидше з select top 100і набагато повільніше без top 100. Кількість повернених записів дорівнює 0. Чи можете ви пояснити різницю в планах запитів або спільних посиланнях, де пояснюється така різниця? Запит без topтексту: SELECT --TOP 100 * FROM InventTrans JOIN InventDim ON InventDim.DATAAREAID …

1
Оператор використовував tempdb для розливу даних під час виконання із рівнем 2 розливу
Я намагаюся мінімізувати витрати на операцію сортування в плані запитів із попереджувальним Operator usedtempdbto spill data during execution with spill level 2 Я знайшов декілька публікацій, пов’язаних із інформацією про розливи під час виконання з рівнем 1 , але не з рівнем 2. Рівень 1, здається, викликаний застарілою статистикою , …

2
Чому відфільтрований індекс за значенням IS NULL не використовується?
Припустимо, у нас є таке визначення таблиці: CREATE TABLE MyTab ( ID INT IDENTITY(1,1) CONSTRAINT PK_MyTab_ID PRIMARY KEY ,GroupByColumn NVARCHAR(10) NOT NULL ,WhereColumn DATETIME NULL ) І відфільтрований некластеризований індекс на зразок цього: CREATE NONCLUSTERED INDEX IX_MyTab_GroupByColumn ON MyTab (GroupByColumn) WHERE (WhereColumn IS NULL) Чому цей показник не "охоплює" цей …

1
ВИБІРТЕ ТОП 1 із дуже великої таблиці в стовпці індексу дуже повільно, але не з зворотним порядком (“desc”)
У нас є велика база даних, близько 1 Тб, що працює на SQL Server 2014 на потужному сервері. Все працювало чудово кілька років. Близько 2 тижнів тому ми провели повне обслуговування, яке включало: Встановити всі оновлення програмного забезпечення; відновити всі індекси та компактні файли БД. Однак ми не очікували, що …

3
Обгортання запиту, якщо існує, це робить дуже повільним
У мене є наступний запит: select databasename from somedb.dbo.bigtable l where databasename ='someval' and source <>'kt' and not exists(select 1 from dbo.smalltable c where c.source=l.source) Наведений вище запит виконується за три секунди. Якщо вищезазначений запит повертає будь-яке значення, ми хочемо, щоб збережена процедура EXIT, тому я переписав її як нижче: …

3
Вплив індексу на оператори оновлення, коли стовпець оновлення не знаходиться в індексі
Я постійно бачу, як люди кажуть, що індекси сповільнюються update, deleteі insert. Це використовується як вислів ковдри, як би абсолютне. Налаштовуючи свою базу даних для підвищення продуктивності, я постійно стикаюся з цією ситуацією, яка, здається, суперечить цьому правилу для мене, і ніде я не можу знайти когось сказати чи пояснити …

1
Монументальна різниця у часі виконання запитів при використанні підказки RECOMPILE
У мене є два майже однакових запиту, що працюють на одному екземплярі SQL Server 2005: Перший - це оригінальний SELECTзапит, згенерований LINQ (я знаю, я знаю ... Я не розробник додатків, просто DBA :). Другий точно такий же, як і перший, доданий в OPTION (RECOMPILE)кінці. Нічого іншого не змінилося. Перший …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.