Имя: Пароль:
JOB
 
Вопрос с собеседования про ускорения загрузки
↓ (Волшебник 18.04.2023 21:38)
0 nodrama
 
18.04.23
16:06
Доброго времени суток. Не пятница но все же.. Тут не так давно смотрел вакансии что там интересного и в общем разок по собеседовался.. Вот один из вопросов с собеседования. Ответ/результат скажу позже, после ваших ;)

Вопрос :
Есть конфигурация 1c, не суть какая. Пустая по справочникам и документам. В ней есть не типовой справочник который имеет 1 реквизит, пусть будет Артикул.
Мы сгенерировали некую таблицу, в которой миллионы артикулов. В общем дооооффиигаа (не повторяющихся все норм). И далее банально циклом пробежались и записали эти данные в этот справочник. Заняло это у нас допустим 12 часов. (сама обработка). Но нам надо быстрее и не на 5-10 минут, а явно быстрее. Как можно это осуществить?
Сразу уточню.
ОбменДанными.Загрузка=истина, ни чего не дает, проверок и т.д ни каких нет.
Запись в транзакциях (Начать транзакцию) записать скажет 50к, зафершитьтранзакцию и т.д. Дало совсем мизерный прирост, который не значительный.
Закинуть эту таблицу сразу в SQL средствами SQL, нельзя, это как минимум нарушает рекомендации 1с или как там правильно сказать, ну и база может быть и не на sql, а на Оракле (не знаю можно там так записывать на прямую или нет). но в общем нельзя.

Вот как-то так.  Что думаете ?
1 Волшебник
 
18.04.23
16:08
Генераторы миллионов артикулов должны страдать...
2 nodrama
 
18.04.23
16:10
(1) Ну мне правда интересно, кто бы что ответил если бы задали такой вопрос. =) даже могу потом назвать, что это за Комания такая, которая придумывает такие вопросы)
3 Krendel
 
18.04.23
16:11
(0) Они руками чтоли писали?
4 dmt
 
18.04.23
16:12
(0) несколько потоков
5 nodrama
 
18.04.23
16:12
(3) Руками что? собеседования онлайн. артикулы с генерировали как не важно, просто есть таблица с ними. а записывали. обработкой тупо циклом по таблице артикулов... миллионы миллионов артикулов это образно, 12 часов шла обработка тоже образно. вопрос именно как можно и можно ли ускорить)
6 Lama12
 
18.04.23
16:13
(4) Блокировки?
7 VladZ
 
18.04.23
16:14
(0) Можно рассмотреть вариант параллельной загрузки. Предварительно оценив влияние блокировок.
8 Krendel
 
18.04.23
16:19
(5) 1Ска пишет данные в таблицы ТТР 3 (смешанный  тип чтения/записи дисковой подсистемы) * 20- мы достигали штатными способами, на твоей задаче это будут сроки в в минуты, но никак не часы
9 Шурик71
 
18.04.23
16:20
(4) +1.

Судя по описанию задания - запись в справочники логически независима.
Соединить таблицу артикулов со справочниками.
Разбить результат на порции и записать в несколько потоков фоновыми заданиями.
10 H A D G E H O G s
 
18.04.23
16:20
(0) Пусть пишут в 1С, на партнерку, чтобы там сделали BulkInsert для ссылочных типов.
11 DeeK
 
18.04.23
16:22
(0) разбить на чанки и пулять фоновые
12 НафНаф
 
18.04.23
16:23
(6) строки то разные- блокировок не будет
14 nodrama
 
18.04.23
16:28
(9) Ну в общем, все что мне пришло в голову, это как и писали, поделить и лить в несколько потоков.  Просто подумал вдруг есть какие то еще способы неведомые.. мне не приходилось миллионы миллионов артикулов записывать или чего либо. тем более на скорость)

Что самое смешное это было одно из более сложных заданий (впросов) из всех что были. остальные были совсем банальные. типо чем отличается регистр сведений от справочника. чем отличается левое от правого) и с какими ограничениями столкнулись прогшраммисты когда появились УФ формы, типо что можно было в ОФ но нельзя в УФ и на оборорот.
15 PR
 
18.04.23
16:26
Правильный ответ — использовать РС, а не справочник
16 H A D G E H O G s
 
18.04.23
16:26
(12) Строки конечно разные, но UID справоника из коробки - монотонно возрастающий и кластерный индекс больше одно за раз не пережует.
17 BeerHelpsMeWin
 
