2010-06-07 4 views
2

많은 외래 키를 사용하는 innoDB 테이블이 있지만 그 중 일부 기본 정보를 찾고 싶습니다.PHP에 대한 검색 옵션 탐색

몇 가지 조사를했지만 여전히 손실되었습니다. 나의 호스트가 스핑크스 가 이미 설치되어있는 경우

  1. 는 어떻게 알 수 있습니까? 테이블 저장소 메소드 (즉, innodb, myisam)에 대한 옵션으로 을 볼 수 없습니다.

  2. Zend_Search_Lucene, 응답 AJAX 기능에 대해 수백만 개의 레코드가 충분합니까?

  3. 미러 내 myisam이있는 innoDB? 모든 innodb 트랜잭션을 myisam에 쓰기 으로 끝내고 1 : 1 조회를 사용 하시겠습니까? 어떻게하면 자동으로이 작업을 수행 할 수 있습니까? 이렇게하면 MyISAM이 ACID를 준수하고 에서 무료 (er)가 손상되지 않습니다.
  4. PostgreSQL의 전체 텍스트 쿼리도 나 태권도 연맹에 SQL처럼 보이지 않는, 내가 멍청한 놈 옵션

  5. 을 필요 새로운 SQL 구문을 배울 시간이 없어 ???????? ???????????

이는 아이디어

정말 감사 깔끔하게 장착 VPS에 높은 볼륨 사이트입니다.

+1

구체적으로 작성하십시오. 전문 검색을 원하십니까? 그렇다면 하나의 열에? 여러 열? 연산자, 근접 검색 등을 지원해야합니까? 타사 도구를 설치하기에 충분한 액세스 권한이 있습니까? –

+0

"제목"및 "본문"필드에 대한 전체 텍스트 검색을 원합니다. 관련성에 따라 정렬하고 가능한 경우 점수를 포함하여 업계 표준 옵션이 무엇이든간에 원합니다. 이 DB에는 많은 동시 트랜잭션이 있으므로 MyISAM 손상에 지쳐 있습니다. 예. 타사 도구를 설치할 수 있습니다. – y2k

+0

그렇다면 스핑크스는 그게 전부입니다. 나는 @ vartec의 대답을 upvoting 해요. –

답변

2

스핑크스은 매우 좋습니다. 확장 성이 매우 뛰어남. built-in clustering and sharding.

+0

약간의 학습 과정을 거친 후 Sphinx는 절대로 실망감을 느끼게하거나 좌절시키지 않았습니다. –

+0

필자는 문서를 읽고 혼란 스럽다. 플러그인이나 새로운 저장소 테이블 유형 일 뿐이다. 설치가 끝나면 innoDB 테이블에서 MyISAM 구문 전체 텍스트 검색을 사용할 수 있습니까? 또한, phpMyAdmin, cpanel, 또는 linux shell과 같이 이미 설치되어 있다면/테스트 할 수 있습니까? – y2k

+0

@Joshua, 아니오, Sphinx는 기존 테이블을 인덱싱합니다 (InnoDB, MyISAM은 중요하지 않습니다. 실제로 SQL을 제공합니다). 그런 다음 검색 엔진에 대한 검색 쿼리를 수행합니다. DB에서 객체의 ID를 반환합니다. 이것은 MySQL의 플러그인보다 진보 된/복잡한 방법입니다. – vartec

2

귀하의 질문은 귀하가 실제로 여기에서 달성하고자하는 것에 대해 매우 모호 합니다만, 나는 당신이 Zend_Search_Lucene에서 멀리 떨어져 있다는 말을들을 수 있습니다. 내 경험 (Zend Certified Engineers를 비롯한 많은 사람들)에서 ZSL의 대용량 레코드 세트 성능은 좋지 않습니다. Apache Lucene과 같은 도구를 사용하십시오.