Задать вопрос
@Apostol63

Как проверить анализатор в elasticsearch?

Всем доброго времени суток!
Подскажите пожалуйста, как проверить анализатор?
Вот код индекса:
$params = [
			'index' => 'mytestindex',
			'body' => [
				'settings' => [
					'analysis' => [
						'index_analyzer' => [
							'my_index_analyzer' => [
				        		'type' => 'custom',
				        		"tokenizer" => "standard",
				        		'filter' => [
				        			"lowercase",
			            			"mynGram2"
				        		],
							],
						],
			        	'search_analyzer' => [
			        		'my_search_analyzer' => [
					          	"type" => "custom",
		          				"tokenizer" => "standard",
		          				'filter' => [
						            "standard",
						            "lowercase",
						            "mynGram2"
		          				],
			        		],
			        	],
			        	'filter' => [
			        		'mynGram2' => [
					          	"type" => "nGram",
					          	"min_gram" => 2,
					          	"max_gram" => 20,
			        		],
			        	],
					],
					"max_ngram_diff" => "50",
				],
			],
		];
		$x = $this->obj->indices()->create($params);


Вот код попытки проверить:
$params = [
			'index' => 'mytestindex',
			'body' => [
				'analyzer' => 'my_search_analyzer',
				'text' => 'текст проверить чтобы'
			],
		];

		$x = $this->obj->indices()->analyze($params);


Использую Elasticsearch\Client

Так вот. Используя код выше, получаю ошибку failed to find analyzer

Я почитал в гугле, что такое бывает, если не задается index напрямую, а просто что-то вроде:
$params = [
    'analyzer' => 'my_search_analyzer',
    'text' => 'текст проверить чтобы'
];
$x = $this->obj->indices()->analyze($params)

Но я то задаю индекс
  • Вопрос задан
  • 237 просмотров
Подписаться 2 Простой Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы