Простая параллельная обработка данных

Публикация № 1192125

Администрирование - Производительность и оптимизация (HighLoad)

параллельная многопоточная обработка данные экспресс

Предлагаю способ быстрой параллельной обработки "неких" данных. Методика проста как дважды два. Предварительно подготовленная обработка запускается вручную в нескольких сеансах, и каждый сеанс занимается обработкой своей части (случайного диапазона). Может пригодиться для ускоренной обработки данных. К примеру, необходимо заполнить реквизит большого справочника, заполнение в один поток идёт долго, а сроки поджимают.

Предыстория:

Как-то появилась необходимость быстро выполнить обработчики обновления после перехода на новый релиз. Стандартная обработка занимала неделю. Надо было уложиться в 2 стандартных выходных. Как же это сделать быстро и желательно без модификации конфигурации?

Можно написать обработку и запустить в нескольких сеансах вручную. Но обработка в разных сеансах будет обрабатывать одни и те же "куски" данных. Как просто выйти из этой ситуации?

Вариант решения: Каждый сеанс должен обрабатывать свой случайный диапазон данных.

Конечно, иногда они будут пересекаться. На этот случай перед обработкой диапазона устанавливаем управляемую блокировку. Да, время от времени блокировки сеансов будут "натыкаться" друг на друга, но при больших размерах выборки и малой порции это будет происходить редко.

Как использовать обработку:

 1. В функцию "Получить запрос", помещаем свой запрос для получения обрабатываемых данных

 
ПолучитьЗапрос()

 2. При необходимости, в процедуре "ЗаблокироватьДанные" разрабатываем алгоритм блокировки: 

 
ЗаблокироватьДанные

 3. В процедуре "ОбработатьОбъекты" непосредственно реализуем процесс обработки.

 
 ОбработатьОбъекты

4. Готовую обработку запускаем в нескольких сеансах.

5. Время от времени поглядываем на процесс, если она остановилась из-за блокировки, то запускаем заново.

Дополнительное описание работы обработки:

 Основная рабочая лошадка - функция "ОбработатьПорцию". Она вызывается с помощью обработчика ожидания, пока возвращаемое значение отлично от 0-ля:

 
 ОбработатьПорцию()

 Основная функция для обработки порции данных и выбора случайного диапазона:

 
 ПолучитьДанныеПорцииДляОбработки()

Требования: Управляемые формы

Протестировано на: 1С:Предприятие 8.3 (8.3.13.1644)

Скачать файлы

Наименование Файл Версия Размер
Простая параллельная обработка данных:
.epf 8,13Kb
09.02.20
0
.epf 1.0 8,13Kb Скачать

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. PowerBoy 2955 11.02.20 06:11 Сейчас в теме
Запустил бы процесс в фоновый многопоток, да и случайный выбор диаппазона обработки данных это ...
2. Amadeus007 5 11.02.20 07:18 Сейчас в теме
(1)как запустить в фоновый многопоток без модификации конфигурации? тем более для разовых обработок, оно надо?
Случайный выбор вполне себе работоспособно. не идеальное но решение
3. KUAvanesov 11.02.20 07:30 Сейчас в теме
(2) можно в расширении в ом прописать процедуру и отправить ее в длительныеоперации.
4. Amadeus007 5 11.02.20 07:36 Сейчас в теме
(3) да можно. но расширения не всегда доступны и его потом желательно удалить из продуктивна. ИМХО. мой вариант проще и универсальнее. в последний раз доделка заняла минут 10... А так, буду рад если кто предложит решение ещё проще.
5. PowerBoy 2955 11.02.20 10:28 Сейчас в теме
6. Amadeus007 5 11.02.20 11:33 Сейчас в теме
(5) А её внедрять надо в конфигурацию?
7. PowerBoy 2955 11.02.20 11:58 Сейчас в теме
(6) Нет, внешняя обработка, для многопоточной обработки даже можно не регистрировать, ну конечно только для клиент - сервера и БСП в конфигурации должно быть.
8. Amadeus007 5 11.02.20 12:01 Сейчас в теме
(7) Как только наберу sm так сразу загружу и изучу :) а пока буду пользоваться своим...
Оставьте свое сообщение

См. также

Валидация данных

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Прочие инструменты разработчика

Пример универсального механизма для валидации данных: проверка типов, связей между таблицами, заполненности полей.

1 стартмани

01.04.2020    2434    relines    8       

Готовые переносы данных из различных конфигураций 1C Промо

Рекомендуем готовые решения для переноса данных из различных конфигураций 1C. C техподдержкой от разработчиков и гарантией от Инфостарт.

