Здравейте, ние се опитваме да обработим поточни финансови пазарни данни, за да изчислим сигнал за търговия, като използваме интеграция на Apache Camel или Spring. Един от нашите случаи на използване е да агрегираме последователни цени заедно въз основа на ценови времеви клейма, както следва:
- въвеждане
входното съобщение идва като (времево клеймо, цена) двойки във времеви серии. Да предположим, че стойностите идват като всяка двойка (TX,PX) е съобщение, докато T за клеймо за време и P за стойност на цената
(T0,P1),(T1,P1),(T2,P2),(T3,P3),(T4,P4)...
- обединяване
да предположим, че трябва да обобщим всеки 3 последователни съобщения заедно за по-нататъшно изчисление, като се има предвид входното съобщение, което трябва да произведем следните групи, всяка група от 3 двойки е обобщено съобщение:
[(T0,P1),(T1,P1),(T2,P2)],
[(T1,P1),(T2,P2),(T3,P3)],
[(T2,P2),(T3,P3),(T4,P4)],
....
Както можете да видите, повечето от съобщенията ще бъдат обобщени към повече от една група. Може ли някой да предложи дали има начин да направите това, като използвате текущия агрегатор, без да го напишете.
Изглежда, че обобщеното групиране на пролетната интеграция също се основава на корелационен ключ, така че съобщенията ще трябва да се насочат към група от корелационни ключове. Въпреки това изглежда, че настоящият API ни позволява да създадем само един корелационен ключ, което означава, че всяко съобщение може да бъде агрегирано само в една група. Има ли някаква работа за това.
P.S.
след като прочетох изходния код на camel, изглежда, че camel не може да поддържа нашето изискване. Просто опитайте късмета си с пролетта. Стискам палци камила въпрос