18.04.23
16:27
(0)
-поинтересоваться, зачем им в 1с нетиповой справочник на десять миллионов записей и почему нельзя его вынести, например, во внешний источник
-закинуть эту таблицу в SQL средствами SQL и никому не рассказывать
18 Волшебник
 
18.04.23
16:27
(15) При записи будет проверяться отбор по измерениям. Вряд ли будет ускорение
19 dmt
 
18.04.23
16:28
(14) не расслабляйся ) может это первый этап из нескольких, как в Яндексе
20 H A D G E H O G s
 
18.04.23
16:29
(16) Но все равно выигрыш будет, песни-пляски 1С будут выполняться параллельно, все упрется в 2 узких горлышка - выдача нового UID и вставку в кластерных индекс. Ну или УстановитьСсылкуНового(), это снимет одно из горлышек, а может и оба.
21 nodrama
 
18.04.23
16:29
(17) Поинтересовался. Все что они с фантазировали. Это делается, для нагрузки базы, что бы проверить производительность )))
из серии конфы теста гилева, которая показывает производительность твоего сервера и показывает другие результаты других сборок)
А по поводу SQL я так и сказал. если там тупо справочник с 1 реквизитом, то можно sql мне ответили что нет нельзя нарушает 1с и база может быть не на sql а на Oracle это дословно )
22 PR
 
18.04.23
16:30
(18) Ускорение в десятки раз, а то и в сотни, потому что используется набор записей, а не запись по одному элементу
Попробуй записать миллион записей в РС и проверь
23 BeerHelpsMeWin
 
18.04.23
16:30
(17) дв, заодно надо спросить, чем их не устраивает текущие 12 часов обработки? Надо каждый день полностью перезаписывать справочник в миллионы записей?
24 Lama12
 
18.04.23
16:31
Варианты экзотические.
1. База при разворачивании должна иметь полностью заполненный справочник. Где и когда это делается - не важно.
2. Запихнуть базу и платформу в кэш 3 уровня AMD Epyc Genoa 9684X.
3. Весь справочник сразу вряд ли понадобится. Вообще отказаться от автоматического заполнения и вводить по мере необходимости пользователями.
4. В полях выбора сделать выбор из справочника и из таблицы. Если в справочнике элемент есть, брать из него, если нету, то создавать новый со значением выбранным из таблицы.
5. Хранить данные не в справочнике.
6. Взять базу с заполненным справочником, и одним документом. Удалить документ.
7. Вообще отказаться от хранения артикулов. Если их можно сгенерировать, то можно использовать алгоритм их формирования в логике работы программы.
Ну это так, навскидку.
25 nodrama
 
18.04.23
16:31
(23) я так же спросил. сказали тупо нужно, так как дедлайн ;)
26 Garykom
 
18.04.23
16:32
(0) Создать подчиненную РИБ базу
На отдельном шустром компе ее развернуть, создать элементы справочника
Выполнить обмен
27 PR
 
18.04.23
16:34
(25) То в (21) нагрузка базы для проверки производительности, то уже дедлайн
28 nodrama
 
18.04.23
16:34
(26) так это будет дольше. это надо развернуть базу, залить туда. а потом сделать обмен между базами.  сама загрузка в обмене в нужную базу может и быстрее пройдет. а заливка в подчиненную базу еще займет время в итоге получится + - то же самое ;) (24) ВОпрос был без фантазий, надо было ответить именно на данную ситуацию, а не предлагать другие способы из серии хранить в РС а не справочниках, отказться вообще от артикулов и т.д.
именно данная ситуация и именно как ее ускорить)) а не избежать)
29 Garykom
 
18.04.23
16:35
(28) Проблемы индейцев ...
Если эти лям элементов не могут быстро по РИБ то тут явно ограничение плафтормы и ответ: Никак.
30 nodrama
 
18.04.23
16:36
(27) ну так сказали. я пытался выловить смысл а зачем а нафига.. но нет ;)
ну возможно. сделать нагрузку посмотреть производительность до дедлайна) что бы сообщить результат ;)..

они хотели видимо получить ответ несколько потоков в фоне. что я примерно так и сказал. так как мои отговорки. если это разово то куда спешить, и зачем это вообще нужно и предложения сразу в sql и т.д. и что есть РС а не справочник. не принимались))
31 Волшебник
 
18.04.23
16:38
(28) А там не было таких вопросов?

Если бы Вы могли стать справочником, то каким?
Продайте мне синтакс-помощник.
Почему плюсики круглые?
Представьте, что база разрушается, но ещё запускается. Какие три регистра вы спасёте?
32 nodrama
 
18.04.23
16:40
Я вообще не понял как они от производительности сервера и 1с.. аля тест гилева (там конфа есть в свободном доступе для этого).. дошли до загрузки миллионной таблицы в справочник 1с ;). единственное что связало то и другое, что они сказали что мы сами хотим наполнить конфу 1с. для тестов производительности и вот решили начать с загрузки артикулов в справочники ))))
33 OldCondom
 
18.04.23
16:40
Перевести с автоматической на управляемую блокировку уже было?
34 OldCondom
 
18.04.23
16:41
И да, самый главный затык думаю был не в записи, а в чтении огромного файла.
35 nodrama
 
18.04.23
16:42
В общем мой ответ был SQL который сразу отказали ибо 1с не разрешает. потом несколько потоков фоном.  удовлетворил их или нет не знаю)  сказали до пятницы еще смотреть будут потом решение примут)
36 d4rkmesa
 
18.04.23
16:42
(14) Кстати, "чем отличается регистр сведений от справочника" - на этот вопрос какой у них правильный ответ? )
37 nodrama
 
18.04.23
16:43
(34) они толком не сказали что это за файл и где он вообще. сказали только сгенерировали таблицу артикулов. и залили циклом. но долго) на мой вопрос. а что за таблица и где она сказали не так важно, так как суть вопроса в другом)
38 Krendel
 
18.04.23
16:47
(37) Спрашивали про потоковую загрузку, ты или знаешь что такая существует, или нет
39 PR
 
18.04.23
16:51
(36) Там много отличий
40 nodrama
 
18.04.23
16:52
(36) Да я им накидал, так на вскидку шаблонными ответами. которые я выучил еще лет 8 назад с яндекса ;) Сказали, ок и перешли к слудеющему.
А вообще если перечислять и все. там и правда дофига отличий
41 Shur1cIT
 
18.04.23
16:58
(0) Мне похожий задовали, но там в регистр нужно было из екселя + сопоставление по полям.
42 toypaul
 
18.04.23
16:54
(0) на этот вопрос ожидается один (по их мнению) правильный ответ из (4). к прикладному смыслу это маловероятно что имеет какое-то отношение. проходил 2 таких собеседования (у нас при заходе на проект так положено).
43 dmt
 
18.04.23
16:55
(35) сколько предлагают?
44 Garykom
 
18.04.23
16:55
(38) Даже загрузка в несколько потоков упрется в блокировки
45 toypaul
 
18.04.23
16:55
(41) сейчас все "конторы", которые более-менее заморачиваются оптимизацией, задают этот вопрос. просто выучи правильный ответ и глупых вопросов типа "а зачем"? не задавай. не трать свои и чужое время :)
46 Ботаник Гарден Меран
 
18.04.23
16:55
Для записи не "по одному элементу в справочник" есть транзакции.
47 OldCondom
 
18.04.23
16:57
(44) кстати да. Во всяком случае с проведением чего-либо - это всегда блокировки и эффект сомнительный. Но здесь все таки одна таблица , с управляемыми блокировками может и взлететь. Но в (38) речь о потоковом чтении была.
ПотокДанных = ФайловыеПотоки.ОткрытьДляЧтения("document.txt");
ЧтениеДанных = Новый ЧтениеДанных(ПотокДанных);
Cтрока1 = ЧтениеДанных.ПрочитатьСтроку();
ЧтениеДанных.Закрыть();

ПотокДанных.Перейти(200, ПозицияВПотоке.Начало);

ЧтениеДанных = Новый ЧтениеДанных();
Cтрока2 = ЧтениеДанных.ПрочитатьСтроку();
ЧтениеДанных.Закрыть();
48 toypaul
 
18.04.23
16:57
По-моему в типовых таким образом (в несколько потоков) загружается адресный классификатор (с какого-то сайта)
49 nodrama
 
18.04.23
16:58
(43) 250 на фулл удаленку.
50 Shur1cIT
 
18.04.23
16:59
(45) кстати чтобы почитать про оптимизацию? смотрел курс по подготовки к экперту, но там много лишней информации которая обычным сметным не нужна, а вот аналог "простые приемы разработки" в самый раз
51 Волшебник
 
модератор
18.04.23
22:02
Периодически в ветке есть попытки нарушить правило:

