Lucene.net을 사용하여 다양한 소스 (예 : 로컬 파일 시스템 및 데이터베이스)의 데이터를 색인하려고합니다. 그러나 ID와 같은 공통 필드를 기반으로 두 소스의 데이터를 연결하고 결합 된 정보를 사용자에게 표시하고 싶습니다. 내가 알 수있는 한, 세 가지 옵션이 있습니다. 각 소스 인덱싱 후 :Lucene.net을 사용하여 여러 소스의 결과를 색인하고 결합 할 수 있습니까?
이- 사용 Lucene.net는
- 소급 결과를 상관 관계를 일부 사용자 지정 코드를 만들기 세트 하나의 결과로 검색 쿼리에 인덱스를 결합하기를, 또는
- 데이터베이스에 별도의 결과 세트를 저장하십시오 (필자의 경우, 소스와 동일한 데이터베이스가 아닐 것입니다). 그런 다음 데이터를 조인하는 쿼리를 기반으로 새 인덱스를 만들
옵션 1은 내가하고 싶은 것입니다,하지만 난이 몇 가지 이유 루씬으로 얼마나 실행 가능한 확실하지 않다 :
- Lucene은 관계형 데이터베이스가 아니며 Lucene이 실제로 설계하지 않은 것을 시도하고 있습니까?
- 인덱스를 결합하면 실적이 크게 상승 할 수 있습니까?
옵션 2보다 더 효율적인 알고리즘을 만들 수 있다고 생각하는 유일한 이유는 옵션 1보다 효율적입니다. 논리의 그 다음 줄에 따라 Lucene 데이터를 상관시키기 위해 나는 그것이 작동합니다 행복 해요,하지만 타협처럼 보인다 옵션 3에 날 리드
:
-
데이터는 루씬 (뿐만 아니라 원래뿐만 아니라 데이터베이스에 저장됩니다
- 소스)
- 추가 단계를 도입하면 프로세스를 완료하는 데 더 오래 걸립니다. 이것이 사용자 환경에 어떤 영향을 미치는지 잘 모르겠습니다.
어떤 제안이 있습니까?