[role="xpack"] [[data-tier-shard-filtering]] === Index-level data tier allocation filtering You can use index-level allocation settings to control which <> the index is allocated to. The data tier allocator is a <> that uses two built-in node attributes: `_tier` and `_tier_preference`. These tier attributes are set using the data node roles: * <> * <> * <> * <> NOTE: The <> role is not a valid data tier and cannot be used for data tier filtering. [discrete] [[data-tier-allocation-filters]] ==== Data tier allocation settings `index.routing.allocation.include._tier`:: Assign the index to a node whose `node.roles` configuration has at least one of to the comma-separated values. `index.routing.allocation.require._tier`:: Assign the index to a node whose `node.roles` configuration has _all_ of the comma-separated values. `index.routing.allocation.exclude._tier`:: Assign the index to a node whose `node.roles` configuration has _none_ of the comma-separated values. [[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.