Обработка куба Nreco cube - PullRequest
       100

Обработка куба Nreco cube

0 голосов
/ 04 октября 2019

Обработка NReco PivotData Cube

Этот компонент является новым для меня, и мне интересно, поддерживает ли он частые обновления источника данных? Обычный размер данных будет 1000 строк, содержащих 60 фактов и 6 измерений. Можно ли обновить отдельные строки данных? Это приведет к полной переработке и сколько времени это займет?

1 Ответ

0 голосов
/ 05 октября 2019

Библиотека NReco.PivotData реализует многомерную структуру данных в памяти, которая содержит предварительно агрегированные метрики для измерений, которые вы хотите использовать в своих отчетах. Существует два способа его использования:

  • Способ в стиле ROLAP (в основном используется): экземпляр класса PivotData недолговечен, он создается и заполняется «на лету» вмомент, когда вам нужно отрендерить сводную таблицу или подготовить данные JSON для диаграммы. Источник данных не имеет значения: это может быть список моделей в памяти, который обрабатывается методом PivotData.ProcessData или Результаты запроса агрегации БД могут быть загружены с помощью класса GroupedSourceReader .
  • для отчетов в реальном времени по набору данных только для добавления, вы можете загрузить экземпляр класса PivotData один раз при запуске приложения, а затем «обновить» его новыми записями. В зависимости от ваших потребностей PivotData может сохранять и предварительно вычислять итоги / итоги, или «ленивые» свертки могут выполняться только при обращении к общему значению (это контролируется с помощью PivotData.LazyTotals flag).

Относительно

Нормальный размер данных будет 1000 строк, содержащих 60 фактов и 6 измерений.

это очень маленькие данные, 1 тыс. Строкобрабатывается методом ProcessData очень быстро (рассчитываются только измерения / меры, необходимые для конкретного отчета). Если вы используете базу данных в качестве источника данных, она должна быть в состоянии выполнять агрегированные (GROUP BY) запросы достаточно быстро;специализированные аналитические БД могут сделать это за считанные секунды даже для миллиардов строк.

...