How Google Spanner Powers Trillions of Rows with 5 Nines Availability