|
AlwaysOn - собрать с реплики-readonly, результат закинуть на реплику-readwrite
|
|||
---|---|---|---|
#18+
Есть желание организовать считывание большого количества данных с реплики на чтение(read-only), затем там же рассчитать, итоговые снимки сохранять уже на основной реплике. Много написано, как настроить AlwaysOn, но мало по его использованию в качестве источника данных для отчетов. AlwaysOn и слушателей мы настроили, SSRS нормально работает от реплики-read-only. Но тяжёлая часть по чтению и расчету биллинг-данных, пока не разведена по репликам. Подскажите, плиз, схему, как считать на одной реплике, закидывать результат на основную? Обязательно ли через SSIS? *снимки отчетов обычно храним таблице в поле формата XML ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2020, 16:00 |
|
AlwaysOn - собрать с реплики-readonly, результат закинуть на реплику-readwrite
|
|||
---|---|---|---|
#18+
Freincman, У меня создается впечатление, что вы городите один большой костыль. Отчеты делаются от Хранилища данных. От витрин. Вам нужно его создать и разработать, закачать туда данных и преобразовать их в схему звезда. Сделать витрины. Вот от этого делать отчеты. Делать кубы. Все эти извращения с репликами ведут в никуда. Правильный подход описан здесь https://www.kimballgroup.com/data-warehouse-business-intelligence-resources/books/microsoft-data-warehouse-dw-toolkit/ ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2020, 16:15 |
|
AlwaysOn - собрать с реплики-readonly, результат закинуть на реплику-readwrite
|
|||
---|---|---|---|
#18+
Freincman, SSIS - самое простое решение. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2020, 16:16 |
|
AlwaysOn - собрать с реплики-readonly, результат закинуть на реплику-readwrite
|
|||
---|---|---|---|
#18+
Да, костыль, прогиб под клиента и прочее. Кубы не подойдут, т.к. очень много естественных ключей, которые тянуть в измерения смысла нет тянуть абсолютно. Биллингу нужны конечные цифры и отчеты расшифровки. BI не слишком тут подходит ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2020, 16:17 |
|
AlwaysOn - собрать с реплики-readonly, результат закинуть на реплику-readwrite
|
|||
---|---|---|---|
#18+
Freincman Биллингу нужны конечные цифры и отчеты расшифровки. BI не слишком тут подходит Я извиняюсь, а для чего тогда хранилища и BI нужны? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2020, 16:33 |
|
AlwaysOn - собрать с реплики-readonly, результат закинуть на реплику-readwrite
|
|||
---|---|---|---|
#18+
miceonly Freincman Биллингу нужны конечные цифры и отчеты расшифровки. BI не слишком тут подходит Я извиняюсь, а для чего тогда хранилища и BI нужны? Согласен, что в идеале всё считать из хранилища и закидывать в кубы. У нас есть небольшой опыт построения OLAP кубов и сбор данных. Но! в этом процессе слишком много нюансов. Если положить допустим 15 сущностей с 30-50 атрибутами на измерения, которые частично используются для разных клиентов и соответственно отчетов, то схема-звезда заимеет очень много лучей. Прописывание часто изменяемых условий для расчета требуемых Стоимостей, КПИ и прочего займёт года и кучу рукочасов. Поэтому, в таком случае если и закидывать данные в хранилище, то уже частично посчитанные(сведенные к нескольким измерениям и фактам). А частично посчитанные данные не имеют расшифровки. Тогда смысл в Кубе и Хранилище, если из него не достать ключевых деталей. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2020, 16:52 |
|
AlwaysOn - собрать с реплики-readonly, результат закинуть на реплику-readwrite
|
|||
---|---|---|---|
#18+
Freincman Кубы не подойдут, т.к. очень много естественных ключей. Какая разница какие ключи в источнике. Надо строить модель на суррогатных ключах. Надо спроектировать ХД. Если это скоростное что-то, то надо делать Operational Data Storage. Все равно вы упретесь в то, что понадобиться дополнительные справочники. Будет обвешивать индексами и т.п. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2020, 16:54 |
|
AlwaysOn - собрать с реплики-readonly, результат закинуть на реплику-readwrite
|
|||
---|---|---|---|
#18+
Freincman Биллингу нужны конечные цифры и отчеты расшифровки. Посмотрите вот это ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2020, 16:55 |
|
AlwaysOn - собрать с реплики-readonly, результат закинуть на реплику-readwrite
|
|||
---|---|---|---|
#18+
a_voronin Freincman Кубы не подойдут, т.к. очень много естественных ключей. Какая разница какие ключи в источнике. Надо строить модель на суррогатных ключах. Надо спроектировать ХД. Если это скоростное что-то, то надо делать Operational Data Storage. Все равно вы упретесь в то, что понадобиться дополнительные справочники. Будет обвешивать индексами и т.п. Ну, как бы пробовали у нас построить хранилище данных для складской выработки. Собирается всё отлично, замечательно, из разных источников. Только вот посчитать красиво (при допустим ежемесячных изменениях фильтрации): - на каком источнике данных - какого типа операции - какого клиента - какого товара - когда - где - чем - с каким качеством - etc как выдавать расценку, трудозатратность и прочее - стало просто не реально. Пришли к тому, что литься будут данные в ХД уже посчитанные группой преднастроенных датасэтов. Т.к. ведение логики вышеперечисленных в самом кубе приведёт к сумасшествию и конфликтам. Ну и потерям денег в итоге думается будут храниться только ключевые вещи код норматива-исполнитель-дата-стоимость-количество-время ну и небольшое прочее ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2020, 17:09 |
|
AlwaysOn - собрать с реплики-readonly, результат закинуть на реплику-readwrite
|
|||
---|---|---|---|
#18+
штош, спасибо за наставления и внимание. Буду думать... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2020, 17:12 |
|
AlwaysOn - собрать с реплики-readonly, результат закинуть на реплику-readwrite
|
|||
---|---|---|---|
#18+
Freincman Но! в этом процессе слишком много нюансов. Если положить допустим 15 сущностей с 30-50 атрибутами на измерения, которые частично используются для разных клиентов и соответственно отчетов, то схема-звезда заимеет очень много лучей. Прописывание часто изменяемых условий для расчета требуемых Стоимостей, КПИ и прочего займёт года и кучу рукочасов. А у вас сейчас все считается "на лету"? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2020, 17:24 |
|
AlwaysOn - собрать с реплики-readonly, результат закинуть на реплику-readwrite
|
|||
---|---|---|---|
#18+
Freincman a_voronin пропущено... Какая разница какие ключи в источнике. Надо строить модель на суррогатных ключах. Надо спроектировать ХД. Если это скоростное что-то, то надо делать Operational Data Storage. Все равно вы упретесь в то, что понадобиться дополнительные справочники. Будет обвешивать индексами и т.п. Ну, как бы пробовали у нас построить хранилище данных для складской выработки. Собирается всё отлично, замечательно, из разных источников. Только вот посчитать красиво (при допустим ежемесячных изменениях фильтрации): - на каком источнике данных - какого типа операции - какого клиента - какого товара - когда - где - чем - с каким качеством - etc как выдавать расценку, трудозатратность и прочее - стало просто не реально. Пришли к тому, что литься будут данные в ХД уже посчитанные группой преднастроенных датасэтов. Т.к. ведение логики вышеперечисленных в самом кубе приведёт к сумасшествию и конфликтам. Ну и потерям денег в итоге думается будут храниться только ключевые вещи код норматива-исполнитель-дата-стоимость-количество-время ну и небольшое прочее Я делал миллиардные остатки с 20+ измерениями и кучей вычислений. Не понимаю, о каком сумасшествии идет речь. Вы не смогли правильно построить модель. Я кстати сейчас рассматриваю предложения о работе. Пишите, если что на a_voronin собака list.ru Москва ... |
|||
:
Нравится:
Не нравится:
|
|||
07.08.2020, 17:33 |
|
AlwaysOn - собрать с реплики-readonly, результат закинуть на реплику-readwrite
|
|||
---|---|---|---|
#18+
miceonly Freincman Но! в этом процессе слишком много нюансов. Если положить допустим 15 сущностей с 30-50 атрибутами на измерения, которые частично используются для разных клиентов и соответственно отчетов, то схема-звезда заимеет очень много лучей. Прописывание часто изменяемых условий для расчета требуемых Стоимостей, КПИ и прочего займёт года и кучу рукочасов. А у вас сейчас все считается "на лету"? Нет, мне не нужно считать на лету. Мы просто хотиим не нагружать операционную базу, тк temdb разрастается очень сильно и много чтения производится. Видео приложенное про лямбду очень интересное, но нам на лету - не надо) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 09:29 |
|
AlwaysOn - собрать с реплики-readonly, результат закинуть на реплику-readwrite
|
|||
---|---|---|---|
#18+
a_voronin Freincman пропущено... Ну, как бы пробовали у нас построить хранилище данных для складской выработки. Собирается всё отлично, замечательно, из разных источников. Только вот посчитать красиво (при допустим ежемесячных изменениях фильтрации): - на каком источнике данных - какого типа операции - какого клиента - какого товара - когда - где - чем - с каким качеством - etc как выдавать расценку, трудозатратность и прочее - стало просто не реально. Пришли к тому, что литься будут данные в ХД уже посчитанные группой преднастроенных датасэтов. Т.к. ведение логики вышеперечисленных в самом кубе приведёт к сумасшествию и конфликтам. Ну и потерям денег в итоге думается будут храниться только ключевые вещи код норматива-исполнитель-дата-стоимость-количество-время ну и небольшое прочее Я делал миллиардные остатки с 20+ измерениями и кучей вычислений. Не понимаю, о каком сумасшествии идет речь. Вы не смогли правильно построить модель. Я кстати сейчас рассматриваю предложения о работе. Пишите, если что на a_voronin собака list.ru Москва у нас допустим измерений 20+*15, из них то, что нужно клиенту 10+. За каждым следить и тем более кому либо давать в доступ и на каждое настраивать фильтр - не реально ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2020, 09:32 |
|
|
start [/forum/topic.php?fid=46&msg=39987609&tid=1685794]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
42ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
2ms |
others: | 16ms |
total: | 163ms |
0 / 0 |