필드를 추출하기 위해 사전 처리 단계가있는 작업 흐름이 있습니다. 나중에이 작업을 Solr에 처리 할 다른 프로세스로 넘깁니다. 원본 파일은 레코드가있는 문서로 구성되며 표 형식의 데이터로 구성됩니다. 일부 열은 해당 필드 값에 대한 관련 documentID를 얻기 위해 Solr에서 색인화됩니다. 나는. 당신은Solr : 원래 파일 오프셋 또는 레코드 번호를 토큰으로 저장합니다.
q=indexedField:indexedValue1
fl= documentId
같은 쿼리와 같은 응답이 있습니다 indexedValue1 가정
... response: {documentID1, documentID3}
문서 documentID1, documentID3에서 필드 indexedField에 존재한다.
각 레코드는 색인을 생성하려는 필드 중 하나에 값을 갖습니다. 전 처리 연결은이 값을 하나의 (긴) 텍스트 필드에, 각 값을 토큰으로하여 나중에 사용자가 검색 할 수있게합니다. ... 값 1의 값 2 ... 값 N ...
일부 필드 추출하고 필드에 재편성됩니다, 그래서 당신은에 의해 검색 할 경우 : Morphlines을 물려 때 필드를 색인과 같이 가치, 당신은 그것이 어떤 문서인지 알 수 있습니다. 그러나
, 어떻게 또한 원본 파일에 내가하여 검색 할 각 토큰, 오프셋 (또는 레코드 번호)와 함께, SOLR에 저장할 수
(여기까지 매우 간단)? 문제는이 정보를 추출하는 것이 아니라 다른 문제이기도하지만 해결할 수 있습니다.
기록의 위치 즉 위처럼 쿼리,하지만 각 문서 ID 당 얻을 것이다가, 원래의 레코드 번호 나 파일 오프셋 - 뭔가 같은 :
... response:{ {documentID1, [1234, 5678]}, { documentID3, [] } }
은이 모든 수 있습니까? 이 경우 효율적으로 모델을 작성하는 데 올바른 Solr 데이터 구조는 무엇입니까?
나는 문제 자체를 생각할 때, 내가 생각한 것은 역 색인 학대가 될 것이라고 생각한다. 별도의 정보 수집을 위해 별도의 소장품을 소지했습니다. 그럼에도 불구하고 솔라 프레임 안에서 조사를 계속해야하는 방향으로 지적했기 때문에 대답을 받아들입니다. – xmar