|
Распределенная база с большим (порядка 1000) количеством узлов | ☑ | ||
---|---|---|---|---|
0
Управление торговлей
02.12.14
✎
14:18
|
Коллеги, сталкивался ли кто-то в своей практике?
Какое влияние на производительность? В качестве примера можно взять распределенную "розницу": каждый узел - это магазин, который получает документы с движениями только по своим складам, а затем шлет обратно продажи. Будет ли это нормально работать на недорогом массовом сервере (пара зионов, рэйд из быстрых дисков) при небольшом (порядка 1000) количестве товаров? |
|||
1
Волшебник
модератор
02.12.14
✎
14:19
|
(0) Сделай структуру базы типа "дерево" |
|||
2
Maxus43
02.12.14
✎
14:20
|
не представляю расписание обменов.
|
|||
3
Управление торговлей
02.12.14
✎
14:24
|
(1) (2) Я подумал об этом, но пока абстрактно. Может быть, у кого-то будут критерии "агрегации".
|
|||
4
Обработка
02.12.14
✎
14:25
|
+(2) ага.
Если в сутках 24 часа = 1440 минут. На каждый обмен можно выделить не болшье 1.4 минуты.... |
|||
5
Обработка
02.12.14
✎
14:28
|
Хотя если не критично обмен вести в 2 дня или же выделить разные уровни актуальности для разных групп баз...
Все зависит от более конкретных данных. |
|||
6
Управление торговлей
02.12.14
✎
14:30
|
(4) блокировки будут? данные разных узлов не пересекаются, или я ошибаюсь? Сервер БД MS SQL
|
|||
7
SUA
02.12.14
✎
14:31
|
что-то это мне напоминает... салоны мтс, вроде
вариантов организации все равно несколько дерево, хитрые сильно перепиленные/пожатые обмены, итп 1+ минута это много - отчет ККМ за сутки 1 придет, ну максимум еще инвентаризация 1 крупным документом, обратно все 1К товаров уедут... если в обменной базе кроме обменов никого то все и так работать будет при запуске по очереди в параллели блокировки будут |
|||
8
rsv
02.12.14
✎
14:32
|
(0) Ведите все в одной базе.
|
|||
9
rsv
02.12.14
✎
14:32
|
И что такое "пара зионов" ???
|
|||
10
Управление торговлей
02.12.14
✎
14:34
|
(9) Xeon /?zi??n/
|
|||
11
roman844
02.12.14
✎
14:35
|
(0) это что у вас за торговая сеть такая? Магнит, пятерочка, другое???
|
|||
12
Rebelx
02.12.14
✎
14:36
|
(0) не будет в таком варианте работать.
более 100 узлов на одну базу - считаю не реально. Могут быть конечно исключения. Но если ты задаешь подобный (0) вопрос - не реально. |
|||
13
Управление торговлей
02.12.14
✎
14:37
|
(7) в целом похоже. центральный узел будет только собирать данные из распределенных узлов, и обмениваться с УТ
|
|||
14
rsv
02.12.14
✎
14:37
|
(10) Сколько пользователей ?
|
|||
15
Управление торговлей
02.12.14
✎
14:41
|
(12) личный опыт, или интуиция? в чем затык?
(14) в этой базе никаких пользователей, только обмены (11) "другое", номенклатура меньше |
|||
16
Господин ПЖ
02.12.14
✎
14:47
|
объемы большие будут? накопите террабайт в центре, и тут изменение структуры регистра с пересчетом... и все встает колом "пусть весь мир подождет"
|
|||
17
Maxus43
02.12.14
✎
14:48
|
я бы делал примерно так, 1 промежуточный узел на 50-70 конечных. Итого в центральном узле будет 17-20 узлов укрупнённых |
|||
18
Управление торговлей
02.12.14
✎
14:50
|
(16) хотелось бы забить продажами такие объемы, но вряд ли :)
|
|||
19
Управление торговлей
02.12.14
✎
14:51
|
(16) вариант отказа от стандартных механизмов обмена я тоже рассматриваю
|
|||
20
pumbaEO
02.12.14
✎
14:51
|
микро-сервисы
|
|||
21
Управление торговлей
02.12.14
✎
14:53
|
(20) сравнимо
|
|||
22
Господин ПЖ
02.12.14
✎
14:53
|
>в этой базе никаких пользователей, только обмены
обмены кого с кем? если просто некая инфа туда сюда гуляет - накуа вообще 1С |
|||
23
Maxus43
02.12.14
✎
14:53
|
(19) и это наверное правильно. В стандартных механизмах блокируются таблицы изменений, в паралельности кирдык. |
|||
24
tank68
02.12.14
✎
14:54
|
http://v8.1c.ru/overview/RaspredBases.htm
Вообще видел сеть основной узел у него порядка четырех подчиненных и в эти подчиненные в твоем случае повесишь по 25 магазов |
|||
25
Управление торговлей
02.12.14
✎
14:55
|
(22) см (13)
|
|||
26
tank68
02.12.14
✎
14:55
|
||||
27
tank68
02.12.14
✎
14:56
|
Просто когда все сто магазов постучатся в основную пользователи могут идти курить
|
|||
28
Управление торговлей
02.12.14
✎
15:02
|
(26) теория известна, интересуют конкретные показатели, полученные кем-нибудь а практике
|
|||
29
Feunoir
02.12.14
✎
15:07
|
(28) Полный обмен по 33 подчинённым узлам за пол дня работы выполняется примерно за 40 минут. Объем передаваемых при этом данных в обе стороны суммарно порядка 20 мегабайт в архивах.
|
|||
30
Bober
02.12.14
✎
15:20
|
(0) можно сделать.
- параллельная загрузка через фоновые задания - отказ от стандартного механизма выгрузки- загрузки при РИБ от 1с. - описание ситуаций, когда идет выгрузка документа одинакового для всех узлов (например цены). в итоге будет хоть 2к узлов работать в основной базе. |
|||
31
Torquader
02.12.14
✎
16:30
|
Сначала нужно расписать, что вы хотите передавать из узла в центр и обратно и предполагается ли вообще обмен между узлами.
Потом нужно понять, что за операции в узлах выполняются - может быть у вас там просто АРМ-ы кассиров стоят, и им выгружать, например, данные остатков по всем складам бессмысленно. |
|||
32
Timon1405
02.12.14
✎
16:40
|
(30) можно вопрос, как при
>> параллельной загрузке через фоновые задания и >>отказе от стандартного механизма выгрузки- загрузки при РИБ от 1с вы будете вгружать измененный CF в 2к узлов? или это все просто теория: запустились и не обновляем конфу вообще? |
|||
33
Garykom
гуру
02.12.14
✎
16:46
|
(0) Не страдайте фигней, все будет зависеть от кол-ва новых/измененных доков и строк в них
Есть опыт (правда 8.1 а не 8.3) со 170+ периферийных баз и полет нормальный за 4-6 часов обмен обычно делался - это если хорошо наколотили накладных (порядка 2-3 на базу) и обратно доков (порядка 100-200) за день |
|||
34
Управление торговлей
02.12.14
✎
17:52
|
(31) написано же - каждый узел свои остатки получает
|
|||
35
Aleksey
02.12.14
✎
17:56
|
(30) одна проблема.
" - параллельная загрузка через фоновые задания " - в 1С не работает |
|||
36
Aleksey
02.12.14
✎
17:56
|
А все потому что кому то в 1С было сделать лень управляемые блокировки на таблицу изменений
|
|||
37
Bober
02.12.14
✎
18:00
|
(35) все работает, откуда такая информация? Нужно уметь готовить.
|
|||
38
Bober
02.12.14
✎
18:01
|
(32) да все будет выгружать как надо, и изменениями и тд.
|
|||
39
AlexTim03
02.12.14
✎
18:05
|
Есть реальный опыт:
ЦИБ - на УТ (sql) ПИБЫ (сейчас 900) - на РТ, причем файловые РТ Выгрузка/загрузка обменов - параллельно в фоновых заданиях (несколько потоков). Из ЦИБ едут: приходы, цены, основные справочники из Рт: ОРП, инвентаризации, ПТО (приходный товарный ордер) Все нормально работает. На подобных объемах совершенно другие проблемы, больше связанные с массовыми обработками данных. + рассинхронизация состояний между данными ЦИб и ПИБ (например, что-то не дошло или убили регистрацию) |
|||
40
AlexTim03
02.12.14
✎
18:07
|
На РТ проблем производительности нет (обычный розничный магазин).
На УТ - есть, но связанные с типовыми механизмами, не заточенные под такие объемы: расчет себестоимости в лоб, движения по регистрам, которые возможно в целом не используются. |
|||
41
SUA
02.12.14
✎
18:07
|
(35)выгрузка+загрузка штатно не работают
загрузка+загрузка должны норм проходить 65 сейчас за полчаса-час без оптимизации по очереди проскакивают |
|||
42
AlexTim03
02.12.14
✎
18:09
|
+(40)
Обмен УТ-РТ - используется типовой план обменов + частично пиленные правила, но там просто некоторые блокирующие проверки + контроль зарегистрированных изменений. |
|||
43
Aleksey
02.12.14
✎
18:20
|
(37) Из опыта
У тебя таблица изменений общая. При загрузки/выгрузки туда пишутся данные о том что и куда было выгружено или что и куда нужно загрузить. При этом таблица блокируется полностью, т.е. если кто то туда пишет, то остальные тупо ждут пока не отвалятся по блокировки транзакции. Более того в моей практике (пробовал на БП 2.0 сделать распределенку центр и десяток баз). при увеличении размера этой таблицы она тупо мешала работать т.е. у пользователей при параллельной работе по разным организациям выскакивала ошибка блокировки |
|||
44
Aleksey
02.12.14
✎
18:22
|
Правда БП в этом плане вообще дурная конфа, ибо при проведении документа он делает движения по 2-3 регистрам максимум, а регистрирует для выгрузки еще минимум 20-30 пустух регистров
|
|||
45
rsv
02.12.14
✎
18:44
|
(39) Здесь наверное можно только администрированием целыми днями заниматься и ловить рассинхронизации...
|
|||
46
rsv
02.12.14
✎
18:44
|
+(45) Имха РИБ уже прошлое ....
|
|||
47
Bober
02.12.14
✎
18:47
|
(43) почему таблица должна блокироваться на длительный период?
|
|||
48
Обработка
02.12.14
✎
20:11
|
(46) ага, особенно с нашими реалиями по интернет доступности и устойчивости...
|
|||
49
Aleksey
02.12.14
✎
20:18
|
(47) речь то о том чтобы параллельно блокировать одну и туже таблицу
|
|||
50
Rebelx
02.12.14
✎
20:38
|
(38) РБД использовать для 1000 узлов считаю не реальным.
изменения конфы будут очень долого выгружаться конфа должна централизовано обновляться. Проще всего реализовать - сразу вся написать свои механизмы загрузки в ЦБ, для возможности параллельной загрузки. ну хотя бы в 25 потоков. и выгрузки тоже |
|||
51
ДенисЧ
02.12.14
✎
20:40
|
Дерево. Только дерево с неменее 2 уровней.
|
|||
52
Reaper_1c
02.12.14
✎
20:43
|
Все зависит от сценария использования центрального узла. Можно даже платформенным механизмом РИБ воспользоваться.
|
|||
53
EugeniaK
02.12.14
✎
20:49
|
(0) Достаточно поддерживала РИБ из 170 узлов (сеть магазинов). Работает нормально.
В мелких базах только справочники и документы по своей организации. Итоговые данные только в ЦБ. Из проблем, постоянные блокировки данных из-за обменов. Была когда-то мысль перевести в древовидную структуру, но заказчика и так устраивает. |
|||
54
Aleksey
02.12.14
✎
21:31
|
(50) там проблема в регистрации изменений, а не в механизме загрузки
|
|||
55
Управление торговлей
02.12.14
✎
21:48
|
(54) затык в регистрации как раз и подозревал.
если делать регистрацию изменений "одним махом", сразу по многим узлам, должно работать? |
|||
56
Aleksey
03.12.14
✎
03:19
|
(55) Это как?
У тебя грузится пакет которые регистрирует изменения справочника номенклатуры, и помечаетдля выгрузки по узлам Паралельно грузится другой пакет, скажем с подтверждением загрузки номенклатуры при прошлом обмене Что значит одним махом если пакеты не знают о существовании друг друга |
|||
57
Управление торговлей
03.12.14
✎
08:59
|
(56) файлы можно и самому читать, в обход стандартной загрузки
|
|||
58
ilpar
03.12.14
✎
09:10
|
Есть варианты обхода блокировки таблицы изменений - писать в РС. Потом из РС в план обмена переносить. Можно пробовать реализовать.
Но есть и удачные примеры отказа от РИБ и перехода на управляемые формы. |
|||
59
Bober
03.12.14
✎
11:39
|
(49) блокировки чаще всего ничтожно мелкие (если использовать типовой механизм регистрации при записи объекта), при загрузке данных из подчиненных проблем нет.
PS я не предлагаю использовать типовых механизмы выгрузки - загрузки РИБ, у которых из возможностей только управлять количеством элементов в транзакции. |
|||
60
Bober
03.12.14
✎
11:41
|
(57) да, это один из рецептов оптимизации загрузки.
|
|||
61
Bober
03.12.14
✎
11:43
|
(58) у упр форм только и одна только один минус - это зависимость от канала связи.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |