US2020302080A1PendingUtilityA1

Database proxy service

Assignee: AMAZON TECH INCPriority: Dec 15, 2015Filed: Jun 10, 2020Published: Sep 24, 2020
Est. expiryDec 15, 2035(~9.4 yrs left)· nominal 20-yr term from priority
Inventors:Robert Strahan
G06F 16/24534G06F 16/248G06F 16/213G06F 21/6227G06F 16/24542G06F 16/2455G06F 16/93G06F 16/211
64
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A hosted database service may include a proxy service in which connections to the hosted database may be routed through a proxy. A first function may be provided to the proxy, by a client of the hosted database service, to analyze requests to execute queries on a database. The analysis may identify an attribute of the query. A second function may be provided to the proxy to rewrite the query to adapt to a property of the database, where the property of the database is associated with the attribute of the query. The rewritten database query is then executed on the database.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A system, comprising:
 at least one processor; and   a memory comprising computer-executable instructions that, in response to execution by the at least one processor, cause the system at least to:
 receive a request indicative of executing a database query on a database; 
 identify an attribute of the database query that is associated with a property of the database; 
 rewrite the database query to adapt to the property of the database; and 
 cause the rewritten database query to be executed by the database. 
   
     
     
         2 . The system of  claim 1 , wherein the property of the database comprises a schema of the database, and wherein the rewritten database query conforms the database query to the schema of the database. 
     
     
         3 . The system of  claim 1 , wherein the attribute of the database query is indicative of a table, and wherein the database query is rewritten as a database query of one or more partitions of the table. 
     
     
         4 . The system of  claim 1 , the memory comprising computer-executable instructions that, in response to execution by the at least one processor, cause the system at least to interpose a proxy connection between a client of the database and the database. 
     
     
         5 . The system of  claim 1 , the memory comprising computer-executable instructions that, in response to execution by the at least one processor, cause the system at least to rewrite the database query to utilize at least one of a pre-sorted, pre-joined, or pre-aggregated table. 
     
     
         6 . The system of  claim 1 , the memory comprising computer-executable instructions that, in response to execution by the at least one processor, cause the system at least to rewrite the database query to adapt grammar of the database query to the database. 
     
     
         7 . A computer-implemented method, comprising:
 receiving a request to execute a database query;   identifying an attribute of the database query that is associated with a property of a database;   rewriting the database query, based at least in part on the attribute, to adapt to the property of the database; and   causing the rewritten database query to be executed by the database.   
     
     
         8 . The computer-implemented method of  claim 7 , further comprising:
 rewriting the database query to conform the database query to a schema of the database.   
     
     
         9 . The computer-implemented method of  claim 7 , further comprising rewriting the database query as a database query of one or more partitions of a table. 
     
     
         10 . The computer-implemented method of  claim 7 , further comprising placing a proxy connection between a client of the database and the database. 
     
     
         11 . The computer-implemented method of  claim 7 , further comprising executing a rewrite function, wherein input to the rewrite function comprises text of the database query. 
     
     
         12 . The computer-implemented method of  claim 7 , further comprising rewriting the database query, based at least in part on the attribute of the database query, Ito utilize at least one of a pre-sorted, pre joined, or pre-aggregated table. 
     
     
         13 . The computer-implemented method of  claim 7 , further comprising rewriting the database query to use a table optimized for write operations. 
     
     
         14 . A non-transitory storage medium comprising computer-readable instructions that, as a result of being performed by a computing device, cause the computing device to at least:
 receive a request to execute a database query on at least one of a plurality of databases;   identify an attribute of the database query associated with a property of a database of the plurality of databases;   rewrite the database query to adapt to the property of the database; and   cause the database to execute the rewritten database query.   
     
     
         15 . The non-transitory storage medium of  claim 14 , comprising further machine-readable instructions that, as a result of being performed by the computing device, cause the computing device to at least:
 determine that the database query should be rewritten to execute on the database, based at least in part on the attribute of the database query and the property of the database.   
     
     
         16 . The non-transitory storage medium of  claim 14 , wherein the database query is rewritten to conform to a syntax of a query language compatible with the database. 
     
     
         17 . The non-transitory storage medium of  claim 14 , wherein the property of the database comprises a schema of the database, and wherein the rewrite of the database query conforms the database query to the schema of the database. 
     
     
         18 . The non-transitory storage medium of  claim 14 , wherein the attribute of the database query is indicative of a table, and wherein the database query is rewritten as a database query of one or more partitions of the table. 
     
     
         19 . The non-transitory storage medium of  claim 14 , comprising further machine-readable instructions that, as a result of being performed by the computing device, cause the computing device to at least interpose a proxy connection between a client of the database and the database. 
     
     
         20 . The non-transitory storage medium of  claim 14 , comprising further machine-readable instructions that, as a result of being performed by the computing device, cause the computing device to at least rewrite the database query by executing a rewrite function, wherein input to the rewrite function comprises text of the database query.

Join the waitlist — get patent alerts

Track US2020302080A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.