powered by simpleCommunicator - 2.0.18     © 2024 Programmizd 02
Map
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Реалтайм отчетность
24 сообщений из 24, страница 1 из 1
Реалтайм отчетность
    #40081222
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коллеги,

Как нынче строится реалтайм DATALAKE/STAGE/LANDING/ODS ? )
Раньше я, как и многие, делал по старинке - через загрузку раз в день/раз в N минут, но хотелось бы попробовать что-то более современное.

Но нужно, чтобы не дорого.
То есть решения чтения логов типа Информатики и Oracle Golden Gate не то, что не подходят, но имеют низкий приоритет.


Предположу, что должно быть что-то типа лямбда-архитектуры:

(стриминг) источник РСУБД (cdc) -> очередь -> ХД
(пакетный режим) источник РСУБД -> стандартный ETL -> ХД

Глупые вопросы:
1) Правильно ли я понимаю, что пакетный режим лямба-архитектуре ввели из-за того, что сообщения через очередь могут теряться? К примеру тот же RabbitMQ вытолкнет сообщение, а приемник его не примет. Или очередь Kafka очистится раньше, чем обработаются сообщения. Или это для первичного наполнения приемника? В общем, зачем там пакетный режим?
2) Если в качестве источника что-то типа ElasticSearch, то как его обработать? Там есть нечто типа cdc?
3) Если в качестве источника Oracle, то что там нужно применять для отправки сообщений в очередь? Они же cdc отменили у себя и хотят, чтобы все переходили на Oracle Golden Gate (https://docs.oracle.com/cd/E11882_01/server.112/e25554/cdc.htm#DWHSG016)
4) Если в качестве источника MS SQL, то достаточно встроенного cdc или сейчас есть иные варианты?

Было бы интересно почитать про те близкие к реалтайм системы, которые построили форумчане.
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40081230
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Критик,

cdc пробовали в вайлдберриз -- не лучшее решение. Лучше старый добрый ROWVERSON.
С очередями тоже не очень решение.


Круто сейчас ELT с якорной моделью.

YouTube Video
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40081256
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
a_voronin,

Не-не, якорная модель и DV расчитаны в основном на хранение данных, а не на использование (скажем так, на это сделан акцент, чтобы это исправить - нужно сильно вкладываться в бизнес-слой). Эти модели отлично подойдут госорганам и тому же ЦБ, чтобы он знал "а что эти сволочи из коммерческих банков поменяли задним числом?". Но ритейлу? Я, честно, сомневаюсь.

Пока хочу сделать что-то типа мегазеркала, где будут данные и из 1С, и из SAP, и из кучи других систем. Это зеркало должно содержать 1-в-1 копии таблиц из всяких разных источников. Чтобы его можно было использовать сразу. И только потом использовать это мегазеркало как STAGE/ODS для хранилища (не важно, по какой идеологии оно будет построено/отрефакторено).

Просьба модератору перенести топик сюда https://www.sql.ru/forum/systems-architecture
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40081259
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
a_voronin,

Ваше видео - это, насколько я понял, metadata driven etl?
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40081437
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Критик,

якорная модель это именно для ODS и DV тоже
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40081609
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
a_voronin,

Продвинутым бизнес-пользователям (тем, кто может залезть в ODS и сам написать adhoc-запрос) будет неудобно. Вот представьте, имеется OLTP в виде, скажем, Аксапты, имеется какой-то аналитик, знакомый с ее моделью данных, но доступа к продуктивной СУБД у него нет (что нормально), мол, пользуйся ХД. Он залезает в ХД и вместо 2х таблиц "клиенты" и "проводки" видит 50-100 таблиц...
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40081655
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Критик,

проще всего из базы в кафку лить вроде через debezium, но с ораклом вроде везде засада с лицензированием. debezium не требует инсталяции GG, но требует лицензию на GG
https://debezium.io/documentation/reference/1.6/connectors/oracle.html

Модератор: Тема перенесена из форума "Microsoft SQL Server".
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40081765
s_ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Критик
a_voronin,