Отладка шаблонов ограничений

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Прочие инструменты разработчика

Обработка предназначена для получения результирующего текста ограничений доступа при использовании шаблона ограничений доступа, с учетом фактических параметров, параметров сеанса и функциональных опций.

1 стартмани

26.03.2020    1883    10    vadim1980    2       

Имена таблиц на сервере

Инструменты и обработки Системный администратор Программист Стажер Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Абонемент ($m) Прочие инструменты разработчика

Обработка позволяющая удобно определить, в какой таблице на сервере баз данных находится той или иной объект 1С. Только для управляемого приложения! Тестировалось на платформе 1с 8.3.15.1565.

1 стартмани

19.03.2020    857    alexyur    2       

Базовый курс для начинающих 1С-программистов. Онлайн-интенсив со 2 июня по 2 июля 2020 г. Промо

Данный онлайн-курс является начальной ступенью по изучению базовых принципов программирования в системе “1С:Предприятие” и предназначен для обучения 1С-программированию “с нуля”.

4500-9500 рублей

Подготовка (исправление) XML схем

Инструменты и обработки Программист Архив с данными v8 Windows Абонемент ($m) Прочие инструменты разработчика

Иногда, XML схемы не соответствуют стандарту w3.org и это грустно :-( . Скрипт публикации исправляет ошибки XML схем в автоматическом режиме.

1 стартмани

10.03.2020    863    infosoft-v    3       

Внешний регламент для 1С

Инструменты и обработки Программист Архив с данными v8 Россия Абонемент ($m) Прочие инструменты разработчика

Внешний регламент сделан для тех, кто ценит свое время и время заказчика. После одноразового встраивания в конфигурацию, внешний регламент на лету позволяет добавлять, изменять внешние модули, которые могут выполнятся как регламентные задачи с указанным интервалом или запускаться в ручном режиме для отладки. Все модули (внешние обработки) находятся и выполняются на стороне сервера, что позволяет исключить подмену алгоритмов со стороны клиента.

1 стартмани

05.03.2020    1003    3    moolex    4       

Базовый курс по обмену данными в системе 1С:Предприятие. Онлайн-интенсив с 12 по 28 мая 2020 г. Промо

Данный онлайн-курс предусматривает изучение механизмов платформы “1С:Предприятие”, обеспечивающих обмен данными между различными прикладными 1С-решениями и взаимодействие с другими информационными системами. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”.

5500 рублей

Пишем код в режиме предприятия на УФ

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Windows Абонемент ($m) Прочие инструменты разработчика

Тестирование кода прямо в режиме предприятия. Изменение документов и справочников. Управляемые формы. Сохранение и форматирование кода.

1 стартмани

27.02.2020    1013    1    HAMAZ    9       

Выполнение произвольного кода 1С на управляемых формах

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Россия Абонемент ($m) Прочие инструменты разработчика

Часто при работе в режиме предприятия необходимо выполнить какой-либо код. Для этого необходимо написать внешнюю обработку, а можно воспользоваться нашей обработкой для выполнения произвольного кода в режиме предприятия.

2 стартмани

18.02.2020    1343    6    seregapolygon    8       

Онлайн-курс «Автоматизация процессов управления МТО: методика сбора и формализации требований» с 1 апреля по 13 мая 2020 года. Промо

Цель курса - повысить полноту и качество сбора и формализации требований к автоматизации процессов управления материально-техническим обеспечением. Курс основан на процессном подходе, позволяет в полном объеме выявить и учесть все факторы, влияющие на специфику процессов управления МТО. Участники курса получают теоретические знания в области организации процессов управления МТО и готовый инструментарий для сбора и формализации требований по автоматизации этих процессов (шаблоны, опросники, модели).

40000 рублей

БСП - Дополнительная обработка - Заполнение объекта - Произвольный алгоритм

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) БСП (Библиотека стандартных подсистем) Прочие инструменты разработчика

Информационная система 1С ИТС: "При разработке решений следует учитывать, что опасно не только непосредственное выполнение кода, написанного в режиме Предприятие, но и те места, где методами Выполнить или Вычислить исполняется код, сконструированный на основе параметров, переданных в серверные функции и процедуры. Ограничение не распространяется на код, выполняемый на клиенте."

1 стартмани

13.02.2020    1110    duhh    2       

Новый раздел на Инфостарте - Electronic Software Distribution Промо

