AXForum  
Go Back   AXForum > Microsoft Dynamics AX > DAX: Администрирование
All
Forgotten Your Password?
Register Forum Rules FAQ Members List Today's Posts Search

 
 
Thread Tools Search this Thread Display Modes
Old 27.08.2003, 23:25   #1  
Writer is offline
Writer
Участник
 
42 / 11 (1) +
Join Date: 27.12.2001
Location: Москва
Уменьшение базы данных Axapta
Вероятно, у каждого админа, эксплуатирующего базу данных возникает проблема, быстро растущий объем данных. Axapta так же не лишена данной проблемы. Мое недолгое изыскание по уменьшению базы привели меня к следующим выводам:
объем можно уменьшить за счет удаления разнесенных журналов из таблицы LedgerJournalTrans, InventJournalTrans стандартными средствами Axapta;
также не мешает почистить историю по номерным сериям;
периодически очищать журнал баз данных;
журнал регистрации прихода товара;
удалять разнесенные заказы и закупки и т.д.;
на крайний случай отключить часть индексов.
Но это все мелочи. На которые в принципе можно сильно не обращать внимания. Зато есть всем знакомая табличка InventSettlement, размер ее оказался равным 50% от размера всей базы. Итак, база 5Гб, табличка 2,1 Гб (вместе с индексами), вот это пожалуй камень преткновения. Зачем она нужна, все надеюсь знают. Сам собой напрашивается вопрос, как ее уменьшить. Первый и наиболее безболезненный способ это удалить прямой и обратный ваучер по процедурам пересчета или коррекции. Остаются ваучеры пересчета и закрытия, которые никто не отменял. Их тоже можно удалить, но это надо сделать ювелирно. Если кто экспериментировал с этой таблицей прекрасно знает, что вмешательство в нее может привести к тому, что пересчета и закрытия у Вас больше не будет. Поделитесь господа своими соображениями как наиболее корректно удалить данные из этой таблички, может кто еще, что большое предложить удалить безболезненно.
Old 28.08.2003, 09:15   #2  
Lazy_Tiger is offline
Lazy_Tiger
NavAx
Axapta Retail User
1C
NavAx Club
 
610 / 31 (3) +++
Join Date: 17.12.2001
Location: Красноярск
А чего ж страшного в базе объемом в 5гб? было б там хотя б 500, да и то я б не стал удалять данные, я бы занялся тюнингом, раскидал бы таблички и индексы по дискам и т.д. (см. MS SQL Books Online).

А удалять данные на мой взгляд некрасиво, да и я бы на Вашем месте не брал на себя такую ответственность.
Old 28.08.2003, 10:43   #3  
mazzy is offline
mazzy
Участник
mazzy's Avatar
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Join Date: 29.11.2001
Location: Москва
Blog Entries: 10
Re: Уменьшение базы данных Axapta
Quote:
Изначально опубликовано Writer
как наиболее корректно удалить данные из этой таблички, может кто еще, что большое предложить удалить безболезненно.
Из ЭТОЙ таблички - никак.

А какая версия Аксапты?
На самом деле есть более тяжелые таблицы.
SalesParmLine+SalesParmTable и PurchParmLine+PurchParmTable
В 3.0 обработка по очистке выведена в главное меню в периодические операции.

Согласен с тем, что журналы, заказы и закупки суть - черновики.
И в нормальном режиме должны удаляться после того как разнесены.
(Кстати, обратите внимание на SalesTableDelete, SalesLineDelete и то же самое для Purch...)

Есть еще один камень. Если включена корреспонденция, то самая тяжелая таблица - LedgerTrans. А если раздута сверх меры финансовая аналитика, то LedgerBalancesDim...

Согласен c Lazy_Tiger, 5Гиг - это еще небольшая база. Надо не резать, надо тюнить. Если вас интересует быстродействие, начните со сбора статистики и мониторинга длинных запросов в Аксапте, а не с обрезания.
Old 28.08.2003, 12:02   #4  
Writer is offline
Writer
Участник
 
42 / 11 (1) +
Join Date: 27.12.2001
Location: Москва
доктор сказал в морг, значит в морг
Quote:
Изначально опубликовано mazzy

Из ЭТОЙ таблички - никак.
Вот тут я с тобой не согласен. Зачем хранить данные по сопоставлениям прошлых периодов, например прошлого года, когда по этим данным уже никто не будет отменять пересчет или закрытие. Получается мертвый груз. Тем более что у нас партионный учет и когда партия полностью израсходована, то она полностью закрыта, второго прихода в другом периоде по данной партии уже быть не может (наша идеология такая). Поэтому для пересчета баланса по данной партии не будет (алгоритм пересчета и закрытия складов устроен так). Значит, данные можно удалять. Вообще обрати внимание на такую вещь в системе в таблице InventTrans как ValueOpen, как только она становиться нет, то и в пересчете и закрытии данный лот не участвует. Соот-но можно очистить все записи в InventSettlement c RecId равным этому лоту. Естественно что нужно учитывать дату закрытия провдки и выбрать разумный лаг времени, раньше которого не подчищать данные.

