powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / [игнор отключен] [закрыт для гостей] / Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
20 сообщений из 20, страница 1 из 1
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37963865
Были две обычные базы - "Управление производственным предприятием" и "Альфа-Авто".
Размер базы АА - 5 Гбайт, УПП - 8 Гбайт.

Была создана единая конфигурация путем объединения конфигураций.
Единая конфигурация накинута на базу УПП.

Теперь стоит задача перелить данные из базы АА в "объединенную УПП + АА".

Перегрузка штатными средствами - через XML - не подходит: на тестовой баз занимает порядка 2 суток.

Начал копать в сторону перегрузки данных средствами SQL.
Первая проблемка:
- объект метаданных "Справочник.Автоработы" в базе АА хранится в таблице _Reference7.
В базе УПП он хранится в таблице _Reference31001. Так же, столбец, отвечающий за реквизит "Артикул" в таблице АА называется _Fld336, в УПП он называется уже _Fld31506.
Путем использования конструкции "ПолучитьСтруктуруХраненияБазыДанных" языка 1С получил структуры таблиц и столбцов с описанием. Написал обработку, которая сопоставляет на основании названий объектов метаданных и реквизитов эти структуры.
На выходе - таблица, описывающая соответствие таблиц и столбцов в разных базах.

Далее, открываю SSIS. Существует возможность визуально настроить соответствие таблиц и столбцов при перегрузке. Для одной из таблиц я это сделал.
Но новых таблиц порядка 500 и в каждой из них в среднем 5-10 столбцов. Настраивать соответствия вручную - адов труд.

В связи с этим вопрос к гуру SSIS - существует ли возможность "скормить" предварительно подготовленные соответствия редактору SSIS, чтобы он на основани этого настроил структуру перегрузки?
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37964300
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для самой большой таблицы перебросьте через txt, а дальше xml без этой таблицы. Как вариант - при переброске - расчет регистров установлен на начало рождества христово?


Моя база существенно больше, перебрасывал через txt всю - часов 12 уложился.
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37964380
Пробовал перегружать при отключенных итогах - если вы об этом.

А по поводу перегрузки через txt - как то кажется маловероятным.
Порядка 150 новых типов документов, штук 200 справочников. Это не считая планов видов характеристик, регистров накопления и прочее.
Вы для каждого типа объекта свою обработку писали?
Опять же, что при перегрузке через XML, что txt - основная затрата времени происходит при записи нового объекта в базу средствами 1С. И как быть с движениями документов - тоже через txt перегружали или проводили документы штатным способом?
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37964428
Фотография Shuhard
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мельников ЛеонидА по поводу перегрузки через txt - как то кажется маловероятным.

Программист 1с имел в виду иное, надо выделить пару самых тяжёлых таблиц и тащить их "лобовым" методом
остальное через XML

в УПП обычно заказы покупателей и Рг Списанные товары занимают 50% объёма
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37964674
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shuhard, +1

Вот их и броосайте через txt ole или любым другим быстрым методом.
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37964827
а с каких пор txt стал быстрым методом?
если на то пошло перегрузка штатными средствами через XML сопоставимо быстрее по скорости проходит.
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37964863
собственно все способы переноса, использующие запись объекта штатными средствами объекта 1С сопоставимы по скорости. Я хочу использовать технологию прямой записи в базу - выигрыш по скорости в сотни раз.
Я задал достаточно четко очерченный вопрос - "верблюд в качестве привода мне не подходит. Хочу перейти к двигателю внутреннего сгорания. Как проще настроить карбюратор?" - и ожидаю ответов по этой тематике, а не "я вот верблюдам копыта напильником стачиваю. у них от этого масса тела меньше становится и они быстрее бегать начинают".
Повторю вопрос: существует ли возможность "скормить" предварительно подготовленные соответствия редактору SSIS, чтобы он на основании этого настроил структуру перегрузки?
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37965795
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мельников Леонида с каких пор txt стал быстрым методом?
если на то пошло перегрузка штатными средствами через XML сопоставимо быстрее по скорости проходит.Откуда информация? Или это просто Ваша фантазия?

Вы вобще в курсе зачем нужен xml? Почему его используют а не txt?

Мельников Леонидсобственно все способы переноса, использующие запись объекта штатными средствами объекта 1С сопоставимы по скорости. Я хочу использовать технологию прямой записи в базу - выигрыш по скорости в сотни раз.
Я задал достаточно четко очерченный вопрос - "верблюд в качестве привода мне не подходит. Хочу перейти к двигателю внутреннего сгорания. Как проще настроить карбюратор?" - и ожидаю ответов по этой тематике, а не "я вот верблюдам копыта напильником стачиваю. у них от этого масса тела меньше становится и они быстрее бегать начинают".
Повторю вопрос: существует ли возможность "скормить" предварительно подготовленные соответствия редактору SSIS, чтобы он на основании этого настроил структуру перегрузки?Вы притворяетесь? Или дейстивтельно не понимаете?

