1. A computer-implemented method for a plurality of tenants to execute application software hosted by a server, the method comprising: receiving a data request identifying a particular data structure associated with the application software and to be used by a first tenant of the plurality of tenants; analyzing attributes of the particular data structure; determining, based on the analysis, whether the particular data structure is a tenant-specific data structure specific to the first tenant or a shared data structure shared by the plurality of tenants; retrieving, when the particular data structure is a shared data structure, the particular data structure from a first storage location accessible by the plurality of tenants, the first storage location storing a shared data structure having a shared designation that identifies the shared data structured as being shared by the plurality of tenants; retrieving, when the particular data structure is a tenant-specific data structure, the particular data structure from a second storage location accessible by the first tenant, the second storage location storing a tenant-specific data structure having a tenant-specific designation that identifies the tenant-specific data structure as being specific to the first tenant; and storing data structure identifiers having data that associates a shared data structure with a pointer to data of the shared data structure.