2010-05-15 4 views
3

질문 환경은 JavaEE, Spring과 관련됩니다.ETL, Esper 또는 Drools?

들어오는 메시지에 대해 임의의 TCP (또는 다른) 수신기를 시작하고 중지 할 수있는 시스템을 개발 중입니다. 이러한 메시지를 인증 할 필요가있을 수 있습니다. 이러한 메시지는 구문 분석되어 다른 엔티티에 저장되어야합니다. 이 엔티티는 저장하는 필드를 모델링합니다. F2 =

90 나중에 내가 할 수있는, 나는 두 개의 텍스트 필드 FillLevel1 및 FillLevel2을 가질 수 속성 1이있는 경우

그래서 예를 들어, 나는 모두가 F1 = 100과 같은 텍스트에 지정된 레벨을 채우기가 TCP에 메시지를받을 수 추가로 다른 말을 추가 FillLevel3 메시지를 받기 시작하면 F1 = xx; F2 = xx; F3 = xx. 그러나 이것은 시스템 모델 작성자의 의식적인 결정입니다.

제 질문은 메시지를 파싱하고 저장하는 데 더 좋다고 생각합니다. ETL (다른 시스템에서 사용되는 Pantaho 사용)은 원시 메시지를 저장하고 태스크 실행자를 사용하여 하나씩 소비하고 규칙에 따라 변형 된 메시지를 저장합니다.

Espr 또는 Drools를 사용하여 규칙을 저장하고 타이머를 사용하여 실행할 수 있지만 실행중인 시스템에서 최종 사용자가 규칙을 작성하는 것이 얼마나 동적 인 지 잘 모르겠습니다. 그리고 선호하는 대부분의 사용자 친화적 인 방법, 즉 스크립트 또는 코드, GUI 만)

최종 사용자는 구문 분석 규칙을 변경할 수 있어야합니다. 또한 최종 사용자가 보관 된 데이터를 변경할 수도 있습니다 (예 : 위의 예에서 FillLevel의 새 값이 추가 된 경우 이전 값에 FillLevel = -99를 입력하여 데이터를 작성하려는 경우) 일관된).

설명을 요청하십시오. 나는이 질문을 약간 수정해야한다고 생각합니다.

감사합니다.

답변

1

@geoaxis가 너무 늦었습니다. 요구 사항이 변경되면 F4가 시스템에 추가되었다고 말합니다. 1) 규칙 2) 엔티티 3) 데이터베이스 테이블 4) .. anythig else?

해결책을 찾았습니까?

1

음 Esper는 훌륭한 CEP 엔진이지만 drools에는 jBpm과 잘 통합되는 Drools Fusion이 있습니다. 그것은 좋은 선택이 될 것입니다.