powered by simpleCommunicator - 2.0.44     © 2025 Programmizd 02
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Как реализовать ETL из 1С для ОЛАП?
25 сообщений из 56, страница 1 из 3
Как реализовать ETL из 1С для ОЛАП?
    #37856938
TRX_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте,

Есть задача построить OLAP инфраструктуру для 1С (база на SQL Server), со средствами MS SQL Server. Думаю сделать data marts (или DWH, не важно), на которой будет имплементирован семантический модель BI, со средствами SSAS. Главной проблемой кажется ETL процесс, который не знаю как лучше сделать из 1С. Может ли SSIS счемто помочь здесь?

По моему, есть следующие варианты, пожалуйста подскажите каким путем идти:

1. Писать в data mart (или DWH) прямо из 1С, т.е. реализовать всю ETL логику в 1С. Если performance не будет проблемой, то это наверно лучший вариант?..

2. Читать прямо из БД SQL Server (используя ПолучитьСтруктуруХраненияБазыДанных (GetDBStorageStructureInfo) для соответствии обьэктивной модели 1С с структурой БД) средствами SSIS?.. Какова сложность имплементации, эффективность, надёжность этого подхода?

3. Может есть другие варианты, я не догадываюсь еще?

Пожалуйста помогите, спасибо заранее :)

P.S.: Я не очень хорошо умею писать на русском (я не русский), не обращайте внимание на синтаксические ошибки :)
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37856959
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) в 1с сделать обработку, которая на основе метаданных создаст представления с понятными именами, например, RНоменклатура, AПродажи и т.д.
2) ETL с помощью SSIS и/или хранимых процедур, источник - представления из пункта 1
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37857046
paul310
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. В 1с есть, по сути, свой инструментарий для кубов. С помощью консоли отчетов аналитик может очень многое. Оно не сильно интуитивно, но умеючи - очень хорошо.
2. Если Вы хотите тащить данные из 1с - определитесь для начала, какие именно. Все - бессмысленно в большинстве случаев.
3. Я бы выгружал данные в xml/текстовый файл и клал данные в хранилище с помощью SSIS.
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37857123
Фотография Alex_496
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Из 1С 8.1/8.2 выталкивать данные нужных документови справочников в stage-таблицы MSSQL, далее SSIS-ом раскладываем по целевым таблицам хранилища: классический ETL с чисткой, преобразованиями, SCD, логгированием, расчетом проиводных величин и формированием витрин.
MOLAP поверх витрин
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37857149
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_496Из 1С 8.1/8.2 выталкивать данные нужных документови справочников в stage-таблицы MSSQL

По моему опыту - лучше вытягивать, а не выталкивать , то есть инициатор должен быть SSIS, а не обработка 1с. Так можно исключить из процесса 1с-ников, как слабое звено. Всё имхо.
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37857151
Djeki
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну и конечно не забываем, что 1с при регламентных работах может намертво лочить таблицы. Так что не 1, ни 2 вариант не подходят. По методу выгрузке данных я солидарен с Alex_496.
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37857179
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DjekiНу и конечно не забываем, что 1с при регламентных работах может намертво лочить таблицы. Так что не 1, ни 2 вариант не подходят.

Ну, первый вариант вполне реален, я даже знаю работающее (причем достаточно большое) хранилище, реализованное по первому варианту. Но скорость разработки при этом катастрофически низкая. К тому же фактически нужны 2 команды, одна по 1с, вторая по кубам(+ появляются совершенно лишние проблемы коммуникации). Я бы так делать стал только в том случае, если под рукой куча специалистов по 1с, и очень мало по MS SQL/SSAS (и нет возможности нанять).
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37857212
Фотография Alex_496
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Критик,

ну этим вопросом я активно консультировался с опытными 1С-никами.
Самый опытный и подсказал: создается план обмена,
который выталкивает в stage только дельту (InsUpdDel - записи) при этом
абракадабровые названия поелй заменяются на бизнесовые англоязычные
(через вспомог.таблицу)+ проверка и уведомление об изменении метаданных 1С-таблиц.
Монэсники есть, их много - и эта их сфера отвественности.

Кроме того, не стоит забывать что наряду с 1С могут рядом появиться и другие системы/платформы,
вобщем все по Кимбаллу
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37857234
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_496,

Я согласен, что технических проблем не будет. Просто 1с-ники- это обычно другое подразделение/отдел, поэтому (как правило) будет быстрее сделать какие-либо изменения в процессе самим, если импорт в stage-зону в сфере ответственности BI-щиков. А если что-то не сработало - сразу ясно, кто виноват ))
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37857291
TAVEM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВебСервисы.
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37857327
TRX_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Огромное спасибо всем :)

У меня появились вопросы:

Критик1) в 1с сделать обработку, которая на основе метаданных создаст представления с понятными именами, например, RНоменклатура, AПродажи и т.д.

- Критик. А можно по-подробнее об этом :)

paul3103. Я бы выгружал данные в xml/текстовый файл и клал данные в хранилище с помощью SSIS.

- paul310. В чем преимущество этого подхода со сравнению моего первого варианта (записать данные из 1С прямо в DWH)? Зачем лишний этап (xml/текстовый файлы + SSIS) когда можно прямо в DWH писать?

Alex_496Из 1С 8.1/8.2 выталкивать данные нужных документови справочников в stage-таблицы MSSQL, далее SSIS-ом раскладываем по целевым таблицам хранилища

- Alex_496. То же самый вопрос: зачем надо использовать stage-таблицы, а не переслать данные прямо в DWH? Зачем лишний этап?
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37857370
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://www.sql.ru/forum/actualthread.aspx?tid=520870&pg=-1&hl=1%f1%20%ee%e1%f0%e0%e1%ee%f2%ea%e0