Продвинутым бизнес-пользователям (тем, кто может залезть в ODS и сам написать adhoc-запрос) будет неудобно. Вот представьте, имеется OLTP в виде, скажем, Аксапты, имеется какой-то аналитик, знакомый с ее моделью данных, но доступа к продуктивной СУБД у него нет (что нормально), мол, пользуйся ХД. Он залезает в ХД и вместо 2х таблиц "клиенты" и "проводки" видит 50-100 таблиц...

Я сейчас как раз над этим вопросом думаю. :)

Мое мнение - надо и то, и другое.
То есть нужны таблички в том виде, как в OLTP базе (например, как в Навике))). Причем не только для отчетов, но и для обслуживания ЕРП. Например, искать косяки удобнее не на рабочей базе, где тяжелым запросом можно замедлить работу основной системы, а на копии.
Ну и многие отчеты строить удобно именно по таким табличкам.

Но для другой части задач хочется иметь более "нормализованные" данные с историей изменений.
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40081799
Фотография George Nordic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Критик, у Qlik есть CDC от Attunity, причем умеет онлайн лить данные в qvd-слой Qlik Sense. Можем дать попробовать поиграться, но сама задача довольно редкая.

Вопрос, а зачем такая вот прям онлайн-отчетность? Просто интересно...
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40081800
Фотография George Nordic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1
проще всего из базы в кафку лить вроде через debezium, но с ораклом вроде везде засада с лицензированием. debezium не требует инсталяции GG, но требует лицензию на GG
При это GG стоит как крыло от самолета. debezium / kafka - вариант рабочий, но требует очень пряморуких линуксоидов. По отзывам проекта, на котором мы меняли эту чудесную связку, причиной замены стала именно эта неопределенность - когда репликация иногда отваливалась, при этом очень тяжело было разобраться почему.
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40081881
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я делал аля лямбда архитектуры в двх для онйлан репортинга.

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

2. Инкрементальный онлайн режим применяется к очень ограниченному количеству объектов, к минимально необходимому.

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

4. Отчеты соответственно нужны новые, специализированные. Плюс максимально упрощенные, чтобы выкинуть все без чего можно обойтис

Ну и все... работает себе
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40081953
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
George Nordic
Критик, у Qlik есть CDC от Attunity, причем умеет онлайн лить данные в qvd-слой Qlik Sense. Можем дать попробовать поиграться, но сама задача довольно редкая.

Вопрос, а зачем такая вот прям онлайн-отчетность? Просто интересно...


Мм, в qvd-слой Qlik Sense мне не нужно )) Проприетарные дорогие штуки тоже не хотелось бы.
Мне нужно лить в MS SQL, но с перспективой перехода на хадуп.

В моем видении этот слой будет являться и stage, и ods, и datalake одновременно. Максимально простой, практически 1-в-1 с источниками, и без какой-либо логики. Единственные допустимые преобразования в нем - это преобразования типов, если из-какой-либо СУБД приходит тип данных, отсутствующий в целевой СУБД. Плюс допустимы расчетные столбцы (если льются данные из сотен торговых точек, то можно сформировать ключи). Всё.


На вопрос "зачем онлайн" - пока в основном это чисто интерес, вдруг уже это можно чем-то опенсорсным делать. Если есть такая штука и она недорога (а лучше бесплатна!), то почему бы и не поднять свои компетенции )


Ivan Durak,

А вы под лямбой понимаете стриминг и батчи в один оконечный приемник или в разные? И почему не каппа-архитектуру использовали?
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40081974
Фотография George Nordic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Критик
Проприетарные дорогие штуки тоже не хотелось бы.
Как оказаось, если посчитать TCO, то дешевле заплатить. А так - ищите линуксоидов / явистов, nifi / debezium / kafka Вам в помощь! поищите ребят здесь на NoSql, поделятся опытом.

Офигенная задача и хорошая строчка в резюме. Сам бы занялся

А для совсем онлайн есть свой стек продуктов, а-ля Splunk. Но они ушли из России. Хотя их партнеры на OpenSource что-то сделали, и, говорят, работает.
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40082012
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Критик

Ivan Durak,

А вы под лямбой понимаете стриминг и батчи в один оконечный приемник или в разные? И почему не каппа-архитектуру использовали?

