1. A method of storing and accessing multi-tenancy data, the method comprising the steps of: creating a plurality of table sets in one or more databases, wherein each table set is used to store data of a group of tenants selected from a plurality of tenants; accessing data of a tenant in a table set in response to receiving a data access request from the tenant; recording relationships between the tenants and the table sets in a multi-tenancy metadata repository, wherein the step of accessing the data of the tenant comprises the steps of finding the table set by querying the metadata repository and accessing the data of the tenant in the table set based on the result received from the query of the metadata repository; and determining a maximum number of table sets and a maximum table sharing rate of each database, wherein the step of creating a plurality of table sets is performed according to the determined maximum number of table sets and maximum table sharing rate of each database.