Еще раз берете ВСЕ кроме парочки таблиц и переносите xml за час. А потом берете 2 оставшиеся таблицы и перетаскиваете их хоть прямой записью в кэш скуля.Мельников ЛеонидПутем использования конструкции "ПолучитьСтруктуруХраненияБазыДанных" языка 1С получил структуры таблиц и столбцов с описанием. Написал обработку, которая сопоставляет на основании названий объектов метаданных и реквизитов эти структуры.
На выходе - таблица, описывающая соответствие таблиц и столбцов в разных базах.Вы уверены что Ваша обработка правильная? Ну так расскажите что делала обработка если с одной стороны строка а с другой ссылка на справочник? И это еще самый простой пример.

Зачем по вашему есть ШТАТНЫЕ правила?
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37966898
sWinTyz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
с чего бы оно быстрее было?
если только с кривых рук?
текст это всего лишь форматированный текст
а в хтмл еще теги надо писать
даже еесли оно вдруг и быстрее
то место точно больше занимает
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37968688
мммм.......я вероятно использовал слишком резкий и образный пример.....мне нужен был ответ на конкретный технический вопрос, а не холивар. Плюс, создал вопрос, судя по всему, не в той ветке форума.

Итак, давайте по порядку:
Shuhard в УПП обычно заказы покупателей и Рг Списанные товары занимают 50% объёма
такая картина вероятнее всего наблюдается в случае, когда используется лишь малая часть функционала. При комплексном использовании функционала картина будет гораздо более симметричной. К примеру, в случае с базой, которую мне надо было перегрузить, из примерно 500 таблиц 5 таблиц создавали 20% объема базы.
Давайте посчитаем, какая экономия времени будет при перегрузке наиболее объемных таблиц через txt.
Простейший арифметический расчет:
перегрузка всего объема через XML заняла примерно 48 часов.
Примем условно технологию перегрузки через txt работающей в 2 раза быстрее чем XML. Допущение весьма спорное, но об этом позже.
Итак:
перегрузка средствами XML 5 наиболее объемных таблиц занимает 48 * 0,2 = 9,6 часа
перегрузка данных таблиц через txt, исходя из вышеизложенного допущения, условно займет 4,8 часа
Итого: 48 * 0,8 + 4,8 = 43,2 часа
Экономия времени 4,8 часа или 10%.
На выходе - использование txt в данном случае необосновано.
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37968697
Далее, еще раз повторю:
Мельников Леонид все способы переноса, использующие запись объекта штатными средствами объекта 1С сопоставимы по скорости.

Основное различие XML и txt - в способе переноса данных об объекте.
Нюанс относительно скорости написания обработки переноса через txt и xml я сейчас не рассматриваю. КД тут вне конкуренции. Да и время предварительной подготовки в рассматриваемом случае некритично.

В обоих случаях запись перенесенного объекта осуществляется штатными средствами 1С. И основной затык именно здесь.

Перегрузка XML в чистом виде заняла около 48 часов.
Вполне возможно, что перегрузка через txt справилась бы за часа эдак 24. Нет желания тратить 2 месяца для написания обработок переноса через txt для over500 объектов базы.
Доработанная обработка прямого переноса данных на уровне записей SQL отработала за 21 минуту.
Это цифры, а с ними не поспоришь.
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37968731
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мельников ЛеонидОсновное различие XML и txt - в способе переноса данных об объекте.Дальше можно не обсуждать. Сказали бы просто: "не знаю". Откройте хотя бы викпедию про xml.

Мельников ЛеонидПерегрузка XML в чистом виде заняла около 48 часов.
Вполне возможно, что перегрузка через txt справилась бы за часа эдак 24. Нет желания тратить 2 месяца для написания обработок переноса через txt для over500 объектов базы.Положим база у меня побольше. Обработки я написал где-то недели за 2. Время переноса 12 часов (около).

Скорость переноса зависит только от кривизны рук...
Программист 1сМельников ЛеонидПутем использования конструкции "ПолучитьСтруктуруХраненияБазыДанных" языка 1С получил структуры таблиц и столбцов с описанием. Написал обработку, которая сопоставляет на основании названий объектов метаданных и реквизитов эти структуры.
На выходе - таблица, описывающая соответствие таблиц и столбцов в разных базах.Вы уверены что Ваша обработка правильная? Ну так расскажите что делала обработка если с одной стороны строка а с другой ссылка на справочник? И это еще самый простой пример.