Запрещено обсуждение работодателей и условий работы в различных компаниях без их официальных представителей.
52 Shur1cIT
 
18.04.23
17:04
(49) на ERP?
53 toypaul
 
18.04.23
17:01
(50) читать про оптимизацию это все равно что по картинкам женщин любить. надо смотреть курс(ы) и в бой :)
54 nodrama
 
18.04.23
17:04
(52) ерп, ДокументоОборот
55 nodrama
 
18.04.23
17:03
после пандемии 50% вакансий на хх точно удаленка. куда не тыкну. либо прям в названии (удаленная работа) либо уже в условиях.. ну иногда 1 раз в день в офис.  ;)  вот думаю перестать кататься и найти удаленку.. присматриваю потихоньку )
56 Shur1cIT
 
18.04.23
17:03
(54) Ок значит у одного собеседовались:-) Когда анкету СБ их увидешь поплохеет:-)
57 nodrama
 
18.04.23
17:05
(56) А заполнял анкету СБ на прошлом заводе (полу государственном)... там 5 листов и вопросы очень интересные)
особенно пункты там были. а вы знаете о какой нибудь коррупции или каком либо нарушении, сотрудников данного предприятия ? Если да, то сообщелили бы ?)) и половина все в этом духе)))
58 Garykom
 
18.04.23
17:06
(47) Время затраченное на чтение 1 ляма элементов обычно незначительно с временем записи элементов справочников в базу.
59 PR
 
18.04.23
17:11
(46) Транзакции не ускоряют запись
Это вам не семерка
60 nodrama
 
18.04.23
17:12
(59) вроде как ускоряют.. но совсем не значительно.. если было 12 часов, ну станет 11.5 грубо говоря.. я как то тестил когда заливал номенклатуру вроде чуть пошустрее.. но там не миллионы миллионов было)
61 Garykom
 
18.04.23
17:15
(59) Ускоряют
(60) Нет, значительно ускоряют.
Бывает на порядок, но кол-во элементов в одной транзакции надо подбирать опытным путем каждый раз.
62 PR
 
18.04.23
17:15
(60) Вроде как говорят в Москве кур доят
В семерке транзакция ускоряла, потому что это была особенность платформы
В восьмерке не ускоряет
Твои пять процентов в единственном эксперименте в разы меньше, чем разница из-за разогретости базы
63 PR
 
18.04.23
17:16
(61) Проверял?
64 Garykom
 
18.04.23
17:17
(62)+ Но транзакции могут и замедлить ))
65 Garykom
 
18.04.23
17:17
(63) Да, проверял.
Написал же что надо опытным путем подбирать.
Бывает что самое быстрое вырожденный вариант по 1
66 PR
 
18.04.23
17:18
(64) А могут и вообще не повлиять, да
Прекрасный разброс
67 PR
 
18.04.23
17:19
(65) Тебе не кажется, что ты бредишь? :))
То у тебя имеет смысл использовать транзакцию, потому что это ускоряет в десять раз, то лучше по одному элементу писать, а то как бы медленнее не было
Может ты уже как-то поточнее сформулируешь?
68 Garykom
 
18.04.23
17:20
(66) От кучи факторов зависит.
Как минимум транзакция может помочь стопорнув других юзеров/потоки блокировкой.
69 OldCondom
 
18.04.23
17:20
(63) так это в целом логично. Либо для каждой записи своя транзакция пишет лог, либо одна скажем на 500 элементов.
70 Garykom
 
18.04.23
17:20
(67) Куда уже точнее.

Только ОПЫТНЫМ ПУТЕМ можно определить в каждом конкретном случае полезна ли транзакция.
71 OldCondom
 
18.04.23
17:22
я как то напрямую в бд писал insertы на пару десятков миллионов записей. Повесил маленький сервер, который был для этих задач. Мне потом БДшник доходчиво пояснил, почему я дурак. Сказал по 1к в транзакции писать все.
72 Garykom
 
18.04.23
17:22
(70)+ и ее размер
73 Garykom
 
18.04.23
17:23
(71) На сервере оперативки было маловато
74 Garykom
 
18.04.23
17:23
(73)+ разрядность
75 Shur1cIT
 
18.04.23
17:24
(71) почему нельзя? думал скуль довольно шустрая
76 OldCondom
 
18.04.23
17:24
(73) именно. После введения транзакций летало как пуля.
77 PR
 
18.04.23
17:24
(68) Рукалицо
База с нуля
Один справочник без кодов
Один пользователь
Оперативки 128Гб
SSD чтение запись 7000+
78 andryscha1c
 