Quote:

А какая версия Аксапты?
Axapta 2.5 SP5HF1

Quote:

На самом деле есть более тяжелые таблицы.
SalesParmLine+SalesParmTable и PurchParmLine+PurchParmTable
В нашем случае они не такие тяжелые

Quote:

Есть еще один камень. Если включена корреспонденция, то самая тяжелая таблица - LedgerTrans. А если раздута сверх меры финансовая аналитика, то LedgerBalancesDim...
Ты будешь приятно удивлен, но проводки у нас все пишутся, и эксплуатируется все, (закупки, заказы, производство, расчеты с персоналом, касса, и прочее) и баланс мы формируем из Axapta и все это весит сейчас в LedgetTrans каких то 180Мб

Quote:

Согласен c Lazy_Tiger, 5Гиг - это еще небольшая база. Надо не резать, надо тюнить. Если вас интересует быстродействие, начните со сбора статистики и мониторинга длинных запросов в Аксапте, а не с обрезания.
Частично с этим я согласен. Постоянно оптимизируем различные отчеты и запросы, пишем доп. фичи для ускорения формирования сложных отчетов, кстати никто не занимался оптимизацией запроса формирования книги покупок или продаж, вот там запрос!!! Тут надо EVGL спросить на каких он данных проверял скорость работы его запроса. Просто ждать формирования книги продаж 6 часов и это на 2-х процессорном Xeone с винтами по 15 тыс. оборотов каждый (быстрее чем SCISI винты) это я считаю долго (при этом процессора почти в 80% загрузке).
Ну и как гласит наш любимый Microsoft максимальную производительность мы получим только тогда, когда размер базы будет меньше чем размер оперативной памяти. Вот отсюда и появляется стремление уменьшать БД.
Old 28.08.2003, 12:36   #5  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Join Date: 09.07.2002
Location: Parndorf, AT
Re: доктор сказал в морг, значит в морг
Quote:
Тут надо EVGL спросить на каких он данных проверял скорость работы его запроса.
На небольших. Там не один запрос, там три таких. Но вы бы видели, что там было до того, и как долго оно работало на тех же самых данных! Вы, конечно, можете попробовать ускорить, не потеряв логику, но сомневаюсь, что можно добиться больших успехов на этом пути. Без изменения модели данных от пяти таблиц в одном запросе не уйти.

P.S. Ведь говорили мне: не ставь комментарии.
Old 28.08.2003, 13:34   #6  
mazzy is offline
mazzy
Участник
mazzy's Avatar
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Join Date: 29.11.2001
Location: Москва
Blog Entries: 10
Re: доктор сказал в морг, значит в морг
Quote:
Изначально опубликовано Writer
Зачем хранить данные по сопоставлениям прошлых периодов, например прошлого года, когда по этим данным уже никто не будет отменять пересчет или закрытие.
А чтобы коррекция не ругалась.
Коррекция должна пересчитать inventTrans.CostAmountAdjusment в соответствии с содержимым InventSettlement.

Думаю, что удаление IS повлечут массу других побочных эффектов.
Надо проверить. Я бы эту таблицу не трогал.

Нашу птичку попрошу не обижать
Old 28.08.2003, 14:29   #7  
Writer is offline
Writer
Участник
 
42 / 11 (1) +
Join Date: 27.12.2001
Location: Москва
Эта песня хороша начинай...
Quote:
Изначально опубликовано mazzy

А чтобы коррекция не ругалась.
Коррекция должна пересчитать inventTrans.CostAmountAdjusment в соответствии с содержимым InventSettlement.
Нашу птичку попрошу не обижать
Я уже повторюсь, посмотри внимательно алгоритм и увидишь что CostAmountAdjusment + CostAmountPosted сверяются с балансом IS втом случае если ValueOpen = да в противном случае запрос по пересчету никак не затрагивает лоты с признаком нет и уж тем более сравнивает с IS. Если бы такое было то боюсь пересчет бы шел долго - долго, а програмеры бы жили мало-мало . Вообщем похоже, что эту проблем надо исследовать эмпирическим путем, и посмореть что в результате получиться.