Инфостарт напоминает: на нашем сайте можно купить не только ПО, связанное с 1С. В нашем арсенале – ESD-лицензии на ПО от ведущих вендоров: Microsoft, Kaspersky, ESET, Dr.Web, Аскон и другие.

  • Низкие цены, без скрытых платежей и наценок
  • Оперативная отгрузка
  • Возможность оплаты с личного счета (кешбек, обмен стартмани на рубли и т.п.)
  • Покупки идут в накопления для получения скидочных карт лояльности Silver (5%) и Gold (10%)

Zabbix: Мониторинг рабочих процессов

Статья Системный администратор Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Zabbix

Мониторинг памяти, потребляемой рабочими процессами, средствами Zabbix. Создание пользовательских LLD правил с помощью One Script

1 стартмани

07.02.2020    2313    EShchavleva    6       

Онлайн-интенсив "1C:Предприятие для программистов: Бухгалтерские задачи" с 22 июня по 8 июля 2020 г. Промо

Данный онлайн-курс предусматривает изучение механизмов платформы “1С:Предприятие”, которые предназначены для решения задач бухгалтерского учета. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”, а также для опытных пользователей прикладного решения “1С:Бухгалтерия” и прочих прикладных решений, в которых реализованы соответствующие механизмы для автоматизации бухгалтерских задач.

4900 рублей

Очень простая и удобная отладка внешних обработок

Инструменты и обработки Программист Расширение (cfe) v8 v8::УФ 1cv8.cf Абонемент ($m) Прочие инструменты разработчика

Расширение для отладки внешних отчётов и обработок в несколько кликов.

1 стартмани

07.02.2020    1940    21    for_sale    0       

Набор скриптов .bat для автообновления списка баз и версии платформы 1С

Инструменты и обработки Системный администратор Программист Архив с данными v8 1cv8.cf Россия Windows Абонемент ($m) Прочие инструменты разработчика

Автоматическое обновление списка информационных баз 1С, автоматическая установка новой версии платформы на компьютер пользователя.

1 стартмани

23.01.2020    1426    4    ManyakRus    4       

Лучшие программы за прошедший месяц Промо

Инфостарт подготовил ТОП-25 самых продаваемых и популярных на текущий момент программ. При формировании списка учитывается аналитика продаж и запросы клиентов за последний месяц.

Конструктор запросов при внешнем подключении

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Россия Windows Абонемент ($m) Консоль запросов Прочие инструменты разработчика

Конструктор запроса при внешнем подключении (с возможностью выборки по табличным частям объектов конфигурации). Управляемые формы, тонкий клиент.

1 стартмани

23.01.2020    1386    2    falcon_wild    1       

Подборка программ для взаимодействия с ЕГАИС Промо

ЕГАИС (Единая государственная автоматизированная информационная система) - автоматизированная система, предназначенная для государственного контроля за объёмом производства и оборота этилового спирта, алкогольной и спиртосодержащей продукции. Инфостарт рекомендует подборку проверенных решений для взаимодействия с системой.

1C и защищенное хранение данных на блокчейне: модуль интеграции от Acryl Platform

Инструменты и обработки Программист Расширение (cfe) v8 1cv8.cf Абонемент ($m) Защита и шифрование Блокчейн Расширения Прочие инструменты разработчика

Модуль интеграция 1С и блокчейн платформы "Acryl Platform" без использования внешних компонент. Под катом реализация механизмов Base58, Blake2b, Keccak, Curv25519 (the elliptic curve Diffie–Hellman) в подсистеме "Crypt", примеры генерации ключей, адресов, подписи транзакций, запись данных в блокчейн, чтение и восстановление данных из блокчейн. Код открыть. Лицензия MIT.

1 стартмани

21.01.2020    2697    ArtemSerov    11       

Универсальные инструменты 1С

Инструменты и обработки Программист Расширение (cfe) v8 1cv8.cf Абонемент ($m) Универсальные обработки Прочие инструменты разработчика

Свободно распространяемый набор универсальных обработок и отчетов в виде расширения для разработки и поддержки, которое работает во ВСЕХ видах клиентских приложений и во всех операционных системах, которые поддерживает платформа 1С:Предприятие, кроме мобильных. Консоль запросов - консоль отчетов - консоль кода - редактор объектов базы данных - удаление помеченных объектов - поиск и удаление дублей - редактор констант - консоль заданий - групповая обработка справочников и документов - динамический список - поиск ссылок на объект - регистрация изменений для обмена данными - структура хранения базы - консоль HTTP запросов-консоль вебсервисов- консоль сравнения данных- информация о лицензиях- загрузка из табличного документа-файловый менеджер-все функции- навигатор по конфигурации-конструктор регулярных выражений-Выгрузка загрузка XML с фильтрами

1 стартмани

