자동 증가 기본 키가있는 추가 전용 테이블이있는 경우를 생각해보십시오. Solr DIH는 당신이 원하는 것을 지원하지 않습니다. 그러나 Solr Wiki DataImportHandlerDeltaQueryViaFullImport에 주어진 예제의 아이디어를 사용하여 시도해 볼 수있는 대체 방법이 있습니다. Solr Wiki DataImportHandlerDeltaQueryViaFullImport에있는 예제에서 아이디어를 시도해 볼 수 있습니다. (Solr 사용자 메일 링리스트에 문의하십시오.)
Solr 색인에서 가장 큰 id
을 가져 오기 요청의 매개 변수로 전달할 수 있으면 데이터 가져 오기 쿼리에서이를 사용할 수 있습니다. 먼저 가장 큰 ID를 가져 SOLR에 쿼리를 실행하기 위해 필요한이 들어
:
q=*:*&sort=id desc&rows=1&fl=id
콜이 MAXID
. 당신은 ${dataimporter.request.id}
을 사용하여 데이터 구성의 id 요청 PARAM를 얻을 수
/dataimport?command=full-import&id=MAXID
: 그런 다음 호출 할 때 전체 가져 오기 같은이 ID를 전달합니다. 물론
<entity name="item"
pk="id"
query="SELECT id, name FROM item
WHERE id > '${dataimporter.request.id}'">
, 당신은 0 당신이있어 최소 키 값입니다 가정, id=0
을 통과하는 모든 문서의 완전한 재 색인 작업을 수행하는 : 데이터-Config.xml의 는 쿼리 같은해야 .
본인 스스로 시도하지 않았지만 실험을 통해 자신이 찾은 내용을 말할 수 있습니다.
(이 모든 것으로 테이블에 타임 스탬프 열을 추가하는 것은 매우 쉽습니다 .MySQL을 사용하는 경우에는 DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
으로 타임 스탬프 열을 유지하고 직접 업데이트 할 필요가 없습니다.)
좋은 생각! 나는 "timestamp"가 최선의 선택이라는 것에 완전히 동의한다. 우리가 updations도 처리 할 수 있기 때문이다. 그냥 대안을 찾고 있었어! 어쨌든 고마워! – Mavellin