US 11,853,273 B1
Partial migration of applications across database systems
Roy Edward Stephan, Dunn Loring, VA (US); Benjamin Snively, Orlando, FL (US); John MacDonald Winford, Vancouver (CA); John Calhoun, Herndon, VA (US); and Nathan McGuirt, Austin, TX (US)
Assigned to Amazon Technologies, Inc., Seattle, WA (US)
Filed by Amazon Technologies, Inc., Seattle, WA (US)
Filed on Sep. 27, 2018, as Appl. No. 16/145,093.
Int. Cl. G06F 16/24 (2019.01); G06F 16/21 (2019.01); G06N 20/00 (2019.01); G06F 16/25 (2019.01); G06F 16/2452 (2019.01); G06F 16/2455 (2019.01); H04L 67/56 (2022.01)
CPC G06F 16/214 (2019.01) [G06F 16/2452 (2019.01); G06F 16/2455 (2019.01); G06F 16/252 (2019.01); G06N 20/00 (2019.01); H04L 67/56 (2022.05)] 23 Claims
OG exemplary drawing
 
1. A system, comprising:
one or more computing devices configured to:
collect, via a proxy server of a first database, usage data of an application's use of the first database, including usage levels of individual objects stored in the first database by the application;
generate, based at least in part on the usage data, a migration plan for a partial migration of the application from the first database to a second database of a different type, wherein the migration plan indicates a subset of the objects to migrate from the first database to the second database and a subset of the objects to remain in the first database, wherein the subset of objects to migrate is selected based at least in part on the usage levels of the individual objects by the application;
perform the partial migration according to the migration plan; and
perform, via the proxy server and subsequent to the partial migration:
route database requests from the application directed to the subset of remaining objects to the first database; and
route other database requests from the application directed to the subset of migrated objects to the second database, wherein the other database requests are translated from a format or protocol of the first database to a different format or protocol of the second database according to a translation function generated as part of the partial migration;
wherein the partial migration and the routing of database requests are performed without modifying the application.