Имя: Пароль:
1C
1С v8
v8: Таблица регистра сведений скоро будет больше чем оперативной памяти на сервере
0 Lepochkin
 
04.09.12
10:47
История следующая. Имеется конфа 8.1 на основе УТ 10.3 переписанная сильно. В данный момент база весит 105 гигов. Из них регистр сведений Установка цен номенклатуры 29 гигов. Документ установка цен номенклатуры 12 гигов. (Размеры таблиц оценивал вот это штукой http://infostart.ru/public/59489/) База обрезанная. Регистр сведений Установка цен номенклатуры сейчас растет примерно по гигу в неделю. На сервере всего 44 гига оперативы. Я руководству упорно говорю что срочно надо докупать еще памяти. В ответ мне задается вопрос "А все ли нас оптимально настроено?" Потому 2 вопроса
1. Как себя будет чувствовать sql, если у него одна таблица не будет целиком влезать в оперативу?
2. Какие оптимальные настройки для такой базы, где 1/3 почти занимает 1 таблица, если они конечно есть?
1 BigHarry
 
04.09.12
11:00
Непонятно, как соотносится таблица, данные которой хранятся на диске и читаются порциями, размер оперативной памяти и самочувствие SQL?
2 aleks-id
 
04.09.12
11:02
и ведь устраиваются такие на жирные места, получают атстатыщщ...
3 Chai Nic
 
04.09.12
11:02
Почему-то многие считают, что объем ОЗУ на сервере как-то должен коррелировать с объемом данных.. На самом деле, он скорее должен коррелировать со скоростью их изменения.
4 regniws
 
04.09.12
11:02
ндээ... что-то не ладно в датском королевстве
5 Maxus43
 
04.09.12
11:03
>>сейчас растет примерно по гигу в неделю
с чего хоть? для интереса
6 Karavanych
 
04.09.12
11:06
честно говоря вопрос руководства считаю адекватным, стоит проанализировать почему таблица цен номенклатуры больше чем таблицы остатков и партий.
7 sergeev-ag-1977
 
04.09.12
11:07
Оптимизировать значит нужно, раз так растет. Пойди ежедневно одну и туже цену повторяют или у Вас там инфляция такая что каждый день новая цена?
(1) +1.
Таблица растет от того, что: данные + индексы выстраивать нужно. Оперативка при нормальных индексах здесь не нужна.
ИМХО право руководство.
8 ptiz
 
04.09.12
11:09
(0) задается вопрос "А все ли нас оптимально настроено?"
Так говори, что всё :)
Память лишней не бывает, если сервер позволяет больше воткнуть.
9 Rovan
 
гуру
04.09.12
11:10
(+2) да уж
10 Rovan
 
гуру
04.09.12
11:12
(0) главный ответ тебе такой: в регистре цен обычно используется СрезПоследних
так что вся таблица практически никогда не нужна !
11 Lepochkin
 
04.09.12
11:13
Типов цен 150 и каждый день их меняют. Номенклатуры на остатках 8000. Вот так и грузим каждый день. В конце недели я удаляю дублирующие цены
12 Humandra
 
04.09.12
11:14
+1 к вопросу руководства, что-то здесь не так.

Но если отвечать в лоб на вопрос в (0), то:
1) оперативка не обязательно должна быть больше или равна размеру базы. Просто если вся база лежит в оперативке - база как правило (есть исключения, но редкие) работает быстрее, потому что нет операций чтения с диска. Иначе - будет читаться с диска по мере необходимости.
2)
2.1) Для больших таблиц, в которых чаще всего нужны данные по последним разрезам, если купленная версия скуля поддерживает партиционирование, то для оптимизации можно использовать партиционирование. Что это такое - см. гугл.
2.2) Провести анализ, что творится с таблицей. Чаще всего большая часть места занимают не данные, а индексы. Редкоиспользуемые индексы можно раскидать по разным дискам, или вообще удалить, или просто перестроить (они могут ужаться).
13 Mikeware
 
04.09.12
11:16
Судя по (11), неадекватные конторы принимают на работу неадекватных сотрудников.
14 Humandra
 
04.09.12
11:16
(11) Маразм. Зачем удалять? Лучше не грузить сразу, раз они дублируются. Удаляете-то хоть совсем, или пометкой на удаление? :)
15 Rovan
 
гуру
04.09.12
11:18
(14) кстати да.... ведь SQL скорее всего физически в таблице регистра не удаляет данные, а лишь помечает что они удалены
16 Mikeware
 
04.09.12
11:18
(14) а они наверняка не срезом последних пользуются, а выборкой на дату.
теоретически так быстрее.
17 sergeev-ag-1977
 
04.09.12
11:19
честно говоря не думаю что нужно грузить все 150 типов цен. Наверняка можно использовать динамические местами.
18 sergeev-ag-1977
 
04.09.12
11:21
И такой вопрос зачем нужна история цены ? Она вам точно нужна ?
19 Lepochkin
 
04.09.12
11:21
Про цены я уже давно ругаюсь, но маркетологи говорят, что это необходимо...
20 sergeev-ag-1977
 
04.09.12
11:22
А какова периодичность регистра сведений "Цены номенклатуры" - может она в секундах ?
21 Humandra
 
04.09.12
11:22
(16) Надо анализировать. Если действительно по большей части номенклатуры цены изменяются каждый день - то да. А если наоборот, изменения относительно редки - то все же быстрее будет СрезПоследних при условии, что цена будет записываться только при изменении.
22 ptiz
 
04.09.12
11:22
Как вариант оптимизации: удалить из регистра цен все ресурсы, кроме "Цена" и измерение "ХарактеристикаНоменклатуры", если не используется.
23 Humandra
 
04.09.12
11:23
(19) см. (17), согласна - ваши маркетологи наверняка же не забивают все 150 типов цен ручками? Есть наверняка формула, связывающая цены.
24 sergeev-ag-1977
 
04.09.12
11:25
в общем постановка методологии учета страдает ...
от того и регистры пухнут ....
25 sergeev-ag-1977
 
04.09.12
11:26
думаем, анализируем, задаём вопросы, думаем ...
26 Lepochkin
 
04.09.12
11:33
Периодичность "По позиции регистратора"...
(23) Сравниваются цены конкурентов. Потом каким-то макросом по каким-то правилам создается файлик с нашими ценами и я уже просто перегружают экселевский файлик
27 sergeev-ag-1977
 
04.09.12
12:01
(26) с такой постановкой ваше задние больше напоминает не техническое, а спиритическое ....
Тогда переходим к статистическому заданию: напишите обработку которая рассчитает коэффициенты вариации и дисперсию между всеми этими типами цен. Глядишь 150 превратятся в 30. Тем более что статистических данных, судя по размеру регистра, у Вас предостаточно!
28 Lepochkin
 
04.09.12
12:32
(27)Предложения снизить количество типов цен я уже не раз озвучивал. В ответ услышал что все нужны...
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс