|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
Коллеги, Как нынче строится реалтайм 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 или сейчас есть иные варианты? Было бы интересно почитать про те близкие к реалтайм системы, которые построили форумчане. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.07.2021, 17:50 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
Критик, cdc пробовали в вайлдберриз -- не лучшее решение. Лучше старый добрый ROWVERSON. С очередями тоже не очень решение. Круто сейчас ELT с якорной моделью. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.07.2021, 18:11 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
a_voronin, Не-не, якорная модель и DV расчитаны в основном на хранение данных, а не на использование (скажем так, на это сделан акцент, чтобы это исправить - нужно сильно вкладываться в бизнес-слой). Эти модели отлично подойдут госорганам и тому же ЦБ, чтобы он знал "а что эти сволочи из коммерческих банков поменяли задним числом?". Но ритейлу? Я, честно, сомневаюсь. Пока хочу сделать что-то типа мегазеркала, где будут данные и из 1С, и из SAP, и из кучи других систем. Это зеркало должно содержать 1-в-1 копии таблиц из всяких разных источников. Чтобы его можно было использовать сразу. И только потом использовать это мегазеркало как STAGE/ODS для хранилища (не важно, по какой идеологии оно будет построено/отрефакторено). Просьба модератору перенести топик сюда https://www.sql.ru/forum/systems-architecture ... |
|||
:
Нравится:
Не нравится:
|
|||
01.07.2021, 20:35 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
a_voronin, Ваше видео - это, насколько я понял, metadata driven etl? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.07.2021, 20:43 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
Критик, якорная модель это именно для ODS и DV тоже ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2021, 16:07 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
a_voronin, Продвинутым бизнес-пользователям (тем, кто может залезть в ODS и сам написать adhoc-запрос) будет неудобно. Вот представьте, имеется OLTP в виде, скажем, Аксапты, имеется какой-то аналитик, знакомый с ее моделью данных, но доступа к продуктивной СУБД у него нет (что нормально), мол, пользуйся ХД. Он залезает в ХД и вместо 2х таблиц "клиенты" и "проводки" видит 50-100 таблиц... ... |
|||
:
Нравится:
Не нравится:
|
|||
04.07.2021, 14:29 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
Критик, проще всего из базы в кафку лить вроде через debezium, но с ораклом вроде везде засада с лицензированием. debezium не требует инсталяции GG, но требует лицензию на GG https://debezium.io/documentation/reference/1.6/connectors/oracle.html Модератор: Тема перенесена из форума "Microsoft SQL Server". ... |
|||
:
Нравится:
Не нравится:
|
|||
04.07.2021, 20:15 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
Критик a_voronin, Продвинутым бизнес-пользователям (тем, кто может залезть в ODS и сам написать adhoc-запрос) будет неудобно. Вот представьте, имеется OLTP в виде, скажем, Аксапты, имеется какой-то аналитик, знакомый с ее моделью данных, но доступа к продуктивной СУБД у него нет (что нормально), мол, пользуйся ХД. Он залезает в ХД и вместо 2х таблиц "клиенты" и "проводки" видит 50-100 таблиц... Я сейчас как раз над этим вопросом думаю. :) Мое мнение - надо и то, и другое. То есть нужны таблички в том виде, как в OLTP базе (например, как в Навике))). Причем не только для отчетов, но и для обслуживания ЕРП. Например, искать косяки удобнее не на рабочей базе, где тяжелым запросом можно замедлить работу основной системы, а на копии. Ну и многие отчеты строить удобно именно по таким табличкам. Но для другой части задач хочется иметь более "нормализованные" данные с историей изменений. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2021, 11:56 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
Критик, у Qlik есть CDC от Attunity, причем умеет онлайн лить данные в qvd-слой Qlik Sense. Можем дать попробовать поиграться, но сама задача довольно редкая. Вопрос, а зачем такая вот прям онлайн-отчетность? Просто интересно... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2021, 14:12 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
H5N1 проще всего из базы в кафку лить вроде через debezium, но с ораклом вроде везде засада с лицензированием. debezium не требует инсталяции GG, но требует лицензию на GG ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2021, 14:18 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
я делал аля лямбда архитектуры в двх для онйлан репортинга. Ключевые пункты следующие: 1. Пакетный режим все равно остается, причем даже как основной режим работы, причем все таблицы имеют вариант загрузки батчем, целиком 2. Инкрементальный онлайн режим применяется к очень ограниченному количеству объектов, к минимально необходимому. 3. Данные для онлайн отчетов мы брали если возможно из реплики, не тащя их дальше. А там где не возможно - был etl с расписанием, раз в несколько минут собирающий нам онлайн датамарты 4. Отчеты соответственно нужны новые, специализированные. Плюс максимально упрощенные, чтобы выкинуть все без чего можно обойтис Ну и все... работает себе ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2021, 17:35 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
George Nordic Критик, у Qlik есть CDC от Attunity, причем умеет онлайн лить данные в qvd-слой Qlik Sense. Можем дать попробовать поиграться, но сама задача довольно редкая. Вопрос, а зачем такая вот прям онлайн-отчетность? Просто интересно... Мм, в qvd-слой Qlik Sense мне не нужно )) Проприетарные дорогие штуки тоже не хотелось бы. Мне нужно лить в MS SQL, но с перспективой перехода на хадуп. В моем видении этот слой будет являться и stage, и ods, и datalake одновременно. Максимально простой, практически 1-в-1 с источниками, и без какой-либо логики. Единственные допустимые преобразования в нем - это преобразования типов, если из-какой-либо СУБД приходит тип данных, отсутствующий в целевой СУБД. Плюс допустимы расчетные столбцы (если льются данные из сотен торговых точек, то можно сформировать ключи). Всё. На вопрос "зачем онлайн" - пока в основном это чисто интерес, вдруг уже это можно чем-то опенсорсным делать. Если есть такая штука и она недорога (а лучше бесплатна!), то почему бы и не поднять свои компетенции ) Ivan Durak, А вы под лямбой понимаете стриминг и батчи в один оконечный приемник или в разные? И почему не каппа-архитектуру использовали? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2021, 20:30 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
Критик Проприетарные дорогие штуки тоже не хотелось бы. Офигенная задача и хорошая строчка в резюме. Сам бы занялся А для совсем онлайн есть свой стек продуктов, а-ля Splunk. Но они ушли из России. Хотя их партнеры на OpenSource что-то сделали, и, говорят, работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2021, 22:53 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
Критик Ivan Durak, А вы под лямбой понимаете стриминг и батчи в один оконечный приемник или в разные? И почему не каппа-архитектуру использовали? Витрины разные. Реплика одна. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2021, 09:53 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
Критик a_voronin, Продвинутым бизнес-пользователям (тем, кто может залезть в ODS и сам написать adhoc-запрос) будет неудобно. Вот представьте, имеется OLTP в виде, скажем, Аксапты, имеется какой-то аналитик, знакомый с ее моделью данных, но доступа к продуктивной СУБД у него нет (что нормально), мол, пользуйся ХД. Он залезает в ХД и вместо 2х таблиц "клиенты" и "проводки" видит 50-100 таблиц... Якорная модель не отменяет схему звезда по Кимбаллу. Она вписывается в архитектуру ХД по Кимбаллу вместо Stage или ODS, куда конечные юзеры ходить не должны. Её задача ускорить загрузку, предоставить условия для развития исходного ОДС, привести в порядок ключи. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2021, 14:03 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
a_voronin, Понятно. Просто в моей текущей концепции пользователи (конечно, не все) вполне могут ходить в STAGE/ODS. Для примера, если есть продвинутый аналитик, знающий модель исходной системы, и нет желание пускать его в продуктивную систему-источник, то он вполне может писать свои запросы в STAGE/ODS или использовать Self service-средства BI . По сути - только внедрили STAGE/ODS и у вас сразу пошла отдача для компании! Мне думается, это офигительный плюс для тех же интеграторов. Нарисовал картинку: ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2021, 14:33 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
Критик a_voronin, Понятно. Просто в моей текущей концепции пользователи (конечно, не все) вполне могут ходить в STAGE/ODS. Для примера, если есть продвинутый аналитик, знающий модель исходной системы, и нет желание пускать его в продуктивную систему-источник, то он вполне может писать свои запросы в STAGE/ODS или использовать Self service-средства BI . По сути - только внедрили STAGE/ODS и у вас сразу пошла отдача для компании! Мне думается, это офигительный плюс для тех же интеграторов. Нарисовал картинку: У нас сейчас, фактически, только STAGE/ODS. Но отчеты создаются не напрямую из таблиц, а через вьюшки. Фактически, это такая своеобразная "витрина". Как "быстрое" решение - очень удобно. Сейчас делаю еще один набор вьюшек для куба. Сейчас куб процессится в два этапа - сперва SSIS пакеты вытаскивают данные из таблиц ЕРП (Навик) в промежуточную базу, а потом куб процессится из этой базы. Хочу переделать, чтобы куб процессился из таблиц (через вьюшки) STAGE. Сперва думал, что это будет только временное решение, но сейчас склоняюсь к мысли, что такая "витрина" довольно полезна. Процессить куб - это, разумеется, не очень правильно из таких данных. А вот часть отчетов строить - вполне нормальное решение. Фактически, эти отчеты будут скорее частью ЕРП, и формировать их на основе STAGE таблиц - нормальный подход. Главный плюс - это все можно сделать довольно быстро и относительно недорого. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2021, 14:55 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
s_ustinov У нас сейчас, фактически, только STAGE/ODS. Но отчеты создаются не напрямую из таблиц, а через вьюшки. Фактически, это такая своеобразная "витрина". Как "быстрое" решение - очень удобно. Сейчас делаю еще один набор вьюшек для куба Не очень, если честно. Кардинально отличие того же DDS-слоя от STAGE/ODS - в DDS появляются правильные числовые суррогатные ключи. К примеру те же табулярные кубы плохо переваривает составные ключи. Или вам нужно посчитать, скажем, какой-нибудь отчет о "Прибыли и убытках", а для его расчета вам заранее нужно посчитать 10-20 таблиц. Делать это в STAGE/ODS совсем некомильфо. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2021, 20:37 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
Критик s_ustinov У нас сейчас, фактически, только STAGE/ODS. Но отчеты создаются не напрямую из таблиц, а через вьюшки. Фактически, это такая своеобразная "витрина". Как "быстрое" решение - очень удобно. Сейчас делаю еще один набор вьюшек для куба Не очень, если честно. Кардинально отличие того же DDS-слоя от STAGE/ODS - в DDS появляются правильные числовые суррогатные ключи. К примеру те же табулярные кубы плохо переваривает составные ключи. Или вам нужно посчитать, скажем, какой-нибудь отчет о "Прибыли и убытках", а для его расчета вам заранее нужно посчитать 10-20 таблиц. Делать это в STAGE/ODS совсем некомильфо. Полностью согласен. "Все дело в цене на билет." Я не в восторге, но сейчас есть только такое. Я не пытаюсь сказать, что так надо делать. Так иногда можно, когда ограничены ресурсы. Но витрина на STAGE таблицах полезна не только как решение "для бедных", но и для целого ряда других задач. Я когда это делал - думал, это исключительно временное решение. Но сейчас понимаю, что для ряда задач очень полезная вещь. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2021, 21:04 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
да, это как и расчеты в экселе: "дешево, быстро, временно" :)) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2021, 11:45 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
s_ustinov Критик пропущено... Не очень, если честно. Кардинально отличие того же DDS-слоя от STAGE/ODS - в DDS появляются правильные числовые суррогатные ключи. К примеру те же табулярные кубы плохо переваривает составные ключи. Или вам нужно посчитать, скажем, какой-нибудь отчет о "Прибыли и убытках", а для его расчета вам заранее нужно посчитать 10-20 таблиц. Делать это в STAGE/ODS совсем некомильфо. Полностью согласен. "Все дело в цене на билет." Я не в восторге, но сейчас есть только такое. Я не пытаюсь сказать, что так надо делать. Так иногда можно, когда ограничены ресурсы. Но витрина на STAGE таблицах полезна не только как решение "для бедных", но и для целого ряда других задач. Я когда это делал - думал, это исключительно временное решение. Но сейчас понимаю, что для ряда задач очень полезная вещь. А кто запрещает сгенереить вьюх поверх яорной и DV, которые собирают таблицы в первоначальном виде. Я скажу вам больше. Если в БД ещё и работает join eleimantion , то "под капотом" будут взяты только нужные таблицы. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.07.2021, 18:31 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
a_voronin s_ustinov пропущено... Полностью согласен. "Все дело в цене на билет." Я не в восторге, но сейчас есть только такое. Я не пытаюсь сказать, что так надо делать. Так иногда можно, когда ограничены ресурсы. Но витрина на STAGE таблицах полезна не только как решение "для бедных", но и для целого ряда других задач. Я когда это делал - думал, это исключительно временное решение. Но сейчас понимаю, что для ряда задач очень полезная вещь. А кто запрещает сгенереить вьюх поверх яорной и DV, которые собирают таблицы в первоначальном виде. Я скажу вам больше. Если в БД ещё и работает join eleimantion , то "под капотом" будут взяты только нужные таблицы. В "ядро" хранилища переносить все поля из ERP - не факт, что целесообразно. И из-за денормализации в исходных таблицах могут быть нарушения целостности данных. Ядро хранилища обычно стараются сделать нормализованным, и такие ошибки туда просто не попадут. Но как раз для поиска подобных косяков (в одних таблицах исправили, а в других - забыли) и могут понадобиться такие "витрины". ... |
|||
:
Нравится:
Не нравится:
|
|||
15.07.2021, 20:50 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
s_ustinov В "ядро" хранилища переносить все поля из ERP - не факт, что целесообразно. Это не принципиальный нюанс -- можно все, можно не все. s_ustinov И из-за денормализации в исходных таблицах могут быть нарушения целостности данных. Ну если не думать о транзакционной целостности выгрузки, то да все будет криво. Если думать, то не будет. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.07.2021, 11:44 |
|
Реалтайм отчетность
|
|||
---|---|---|---|
#18+
a_voronin s_ustinov В "ядро" хранилища переносить все поля из ERP - не факт, что целесообразно. Это не принципиальный нюанс -- можно все, можно не все. s_ustinov И из-за денормализации в исходных таблицах могут быть нарушения целостности данных. Ну если не думать о транзакционной целостности выгрузки, то да все будет криво. Если думать, то не будет. Я про данные в системах - источниках . Там (в источниках) довольно часто есть ошибки. Так как таблицы денормализованы для ускорения некоторых запросов, при сбоях / ошибках в данных появляются противоречия. То есть ошибки возникают не на этапе выгрузки в хранилище, а в процессе работы OLTP системы. И вот поиск таких ошибок - один из хороших кандидатов для "витрин" поверх STAGE таблиц. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.07.2021, 20:56 |
|
|
start [/forum/topic.php?fid=33&tid=1547059]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
28ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
others: | 239ms |
total: | 377ms |
0 / 0 |