P.S. А птичку я не трогаю, я ее можно сказать уважаю. Я вопрос задал и получил ответ, в принципе который и ожидал. Хотя есть задумки как оптимизировать книгу покупок, но это все надо проверять. Я так понимаю EVGL шел по пути того как это сделать безошибочно и применимо для всех случаев, а в каждом конктретном случае уже можно смотреть как применить оптимизацию. Вообщем зри у корень (Козьма Прутков)
Old 29.08.2003, 01:33   #8  
mazzy is offline
mazzy
Участник
mazzy's Avatar
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Join Date: 29.11.2001
Location: Москва
Blog Entries: 10
Re: Эта песня хороша начинай...
Спасибо. Надо подумать.

Quote:
Изначально опубликовано Writer
Я уже повторюсь, посмотри внимательно алгоритм и увидишь что ... надо исследовать эмпирическим путем, и посмореть что в результате получиться.
Так смотреть алгоритм или эмпирическим?
Old 29.08.2003, 08:36   #9  
Writer is offline
Writer
Участник
 
42 / 11 (1) +
Join Date: 27.12.2001
Location: Москва
Talking Сколько алгоритм не смотри все равно два раза править.
Quote:
Изначально опубликовано mazzy

Так смотреть алгоритм или эмпирическим?
Смотреть алгоритм пересчета и закрытия в отладке от и до я не стал. Прошелся профайлером кода, по одной номеклатуре посмотрел какие методы в какой последовательности вызываются. Оценил что они делают и решил, что надо пробовать удалять по разработанной последовательности действий и смотреть, что получиться. Вообщем провести серию экспериментов. Так что и алгоритм смотреть и эмпирическим путем идти. ИМХО так гораздо быстрее и лучше получиться. А вот что получиться я еще не знаю
Old 30.08.2003, 21:01   #10  
Dm is offline
Dm
Участник
 
1 / 10 (1) +
Join Date: 14.05.2003
Location: Krasnodar
:)
Что тут говорить?
я нас база 250 Гиг. Тюнинг идет постоянно.
Сервер 2 Ксеона по 2,2, скази 15-ти тысячники и памяти 16 гиг.
И все работает и не жужжит.

Правда не на Аксапте, но скоро начинаем внедрять, и данные нужны не за месяц, а за два года.
А текущая база всего-то полтора года.
Old 01.09.2003, 11:09   #11  
komar is offline
komar
Шаман форума
komar's Avatar
Ex AND Project
 
5,571 / 600 (32) +++++++
Join Date: 24.05.2002
OFF
Quote:
Изначально опубликовано Dm
Правда не на Аксапте, но скоро начинаем внедрять, и данные нужны не за месяц, а за два года.
А текущая база всего-то полтора года.
А откуда Вы недостающие полгода возьмете??
Old 01.09.2003, 13:25   #12  
ТРЕНЕР is offline
ТРЕНЕР
Участник
ТРЕНЕР's Avatar
 
599 / 50 (3) ++++
Join Date: 11.06.2003
Location: Москва
Он же сказал:
<b>не на Аксапте, но <font color="#ff0000">скоро</font> начинаем внедрять</b>
Вот это "скоро" и есть полгода. Хотя в реальности, думаю, будет через год-полтора, как это обычно бывает. Место-то на диске пока есть
Old 15.09.2003, 16:29   #13  
Волчара is offline
Волчара
Участник
 
210 / 29 (1) +++
Join Date: 08.02.2003
Location: Москва
Talking
Действительно, зачем удалять и чистить базу.
Все равно все заканчивается как обычно.
Приходит новая команда в идеально белых рубашках и идеально модных галстуках и говорит - раньше вы гуляли сами по себе, а теперь, мы будем гулять по Бабушке.

Новые люди, новый проект, новые деньги, новая слава!!! Ура!!!
Кто не спрятался, я не виноват.
Old 15.09.2003, 16:53   #14  
Елена Сысовская is offline
Елена Сысовская
Участник
Елена Сысовская's Avatar
 
499 / 25 (1) +++
Join Date: 30.11.2001
Location: планета Земля
идет охота на волков.... о ччем это было? судя по рубашкам - где то все таки консалтинг снабжают
__________________
"...жизнь проходит, пока мы строим планы на жизнь..."
с уважением, ESys.
Tags
база данных, размер

 

Similar Threads
Thread Thread Starter Forum Replies Last Post
Исследование скорости экспорта данных из Axapta в Excel (коллективный эксперимент) Gustav DAX: База знаний и проекты 79 13.02.2014 13:18
Уменьшение базы данных Nikolaich DAX: Администрирование 8 09.03.2006 14:13
Использование View как Data Source или Нормализация Базы Знаний в Axapta rohlenko DAX: Программирование 15 17.02.2005 14:00
Импорт базы данных в Axapta IT-specialist DAX: Прочие вопросы 2 07.12.2004 12:28
Введение в Аксапту Роман Кошелев DAX: Прочие вопросы 0 18.12.2001 14:00

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Рейтинг@Mail.ru
All times are GMT +3. The time now is 22:38.
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Contacts E-mail, Advertising.