Size: a a a

1С, БСП, DevOps и Архитектура

2021 February 19

KK

Konstantin Kozyrev in 1С, БСП, DevOps и Архитектура
Павел Мишин
Самая быстрая запись будет в объект для которого платформа будет держать минимальное кол-во индексов и минимальные платформеннные проверки. Итого это справочник у которго наименование и код обнулены в свойствах и запись в режиме обмен данными. Далее идет РС (независимый, запись в режиме обмен данными) но тут нужно чуть больше трудозатрат на проектирование и выбор режима записи чтобы добится близкого к справочнику значения. Измерение одно (техническое - уникальный идентификатор для каждой записи, все прочие поля в реквизитах)
То есть, если я захочу в такой справочник записать, условно, 10000 номенклатурных позиций, это будет быстрее, чем пользоваться набором записей в РС? Или я что-то упускаю?
источник

NG

Nikita Gryzlov in 1С, БСП, DevOps и Архитектура
Konstantin Kozyrev
То есть, если я захочу в такой справочник записать, условно, 10000 номенклатурных позиций, это будет быстрее, чем пользоваться набором записей в РС? Или я что-то упускаю?
Эта другая задача)
источник

NG

Nikita Gryzlov in 1С, БСП, DevOps и Архитектура
Быстро записать большой набор данных - рс.
Быстро записать одну строку - справочник
источник

KK

Konstantin Kozyrev in 1С, БСП, DevOps и Архитектура
Nikita Gryzlov
Быстро записать большой набор данных - рс.
Быстро записать одну строку - справочник
А, я изначальное словосочетание значит не так понял. Думал, что "некие простые данные" - большой набор.
источник

KK

Konstantin Kozyrev in 1С, БСП, DevOps и Архитектура
Ну, РС так РС. А я уж думал идти замеры делать, архитектуру ломать...
источник

NG

Nikita Gryzlov in 1С, БСП, DevOps и Архитектура
#ВерьТолькоПрофайлеру
источник

OT

Oleg Tymko in 1С, БСП, DevOps и Архитектура
Nikita Gryzlov
#ВерьТолькоПрофайлеру
И в бога SQL
источник

ПМ

Павел Мишин... in 1С, БСП, DevOps и Архитектура
Konstantin Kozyrev
То есть, если я захочу в такой справочник записать, условно, 10000 номенклатурных позиций, это будет быстрее, чем пользоваться набором записей в РС? Или я что-то упускаю?
Суть не в конкретном обьекте а что происходит под капотом какая структура что делает транслятор платфлрмы и что физически на sql таблицы и индексы (тормозят запись ускоряют чтение). Для конкретной технической задачи когда нужно вставлять новую запись в "очередь" и нет перезатирания очереди нужно просто вставлять новые и удалять обработанрые. Обнуленный по коду/наименованию справочник выигрывает (особенно если многопоточность). От РС мы можете добится почти того же самого путем обозначенных выше манипуляций но не опередить.
источник

ПМ

Павел Мишин... in 1С, БСП, DevOps и Архитектура
Пример уже мноно лет в нагрузочных проектам одно из пеивый действий отключаем типовое веисион рование бсп (регичт сведений) и включаем на справочнике т.е каждое событие изменения  реквизитов уникальное. Нкт такого что нужно тратить время на анализ менялся секунду назад этот реквизит другим потоком или нет. Просто нужно сохранить факт (вставить новую строку в таблицу).
источник

ПМ

Павел Мишин... in 1С, БСП, DevOps и Архитектура
Для массовой записи 10000 и т.п есть табличная часть ))) т.е тут тоже для "очереди" нет минусов относительно рс. Точно также собрали 10000 связанных полей в набор-табличную часть и одной строкой записали.
источник

KK

Konstantin Kozyrev in 1С, БСП, DevOps и Архитектура
Nikita Gryzlov
#ВерьТолькоПрофайлеру
Лишь ему и верю. Но порой хочется новые вещи попробовать, померить их.
источник

KK

Konstantin Kozyrev in 1С, БСП, DevOps и Архитектура
Oleg Tymko
И в бога SQL
Файловые базы и обычные формы - наше всё, эх
источник

KK

Konstantin Kozyrev in 1С, БСП, DevOps и Архитектура
Павел Мишин
Для массовой записи 10000 и т.п есть табличная часть ))) т.е тут тоже для "очереди" нет минусов относительно рс. Точно также собрали 10000 связанных полей в набор-табличную часть и одной строкой записали.
А как табличная часть здесь поможет? Что-то не совсем логику понимаю
источник

ПМ

Павел Мишин... in 1С, БСП, DevOps и Архитектура
Konstantin Kozyrev
А как табличная часть здесь поможет? Что-то не совсем логику понимаю
Я так понял противопоставлялся режим 10000 раз вызвать обьект.записать против набор.добавить...10000 раз один раз набор.записать(). Сравнивать надо с справочник.табчасть.добавить /загрузить().
источник

PT

Poodle Tarkus in 1С, БСП, DevOps и Архитектура
В том смысле, что если задача только в быстрой записи , не думая о чтении - то скорость через ТЧ и через набор РС примерно одинаковые?
источник

ss

sdf1979 sdf1979 in 1С, БСП, DevOps и Архитектура
John Doe
Про "РС (независимый, запись в режиме обмен данными)" уже неактуально - где-то с 8.3.15 это 15-летнее поведение пофиксили и теперь даже в таком режиме происходит зачитывание записей набора (по отбору) из СУБД :(
Т.е. теперь режим загрузки только на прикладном уровне влияет (подписки там может какие не выполнятся, если анализируют это свойство).
Все ж самая быстрая запись в РС НаборЗаписей.Записать(Ложь), в котором одно измерение Число(14,0) = ТекущаяУниверсальнаяДатаВМиллисекундах(). Дальше скорость уже будет зависить  от объема записываемых данных в ресурсах. Затем если есть затык - то меняли fillfactor в MS SQL на 50%.
источник
2021 February 20

ПМ

Павел Мишин... in 1С, БСП, DevOps и Архитектура
Такой числовой ключ обеспечивает максимум 1 кб/с т.е пропускную способность сохранения входящего потока.  И не позволяет в 1 мс с разных потоков / датчиков сохранить значения.
источник

ss

sdf1979 sdf1979 in 1С, БСП, DevOps и Архитектура
Павел Мишин
Такой числовой ключ обеспечивает максимум 1 кб/с т.е пропускную способность сохранения входящего потока.  И не позволяет в 1 мс с разных потоков / датчиков сохранить значения.
Добавить giud вторым измерением и будет счастье
источник

ПМ

Павел Мишин... in 1С, БСП, DevOps и Архитектура
Т.е индекс будет состочть из двух полей гуид плюс число и оба этих поля вы заполнянте кодом на скрипте 1с с учетом многопоточности. Думаете сделаете это быстрее чем платфориа поле idref спрааочника?
источник

ПМ

Павел Мишин... in 1С, БСП, DevOps и Архитектура
Умозрительный эксперимент. Стоит ннкий датчик / телеграф / модем он выдает с разной скоромтью букву. Создайте в 1с структуру для приема этого сообщения. Сколько знаков в секунду от одного датчика вы максимум прочитаете, а если датчиков будет 10
источник