를 업그레이드 한 후 작동하지 않는 사용되는 다음과 같은 종류의 스크립트 0.2에서 작동하지만 지금은 0.9에 실패탄성 검색 정렬 스크립트가
{
"_script": {
"script": "org.elasticsearch.common.Digest.md5Hex(doc['myId'].value + 12345)",
"type": "string",
"order": "asc"
}
}
내가 받고 오전 오류는 다음과 같습니다
PropertyAccessException[[Error: unresolvable property or identifier: org]
나는 보았다 이 작업을 수행하는 사용자 지정 점수 쿼리를 만드는 것이므로 약간의 추가 정보가 필요합니다. 나는 이미 맞춤 점수 쿼리를 사용하고 있으며,이 정렬은 점수가 일치 할 때 보조 정렬이며, 정기적으로 발생할 수 있습니다. 위의 예에서 상수는 검색을 수행하는 사람을 기반으로하므로 검색하는 사람마다 무작위로 정렬되지만 일관된 정렬을 얻고 항상 모든 사람에게 동일한 결과를 표시하지는 않습니다.
동일한 정렬 기능을 유지하면서 문제가 발생하는 이유와 해결 방법에 대한 정보를 찾을 수 없습니다. 어떤 도움이나 새로운 방향으로 나를 가리켜 주시면 크게 감사하겠습니다.
사용자 정의 Java 스크립트를 작성하고 등록한 다음 ("lang": "native"매개 변수를 제공하는) 사용자의 조회에서이를 참조해야하는 것처럼 보입니다. 필자는 결코 Java 전문가는 아니지만 그러한 스크립트를 만드는 방법에 대한 훌륭한 자습서가 있습니다. https://github.com/imotov/elasticsearch-native-script-example 결국 임의의 정렬 스크립트를 확인하십시오. 당신이 필요로하는 것입니다. –
비 MVEL 스크립트가 플러그인으로 구현되어야한다고 생각합니다. 인라인 스크립트는 MVEL이 아닌 스크립트에는 허용되지 않습니다. 누구나 확인할 수 있습니까? –
은 또한 JS 시도 - 당신은 여전히 JS 지원을 활성화 할 수있는 플러그인을 설치해야하지만 인라인 표현식을 수행 할 수 있습니다. "종류": { "_script": { "스크립트": "문서 [ '날'] 값을 * 계수 + 'anyvaluehere' " "타입 ":"문자열 " "의 PARAMS "{ "인자 ": 1.1 } "주문 ":"ASC " "LANG ":"JS " } } –