21.01.2020    14162    259    cprit    74       

Подборка решений для взаимодействия со ФГИС «Меркурий» Промо

С 1 июля 2019 года все компании, участвующие в обороте товаров животного происхождения, должны перейти на электронную ветеринарную сертификацию (ЭВС) через ФГИС «Меркурий». Инфостарт предлагает подборку программ, связанных с этим изменением.

Редактор справки 1С

Инструменты и обработки Программист Архив с данными v8 Windows Абонемент ($m) Прочие инструменты разработчика

Конфигурация для разработки справочной информации для конфигураций 1С. Тестировалось на 1С:Предприятие 8.3 (8.3.13.1690). Файловая база.

3 стартмани

16.01.2020    3612    13    lastpioneer    16       

Документация по объектам расширения конфигурации 1С

Инструменты и обработки Программист Архив с данными v8 v8::УФ 1cv8.cf Абонемент ($m) Прочие инструменты разработчика

Обработка для автоматического создания документации для программистов по доработкам в расширении конфигурации.

1 стартмани

14.01.2020    2771    13    ManyakRus    2       

DevOps для 1С. Онлайн-курс проходит с 16 апреля по 11 июня 2020 года. Промо

Данный онлайн-курс предусматривает изучение процессов DevOps, их применение при разработке на платформе 1С. В результате прохождения онлайн-курса вы сможете: настроить ПО необходимое для проведения проверок и тестирования, создавать сценарии тестирования и объединять их в комплексные процессы, создавать скрипты для автоматизации процессов DevOps.

12000 рублей

Неиндексированные измерения регистров сведений. В помощь 1С:Эксперту

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Абонемент ($m) Прочие инструменты разработчика

Обработка показывает неиндексированные измерения регистров сведений, из-за которых случаются блокировки. Для любых баз 1С - на обычных и управляемых формах.

1 стартмани

07.01.2020    3816    12    Rustig    30       

1C:Предприятие для программистов: Расчетные задачи (зарплата). Онлайн-интенсив с 01 по 17 июня 2020 г. Промо

Данный онлайн-курс предусматривает изучение механизмов платформы “1С:Предприятие”, которые предназначены для автоматизации периодических расчетов, а именно - для расчета зарплаты. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”, а также для опытных пользователей прикладного решения “1С:Зарплата и управление персоналом” и прочих прикладных решений, в которых реализован функционал расчета зарплаты.

4900 рублей

Версионирование объектов 1С сторонними средствами

Инструменты и обработки Программист Архив с данными v8 УПП1 БП3.0 КА2 Россия MS SQL Абонемент ($m) Прочие инструменты разработчика

В больших информационных системах встает острая необходимость хранения ИСТОРИИ изменений объектов. Она предоставляет материал как для проведения следственных действий, так и для инкрементарного сбора данных в data ware house из 1С конфигураций. Настоящая статья описывает способ версионирования объектов 1С, таких как Документы и Справочники средствами СУБД. Применение такого метода не вызывает рост и фрагментацию основной (рабочей) базы данных (1С) и позволяет сохранять информацию обо всех изменениях, сделанные пользователями.

1 стартмани

06.01.2020    1465    pit201201    0       

Глобальный поиск и замена в модулях конфигурации

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Россия Абонемент ($m) Поиск данных Прочие инструменты разработчика

Зачастую у программиста возникает желание работать с кодом модулей конфигурации средствами встроенного языка: так, как мы сейчас работаем с данными. Как результат реализации данной потребности и родилась данная обработка. Она предназначена для минимизации ручного труда при внесении однотипных изменений в модули конфигурации. Она представляет из себя расширение глобального поиска и замены в конфигураторе. Отличие в предоставлении ряда дополнительных возможностей, таких, как: наложение условий И, ИЛИ, НЕ; поиск только в названии процедуры / функции, либо в теле определенной процедуры / функции; управление поиском в комментариях и др.

1 стартмани

06.01.2020    1452    1    keifaya    0       

Программы для исполнения 54-ФЗ Промо

С 01.02.2017 контрольно-кассовая техника должна отправлять электронные версии чеков оператору фискальных данных - правила установлены в 54-ФЗ ст.2 п.2. Инфостарт предлагает подборку программ, связанных с применением 54-ФЗ, ККТ и электронных чеков.

Подсистема перевода базы данных

Инструменты и обработки Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Прочие инструменты разработчика Локализация решений

В базе данных работают разноязычные пользователи и приходится писать наименования объектов сразу на нескольких языках? ЕСТЬ РЕШЕНИЕ!

2 стартмани

04.01.2020    1400    1    onec.developer    0