RDF 트리플을 작성하기 위해 입력 데이터의 일부 조작을 수행하도록 Camel 컨텍스트를 구성했습니다.Camel을 사용하여 참깨에서 약 300.000 개의 트리플을 인덱싱합니다.
세서미 클라이언트 API를 사용하여 별도의 참깨 인스턴스 (3GB RAM이있는 Tomcat에서 실행 됨)와 통신하고 추가 명령을 전송하는 최종 경로가 있습니다 (각 명령에는 약 5 - 10 개의 문이 포함되어 있음).
프로세서가 싱글 톤으로 실행 중이고 해당 "끝"끝점에 10 개의 concurrentConsumers가 있습니다 (1, 5, 10으로 시도 - 동일한 동작).
나는 내 프로세서에서 add 명령을 보내기 위해 HttpRepository를 사용하고 있으며, 실행 중에는 색인 작업의 (점진적으로) 점진적인 성능 저하를 관찰합니다. 전반적인 프로세스는 트리플을 매우 빨리 인덱싱하기 시작합니다.하지만 약간의 시간이 지나면 커밋 된 문장이 매우 느리게 커집니다.
세서미 측에서 저는 MemoryStore와 NativeStore를 모두 사용했지만 (성능) 동작은 동일하지는 않습니다.
질문 : 경우에 reccommended되어 내가 인덱싱 단계를 가속화하고 싶은 매장 가지 종류의
- ?
- Repository.getConnection이 일종의 연결 풀링을 수행합니까? 즉, "추가"프로세서가 작업을 수행 할 때마다 연결을 열고 닫을 수 있습니까?
- 먼저 내가 만든 세 개의 트리플이 모두 저장소를 만들 필요가 있다고 했으므로 원격 세서미 서버에서 관리하는 대신 (즉 HTTPRepository를 사용하지 않음) "로컬"세일 저장소를 만드는 것이 좋습니다.