Витрины разные. Реплика одна.
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40082109
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Критик
a_voronin,

Продвинутым бизнес-пользователям (тем, кто может залезть в ODS и сам написать adhoc-запрос) будет неудобно. Вот представьте, имеется OLTP в виде, скажем, Аксапты, имеется какой-то аналитик, знакомый с ее моделью данных, но доступа к продуктивной СУБД у него нет (что нормально), мол, пользуйся ХД. Он залезает в ХД и вместо 2х таблиц "клиенты" и "проводки" видит 50-100 таблиц...


Якорная модель не отменяет схему звезда по Кимбаллу. Она вписывается в архитектуру ХД по Кимбаллу вместо Stage или ODS, куда конечные юзеры ходить не должны. Её задача ускорить загрузку, предоставить условия для развития исходного ОДС, привести в порядок ключи.
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40082123
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
a_voronin,

Понятно. Просто в моей текущей концепции пользователи (конечно, не все) вполне могут ходить в STAGE/ODS.

Для примера, если есть продвинутый аналитик, знающий модель исходной системы, и нет желание пускать его в продуктивную систему-источник, то он вполне может писать свои запросы в STAGE/ODS или использовать Self service-средства BI .

По сути - только внедрили STAGE/ODS и у вас сразу пошла отдача для компании! Мне думается, это офигительный плюс для тех же интеграторов.

Нарисовал картинку:
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40082129
s_ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Критик
a_voronin,

Понятно. Просто в моей текущей концепции пользователи (конечно, не все) вполне могут ходить в STAGE/ODS.

Для примера, если есть продвинутый аналитик, знающий модель исходной системы, и нет желание пускать его в продуктивную систему-источник, то он вполне может писать свои запросы в STAGE/ODS или использовать Self service-средства BI .

По сути - только внедрили STAGE/ODS и у вас сразу пошла отдача для компании! Мне думается, это офигительный плюс для тех же интеграторов.

Нарисовал картинку:

У нас сейчас, фактически, только STAGE/ODS.
Но отчеты создаются не напрямую из таблиц, а через вьюшки. Фактически, это такая своеобразная "витрина". Как "быстрое" решение - очень удобно.
Сейчас делаю еще один набор вьюшек для куба. Сейчас куб процессится в два этапа - сперва SSIS пакеты вытаскивают данные из таблиц ЕРП (Навик) в промежуточную базу, а потом куб процессится из этой базы. Хочу переделать, чтобы куб процессился из таблиц (через вьюшки) STAGE.

Сперва думал, что это будет только временное решение, но сейчас склоняюсь к мысли, что такая "витрина" довольно полезна.
Процессить куб - это, разумеется, не очень правильно из таких данных. А вот часть отчетов строить - вполне нормальное решение. Фактически, эти отчеты будут скорее частью ЕРП, и формировать их на основе STAGE таблиц - нормальный подход.

Главный плюс - это все можно сделать довольно быстро и относительно недорого.
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40082428
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
s_ustinov
У нас сейчас, фактически, только STAGE/ODS.
Но отчеты создаются не напрямую из таблиц, а через вьюшки. Фактически, это такая своеобразная "витрина". Как "быстрое" решение - очень удобно.
Сейчас делаю еще один набор вьюшек для куба


Не очень, если честно. Кардинально отличие того же DDS-слоя от STAGE/ODS - в DDS появляются правильные числовые суррогатные ключи. К примеру те же табулярные кубы плохо переваривает составные ключи.

Или вам нужно посчитать, скажем, какой-нибудь отчет о "Прибыли и убытках", а для его расчета вам заранее нужно посчитать 10-20 таблиц. Делать это в STAGE/ODS совсем некомильфо.
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40082434
s_ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Критик
s_ustinov
У нас сейчас, фактически, только STAGE/ODS.
Но отчеты создаются не напрямую из таблиц, а через вьюшки. Фактически, это такая своеобразная "витрина". Как "быстрое" решение - очень удобно.
Сейчас делаю еще один набор вьюшек для куба


