2009-12-14 3 views
0

스핑크스에서 MVA (다중 값) 속성을 생성하기 위해 예상되는 데이터 형식을 이해하는 사람이 있습니까?스핑크스의 MVA 속성

나는 블럭으로서 GROUP_CONCAT과 조합 된 쉼표로 구분 된 정수의 행을 반환하는 MySQL 함수를 가지고있다. GROUP_CONCAT과 함께 JOIN 문의 결과를 blob (ThinkingSphinx에서 생성 한 것)과 대조하는 두 가지 추가 MVA 속성이 있습니다. 이것들은 모두 내의 sphinx.conf에 있습니다.

나는 콘솔에서 설정 작은 결과에 SQL을 실행하려고했습니다, 그리고 그것을 작동합니다

2432,35345,342347,8975,453645 

: 모든 MVA 열 에 대한 결과는 다음과 같은 데이터를 포함하는 BLOB입니다 등등. JOIN/GROUP_CONCAT 조합 색인을 사용하여 올바르게 생성 된 두 MVA 특성 그러나 MySQL 함수로 생성 된 MVA 특성은 인덱싱이 자동으로 실패하게 만듭니다 (겉으로보기에는 거의 또는 전혀 데이터가 인덱싱되지 않음). 이것은 콘솔에서 쿼리가 절대적으로 잘 작동하고 있음에도 불구하고 ...

데이터 형식은 동일하지만 Sphinx가 열 중 하나를 거부하고 있습니다. 아무도 내가 디버그하는데 도움이 될 MVA 속성을 정의하는 데있어 어떤 어려움을 알고 있습니까? ?

답변

0

나는 결국이 문제를 해결했다. 뭔가 관련이 없어 보이는 때문에 발생했습니다. 영향을받는 것처럼 보인 'sql_attr_str2ordinal'속성 (또는 영향) SQL 쿼리/인덱싱은 완전히 이해하지 못합니다. http://www.sphx.org/forum/view.html?id=2867

다행히 내 경우에는 내가 완전히 제거 할 수 있었고, 색인 지금 작동하는 것 같다 :

을 참조하십시오.

1

저는 생각 스핑크스 (여기 PHP 샵)를 사용한 적이 없지만 결과를 group_concat'ing한다고 생각하지 않습니다. 내 sphinx.conf 파일 중 하나의 작업 예제 :

sql_attr_multi = uint categories from query; SELECT entry_id, cat_id FROM exp_category_posts 
+0

감사합니다. 그러나 GROUP_CONCAT 메서드는 'field'메서드를 사용하여 MVA 특성을 인덱싱 할 때이 작업을 수행하는 올바른 방법 인 것 같습니다. 귀하의 예는 귀하가 올바른 '검색어'에서 색인을 생성합니다 : GROUP_CONCAT이 올바르지 않습니다. –

관련 문제