@ruboss

Как правильно сделать Multy get выборку из Elasticsearch php?

Всем привет!
Осваиваю Elasticsearch на php клиенте.
Как можно найти множество документов в ES, по id, еквивалентно "WHERE id IN (1,2,3,4,9)" в SQL?
Для моно гета я делаю так
$params = [
		'index' => 'my_index',
		'type' => 'my_type',
		'id' => 'my_id'
	];

	$response = $client->get($params);

как вытащить несколько записей?
Пытался так, но это не работает
$params = [[
		'index' => 'my_index',
		'type' => 'my_type',
		'id' => 'my_id'
	],
	[
		'index' => 'my_index',
		'type' => 'my_type',
		'id' => 'my_id2'
	]];

	$response = $client->mget($params);

и так
$params = [
		'index' => 'my_index',
		'type' => 'my_type',
		'id' => array('my_id','my_id2')
	];

	$response = $client->mget($params);

В API по PHP есть только https://www.elastic.co/guide/en/elasticsearch/clie...
Вот это вроде оно, только в CURL запросе https://www.elastic.co/guide/en/elasticsearch/refe...

Кто работал с ES, help please!)
  • Вопрос задан
  • 346 просмотров
Решения вопроса 1
onqu
@onqu
weasy
https://github.com/elastic/elasticsearch-php/blob/...

$params = [
    'index' => 'my_index',
    'type' => 'my_type',
    'body' => [
        'ids' => [1, 2, ...]
    ]
];
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы