Добрый день. Стоит задача организовать выгрузку данных из BI в "стороннее приложение" с использование шины PI\XI, но со следующими "нюансами": 1) В пиковые моменты (не часто, но бывает) объем данных будет достигать милиона записей из кубов (около 10 Гб) 2) Передача должна быть организована в режиме а-ля онлайн (то бишь пользователь жмет кнопку и данные отправляются в PI - как вариант: запускается цепочка в бетче)
коллеги со стороны PI сказали что максимально возможный (с их точки зрения) объем одного пакета: 10 Мб, то есть для того чтобы передать милион записей придется делать около 1000 пакетов по 1000 записей каждый + работа немалого количества пользователей , которые могут одновременно захотеть послать данные . Соответственно, большая вероятность того, что PI просто не "выдержит" таких объемов и нужна грамотная выгрузка данных из кубов. Если PI принял 900 пакетов, а 100 не смог, то надо "рестартовать" с этих 100 пакетов.
После прочтения САПовской how to по интеграции BI с XI (сделанной еще для версии 3.5) остались вопросы: действительно ли стоит применять OPEN HUB (выгружать данные из кубов в Z-таблицу) и насколько "стабильно" это решение будет работать с большими объемами и с одновременной работой пользователей? или может лучше сделать Write-optimezed DSO, писать туда уже пакетами по 1000 записей, потом считывать из него по request'у и сразу после успешной отправки в шину, удалять request? и еще, когда делать commit: после каждого успешно переданного (в PI) пакета или после передачи всего объема транзакционных данных? Первый вариант на, мой взгляд, не логичен с точки зрения "бизнеса" , второй с точки зрения техники.
В общем, если кому-либо приходилось решать похожие задачи - поделитесь плиз идеями. Ну и заранее большое спасибо за любые советы, ответы на вопросы, подсказки и т.д.
|
|