What are the 3 different ways of providing data access?