Nomad 0.9 introduces new scheduling features that allow application owners and operators to have more fine-grained control over where their workloads are placed in the cluster, providing additional flexibility in expressing placement preferences and increasing failure tolerance of workloads. The new `spread` stanza allows operators to distribute their workloads in a customized way based on attributes and/or client metadata, while the `affinity` stanza enables operators to express placement preferences for their jobs on particular types of nodes, with scoring factors taking into account matching affinities and other constraints. These features provide more fine-grained control over workload placement and increase failure tolerance, enabling use cases such as spreading instances across multiple data centers or physical racks, targeting specific classes of nodes for specialized workloads, and preferring a specific class of nodes for workloads with specialized requirements.