18.04.23
17:25
(76) этому есть какие то объяснения, или опытным путем получилось?
79 PR
 
18.04.23
17:26
(70) А, ну понятно
Может быть все что угодно
Влияет все
Только замер в конкретной ситуации
Прекрасные никому не всравшиеся рекомендации
80 OldCondom
 
18.04.23
17:26
(78) Примерно так: Without a transaction, each INSERT is its own transaction. This means that SQL Server has to wait for the log record for the insert to be written to disk, so that the INSERT can be rolled forward if the server crashes and must restart.
81 OldCondom
 
18.04.23
17:27
плюс еще базу чистил, вот такая штука работала значительно быстрее чем без транзакций( я уже не помню сколько по времени, помню только сильно радовался, что все быстро стало):
-- РС Версии объектов.
SET @countDel = (select count(_Fld22356) from _InfoRg22351 where _Fld22356 < @dateDelete);
SET i = 0;

WHILE (i <= @countDel/1000)
BEGIN
    BEGIN TRAN T1
        DELETE TOP(1000) FROM _InfoRg22351
        WHERE _Fld22356 < @dateDelete
        SET i = i + 1;
    COMMIT TRAN T1
END
PRINT 'РС Версии объектов OK'
82 nodrama
 
18.04.23
17:31
(73) Так пока ты будешь тестить разное количество транзакций, что бы определить оптимальный вариант. есть вариант, и найдешь допустим. то пока ты искал о определял опытным путем. то быстрее было бы и так загрузить. если это разово ;) я образно.. а если это на постоянный основе, то конечно можно посидеть потыкать посравнивать )
83 PR
 
18.04.23
17:34
(82) Не не не, так нельзя
Сейчас использование транзакций на 11 элементов даст выигрыш в 7.5%
А через пять минут влажность в комнате повысится и уже все не так, не нужно транзакции использовать
Транзакции дело такое
84 Garykom
 
18.04.23
17:36
(83) Как это не смешно но один знакомый (по одной работе) нам обоим товарищ.
Когда то давным-давно хватался тем что у него для долгой большой загрузки кол-во элементов в следующей транзакции подбирается на лету.
Путем сравнения затраченного времени на предыдущие транзакции.
85 Garykom
 
18.04.23
17:38
(84)+ Товарищ с коротким именем на букву А, а не длинным
86 Ботаник Гарден Меран
 
18.04.23
17:44
(85)
И фамилия на Г?
87 Garykom
 
18.04.23
17:47
(86) нет, на С
88 Garykom
 
18.04.23
17:48
(84) *хвастался
89 Новиков
 
18.04.23
17:54
истинно-правильный ответ то какой?
90 Garykom
 
18.04.23
18:01
(89) Имхо на собесе от такого ответа ждут не "истинно-правильный ответ"
А знания-опыт и умение рассуждать
91 Garykom
 
18.04.23
18:02
(90) *на такой вопрос
92 Krendel
 
18.04.23
18:55
(89) ставлю на ядра, потоки
93 timurhv
 
18.04.23
19:06
(77) транзакция в 50000+ элементов заблокирует всю таблицу без тюнинга MSSQL
94 Dotoshin
 
18.04.23
20:43
(0) Поделить файл на несколько частей и запустить загрузку каждой части на отдельном компе.
95 timurhv
 
18.04.23
21:03
(94) зачем отдельные компы?
В БСП добавили многопоточную обработку:
ВыполнитьПроцедуруВНесколькоПотоков
ВыполнитьФункциюВНесколькоПотоков
97 Aleksey
 
18.04.23
21:26
(95) предлагаешь перед вставкой внедрить БСП?
98 experimentator76
 
18.04.23
21:27
(0) воспользуюсь размытой формулировкой задачи (возможно намеренно)

Создаем реквизит Артикул в табличной части справочника.
Справочник.Создать
ТЧ.Загрузить(ОгромнаяТаблицаАртикулов);
Записать

должно быть быстро.
если нужно ссылаться на строку с артикулом - никто не мешает генерить идентификаторы и хранить их в полях ссылающихся объектов конфигурации.
99 H A D G E H O G s
 
18.04.23
21:29
(98) 99999
100 experimentator76
 
18.04.23
21:29
сыто
101 experimentator76
 
18.04.23
21:30
(99) разве оно осталось? ну тогда не подходит
102 experimentator76
 
