2010-05-28 3 views
2

우리는 SiteA와 SiteB를 소유하고 있으며 우리가 완전히 통제 할 수있는 서버와 데이터베이스를 공유합니다. SiteC, siteD 및 siteE는 우리가 소유하고 있지만 다른 웹 호스트에있는 일부 사이트입니다.SphinxSearch 또는 거미 - 어느 것을 선택해야합니까?

목표는 위에서 언급 한 모든 사이트에 대해 통합 검색 기능을 만드는 것입니다. 즉, 누군가 SiteA에서 용어를 검색하면 검색 결과에 SiteB, SiteC, SiteD 및 Site E의 결과가 자동으로 표시됩니다. 검색 결과는 발견 된 웹 사이트 아래에 표시되어야합니다.

이러한 모든 웹 사이트 콘텐츠는 자체 데이터베이스에 저장됩니다.

위의 사이트를 색인화하기 위해 SphinxSearch를 사용하는 경우 색인 생성을 위해 데이터베이스 덤프 나 csv 파일을 다운로드 할 수있는 웹 서비스를 설정하기 위해 완전한 제어 권한이없는 사이트가 필요합니다.

나는 어떻게 sphider가 여기에서 놀게되는지에 관하여 확실히 모른다, 그래서 당신의 의견이 필요하다.

스핑크스 또는 거미?

THanks!

+0

이 두 도구는 서로 어떤 이점이 있습니까? – r2b2

답변

0

다른 웹 사이트의 소유자에게 콘텐츠를 무료로 제공하도록 요청할 수있는 경우 스파이더가 필요하지 않습니다. 그냥 sphinxsearch를 사용하여 내용의 색인을 만드십시오.

콘텐츠를 직접 가져올 수없는 경우 거미가 유일한 선택입니다. 이 문제에 관해 생각해 볼 사항은 거의 없습니다.

0

스핑크스는 전체 텍스트 검색 엔진 솔루션이며 거미는 인터넷에서 콘텐츠를 가져 오는 것입니다. 그들은 서로 대치하지 않습니다. 스파이더를 사용하더라도 스핑크스 또는 lucene/solr과 같은 일부 전체 텍스트 검색 엔진 소프트웨어를 사용해야합니다. 먼저 결정을 내려야합니다. 검색을 위해 스핑크스를 사용하고 싶습니까? 대답이 '예'일 경우 남은 것은 하나뿐입니다. 검색을 위해 내용을 어떻게 색인화 할 수 있습니까?

스핑크스는 데이터베이스 또는 XML을 데이터 소스로 사용하여 지원합니다. 특정 형식의 XML 문서를 준비하고 업데이트하는 작업은 데이터베이스 테이블을 유지하는 것과 비교하여 매우 지루하기 때문에 데이터 소스로 사용되는 데이터베이스가 더 많이 사용됩니다. 그래서 나는 마침내 모든 데이터를 데이터베이스에 저장해야한다고 생각합니다. 설명했듯이 모든 데이터는 모두 데이터베이스에 준비되어 있지만 일부 데이터베이스는 제어 할 수 없습니다. 자신 만의 데이터베이스라면 아무런 문제가 없습니다. 당신의 통제에서, 당신이 스핑크스 검색을 분산 사용하는 것이 좋습니다 데이터베이스의 경우 : http://sphinxsearch.com/docs/2.0.6/distributed.html

의 핵심 아이디어는 파티션 (HP)를 수평으로 검색 노드 전체의 데이터를 검색 한 후 병렬로이를 처리하는 것입니다.

파티션은 수동으로 수행됩니다.

다른 서버에서 스핑크스 프로그램 (인덱서 및 검색)의 여러 인스턴스를 설정해야합니다.

인스턴스가 데이터의 다른 부분을 색인화 (및 검색)하도록하십시오.

일부 검색된 인스턴스에 특수 분산 색인을 구성하십시오.

이 색인을 쿼리하십시오.

이 인덱스는 다른 로컬 및 원격 인덱스 에 대한 참조 만 포함하므로 직접 다시 인덱싱 할 수 없으므로 참조하는 인덱스를 다시 인덱싱해야합니다.

관련 문제