и на формуме полно тем по 1с, поищите
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37857445
paul310
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TRX_
- paul310. В чем преимущество этого подхода со сравнению моего первого варианта (записать данные из 1С прямо в DWH)? Зачем лишний этап (xml/текстовый файлы + SSIS) когда можно прямо в DWH писать?


Затем, что:
1. Файлы - это, по-сути, тот же стэйджинг. С вопросом "нафиг стэйджинг" лучше почитать классиков.
2. Это очень понятная постановка вопроса для людей, которые 1с ковыряют: из базы должно выгружаться вот это, в таком формате, с такой периодичностью.
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37857479
Фотография Дедушка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если эта ваша 1С-ка сильно "нагружена" то 1С-ки пошлют вас далеко и надолго когда вы придёте к ним с планами обмена и\или прямыми запросами в базу из скриптов\ssis...
дублировать саму 1С-ку мало кто будет, а значит остаётся только дублирование на уровне базы (асинхронные мирроринг или always on) или копирование бэкапов.
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37857491
Фотография Alex_496
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TRX_,

в том что, данные не идеальны. Их нужно чистить, преобразовывать, увязывать с другими данными (другие системы, таблицы- подпорки) а то еще и НСИ с согласованием. Помнится, еще в начале 2000-х на семинарах Алексей Шуленин говорил: бардак на входе --> бардак в кубе (возведение бардака в степень n)



TAVEM,

ага, перекачайте за раз веб-сервисами сотню-другую миллионов строк
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37857508
Фотография Alex_496
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
копирование бэкапов точно не пойдет, ибо, например, нет технологического окна и размеры большие
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37857512
TAVEM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_496TRX_,

в том что, данные не идеальны. Их нужно чистить, преобразовывать, увязывать с другими данными (другие системы, таблицы- подпорки) а то еще и НСИ с согласованием. Помнится, еще в начале 2000-х на семинарах Алексей Шуленин говорил: бардак на входе --> бардак в кубе (возведение бардака в степень n)



TAVEM,

ага, перекачайте за раз веб-сервисами сотню-другую миллионов строк
что то я сомневаюсь что в 1с есть сотня другая милионов строк :) ну а так да, через веб сервисы тяжко будет, но я просто предложил еще один вариант :)
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37857552
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TAVEM,

у нас есть )
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37857898
Фотография Лори
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дедушкаесли эта ваша 1С-ка сильно "нагружена" то 1С-ки пошлют вас далеко и надолго когда вы придёте к ним с планами обмена и\или прямыми запросами в базу из скриптов\ssis...
дублировать саму 1С-ку мало кто будет, а значит остаётся только дублирование на уровне базы (асинхронные мирроринг или always on) или копирование бэкапов.
У меня вьюхи, питающие кубы, находятся на связанном к серверу 1С сервере. При обновлении кубов, сервер 1С не нагружается. Да, идет трафик, но нагрузки никакой нет.
1С не предназначено под большие объемы данных, поэтому дополнительный ETL нужен только в особых случаях, например, при вычислениях на листовом уровне. В остальных же случаях наиболее оптимальный вариант- вытаскивать вьюхами данные напрямую. Возможно, что со временем 1С начинает тормозить от больших объемов, тогда часть устаревших данных перемещают в хранилище, и к вьюшкам нужно всего лишь добавить через UNION ALL нужные таблицы из хранилища.
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37868777
TRX_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо всем за ответы, очень помогли :)

Решили сделать все примерно как Критик предсказал - сделать view-шки и из них тащить с помощью SSIS в хранилище. Думаю разделить всю работу на два этапа: В первый этап будет построен data marts, и имплементирован ETL с помощью SSIS. В второй этап будет сделан кубы и вся BI семантическая модель с помощью SSAS.

Теперь надо выяснить deadline-ы. Будет работать один программист (который по дорогу изучает все эти OLAP технологии, SSIS/SSAS, и т.д. :)). Как думайте, какое время понадобится для каждого этапа?

P.S.: Есть еще какие нибудь советы?
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37868848
Фотография Дедушка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TRX_Будет работать один программист (который по дорогу изучает все эти OLAP технологии, SSIS/SSAS, и т.д. :)).
P.S.: Есть еще какие нибудь советы?рассмотрите возможность нанять удалённо готичного спеца по MS BI (архитектора) для работы в паре с вашим прогом.
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37868873
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TRX_В первый этап будет построен data marts, и имплементирован ETL с помощью SSIS. В второй этап будет сделан кубы и вся BI семантическая модель с помощью SSAS.

Я бы отталкивался от кубов, то есть: нужны такие-то кубы -> для них нужны такие-то данные -> их и импортируем в том виде, какой нужен для кубов.

Результат будет быстрее.
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37868882
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И согласен с Дедушкой. Доверить делать хранилище и кубы человеку, который будет параллельно изучать инструменты - несколько рискованно. Может и будет работать, но времени уйдет уйма.
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37868954
TRX_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
КритикTRX_В первый этап будет построен data marts, и имплементирован ETL с помощью SSIS. В второй этап будет сделан кубы и вся BI семантическая модель с помощью SSAS.

Я бы отталкивался от кубов, то есть: нужны такие-то кубы -> для них нужны такие-то данные -> их и импортируем в том виде, какой нужен для кубов.

Да, я это имел ввиду - в первый этап кубы будут определены на логическом уровне, а второй этап подразумевает их создание с помощью SSAS.
...
Рейтинг: 0 / 0
Как реализовать ETL из 1С для ОЛАП?
    #37868959
TRX_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
нанять кого нибудь - к сожалению не вариант.
...
Рейтинг: 0 / 0
25 сообщений из 56, страница 1 из 3
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Как реализовать ETL из 1С для ОЛАП?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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