09.10.2007, 15:19 | #1 |
Участник
|
Индексация таблиц в AX4.0
Добрый день.
В аксапте 4 создание индекса для таблицы, средствами самой аксапты, приводит к созданию индексов в таблице ms sql server'а, но как то странно: если в аксаптовской таблице я создаю индекс на поля a и b то в sql сервере индекс строится по четырем полям, причем порядок полей в индексе такой: dataareaid a b recid с точки зрения производительности это не правильно, т.к. поле dataareaid неселективное, а поиск все же приходится выполнять на полям a и b. можно изменить порядок в БД, но при следующей синхронизации все вернется в такое же состояние. Вопрос вот какой: нужно ли реально все таки менять порядок полей в индексах БД и если можно, то как это правильно делать, чтобы синхронизация проходила нормально? спасибо за внимание. |
|
09.10.2007, 15:27 | #2 |
SAP
|
Цитата:
с точки зрения производительности это не правильно, т.к. поле dataareaid неселективное, а поиск все же приходится выполнять на полям a и b. можно изменить порядок в БД, но при следующей синхронизации все вернется в такое же состояние.
|
|
09.10.2007, 15:30 | #3 |
Участник
|
Это уже обсуждалось
aEremenko: Порядок полей в индексе для DAX 3.0 p.s. Я бы не стал менять порядок без очень острой необходимости. |
|
09.10.2007, 15:52 | #4 |
Member
|
Цитата:
Сообщение от konopello
...
как не селективное ... Не так давно обсуждалась проблема сваливания запросов в сканирование таблиц при переходе с 2000-го на 2005-й. Не зря же в Аксапте по жизни понатыкано индекс-хинтов в запросы.
__________________
С уважением, glibs® |
|