ActivePivot

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 12:48, 29 сентября 2020.
ActivePivot
ActivePivot.png
Создатели: ActiveViam
Разработчики: The ActiveViam Development Team
Постоянный выпуск: 9.3 / январь 2020
Состояние разработки: Active
Операционная система: Windows, Linux
Тип ПО: База данных в памяти, сочетающая транзакционную и аналитическую обработку для обработки агрегирования постоянно меняющихся данных.
Веб-сайт activeviam.com/en/products/activepivot-in-memory-analytical-database

ActivePivot - это коммерческий продукт, который собирает огромные объемы быстро обновляющихся данных из нескольких источников, сохраняя их в памяти своей базы данных, чтобы своевременно принимать оптимальные решения. Сочетая инкрементную транзакционную и аналитическую обработку, ActivePivot вычисляет сложные метрики по данным, которые обновляются на лету без необходимости предварительного агрегирования. Он позволяет исследовать метрики по сотням измерений, анализировать оперативные данные на самом детальном уровне и выполнять моделирование условий «что, если» с беспрецедентной скоростью.[Источник 1]

Механизм работы приложения включает в себя следующие аспекты:

  • Вычисления в памяти
  • Смешанная нагрузка
  • Условные операции
  • Поддержка любых типов данных и измерений
  • Анализ первопричин
  • Механизм MDX
  • Постпроцессоры

История

ActivePivot - один из основных продуктов французской компании ActiveViam, когда-то известной как Quartet FS, которая была основана в 2005 году. Основными клиентами компании являются банки и другие финансовые учреждения, поэтому упор делается на поддержку потоков данных в реальном времени и непрерывные запросы.

Описание системы

  • Архитектура

Все серверы действуют независимо и не имеют доступа к информации, содержащейся на других серверах. Данные могут распределяться между серверами на основе значений заданного атрибута. Например, если одним из атрибутов является город, данные могут быть распределены по географическим регионам.

  • Просмотр

Система поддерживает материализованные представления как для кубов OLAP, так и для непрерывных запросов. Представления могут быть материализованы в подмножестве измерений для куба OLAP. Для непрерывных запросов материализованное представление результата обновляется вместе с изменениями базовых данных.

  • Модель данных

И реляционные таблицы, и многомерные кубы OLAP используются для организации данных.

  • Модель хранения

Данные хранятся в столбцах в памяти, DRAM или флеш-памяти, без дополнительных хранилищ на основе строк.

  • Интерфейс запроса

ActivePivot поддерживает запросы через многомерные выражения (MDX) либо через ActiveUI, либо через любой другой интерфейс, совместимый с MDX.

  • Компиляция запросов

Компилятор Java JIT отвечает за обработку компиляции запросов многомерного выражения (MDX). Запросы многомерных выражений похожи по синтаксису на запросы SQL, но служат другой цели. В то время как запросы SQL работают с таблицами, которые являются двумерными, запросы многомерных выражений работают с кубами OLAP, которые могут поддерживать многие измерения. Некоторые другие операции компилируются непосредственно в байт-код Java.

  • Параллельное выполнение

Когда сервер получает запрос, он также отправляет запрос другим серверам. Получив ответ от всех серверов, он объединяет всю информацию и возвращает результат.

  • Индексы

ActivePivot использует растровое индексирование для многомерных кубов и поддерживает первичные и вторичные индексы для реляционных таблиц.

  • Аппаратное ускорение

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

  • Сжатие

ActivePivot использует для сжатия как кодировку словаря, так и примитивы Java. Сжатие словаря: когда для атрибута существует небольшое количество различных значений, атрибуты могут быть закодированы в целое число от 1 до N, где N обозначает общее количество различных значений, с помощью словаря, в котором хранятся отдельные значения. Примитивы Java: вместо того, чтобы хранить целые числа как объекты Java Integer, ActivePivot сохраняет их как примитивы. Количество битов, хранящихся для каждого числа, зависит от диапазона возможных значений. Например, если значения в столбце находятся в диапазоне от 0 до 256, тогда система будет хранить только 8 бит на число. Эта форма сжатия может быть объединена со сжатием словаря

  • Контроль параллелизма

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

Описание функционала

  • Вычисления в памяти

ActivePivot, изначально разработанный как собственное решение для работы в памяти, в 200 раз быстрее, чем реляционные СУБД на основе дисков. Это приводит к обработке больших данных на ускоренной скорости без задержек. Анализ данных, который традиционно требует быстрой пакетной обработки, обрабатывается в режиме реального времени, что позволяет использовать анализ данных бизнес-аналитики непосредственно в бизнес-операциях.

  • Смешанная нагрузка

