최근에는 전체 텍스트 솔루션도 검토했습니다. SQLite는 사실상 선택의 여지가없는 것처럼 보입니다. 무엇을 선택하든 다양한 FT2, FT3 등의 솔루션이 성숙 해짐에 따라 다시 설계해야합니다. 따라서 총알을 물고 앞으로는 전체 텍스트 기술 변경에 발 맞춰 더 많은 개발 작업을 수행해야한다고 가정합니다.
스핑크스 검색에는 아직 SQLite에 대한 직접적인 지원이 없습니다. 현재 MySQL 및 PostgreSQL 만 지원합니다 (2009 년 8 월 ca.). 따라서 자신의 SQLite 커넥터를 해킹하거나 SQLite 데이터를 MySQL 또는 PostgreSQL로 마이그레이션 한 다음 Sphinx Search를 사용하여 데이터를 인덱싱해야합니다. 제 생각에 누군가가 Sphinx Search 패치를 사용하여 Firebird를 지원하고 있다고 생각합니다. 소매를 감쌀 경우에는 그렇게 힘들지 않을 수도 있습니다.
또한 스핑크스 검색에는 점진적으로 색인에 데이터를 추가하는 데 몇 가지 제한 사항이 있습니다. 문서를 사용하기로 결정하기 전에 문서를 1 시간 정도 읽어야합니다.
Lucene에서 SQLite 데이터를 직접 인덱싱하는 방법을 모르겠습니다. Lucite 인덱스에 행을 한 번에 하나씩 추가하여 SQLite 데이터의 일괄 처리를 처리하는 코드를 직접 작성해야합니다. 이것은 데이터베이스가 무엇이든 관계없이 Lucene을 사용하는 것 같습니다.
갱신 :Solr는 루씬을위한 훌륭한 동반자 기술입니다. Solr은 모든 JDBC 데이터 소스에서 쿼리 결과 데이터를 대량로드하는 기능을 포함하여 검색 엔진에 많은 기능을 제공합니다.
나는 외부 솔루션보다 sqlite3 fts3가 더 좋습니다. 움직이는 부분이 적습니다. fts2에서 fts3으로 전환하는 것은 Sphinx를 업데이트 제한 또는 다른 외부 솔루션과 통합하는 것만큼 어렵지 않습니다. –
@ See : 동의합니다 - 다소. fts3은 SQLite에 내장되어있는 반면 Sphinx Search는 또 다른 소프트웨어를 설치해야했습니다. 그러나 fts3은 기본 빌드에 내장되어 있지 않으므로 직접 SQLite를 다시 컴파일해야합니다. 그리고 fts3은 * 가상 테이블 * 유형입니다. 원본 테이블에서 fts3 테이블로 데이터를 수동으로 복사해야합니다. 당신이 어떻게하는지에 관계없이 움직이는 부분이 있습니다. –
FTS3은 FTS4와 마찬가지로 공식 DLL의 일부였습니다. –