Как создать индекс в elasticsearch, чтобы при ежедневной загрузке данных он создавал новый псевдоним индекса с датой и позволял мне их удалять - PullRequest
0 голосов
/ 19 июня 2020
PUT myindex-000001
 {
  "aliases": {
  "myindex-alias":{
  "is_write_index": true 
   }
 }
}


 PUT _ilm/policy/my_policy
       {
         "policy": {
         "phases": {
         "hot": {
         "actions": {
          "rollover": {
           "max_size": "25GB" 
      }
    }
  },
  "delete": {
    "min_age": "180d",
    "actions": {
      "delete": {} 
    }
   }
  }
 }
}


PUT _template/my_template
    {
      "index_patterns": ["myindex-*"], 
      "settings": {
       "number_of_shards": 1,
       "number_of_replicas": 1,
        "index.lifecycle.name": "my_policy", 
        "index.lifecycle.rollover_alias": "myindex-alias" 
      }
    }

   POST myindex-000001
    {
     "settings": {
      "number_of_shards": 1,
        "number_of_replicas": 1,
           "index.lifecycle.name": "my_policy"
            }
          }

Я пытался загрузить данные в индекс elasticsearch myindex-alias из java.

Мне нужно иметь отдельный псевдоним индекса с каждой новой датой загрузки, например -

         myindex-000001
         myindex-000002
         myindex-000003 and so on.. 

Все связано с одной политикой, так что я могу удалить любой псевдоним, если захочу.

1 Ответ

0 голосов
/ 19 июня 2020

Он, политика очень похожа, просто добавьте "max_age":"1d", к вашей полезной нагрузке. Подробнее здесь

...