Не очень, если честно. Кардинально отличие того же DDS-слоя от STAGE/ODS - в DDS появляются правильные числовые суррогатные ключи. К примеру те же табулярные кубы плохо переваривает составные ключи.

Или вам нужно посчитать, скажем, какой-нибудь отчет о "Прибыли и убытках", а для его расчета вам заранее нужно посчитать 10-20 таблиц. Делать это в STAGE/ODS совсем некомильфо.

Полностью согласен.
"Все дело в цене на билет."
Я не в восторге, но сейчас есть только такое.

Я не пытаюсь сказать, что так надо делать. Так иногда можно, когда ограничены ресурсы.

Но витрина на STAGE таблицах полезна не только как решение "для бедных", но и для целого ряда других задач.
Я когда это делал - думал, это исключительно временное решение.
Но сейчас понимаю, что для ряда задач очень полезная вещь.
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40082594
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да, это как и расчеты в экселе: "дешево, быстро, временно" :))
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40084214
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
s_ustinov
Критик
пропущено...


Не очень, если честно. Кардинально отличие того же DDS-слоя от STAGE/ODS - в DDS появляются правильные числовые суррогатные ключи. К примеру те же табулярные кубы плохо переваривает составные ключи.

Или вам нужно посчитать, скажем, какой-нибудь отчет о "Прибыли и убытках", а для его расчета вам заранее нужно посчитать 10-20 таблиц. Делать это в STAGE/ODS совсем некомильфо.

Полностью согласен.
"Все дело в цене на билет."
Я не в восторге, но сейчас есть только такое.

Я не пытаюсь сказать, что так надо делать. Так иногда можно, когда ограничены ресурсы.

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


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

Я скажу вам больше. Если в БД ещё и работает join eleimantion , то "под капотом" будут взяты только нужные таблицы.
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40084255
s_ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
a_voronin
s_ustinov
пропущено...

Полностью согласен.
"Все дело в цене на билет."
Я не в восторге, но сейчас есть только такое.

Я не пытаюсь сказать, что так надо делать. Так иногда можно, когда ограничены ресурсы.

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


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

Я скажу вам больше. Если в БД ещё и работает join eleimantion , то "под капотом" будут взяты только нужные таблицы.

В "ядро" хранилища переносить все поля из ERP - не факт, что целесообразно.
И из-за денормализации в исходных таблицах могут быть нарушения целостности данных. Ядро хранилища обычно стараются сделать нормализованным, и такие ошибки туда просто не попадут. Но как раз для поиска подобных косяков (в одних таблицах исправили, а в других - забыли) и могут понадобиться такие "витрины".
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40084336
Фотография a_voronin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
s_ustinov

В "ядро" хранилища переносить все поля из ERP - не факт, что целесообразно.


Это не принципиальный нюанс -- можно все, можно не все.


s_ustinov
И из-за денормализации в исходных таблицах могут быть нарушения целостности данных.


Ну если не думать о транзакционной целостности выгрузки, то да все будет криво. Если думать, то не будет.
...
Рейтинг: 0 / 0
Реалтайм отчетность
    #40084476
s_ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
a_voronin
s_ustinov

В "ядро" хранилища переносить все поля из ERP - не факт, что целесообразно.


Это не принципиальный нюанс -- можно все, можно не все.


s_ustinov
И из-за денормализации в исходных таблицах могут быть нарушения целостности данных.


Ну если не думать о транзакционной целостности выгрузки, то да все будет криво. Если думать, то не будет.

Я про данные в системах - источниках .
Там (в источниках) довольно часто есть ошибки. Так как таблицы денормализованы для ускорения некоторых запросов, при сбоях / ошибках в данных появляются противоречия.
То есть ошибки возникают не на этапе выгрузки в хранилище, а в процессе работы OLTP системы.
И вот поиск таких ошибок - один из хороших кандидатов для "витрин" поверх STAGE таблиц.
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Реалтайм отчетность
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали тему (1): Анонимы (1)
Читали форум (3): Анонимы (3)
Пользователи онлайн (17): Анонимы (14), Bing Bot, Yandex Bot, Google Bot 2 мин.
x
x
Закрыть


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