Как я могу найти, какой Осколок более 30 Гб в Elasticsearch 6.3 - PullRequest
0 голосов
/ 15 января 2019

Хотелось бы узнать, есть ли запрос DSL, который я могу запустить, чтобы получить список тех шардов, которые имеют определенный размер?

_cat / shards перечисляет их все, но у нас есть тысячи осколков, и даже их экспорт в Excel и попытка отфильтровать по значению оказывается трудным.

Можем ли мы указать запрос для извлечения осколков размером более 30 Гб?

1 Ответ

0 голосов
/ 15 января 2019

Вы можете отобразить все осколки и отсортировать их по размеру. Согласно документации :

Каждая из команд принимает параметр строки запроса s, который сортирует таблицу по столбцам, указанным в качестве значения параметра. Столбцы указываются либо по имени, либо по псевдониму и представляются в виде строки, разделенной запятыми. По умолчанию сортировка выполняется по возрастанию. Добавление: деск в столбец будет инвертировать порядок для этого столбца. : asc также принимается, но демонстрирует то же поведение, что и порядок сортировки по умолчанию.

Таким образом, вы можете перечислить все осколки по размеру в порядке убывания:

GET _cat/shards?v&s=store:desc

v - для подробной команды . s предназначен для строки запроса сортировки . store - это имя столбца, содержащего размеры осколков, а :desc - для сортировки по убыванию.

Сначала появятся все осколки размером более 30 Гб.

...