Online merging of fragmented computing resources across storage servers by tenant in cloud environments
US-2024248883-A1 · Jul 25, 2024 · US
US10635651B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10635651-B2 |
| Application number | US-201715808977-A |
| Country | US |
| Kind code | B2 |
| Filing date | Nov 10, 2017 |
| Priority date | Dec 8, 2014 |
| Publication date | Apr 28, 2020 |
| Grant date | Apr 28, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Data portions of a database can be grouped and ranked in order of priory for reassignment from one or more maps to another one or more maps. It should be noted that a first map can assign the data portions to a first configuration of processors for processing the data portions, and a second map assigns the data portions to a second configuration of processors, different than the first configuration, for processing the data portions in a database system and/or environment. The data portions are reassigned in groups during an available time (window) for reassignment by taking the first one of the groups can be reassigned (“moved”) in the available, then the second one in the available reaming time, and so on, until no group of data portions can be moved in the remaining time or all of them have been moved.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method of reassigning data portions of a database from one or more maps to one or more other maps for processing by multiple processing units of a database system configured to at least process data stored in the database, wherein the computer-implemented method is implemented by one or more physical processors configured to at least process data of the database stored in a non-transitory computer storage medium, and wherein the computer-implemented method comprises: obtaining multiple groups of data portions assigned to one or more maps for reassignment to the other one or more maps, wherein at least one of the one or more maps assign the data portions to a first configuration of processors for processing the data portions, and at least one of the other one or more maps assign the data portions to a second configuration of processors, different than the first configuration, for processing the data portions, and wherein the multiple groups of data portions are ranked in a priority order based on a priority of the reassignment from the one or more maps for the reassignment to the other one or more maps; obtaining an available reassignment time as a time available to make the reassignment from the one or more maps for the reassignment to the other one or more maps; determining a reassignment time for each one of the multiple groups of data portions as a reassignment time needed to reassign a particular group of data portions from the one or more maps for the reassignment to the other one or more maps; reassigning a first one of the multiple groups of data in the priority order ranked based on the priority of the reassignment with a reassignment time that is equal of less than the available reassignment time. 2. The computer-implemented method of claim 1 , wherein the computer-implemented method further comprises: determining a time taken for the reassignment of the first one of the multiple groups of data; determining a remaining available reassignment time by subtracting the time taken for the reassignment of the first one of the multiple groups of data from the available reassignment time, reassigning a second one of the multiple groups of data in the priority order with a reassignment time that is equal of less than the remaining available reassignment time. 3. The computer-implemented method of claim 1 , wherein the reassignment time is determined for each one of the multiple groups of data at least partly based on the respective size of their data. 4. The computer-implemented method of claim 1 , wherein the reassignment time is determined for at least one of the multiple groups of data at least partly based on a dynamic adjustment by at least comparing an estimate of time for the reassignment with an actual time taken for the reassignment. 5. The computer-implemented method of claim 1 , wherein the computer-implemented method further comprises: storing the actual time taken for reassignment of at least one of the multiple groups of data; and using the stored actual time to estimate reassignment time of at least another one of the multiple groups of data. 6. The computer-implemented method of claim 1 , wherein the reassignment time is determined for at least one of the multiple groups of data at least partly based an estimate of time for the reassignment determined based on an actual time taken for the reassignment of a group of data similar to the at least one of the multiple groups of data. 7. The computer-implemented method of claim 1 , wherein at least one of the multiple groups of data includes one or more database tables of the database. 8. A computer comprising one or more physical processors, wherein the one or more physical processors are configured to: reassign data portions of a database from one or more maps to one or more other maps for processing by multiple processing units of a database system configured to at least process data stored in the database; obtain multiple groups of data portions assigned to one or more maps for reassignment to the other one or more maps, wherein at least one of the one or more maps assign the data portions to a first configuration of processors for processing the data portions, and at least one of the other one or more maps assign the data portions to a second configuration of processors, different than the first configuration, for processing the data portions, and wherein the multiple groups of data portions are ranked in a priority order based on a priority of the reassignment from the one or more maps for the reassignment to the other one or more maps; obtain an available reassignment time as a time available to make the reassignment from the one or more maps for the reassignment to the other one or more maps; determine a reassignment time for each one of the multiple groups of data portions as a reassignment time needed to reassign a particular group of data portions from the one or more maps for the reassignment to the other one or more maps; and reassign a first one of the multiple groups of data in the priority order ranked based on the priority of the reassignment with a reassignment time that is equal of less than the available reassignment time. 9. The computer of claim 8 , wherein the one or more physical processors are further configured to: determine a time taken for the reassignment of the first one of the multiple groups of data; determine a remaining available reassignment time by subtracting the time taken for the reassignment of the first one of the multiple groups of data from the available reassignment time, reassign a second one of the multiple groups of data in the priority order with a reassignment time that is equal of less than the remaining available reassignment time. 10. The computer of claim 8 , wherein the reassignment time is determined for each one of the multiple groups of data at least partly based on the respective size of their data. 11. The computer of claim 8 , wherein the reassignment time is determined for at least one of the multiple groups of data at least partly based on a dynamic adjustment by at least comparing an estimate of time for the reassignment with an actual time taken for the reassignment. 12. The computer of claim 8 , wherein the one or more physical processors are further configured to: store the actual time taken for reassignment of at least one of the multiple groups of data; and use the stored actual time to estimate reassignment time of at least another one of the multiple groups of data. 13. The computer of claim 8 , wherein the reassignment time is determined for at least one of the multiple groups of data at least partly based an estimate of time for the reassignment determined based on an actual time taken for the reassignment of a group of data similar to the at least one of the multiple groups of data. 14. The computer of claim 8 , wherein at least one of the multiple groups of data includes one or more database tables of the database. 15. A non-transitory computer readable medium storing at least computer executable code that reassigns data portions of a database from one or more maps to one or more other maps for processing by multiple processing units of a database system configured to at least process data stored in the database, wherein the executable code when executed: reassigns data portions of a database from one or more maps to one or more other maps for processing by multiple processing units of a database system configured to at least process data stored in the database; obtains multiple groups of data portions assigned to one or mor
Plan optimisation · CPC title
Query processing with adaptation to specific hardware, e.g. adapted for using GPUs or SSDs · CPC title
of parallel queries · CPC title
Tablespace storage structures; Management thereof · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.