.. _data_uploader_doc: Общее описание ^^^^^^^^^^^^^^ .. attention:: С версии 2.6.0 по умолчанию для хранения персистентных данных используется Prostore версии 7.6 и выше с хотя бы одним ADP (для обеспечения высокой доступности персистентных данных модуля необходимо использование больше одного датасорса ADP). DATA-Uploader - Модуль исполнения асинхронных заданий обеспечивает обработку очереди файлов, используя следующие функциональные особенности: - обработка очереди файлов производится циклами; - очередь файлов работает в режиме упорядочения процесса по принципу «первым пришел – первым обслужен»; - каждый элемент в очереди файлов содержит UUID задания, имя витрины и таблицы, содержимое CSV-файла; - файлы в очереди могут относится к разным витринам и/или разным таблицам одной витрины; - поддерживает удаление исторических данных. В :numref:`tab_data_uploader_functions` приведен перечень операций, выполняемых DATA-Uploader с данными Витрины. .. _tab_data_uploader_functions: .. table:: Функции DATA-Uploader +--------------+---------------------------------------+-----------------------------------------------------------------------------------+ | **Операция** | **Описание операций** | **Поддерживаемые режимы для типов таблиц** | | | +---------------------+-------------------+-------------------+---------------------+ | | | Логическая | proxy | standalone | spapshot | +==============+=======================================+=====================+===================+===================+=====================+ | upsert | Загрузка или обновление данных для | llw, stream | llw, stream | llw, stream | llw, stream | | | переданного набора первичных ключей | | | | | | без sys_op | | | | | | +--------------+---------------------------------------+---------------------+-------------------+-------------------+---------------------+ | delete | Удаление данных по переданному | llw, stream | llw | llw | llw, stream | | | набору первичных ключей | | | | | | без sys_op | | | | | | +--------------+---------------------------------------+---------------------+-------------------+-------------------+---------------------+ | truncate | Удаление данных, включая исторические | llw | llw | llw | llw | | | | | | | | | без sys_op | | [с for_system_time] | | | [с for_system_time] | +--------------+---------------------------------------+---------------------+-------------------+-------------------+---------------------+ | modify | Cовмещение загрузки и логического | stream | не поддерживается | не поддерживается | stream | | | удаления в одной операции. | | | | | | с sys_op | | | | | | +--------------+---------------------------------------+---------------------+-------------------+-------------------+---------------------+ .. note:: Для управления прикладными данными в снапшот-таблицах требуется обновление DATA-Uploader до версии 2.6.0 и выше. Все изменения данных снапшот-таблиц выполняются в операциях записи, но вне механизма дельт. Т.е. при открытой дельте данные не изолируются (запишутся/удалятся сразу, не дожидаясь закрытия дельты) и не откатываются при выполнении rollback delta. Во избежание конфликтов на уровне ПО Prostore в каждый конкретный момент времени только один DATA-Uploader обеспечивает загрузку данных. При перезапуске DATA-Uploader может возникать задержка в обработке запросов продолжительностью до TTL флага активности экземпляра (параметр конфигурации ACTIVE_TTL, 3 минуты по умолчаниию), плюс интервал между попытками захватить активность (параметр конфигурации ACTIVE_TIMEOUT, 1 минута по умолчанию). .. note:: Заливка данных через модуль DATA-Uploader не предусматривают параллельную заливку в датамарты вместе с другими инструментами. Параллельная заливка данных в те же датамарты вручную или средствами ETL приведет к конфликту в работе с дельтами и к ошибкам соответственно.