Documentation on aliased repopulation

This commit is contained in:
Tim Nagel 2014-07-04 13:06:57 +10:00
parent 90a554f627
commit bf38e59e49
2 changed files with 46 additions and 0 deletions

View file

@ -0,0 +1,45 @@
Aliased Indexes
===============
You can set up FOSElasticaBundle to use aliases for indexes which allows you to run an
index population without resetting the index currently being used by the application.
> *Note*: When you're using an alias, resetting an individual type will still cause a
> reset for that type.
To configure FOSElasticaBundle to use aliases for an index, set the use_alias option to
true.
```yaml
fos_elastica:
indexes:
website:
use_alias: true
```
The process for setting up aliases on an existing application is slightly more complicated
because the bundle is not able to set an alias as the same name as an index. You have some
options on how to handle this:
1) Delete the index from Elasticsearch. This option will make searching unavailable in your
application until a population has completed itself, and an alias is created.
2) Change the index_name parameter for your index to something new, and manually alias the
current index to the new index_name, which will then be replaced when you run a repopulate.
```yaml
fos_elastica:
indexes:
website:
use_alias: true
index_name: website_prod
```
```bash
$ curl -XPOST 'http://localhost:9200/_aliases' -d '
{
"actions" : [
{ "add" : { "index" : "website", "alias" : "website_prod" } }
]
}'
```

View file

@ -12,6 +12,7 @@ Available documentation for FOSElasticaBundle
Cookbook Entries
----------------
* [Aliased Indexes](cookbook/aliased-indexes.md)
* [Custom Repositories](cookbook/custom-repositories.md)
* [HTTP Headers for Elastica](cookbook/elastica-client-http-headers.md)
* Performance - [Logging](cookbook/logging.md)