За счет объединения обработки данных OLTP и OLAP в базу данных со смешанной рабочей нагрузкой ActivePivot позволяет выполнять запросы к динамическим данным, которые часто обновляются. Он извлекает и хранит данные в собственном формате, устраняя необходимость преобразования и дублирования данных. Затем, когда он обнаруживает новые или измененные данные в исходной системе, он постепенно обновляет свой куб и передает изменения во внешний интерфейс - будь то ActiveUI , Excel или любой собственный, совместимый с MDX интерфейс. Чтобы поддерживать одновременное сочетание запросов и интенсивных обновлений данных, функция ActivePivot «Multiversion Concurrency Control» хранит несколько версий одних и тех же данных, так что одна группа пользователей может выполнять анализ данных, а другая группа может выполнять обновления тех же данных в реальном времени.

  • Условные операции

Сценарии «что-если» запускаются путем изменения данных непосредственно в кубе анализа. Каждый пользователь в группе может независимо выполнять моделирование и выполнять запросы с полной конфиденциальностью и без влияния на других пользователей или рабочие данные. Данные могут быть добавлены или удалены из куба, а детализация может выполняться для больших наборов данных с мгновенной доставкой результатов по каждому запросу сценария.

  • Поддержка любых типов данных и измерений

ActivePivot дает представление о том, какие именно данные вам нужны - независимо от того, как они хранятся или структурированы. Каждый столбец может быть измерением, поэтому критерии анализа не ограничены.

  • Анализ первопричин

ActivePivot дает возможность вернуться и проанализировать моментальные снимки данных за любой период времени, чтобы точно определить причину нарушения, даже если это связано с большими объемами данных в высокочастотныx потоках.

  • Механизм MDX

Механизм MDX (многомерные выражения) ActivePivot поддерживает самые требовательные аналитические запросы, создавая многомерное представление агрегированных данных. При использовании хранилища данных на основе столбцов для каждого измерения требуется только один дополнительный столбец, поэтому комплексный анализ, включающий сотни измерений, вычисляется «на лету». Механизм MDX также обеспечивает совместимость ActivePivot с несколькими интерфейсами пользователя, включая Excel, Tableau, Spotfire, OBIEE, ActiveUI и другие.

  • Постпроцессоры

Постпроцессоры ActivePivot обеспечивают максимальную гибкость для агрегирования и обработки данных. Постпроцессоры, определенные с использованием кода Java, оцениваются во время запроса для каждого запрошенного агрегата и позволяют настраивать вычисления, а также вычислять значения из любого внешнего ресурса данных.[Источник 2]

ActivePivot в оценке кредитного риска

Имея под рукой мгновенные метрики кредитного риска, отделы рисков могут ограничивать риски и оптимизировать стратегии покрытия рисков. Риск-менеджеры могут анализировать CVA, PFE или EPE вплоть до каждого отдельного уровня торговли и понимать значительные отклонения в любой момент времени.

ActivePivot объединяет огромные объемы моделирования отдельных сценариев в десятки тысяч временных точек, выполняя взаимозачеты и предоставляя меры кредитного риска за доли секунды. Когда новые сделки обрабатываются, он постепенно повторно вычисляет затронутые метрики и отправляет обновление дельты пользователям.

В свою очередь, пользователи сразу получают представление о подверженности риску контрагента. Они могут точно хеджировать CVA с учетом актуальной чувствительности, определить самого дешевого контрагента по CVA или смоделировать влияние изменения рейтинга с помощью анализа «что, если». После изменения регулирования новые показатели кредитоспособности могут быть легко внедрены с минимальными усилиями. [Источник 3]

Видео-обзор пробной версии приложения

Более подробно с работой приложения и его функций можно ознакомиться при просмотре видео:

Источники

  1. ActivePivot // DatabaseOfDatabases [2018 — ]. URL: https://dbdb.io/db/activepivot (Дата обращения: 15.09.2020)
  2. ActivePivot: Under the hood // ActiveViam Technical White Paper. [2018]. P. 2-8. URL: https://activeviam.com/images/pdf/white-papers/ActiveViam_Technical_White_Paper_-_ActivePivot.pdf (Дата обращения: 15.09.2020)
  3. Real-time risk and P&L // ActiveViam [2018 — ]. URL: https://activeviam.com/en/solutions/trading-desks (Дата обращения: 15.09.2020)