[role="xpack"]
[[data-tier-shard-filtering]]
=== Index-level data tier allocation filtering

You can use the index-level `_tier_preference` setting to control
which <<data-tiers, data tier>> an index is allocated to.

This setting corresponds to the data node roles:

* <<data-content-node, data_content>>
* <<data-hot-node, data_hot>>
* <<data-warm-node, data_warm>>
* <<data-cold-node, data_cold>>
* <<data-frozen-node, data_frozen>>

NOTE: The <<data-node, data>> role is not a valid data tier and cannot be used
with the `_tier_preference` setting. The frozen tier stores <<partially-mounted,partially
mounted indices>> exclusively.

[discrete]
[[data-tier-allocation-filters]]
==== Data tier allocation settings

[[tier-preference-allocation-filter]]
`index.routing.allocation.include._tier_preference`::

    Assign the index to the first tier in the list that has an available node.
    This prevents indices from remaining unallocated if no nodes are available
    in the preferred tier.
    For example, if you set `index.routing.allocation.include._tier_preference`
    to `data_warm,data_hot`, the index is allocated to the warm tier if there
    are nodes with the `data_warm` role. If there are no nodes in the warm tier,
    but there are nodes with the `data_hot` role, the index is allocated to
    the hot tier.
    Used in conjuction with <<data-tier-allocation,data tiers>>.
