Как перевести команды ElasticSearch в NEST и сделать их идемпотентными
Я использую ElasticSearch Rollover API и мне нужно настроить индекс, ролловер и псевдоним, как показано ниже:
PUT /foo-000001
{
"aliases": {
"foo-write": {}
},
"settings": {
"index": {
"number_of_shards": "1",
"number_of_replicas": "0"
}
}
}
POST /foo-write/_rollover
{
"conditions": {
"max_size": "10kb"
}
}
POST /_aliases
{
"actions" : [
{ "add" : { "index" : "foo-*", "alias" : "foo" } }
]
}
Я хотел бы выполнить эти команды при запуске приложения, поэтому Elastic Search инициализирован. Во-первых, являются ли эти команды идемпотентными? Если я буду запускать их каждый раз при запуске приложения, это вызовет проблемы? Как я могу сделать их идемпотентными?
Во-вторых, как я могу перевести эти команды для использования клиента ElasticSearch C# NEST для.NET?