Зачем по вашему есть ШТАТНЫЕ правила?А судя по отсутствию ответа на данное замечание, Вы потом будете ДОЛГО вычищать подобные ошибки (после прямого переноса в скуль)...

Вы пошли не по правильному пути, и стоя на нем задаете вопрос... а потом удивляетесь что Вам отвечают - вернитесь назад.

Проведите анализ объема информации. Выделите эти несколько таблиц. И уберите из КД их. Запускайте xml. А дальше пишите напрямую в скуль эти несколько таблиц.

100 процентов что эти таблицы - документы. И наверняка их меньше, а объем ими занимаемый... скорее всего 90%.
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37968978
Фотография LR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мельников ЛеонидНа выходе - таблица, описывающая соответствие таблиц и столбцов в разных базах.

Далее, открываю SSIS. Существует возможность визуально настроить соответствие таблиц и столбцов при перегрузке. Для одной из таблиц я это сделал.
Но новых таблиц порядка 500 и в каждой из них в среднем 5-10 столбцов. Настраивать соответствия вручную - адов труд.

В связи с этим вопрос к гуру SSIS - существует ли возможность "скормить" предварительно подготовленные соответствия редактору SSIS, чтобы он на основани этого настроил структуру перегрузки?
имхо, проще всего сгенерить (и затем выполнить) t-sql скрипт, это можно сделать в той же SSMS
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37968980
Программист 1с, я бы посоветовал,прежде чем строчить посты, внимательнее почитать содержимое предыдущих постов. Там указаны объемы, занимаемые самыми большими таблицами. И они никак не 90 и не 50%. А всего лишь какие то 20%.
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37968988
Программист 1СВы уверены что Ваша обработка правильная? Ну так расскажите что делала обработка если с одной стороны строка а с другой ссылка на справочник? И это еще самый простой пример.
Если Вы себе взяли такой громкий ник-нейм, думаю фразу "струкруры объектов метаданных идентичны" нет необходимости расжовывать? Хотя, судя по вашему вопросу, все таки есть.
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37968996
LR, именно так я и сделал. Правда, скрипт запускал напрямую через консоль запросов, а не через SSIS.
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37969011
pail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мельников Леонид,
Совершенно не обязательно бороться за снижение времени общего переноса данных- если задача стоит как "в некий момент времени перейти с эксплуатации двух разделенных баз на объединенную".
Для этого:
1. Создать в двух базах по плану обмена, куда в состав включить типы данных,подлежащие переносу.
2. Использовать исключительно средства КД. Но связать правила выгрузки с планом обмена, чтобы выгружались только изменения - как это делается, в документации описано. А штатная выгрузка-загрузка XML с такими правилами работать уже умеет.
3. Пусть первичная перегрузка выполняется долго. Можно - за один заход (пометив как измененные все объекты исходной базы), можно - за несколько "ночных" заходов,управляя объемом каждой выгрузки. Базы при этом эксплуатируются раздельно.
4. Наступит момент, когда объем выгрузки будет не "вся база", а только объекты, созданные/измененные за один или несколько последних рабочих дней. После загрузки которой можно начинать работать с объединенной базой.
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37969015
Фотография LR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мельников Леонид,

т.е., вопрос уже решен, хорошо
(я не говорил SSIS, говорил SSMS - скл-студия, подразумевая как раз "консоль запросов".
еще мелкий совет, большие объемы лучше/быстрей заливать частями, привязавшись к значению какого-нить удачно "распределенного" ключа/поля, дата операции например)
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37969050
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мельников ЛеонидПрограммист 1СВы уверены что Ваша обработка правильная? Ну так расскажите что делала обработка если с одной стороны строка а с другой ссылка на справочник? И это еще самый простой пример.
Если Вы себе взяли такой громкий ник-нейм, думаю фразу "струкруры объектов метаданных идентичны" нет необходимости расжовывать? Хотя, судя по вашему вопросу, все таки есть.1. Забавно - обычный ник. Мне нет нужды писать свое имя и фамилию пытаясь выпятить свое достоинство.

2. Так вы просто Объединили? И ничем не допиливали.... Интересно сколько открытий чудных Вас ждет... И как данные из оперативного учета пойдут в бухгалтерию...

Закончим обсуждение.
...
Рейтинг: 0 / 0
Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
    #37969120
Программист 1С, спасибо за великодушное разрешение закрыть дискуссию... xDD Тема действительно себя исчерпала, но к сожалению, конструктивные и действительно толковые замечания пришли уже после того, как задача была решена.
Спасибо LR и pail.
З.Ы. Метод, предложенный pail выглядит переспективным, надо будет взять на будущее на заметку.
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / Перегрузка данных 1с через SQL- настройка соответствия таблиц и столбцов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]