AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
DAX
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 12.04.2011, 13:09   #1  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2494 (89) +++++++++
Регистрация: 20.08.2005
Цитата:
Сообщение от Alexius Посмотреть сообщение
Бесспорно, т.к. во втором случае серверу БД нет необходимо читать данные из всей таблицы с кучей полей, а достаточно воспользоваться одним из некластерных индексов содержащих ItemId (GroupItemIdx, TypeIdx, DimGroupItemIdx, и т.д.)
Не понятно, почему именно некластеным?
В обоих запросах используется как-раз таки кластерный ключ по ItemId, что эквивилентно пробегу по странцам с данными
__________________
Axapta v.3.0 sp5 kr2
Старый 12.04.2011, 13:15   #2  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,913 / 5736 (197) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
Цитата:
Сообщение от AndyD Посмотреть сообщение
Не понятно, почему именно некластеным?
В обоих запросах используется как-раз таки кластерный ключ по ItemId, что эквивилентно пробегу по странцам с данными
Рискну предположить, что у вас в рознице слишком уж много полей в inventTable и при этом сама таблица прочно закэширована в памяти SQL Server. Поэтому начинают играть затраты на передачу данных по сети, поскольку затраты на чтение с диска минимизированы. Но все равно - в большинстве случаев, затратами на передачу данных между сервером и клиентом - можно пренебречь.
Старый 12.04.2011, 13:21   #3  
Alexius is offline
Alexius
Участник
Аватар для Alexius
 
461 / 248 (9) ++++++
Регистрация: 13.12.2001
2 AndyD
На сколько я понял, структура данных АХ 2012, описанная в Implementing_InventTrans_refactoring_for_Microsoft_Dynamics_AX_Applications_AX2012.pdf не соответствует действительности.
Старый 12.04.2011, 13:25   #4  
Alexius is offline
Alexius
Участник
Аватар для Alexius
 
461 / 248 (9) ++++++
Регистрация: 13.12.2001
Цитата:
Сообщение от AndyD Посмотреть сообщение
Не понятно, почему именно некластеным?
Т.к. при использовании некластерного индекса для получения результата перебирается меньше данных.
Цитата:
Сообщение от AndyD Посмотреть сообщение
В обоих запросах используется как-раз таки кластерный ключ по ItemId, что эквивилентно пробегу по странцам с данными
Т.е. план выполнения запросов на MS SQL одинаковый для обоих запросов ?
X++:
SELECT * FROM INVENTTABLE

SELECT ItemId FROM INVENTTABLE
Старый 12.04.2011, 13:35   #5  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2494 (89) +++++++++
Регистрация: 20.08.2005
Цитата:
Сообщение от Alexius Посмотреть сообщение
Т.к. при использовании некластерного индекса для получения результата перебирается меньше данных.Т.е. план выполнения запросов на MS SQL одинаковый для обоих запросов ?
X++:
SELECT * FROM INVENTTABLE

SELECT ItemId FROM INVENTTABLE
Вы правы, индексы в данном случае разные.

Но переделка запроса на поле, не участвующее ни в одном индексе картину не поменяло - скорость различается на те же 2,5-3 раза
__________________
Axapta v.3.0 sp5 kr2
Старый 12.04.2011, 13:44   #6  
Alexius is offline
Alexius
Участник
Аватар для Alexius
 
461 / 248 (9) ++++++
Регистрация: 13.12.2001
Цитата:
Сообщение от AndyD Посмотреть сообщение
Но переделка запроса на поле, не участвующее ни в одном индексе картину не поменяло - скорость различается на те же 2,5-3 раза
Занятно, я ожидал уменьшения разницы. Видимо действительно в этом примере так велики затраты на формирования набора записей со всеми полями и возвращение его клиенту (АОСу). В любом случае запросы с избыточным числом полей ЗЛО
Теги
ax2012

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Проблема с поиском в InventTrans после changeCompany (DAX4) Raven Melancholic DAX: Программирование 11 13.03.2008 14:02
Связь таблиц InventTrans и PurchLine Pustik DAX: Программирование 2 25.11.2004 12:23
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 12:52.