US 12,423,712 B2
Method and system for data regulations-aware cloud storage and processing service allocation
Shubhro Shovan Roy, Kolkata (IN); Pankaj Kumar Sahu, New Delhi (IN); Mangesh Sharad Gharote, Pune (IN); Sachin Premsukh Lodha, Pune (IN); and Sutapa Mondal, Pune (IN)
Assigned to Tata Consultancy Services Limited, Mumbai (IN)
Filed by Tata Consultancy Services Limited, Mumbai (IN)
Filed on Oct. 26, 2023, as Appl. No. 18/384,004.
Claims priority of application No. 202221062016 (IN), filed on Oct. 31, 2022.
Prior Publication US 2024/0161125 A1, May 16, 2024
Int. Cl. G06Q 30/018 (2023.01); G06F 16/21 (2019.01)
CPC G06Q 30/018 (2013.01) [G06F 16/214 (2019.01)] 14 Claims
OG exemplary drawing
 
1. A processor implemented method, the method comprising:
receiving, by one or more hardware processors, an input comprising a resource requirement data pertaining to a plurality of users, a geolocation of each of the plurality of users, a plurality of data storage centers (SCs) and a plurality of processing centers (PCs), wherein the resource requirement data of the users includes data storage and a processing power needed by a User Center (UC) associated with the user;
obtaining, by the one or more hardware processors, a plurality of data regulations pertaining to each of the plurality of users based on a corresponding geolocation from a data regulation repository, wherein the plurality of data regulations varies according to a type of data including health, finance, personal handled and differs for data storage and processing activities;
generating, by the one or more hardware processors, a first feasible allocation for each of the plurality of users based on the input and the plurality of data regulations using a minimal transfer cost based optimization technique, wherein the first feasible allocation comprises an SC and a corresponding PC, wherein generating the first feasible allocation for each of the plurality of users based on the input and the plurality of data regulations using the minimal transfer cost based optimization technique comprises:
identifying a first plurality of feasible SCs and a corresponding plurality of feasible PCs for each of the plurality of users based on a mapping with the plurality of data regulations pertaining to each of the plurality of users;
allocating the SC, from among the first plurality of feasible SCs, with a transfer cost between a User Center (UC) and SC less than a first predefined threshold, to each of the plurality of users only if (i) a corresponding plurality of data regulations are satisfied (ii) data size of a corresponding UC is less than a predefined storage capacity of the SC and (iii) data transferred from SC to PC is less than a predefined storage threshold, wherein the predefined storage threshold is a minimum of storage capacity of the plurality of PCs, wherein a total storage cost is computed for each allocated SC; and
allocating the corresponding PC from among the first plurality of feasible PCs to each allocated SC with a transfer cost between the SC and the corresponding PC less than a second predefined threshold only if (i) the corresponding plurality of data regulations are satisfied and (ii) the data processing capacity of the corresponding PC is less than a predefined processing capacity;
computing, by the one or more hardware processors, a first transfer cost for each of the plurality of users based on the first feasible allocation, wherein the first transfer cost is a sum of cost to transfer data from UC to SCs and from SCs to PCs based on the first feasible allocation;
obtaining, by the one or more hardware processors, a second feasible allocation for each of the plurality of users based on the storage cost using a storage cost optimization technique, wherein the storage cost optimization technique iteratively checks set of conditions
uj≤dj′t(1−pjt′)+M2·Pjt′, ∀j∈S & t∈T, ensures that when a (t+1)th tier is not selected, the amount of data stored at SC (i) must not go beyond the tth tier data limit, wherein when (t+1)th tier is selected, the amount of data stored at each SC (i) is a positive integer value, therefore a parameter M2 is introduced and value of the parameter M2 is confined by Σi∈UDi,
whether (i) the storage cost of each allocated SC is less than the storage cost identified in the initial feasible solution, (ii) data regulation criteria is satisfied (iii) storage capacity of each allocated SC is less than the predefined storage capacity and (iv) processing capacity of the PC assigned to the SC is less than the predefined processing capacity wherein the transfer cost, amount of data stored in SCs and PCs are updated in each iteration;
computing, by the one or more hardware processors, a second transfer cost for each of the plurality of users based on the data and the second feasible solution, wherein the second transfer cost is a sum of cost to transfer data from UC to SCs and from SCs to PCs based on the second feasible allocation;
computing, by the one or more hardware processors, a difference in transfer cost based on a comparison between the first transfer cost and the second transfer cost;
generating, by the one or more hardware processors, a storage cost reduction matrix based on the first feasible allocation, the second feasible allocation and the difference in transfer cost;
generating, by the one or more hardware processors, a plurality of migration pairs for each of the plurality of users based on the storage cost reduction matrix, wherein each of the plurality of migration pairs comprises a current SC where a corresponding UC resides and a new SC where the corresponding UC is to be migrated;
generating, by the one or more hardware processors, a ranked list by sorting each of the plurality of migration pairs based on decreasing storage cost and the difference in transfer cost using Multi-Criteria Decision Making (MCDM) ranking technique; and
generating, by the one or more hardware processors, a tier pricing based near-optimal solution for each of the plurality of users by applying a plurality of selection criterion on the ranked list.