|
![]() |
#1 |
Moderator
|
Еще интересно - что такое "медленный индекс". Время обновления может быть разным (в зависимости от списка полей в индексе), но его не очень легко замерить; Индекс может использоваться в типичных запросах чаще или реже; Индекс может снижать время каких-то конкретных запросов сильнее или слабее. Не очень понятно что именно имелось в виду...
|
|
![]() |
#2 |
Участник
|
|
|
![]() |
#3 |
Участник
|
Цитата:
InventJournalTable.disableCache(true); плюс еще не мешало бы кеш самого SQL сбросить. Была команда DBCC чего-то там по сбросу кеша сиквела. Тогда уже можно сравнивать. |
|
|
За это сообщение автора поблагодарили: AnGor (1). |
![]() |
#4 |
Moderator
|
|
|
|
За это сообщение автора поблагодарили: Logger (3), AnGor (1), alex55 (1). |
![]() |
#5 |
Участник
|
(sorry, I switch to english)
After run DBCC DROPCLEANBUFFERS the difference is not so huge. This is the Timing with manual created index with dataareaid and Partition: SQL Server Execution Times: CPU time = 0 ms, elapsed time = 30 ms. and this is the time after applying CreateRecIdIndex SQL Server Execution Times: CPU time = 0 ms, elapsed time = 40 ms. This is the query which I used: SELECT TOP 1 (list of all fields) FROM INVENTJOURNALTABLE T1 WHERE DATAAREAID=N'bvd' AND PARTITION=5637144576 AND RECID=5637148643 |
|
![]() |
#6 |
Moderator
|
Цитата:
Сообщение от AnGor
![]() (sorry, I switch to english)
After run DBCC DROPCLEANBUFFERS the difference is not so huge. This is the Timing with manual created index with dataareaid and Partition: SQL Server Execution Times: CPU time = 0 ms, elapsed time = 30 ms. and this is the time after applying CreateRecIdIndex SQL Server Execution Times: CPU time = 0 ms, elapsed time = 40 ms. This is the query which I used: SELECT TOP 1 (list of all fields) FROM INVENTJOURNALTABLE T1 WHERE DATAAREAID=N'bvd' AND PARTITION=5637144576 AND RECID=5637148643 Если стоит задача максимально ускорить именно поиск по inventJournalTable, то попробуй искать не по recId, а по journalId. В этом случае - все будет обрабатываться в одну операцию - поиск по кластерному индексу. На вскидку - я бы ожидал что оно с 30ms до 15ms упадет. |
|
![]() |
#7 |
Участник
|
Цитата:
![]() I analyze the statistic which I get from DynamicsPerf. After checking the missing Indexes for lazy queries I'm trying to speed up them by adding recommended Indexes. Before create the index in AOT I'm trying to create it direct in SQL. If the index makes effect I apply it on AOT. That's way how I found out that the query run faster if I add to the index DataAreId and Partition. |
|
![]() |
#8 |
Участник
|
Цитата:
Нельзя назвать такой результат ожидаемым. Постфактум можно любое объяснение "привинтить". Интересно, а сколько у них там записей всего в табличке и компаний. Последний раз редактировалось Logger; 29.06.2017 в 12:43. |
|
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|