18.04.23
21:32
(99) хотя тоже можно обойти.
артикул - это малоограниченная или неограниченная строка.
тогда артикула можно писать в одну строку на сколько хватит здравого смысла :)
103 experimentator76
 
18.04.23
21:33
через запятую или иной разделитель
104 experimentator76
 
18.04.23
21:36
или артикул - это хранилище значения :)
но с индексированием могут быть заморочки
105 MyNick
 
18.04.23
21:37
(0) Правильный ответ - запросить конфигурацию сервера.
Потом громко рассмеяться, порекомендовать выкинуть это овно и купить нормальное железо.
- Поздравляем, Вы приняты.
106 experimentator76
 
18.04.23
21:37
(99) или по достижении предела создавать новый элемент справочника.

в общем я на сегодня закончил :)
107 Волшебник
 
18.04.23
21:39
(105) Правильнее сначала узнать режим базы: файловая или серверная, а если серверная, то какой сервер СУБД. Иначе услышите "Мы вам перезвоним"
108 experimentator76
 
18.04.23
21:54
(107) а если MS SQL то спросить на какой OS :)
109 MyNick
 
18.04.23
21:55
На самом деле все просто.
Кажытсо работодатель имел ввиду, что нужно отключить в метаданных справочника контроль уникальности кода и автонумерацию (код присваивать самому при загрузке).

Даже на моем компике 10 летней давности мульен записей в файловой базе создается менее пяти минут.
12 лямов будет за час.
На нормальном железе думаю до сотки лямов за час набьется.
За 12 часов получится лярд и более, а это уже далеко не "несколько лямов"

Поэтому либо (0) забыл про эти галки, либо вариант (105)
110 Волшебник
 
18.04.23
21:57
(109)👍 Красивое решение!
111 experimentator76
 
18.04.23
22:02
(110) не по ТЗ
112 PR
 
18.04.23
22:02
(105) в админы
113 experimentator76
 
18.04.23
22:03
"В ней есть не типовой справочник который имеет 1 реквизит"
то есть ни кода ни наименования у справочника нет
114 experimentator76
 
18.04.23
22:03
(112) разжаловать
115 experimentator76
 
18.04.23
22:04
(110) не опускай тему до пятницы :))
116 Волшебник
 
18.04.23
22:04
(113) Код и Наименование имеются по умолчанию + 1 реквизит Артикул
117 experimentator76
 
18.04.23
22:05
(116) ТЗ неточное и отправляется на доработку.
с таким прогать начинать нельзя
118 Волшебник
 
18.04.23
22:06
(115) Уже всё решили, загадку разгадали. Тут больше нечего обсуждать. Осталось только дождаться результата собеседования. Я почему-то уверен, что кандидат будет отклонён, потому что нельзя публиковать вопросы с собеседования, да ещё публиковать название компании (которое я тщательно подтирал за ним). Он совершенно не умеет держать язык за зубами.
119 Грю
 
19.04.23
00:10
(0) Не помню уже как именно в 1С это делается, давно с ней не работал. Но суть в следующем:
Создать какой-либо новый объект метаданных с табличной частью, типа документа, например. И чтобы в табличной части строками являлись/содержались элементы справочника. Чтобы при проведении/записи этого документа, записались все эти строки сразу пачкой, а не по одному в цикле. Может не точно объяснил, поправьте с поправкой на 1С-овскую терминологию, но думаю что идея понятна: Запись пачкой, лююым из доступных способов.
120 ILM
 
19.04.23
07:06
Рарус на конференции в Новосибирске, рассказывал как они грузили все продажи, закупки и логистику для одной конторы за 4 часа. Создавали документы из регистров сведений. Сначала грузили регистры в несколько потоков, потом сразу в фоне, в несколько потоков загружали данные из регистров в документы. Причём после успешной загрузки данные в регистре сведений удалялись, получался супер быстрый ввод в регистры сведений, и помедленее уже в документы. Причем заливались все продажи за день по каждому магазину в одну базу, а из неё агрегаты уже заливались в управленческую базу для анализа, оплат и т.д. Было это в году 2014, и лили они около лярда строк в день.
121 Valdis2007
 
19.04.23
10:26
(0) это вопрос на смекалку ...ключевая фраза здесь -"и записали эти данные в этот справочник"...После этого у вас уже есть база с таким справочником, соответственно выгружаем в дтэшник, и загружаем в новою конфу когда надо!))
122 Волшебник
 
21.04.23
14:09
(121)🔥 Оригинально
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой