Запитання з тегом «index»

Структура бази даних, яка може підвищити швидкість запитів за рахунок місця на диску та повільніших вставок / оновлень. Він зберігає копію одного або декількох стовпців, відсортованих, але структурує дані по-різному, щоб забезпечити швидший доступ.

3
Порядок полів у складеному порядку індексу з високою селективністю та низькою селективністю
У мене є таблиця SQL Server із понад 3 мільярдами рядків. Один із моїх запитів займає надзвичайно багато часу, тому я розглядаю можливість його оптимізації. Запит виглядає так: SELECT [Enroll_Date] ,Count(*) AS [Record #] ,Count(Distinct UserID) AS [User #] FROM UserTable GROUP BY [Enroll_Date] [Enroll_Date] - це стовпець із низькою …

1
Індекс SEEK не використовується, якщо OPTION (RECOMPILE)?
(Питання переміщено з SO) У мене є таблиця (фіктивних даних) з кластерним індексом, що містить 2 стовпці: Тепер я запускаю ці два запити: declare @productid int =1 , @priceid int = 1 SELECT productid, t.priceID FROM Transactions AS t WHERE (productID = @productid OR @productid IS NULL) AND (priceid = …

1
Чому мій індекс може шукати оцінку потрібної кількості рядків, а оператор сортування не може?
У мене є запит, який використовує функцію присудка, приблизно так: commentType = 'EL' AND commentDateTime >= DATEADD(month,datediff(month,0,getdate()) - 13,0) У мене відфільтрований індекс в commentType, який має 40K рядків, і коли я запускаю запит, орієнтовна кількість рядків для пошуку шукає дуже точно (близько 11 К), але для наступного кроку (оператор …

1
Що відбувається, коли ми додаємо індекс до існуючої таблиці з великою кількістю даних?
У мене є таблиця, яка містить близько 15 мільйонів записів. Тепер мені потрібно додати індекс до таблиці. Додавання індексу потребує певного часу, щоб оновити кожен запис у таблиці. Я дуже розгублений, чи додавання індексу спричинить простої. Якщо так, то як я можу подолати простої?

1
Створення індексу на дійсно зайнятій таблиці
У нас є таблиця з багато insert\selectщоразу (як 100 машин, що вставляють \ оновлення щосекунди). Який найкращий спосіб створити індекс на таблиці, який не можна заблокувати навіть на секунду? Якщо я створюю індекс, я впевнений, що він заблокує запити, і я не можу це зробити. Це великий стіл з 1 …

1
Як налаштувати індексований вигляд при виборі ТОП 1 за допомогою ЗАМОВЛЕННЯ з різних таблиць
Я намагаюся налаштувати індексований вигляд у наступному сценарії, щоб наступний запит виконувався без двох кластерних сканувань індексів. Кожен раз, коли я створюю індексний вигляд для цього запиту, а потім використовую його, він, мабуть, ігнорує будь-який індекс, який я ставлю на нього: -- +++ THE QUERY THAT I WANT TO IMPROVE …


3
Один індекс чи два?
У таблиці в моїй базі даних створений такий індекс: CREATE INDEX [idx_index1] on [table1] (col1, col2, col3) Сервер пропонує наступний 'пропущений' індекс: CREATE INDEX [idx_index2] on [table1] (col1, col2) INCLUDE (col3, col4, col5, col6....) Мені здається логічним змінити існуюче визначення індексу, щоб включити запропоновані стовпці, а не створювати новий індекс, …

2
MySQL не використовує індекси під час приєднання до іншої таблиці
У мене дві таблиці, перша таблиця містить усі статті / повідомлення в блозі в межах CMS. Деякі з цих статей можуть також з’являтися в журналі, і в цьому випадку вони мають зв'язок із зовнішнім ключем до іншої таблиці, що містить конкретну інформацію журналу. Ось спрощена версія синтаксису таблиці створення для …

2
Як запобігти щоденній фрагментації індексу на 99%
У мене є таблиця рейтингів на 100 000 гравців, яка вводиться 2 рази на день з одним записом на кожного гравця. На кінець дня фрагментація індексів для індексів у цій таблиці становить 99%. Чи є спосіб запобігти цьому, змінивши налаштування? CREATE TABLE HighScore( [id] [int] IDENTITY(1,1) NOT NULL, [user] [int] …

3
Включений стовпчик проти відфільтрованого індексу
Зараз ми працюємо з таблицею з назвою tb_tranfers . Ця таблиця має 40 мільйонів рядків і має розмір ~ 26 ГБ (дані 11 ГБ, індекси 15 ГБ). 10 - 15% рядків - це рядки з м'яким видаленням ( Видалений дат не є нульовим). Додаток використовує лише рядки, де DeletedDate є …

2
У який момент база даних оновлює свої індекси в транзакції?
Я намагаюся зрозуміти послідовність подій у вставках, де беруть участь і індекс, і транзакція. Наприклад, документація Oracle зазначає: Якщо ви створюєте [або маєте] один або більше індексів перед завантаженням даних, тоді база даних повинна оновлювати кожен індекс, як вставляється кожен рядок. Але що станеться, якщо я створять транзакцію, вставляю п'ять …

2
Невикористані індекси Кращі практики
Виходячи з цього запиту, якщо я бачу низький обсяг прочитаних (дуже близький до 0 або 0, як-от 1 або 2) і високий або помірний кількість оновлень користувачів (я не міг знайти вставок або видалення за допомогою цього запиту) з велика кількість рядків, я теоретично повинен видалити індекс. SELECT DISTINCT OBJECT_NAME(s.[object_id]) …

2
Як розробити індекси для стовпців із значеннями NULL в MySQL?
У мене база даних з 40 мільйонами записів і хочу запускати запити з наступним WHEREпунктом ... WHERE `POP1` IS NOT NULL && `VT`='ABC' && (`SOURCE`='HOME') && (`alt` RLIKE '^[AaCcGgTt]$') && (`ref` RLIKE '^[AaCcGgTt]$') && (`AA` RLIKE '^[AaCcGgTt]$') && (`ref` = `AA` || `alt` = `AA`) LIMIT 10 ; POP1являє собою …
11 mysql  index 

2
Повільний ЗАМОВЛЕННЯ З ГРОМОМ
У мене є цей запит: SELECT * FROM location WHERE to_tsvector('simple',unaccent2("city")) @@ to_tsquery('simple',unaccent2('wroclaw')) order by displaycount Я задоволений цим: "Sort (cost=3842.56..3847.12 rows=1826 width=123) (actual time=1.915..2.084 rows=1307 loops=1)" " Sort Key: displaycount" " Sort Method: quicksort Memory: 206kB" " -> Bitmap Heap Scan on location (cost=34.40..3743.64 rows=1826 width=123) (actual time=0.788..1.208 rows=1307 …

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