AlwaysOn Availability Groups is a database mirroring technique for Microsoft SQL Server that allows administrators to pull together a group of user databases that can fail over together.
Traditional database mirroring in SQL Server was only for a single database. AlwaysOn Availability Groups are designed to be used for multiple databases, which allows for improved cross-database referencing during failover. Another benefit is that generating multiple replicas of an availability group allows an administrator to make one of them read-only, for example if they want a group of databases for reporting purposes only.
An AlwaysOn Availability Group supports a set of primary databases as well as multiple sets of secondary databases (up to four in SQL Server 2012, and eight in SQL Server 2014). An administrator can configure an availability group to replicate synchronously for high availability or asynchronously for disaster recovery (DR).