|
![]() |
#1 |
Участник
|
Вместо монстроидальных индексов получили монстроидальные планы запросов, когда join'ятся несколько таблиц, в каждой из которых - миллионы записей, из-за чего в конечном итоге возникает то тут, то там денормализация данных: рядом с inventDimId в транзакционных таблицах селится inventLocationId или другие поля из InventDim. Кроме того, если на каждой таблице проводок/строк журналов/строк заказов будут свои индексы, ими будет проще управлять, даже если они будут на sys-слое. Нужно ускорить выборку по какой-то таблице в каком-то разрезе - привинтил индекс, не нужно - отключил его, и пусть болтается в AOT'е. А так выходит, что одна таблица InventDim, пухнущая не по дням, а по часам, обрастает кучей индексов на все случаи жизни...
|
|
|
За это сообщение автора поблагодарили: Logger (4). |
![]() |
#2 |
Участник
|
Цитата:
Обратите внимание, что серийные номера и партии в стандартном функционале относятся к "селективным" (там метод такой есть). А вот ГТД забыли в этот метод включить ![]() Кроме того, обратите внимание, на отдельные запросы по селективным полям... А у ГТД опять же "забыли" сделать отдельные запросы. ![]() Сколько раз видел, что народ добавляет свои поля, похожие на ГТД и также не указывает "селективность"... Кроме того и ГТД нельзя в InventDim запихивать. В inventDim должны присутствовать только признаки, которые можно проинвентаризировать. "Миллионы записей в InventDim" - это ненормально. А если уж "так получилось", то не забывайте о стандартном функционале, который позволяет работать и с такими случаями. |
|
![]() |
#3 |
Модератор
|
Цитата:
![]() опять же - "бездумно".. какой функционал есть, такой и используем.. или предлагаешь свой написать?
__________________
-ТСЯ или -ТЬСЯ ? |
|
![]() |
#4 |
Участник
|
Цитата:
Но если идет фильтрация по селективному полю, то будут работать совсем другие запросы и совсем другие хинты. ![]() Не знаю. Все еще не знаю. Но идея Axapta Light по прежнему бурлит... Пока себя сдерживаю изо всех сил. |
|
![]() |
#5 |
Member
|
Цитата:
Сообщение от mazzy
...
"Миллионы записей в InventDim" - это ненормально. ... А селективность спасает только на определенных запросах. При раздутом другими аналитиками InventDim отбор проводок, которые относятся к определенному складу, например, превращается в трудоемкую задачу для сервера СУБД. В некоторых случаях можно пытаться решать некоторые проблемы с производительностью запросов путем дублирования склада или прочих нужных аналитик в транзакции. Но это требует существенной переделки логики и предельной аккуратности. Такой подход годится для эксклюзивных случаев, в которых производительность архи-критична.
__________________
С уважением, glibs® |
|
Теги |
axapta, faq, inventdim, производительность |
|
![]() |
||||
Тема | Ответов | |||
dynamicsmatters: Performance and Inventdim PII | 17 | |||
dynamicsmatters: Dynamics AX Base Data Model Part II | 0 | |||
Dynamics AX Geek: #InventDimJoin | 0 |
|