2017-02-01 1 views
1

У нас есть социальное приложение, и мы начали использовать сервис AWS ElasticcSearch в производстве, но у нас возникла проблема с ES, ES-версия - 2.3.AWS Elastic Search размер падения резко

Конфигурация кластера: узел

  • данных: типы узлов 2
  • данных: m3.medium.elasticsearch рассчитывать
  • Выделенный мастер-экземпляр: 3
  • Выделенный тип мастер-экземпляр: t2. small.elasticsearch.
  • Емкость каждого узла данных: 50 ГБ.

Проблема заключается в том, что менее чем за тридцать минут один из размеров свободного места на узле от 9 ГБ до 0 ГБ, мы не знали, как это произошло.

У нас есть 4 типа документов, в которых один из них является динамическим типом, позволяет называть его типом группы, потому что каждый документ группы может иметь N полей, представляющих друзей группы. Что-то вроде

{ 
    13: [1,2,3,4], 
    5: [1,3,4], 
    user_ids: [1,2,3,4,6,7], 
    id: 1 
} 

Это означает, что пользователи с ID 13 и 5 являются друзьями с некоторыми из пользователей группы с ID 1.

Так что этот документ может растет в соответствии с количеством пользователей.

Если у кого-то была или была такая же проблема, или просто полностью понять архитектуру Elastic Search, это было бы удивительно его помощью.

Индексы Информация:

curl -XGET 'http://host/_cat/indices?v 
health status index    pri rep docs.count docs.deleted store.size pri.store.size 
green open .kibana-4   1 1   5   0  1.9mb  1017.3kb 
green open X     1 1 2259502  29575  57.5gb   28.7gb 
green open Y     1 1  113156   0  21.7mb   10.8mb 


curl -XGET 'http://host/_cat/nodes?v&h=host,id,ip,rp,hp,d,cpu,v,r,m,n 
host  id  ip rp hp d cpu v r m n  
x.x.x.x tIgm x.x.x.x 95 5 5.7gb 0 2.3.2 - m Shatter 
x.x.x.x puUF x.x.x.x 95 6 5.7gb 0 2.3.2 - m Justice 
x.x.x.x 1qZi x.x.x.x 97 54 17.7gb 7 2.3.2 d - Allatou 
x.x.x.x lcty x.x.x.x 97 60 17.7gb 8 2.3.2 d - Amergin 
x.x.x.x Nq1H x.x.x.x 5 15 5.7gb 0 2.3.2 - * Arkus 

Спасибо большое!

+0

Итак, ваши два узла данных заполнены в основном, не так ли? Также вы должны предоставить больше оперативной памяти ОС, поскольку, похоже, вы назначаете почти все ОЗУ для ES. – Val

+0

Да, они оба полны. Единственное, что я могу настроить в AWS, - это изменить тип используемого экземпляра. – MatayoshiMariano

+0

Ну, вам, вероятно, нужно выяснить, что заполняет ваши узлы ... Какие клиентские процессы отправляют данные в ваш кластер? – Val

ответ

0

Мне удалось решить проблему.

Моя проблема известна как Mapping Explosion

Имея переменные ключи в отображении, как я имел в виду документа Group, приведет к по индексу evergrowing.