A method comprising: receiving (310, 410) a data query from a tenant assigned to a first virtual data warehouse within a multi-tenancy data warehouse, wherein the multitenancy data warehouse at least includes the first virtual data warehouse and a second virtual data warehouse, wherein the first virtual data warehouse is a database that is part of a first physical data centre; generating a set of information, based on the data query, indicating data the tenant is authorized to access within the multi-tenancy data warehouse; receiving a declaration from the tenant to utilize a subset of the data which the tenant can access as indicated by the set of information; determining, by a replica management module, whether the subset of the data is in a second physical data centre that is different to the first physical data centre; in response to determining the subset of the data is in a second physical data centre from the first physical data centre, caching, by a transfer control module, the subset of the data from the second physical data center in the first physical data center; importing, into the first virtual data warehouse, data that is outside of the first virtual data warehouse using a link identifying a set of parameters for retrieving the data, the set of parameters comprising a time range; creating, by a retention management module, a retention virtual warehouse associated with a retention policy, creating, by a linking module, links to data that needs to be maintained under the retention policy; monitoring, by a garbage collection module, the use of the link; and updating, by the garbage collection module, the time range to a smaller time range based on the current use of the retrieved data. receiving (310, 410) a data query from a tenant assigned to a first virtual data warehouse within a multi-tenancy data warehouse, wherein the multitenancy data warehouse at least includes the first virtual data warehouse and a second virtual data warehouse, wherein the first virtual data warehouse is a database that is part of a first physical data centre; generating a set of information, based on the data query, indicating data the tenant is authorized to access within the multi-tenancy data warehouse; receiving a declaration from the tenant to utilize a subset of the data which the tenant can access as indicated by the set of information; determining, by a replica management module, whether the subset of the data is in a second physical data centre that is different to the first physical data centre; in response to determining the subset of the data is in a second physical data centre from the first physical data centre, caching, by a transfer control module, the subset of the data from the second physical data center in the first physical data center; importing, into the first virtual data warehouse, data that is outside of the first virtual data warehouse using a link identifying a set of parameters for retrieving the data, the set of parameters comprising a time range; creating, by a retention management module, a retention virtual warehouse associated with a retention policy, creating, by a linking module, links to data that needs to be maintained under the retention policy; monitoring, by a garbage collection module, the use of the link; and updating, by the garbage collection module, the time range to a smaller time range based on the current use of the retrieved data.