source

독립 실행형 전체 텍스트 검색 서버 선택: 스핑크스 또는 SOLR?

manycodes 2022. 11. 16. 21:30
반응형

독립 실행형 전체 텍스트 검색 서버 선택: 스핑크스 또는 SOLR?

다음 속성을 가진 독립 실행형 전체 텍스트 검색 서버를 찾고 있습니다.

  • 여러 클라이언트의 검색 요청을 처리할 수 있는 독립 실행형 서버로서 작동해야 합니다.
  • SQL 쿼리 결과를 인덱싱하여 "대량 인덱스"를 수행할 수 있어야 합니다. 예를 들어 "SELECT id, text_to_index FROM documents"라고 합니다.
  • 무료 소프트웨어여야 하며 MySQL을 데이터베이스로 사용하는 Linux에서 실행해야 합니다.
  • 고속이어야 함(MySQL의 내부 전체 텍스트 검색 제외)

이러한 속성을 가진 다른 방법은 다음과 같습니다.

  • Solr(루센 기준)
  • Elastic Search(Lucene 기반)
  • 스핑크스

질문:

  • 그들은 어떻게 비교하나요?
  • 제가 다른 대안을 놓쳤나요?
  • 각각의 사용 사례는 다르지만, 특정 패키지를 사용하고 싶지 않은 경우가 있습니까?

저는 Solr를 2년 가까이 사용하고 있고, 스핑크스를 사용한 적이 없기 때문에 편견이 있는 것이 분명합니다.하지만, 저는 문서나 다른 사람들의 말을 인용해서 객관성을 유지하도록 노력하겠습니다.답변에도 패치를 적용하겠습니다:-)

유사점:

  • Solr와 Sphinx는 모두 고객의 모든 요구 사항을 충족합니다.고속으로 대량의 데이터를 효율적으로 인덱싱하고 검색할 수 있도록 설계되었습니다.
  • 두 사이트 모두 트래픽을 많이 사용하는 사이트 목록이 많습니다(Solr, Sphinx).
  • 둘 다 상업적 지원을 제공합니다.(솔러, 스핑크스)
  • 둘 다 여러 플랫폼/언어(Sphinx, Solr)에 대한 클라이언트 API 바인딩을 제공합니다.
  • 둘 다 분산하여 속도와 용량을 높일 수 있습니다(Sphinx, Solr).

다음은 몇 가지 차이점입니다.

관련 질문:

독자적인 방법으로 검색 기능을 확장할 필요가 없는 한, 스핑크스를 추천합니다.

스핑크스의 장점:

  1. 개발 및 셋업 시간 단축
  2. 보다 뛰어난(및 고속) 집약.이게 저희의 킬러 특징이에요.
  3. XML이 아니라 궁극적으로 Solr을 배제하는 거죠Solr 어그리게이션이 부족했기 때문에 비교적 큰 결과 세트(수백 개의 결과라고 생각)를 반환하고 직접 집계해야 했습니다.XML과의 시리얼화 및 XML과의 시리얼화 시간은 퍼포먼스를 완전히 저하시킵니다.하지만 작은 결과 세트라면 완벽하게 괜찮았습니다.
  4. 오픈 소스 앱에서 본 최고의 문서

솔루션의 이점:

  1. 확장할 수 있습니다.
  2. 웹 앱에서 직접 검색할 수 있습니다. 즉, 자동 완성형 검색을 AJAX를 통해 Solr 서버에 직접 입력할 수 있습니다.

주의: 동일한 질문을 염두에 둔 사용자가 많습니다.

요점에 대한 답변:

어떤 이유?

  • 웹 앱(예시 사이트 검색 엔진)에서 Solr을 사용하려면 Solr을 사용하십시오.API 덕분에 분명 멋질 거예요.웹 어플리케이션에는 반드시 그 파워가 필요합니다.

  • 수많은 문서/파일을 빠르게 검색하려면 스핑크스를 사용하십시오.인덱스도 굉장히 빨라요.검색 결과를 얻기 위해 JSON이나 XML 파싱과 관련된 앱에서는 사용하지 않는 것이 좋습니다.직접 dB 검색에 사용합니다.MySQL에서 잘 작동합니다.

대체 수단

비록 그들이 거인이지만, 더 많은 것들이 있다.또, 커스텀 프레임워크에 이러한 기능을 사용하는 기업도 있습니다.그래서, 정말 하나도 놓치지 않으셨군요.단, 뛰어난 사용자 기반을 가진 Elastic Search가 하나 있습니다.

스핑크스를 사용한 지 1년이 다 되어 가는데, 정말 대단했어요.MacBook에서는 약 1분 만에 150만 개의 문서를 인덱싱할 수 있으며 서버에서는 훨씬 더 빠르게 인덱싱할 수 있습니다.또, 특정의 위도나 경도내의 장소로의 검색을 제한하기 위해서 스핑크스를 사용하고 있습니다만, 매우 빠릅니다.또한, 결과가 어떻게 순위가 매겨지는지는지는 매우 조정가능합니다.튜토리얼을 한두 개 읽으면 설치와 셋업이 간단합니다.거의 1.0의 지위에 있지만, 릴리스 후보는 매우 견고합니다.

Lucene/Solr은 더 많은 기능을 갖추고 있으며, 오랜 기간 비즈니스를 수행하며 사용자 커뮤니티가 더욱 강화되어 있는 것으로 보입니다.(우리가 아닌) 몇몇이 직면한 것처럼 초기 셋업 문제를 극복할 수 있다면 Lucene/Solr이 최선의 선택이라고 생각합니다.

언급URL : https://stackoverflow.com/questions/1284083/choosing-a-stand-alone-full-text-search-server-sphinx-or-solr

반응형