|
Возможности платформы: а что, если транзакций/документов ежемесячно - миллионы? | ☑ | ||
---|---|---|---|---|
0
Маратыч
10.09.15
✎
09:01
|
Коллеги, есть такой любопытный вопрос: имеется допиленная типовая бухия, платформа 8.2, средней паршивости сервер. Объемы исчисляются в сотнях (150-200) обычных бух. документов ежемесячно (строк по 10-20) + 90 доков по 9-10 тысяч строк. Разумеется, это все вполне себе работает и не жужжит.
Но тут озвучили одну занятную задачку, при реализации которой количество записей в упомянутых тридцати документах возрастает до трехсот тысяч. 300 тыс. х 90 = 27 млн. записей в месяц (и столько же бухгалтерских проводок, ага). А теперь сам вопрос - достаточно ли будет аппаратного масштабирования (ессно, после расчетов), или у платформы есть какой-то предел по возможностям обработки и объемам базы? Сама база на данный момент - 150 гигабайт (рост с 20 до 150 произошел за 2014-2015 годы, когда появились вышеупомянутые многострочные документы). Альтернативные варианты имеются в запасе, но хотелось бы услышать мнение касательно 1С - предпочтительнее будет не плодить зоопарк в инфраструктуре. |
|||
1
Ranger_83
10.09.15
✎
09:03
|
(0) блокировки
|
|||
2
vde69
10.09.15
✎
09:03
|
почитай внимательно Посоветуйте интегратора с опытом внедрения ERP от 1С.
|
|||
3
Маратыч
10.09.15
✎
09:03
|
+(0) Разумеется, возможность разнести эти триста тысяч строк по разным докам есть, но практического смысла это не имеет, по большому счету. Разве что проводить удобнее.
|
|||
4
Маратыч
10.09.15
✎
09:04
|
(2) Да читал я, там акулы ща переколбасят друг друга желтыми книжками и 22-сантиметровыми :)
Мне бы мнение тех, кто практически с такими объемами сталкивался уже. |
|||
5
Ranger_83
10.09.15
✎
09:06
|
Запись документа с таким большим количеством записей будет проходить достаточно долго.
Представляешь,меняешь одну строчку и потом ждешь проведение документа х.з. сколько времени.Может как-то разбить документы на блоки |
|||
6
Маратыч
10.09.15
✎
09:06
|
(1) Разумеется. Теоретически вариант решаемый, возможно даже вынести проводки этих документов в отдельный регистр.
|
|||
7
gigi789
10.09.15
✎
09:07
|
(3) документы дробить обязательно иначе будите их по очереди проводить.
|
|||
8
Маратыч
10.09.15
✎
09:07
|
(5) Да, это не проблема. Увеличится кол-во доков, уменьшится кол-во записей. Объемы данных только не изменятся почти.
|
|||
9
Маратыч
10.09.15
✎
09:08
|
(7) Да их, в общем-то, и надо по очереди проводить. И вручную там записи никто делать не будет - данные подгружаются из другой инф. системы.
|
|||
10
gigi789
10.09.15
✎
09:09
|
а в целом вопрос производительности и отказоустойчивости решается только итерациями. Нашли бутылочное горлышко расшили смолтрим где еще есть проблемы.
|
|||
11
vde69
10.09.15
✎
09:10
|
(5) отложенное проведение ...
(4) 1с не зря сделало ограничение на размер табличных частей, в практическом смысле не стоит делать документы которые делают такие большие транзакции... кроме того на транзакцию памяти много надо, скорее всего словишь исключение по памяти.... |
|||
12
Маратыч
10.09.15
✎
09:11
|
(10) Меня как раз и интересует вопрос - являются ли возможности технологической платформы 1С 8.2 этим самым бутылочным горлышком, которое расширять уже нечем и надо использовать альтернативные варианты?
|
|||
13
Ranger_83
10.09.15
✎
09:11
|
У меня в практике был случай на большом заводе, когда документ КЗР записывал около млн. записей.Запись в базу на серваке происходила примерно 1-1.5 часа на серваке средней паршивости.Но дело даже не в этом, а в том что сервер приложений забивал всю память и падал от этого.
|
|||
14
gigi789
10.09.15
✎
09:11
|
Зарание вам серебряную пулю не кто не даст. 1с дает лиш общие рекомендации бывает так, что в конкретном случае их можно нарушить.
|
|||
15
vde69
10.09.15
✎
09:12
|
(10) ты не прав, тут 90% зависит от выбора архитектуры
|
|||
16
Маратыч
10.09.15
✎
09:12
|
(11) Во, уже ближе к теме. ОК, разобьем доки по 10 тысяч записей, получаем 2700 документов.
|
|||
17
Маратыч
10.09.15
✎
09:13
|
(14) В общих рекомендациях 1С все радужно и масштабируемо до уровня неба и Аллаха. На практике веселуха заканчивается, начинаются суровые будни.
|
|||
18
Маратыч
10.09.15
✎
09:14
|
(13) Но таки проводился и выбивало в редких случаях?
|
|||
19
gigi789
10.09.15
✎
09:15
|
(15) да ладно даже стив маконел рекомендует учетные решения разрабатывать итерационно т.к. время на создание хорошей архитектуры может перекрыть время жизни решения.
|
|||
20
vde69
10.09.15
✎
09:17
|
(17) все зависит от уровня нормализации/денормализации таблиц, именно на этом этапе ты ДОЛЖЕН избавится од 99% проблемм с маштабируемостью...
почитай когда нужно нормализовывать а когда денормализовывать. Читать лучше например курсы по SQL, а потом это применять к 1с. |
|||
21
Ranger_83
10.09.15
✎
09:18
|
(18) В основном проводился.
|
|||
22
Маратыч
10.09.15
✎
09:21
|
(21) Тогда, думаю, это исчерпывающий ответ на мой вопрос. Если миллион проводок пишутся 1-1.5 часа, то и 3 документа по 300 тыс. строк (или 27 по 10 тыс.) дольше двух часов проводиться не будут. Делается это в ночное время, так что вопрос блокировок не сильно актуален, да и решить его можно на уровне разработки.
|
|||
23
ДенисЧ
10.09.15
✎
09:22
|
ЛУчше дробить большие документы по непересекающимся частям
И включать управляемые блокировки |
|||
24
aka AMIGO
10.09.15
✎
09:24
|
а может нужно начать с "Организации документооборота"?
Слабо верится в такое количество хоз.операций в короткое время. Принцип "Консерватории" еще не отменён :) |
|||
25
Маратыч
10.09.15
✎
09:25
|
(24) Там много мелких платежей, собсно.
|
|||
26
Irbis
10.09.15
✎
09:26
|
Можно вообще от противного пойти, если документы грузятся автоматически сделать их однострочными или вообще без ТЧ.
Разумеется, если принцип "всё или ничего" не главенствует. |
|||
27
vde69
10.09.15
✎
09:27
|
(22) не делай так, расскажу, что будет на себе
когда делали факторинг на ночной регламент повесили расчет комиссий по договорам (каждый день примерно 500 000 проводок), расчет занимал примерно 2 час... Хорошо, что я его сделал не одним документом а многими. Теперь что было дальше... периодически пользователям нужно было исправлять параметры начисления (или аналитику остатков) задним числом, а по сколько после этого нужно было пересчитывать комиссии мы спокойно запускали это дном в фоне, да при этом тормозило, но колом ничего не вставало.... |
|||
28
DailyLookingOnA Sunse
10.09.15
✎
09:28
|
Проводки сводно, детализацию в регистр накопления.
Можно сказать, типовое решение. |
|||
29
Маратыч
10.09.15
✎
09:31
|
(26) Не, это совсем адЪ чота :)
|
|||
30
Маратыч
10.09.15
✎
09:34
|
(27) >не делай так
В смысле, большими документами? Да это уже понятно, разбивать будем. |
|||
31
Irbis
10.09.15
✎
09:36
|
(29) Не всегда, у нас так сложился БП, что даже на каждый продукт, даже в рамках одной отгрузки будет своё приложение и т. д. Иногда удобства от такого больше, чем геморроя с количеством документов.
|
|||
32
gigi789
10.09.15
✎
09:36
|
да и в целом регистры бухгалтерии не очень в плане высоко загруженности.
|
|||
33
Маратыч
10.09.15
✎
09:40
|
(32) Было бы удобно с точки зрения отчетности, но какбе и не обязательно. Рассмотрим вариант с детализацией в РН (или вообще все в РН вынести, по большому счету двойная запись в моем случае не нужна).
|
|||
34
Irbis
10.09.15
✎
09:42
|
(33) Я так в рознице ещё на клюшках делал. По номенклатуре учет в регистре, бухучёт на проводках.
|
|||
35
Ranger_83
10.09.15
✎
09:44
|
(33) А что ты будешь делать с этими данными?Может создать буферную таблицу в скуле и напрямую туда писать/читать?
|
|||
36
mistеr
10.09.15
✎
09:44
|
(9) >данные подгружаются из другой инф. системы.
Я бы крепко подумал, а стоит ли использовать именно документы. Может РС лучше или еще что. А проводки нужно агрегировать. |
|||
37
mistеr
10.09.15
✎
09:45
|
(25) Терминальшики что ли?
|
|||
38
Маратыч
10.09.15
✎
09:48
|
(35) А это как раз и есть альтернативный вариант. Только там не совсем буферная таблица нужна - нужен именно весь набор данных из таблицы платежей, полностью продублированный (оригинал не катит - одно из условий задачи).
(37) Они самые. |
|||
39
Маратыч
10.09.15
✎
09:49
|
+(38) Вообще, я к этому варианту изначально очень склоняюсь, ибо вообще все траблы отпадают. Но тут вмешиваются хотелки больших юзеров.
|
|||
40
Ranger_83
10.09.15
✎
09:51
|
(39) Как это идет вразрез с хотелками?
|
|||
41
gigi789
10.09.15
✎
09:51
|
(38) ну тогда вариант собирать все рн, а потом в конце месяца делать общую проводку по бух учету без разбивки.
|
|||
42
RayCon
10.09.15
✎
09:53
|
(9) Если "данные подгружаются из другой инф. системы", то разумнее поменять концепцию: вводить проводки агрегированные суммы авизовками.
|
|||
43
Aleksey
10.09.15
✎
09:56
|
(36) А может вообще внешний источник данных чисто для отчетов. И не надо тащить их в 1С?
|
|||
44
mistеr
10.09.15
✎
09:58
|
(38) Для целей БУ детальные данные нафиг не нужны. Их нужно сливать в отдельную базу. Если недалекий босс хочет непременно 1С - пусть будет 1С. Только проектировать нужно тщательно.
|
|||
45
Живой Ископаемый
10.09.15
✎
10:16
|
Ваша задача агрегировать в 1С крупнее, и обеспечить сходимость и возможность валидации любой 1Совской проводки с OLTP-базой
|
|||
46
Живой Ископаемый
10.09.15
✎
10:17
|
и в принципе можно даже нарисовать при помощи Внешних Источников данных интерфейс в эту OLTP-базу, так чтобы на пользовательском уровне решение выглядело seemless
|
|||
47
Sammo
10.09.15
✎
10:44
|
На регистрах бухгалтерии у меня были проблемы (возможно руки кривоваты) На регистрах накопления проблем нет никаких.
Как вариант - иметь а Бухии агрегированные данные, а для первички - отдельный блок (не факт, что отдельную базу) P.S. безумно не хватает в 1с возможности писать наборы регистров накопления без отбора по регистратору (чтобы можно было формировать наборы сразу по нескольким регистраторам) |
|||
48
Ranger_83
10.09.15
✎
10:45
|
(47) писать с привзякой с кзр
|
|||
49
DexterMorgan
10.09.15
✎
11:22
|
ТС, что мешает произвести нагрузочное тестирование?
|
|||
50
Маратыч
10.09.15
✎
11:25
|
(49) Вопрос пока академического характера, мощностей свободных на ближайший месяц не дают - заняты. Не на десктопе же тестить.
|
|||
51
DexterMorgan
10.09.15
✎
11:29
|
(50) Ну на самом деле тебе ответ даст только скажем Тест центр, а все остальное это балобольство и предположения =)
|
|||
52
DexterMorgan
10.09.15
✎
11:30
|
на всяк оставлю тут) http://v8.1c.ru/expert/tc/tc_overview.htm
|
|||
53
Маратыч
10.09.15
✎
11:33
|
(50) Ага, спасибо :)
Ну как балабольство - Ranger_83 реальный пример привел, от которого уже плясать можно. Я же не точные цифры спрашиваю - сугубо "мона или низя/нинуна/лучше не надо?". |
|||
54
DexterMorgan
10.09.15
✎
11:35
|
(53) Твое оборудование может сильно отличаться от Ranger_83, как и ваши представления о "средней паршивости сервере". ))
|
|||
55
Маратыч
10.09.15
✎
11:39
|
(54) Задача не совсем чтобы "какие мощности требуются", а "возможно ли принципиально это сделать на данной программной платформе, если предположить, что аппаратно масштабироваться можно до усёру?" :)
|
|||
56
DexterMorgan
10.09.15
✎
11:40
|
(55) ну я тогда поставлю на "что да, возможно" =)
|
|||
57
DexterMorgan
10.09.15
✎
11:44
|
(55) кстати такое большое количество документов как в (16) можно проводить в несколько фоновых заданий: http://test-out.kursypo1c.ru/articles/%d0%ba%d0%b0%d0%ba-%d1%83%d1%81%d0%ba%d0%be%d1%80%d0%b8%d1%82%d1%8c-1%d1%81-%d0%bc%d0%bd%d0%be%d0%b3%d0%be%d0%bf%d0%be%d1%82%d0%be%d1%87%d0%bd%d0%be%d1%81%d1%82%d1%8c/
|
|||
58
gigi789
10.09.15
✎
12:01
|
(57) при условии что данные не пересекаются.
|
|||
59
DexterMorgan
10.09.15
✎
12:01
|
(58) Это написано в статье
|
|||
60
Маратыч
10.09.15
✎
12:01
|
(57) Благодарствую, может пригодиться =)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |