Parsing and compiling data system queries
First Claim
Patent Images
1. A system for parsing, generating code and compiling computer data system query language code, the system comprising:
- one or more hardware processors coupled to a nontransitory computer readable medium having stored thereon software instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including;
obtaining, at the one or more hardware processors, computer data system query language code from an electronic computer readable data storage;
parsing, at the one or more hardware processors, the computer data system query language code to generate a computer data system query language parsed code structure;
resolving, at the one or more hardware processors, a type of one or more columns represented in the parsed code structure based on a determined context of the one or more columns;
inserting, at the one or more hardware processors, resolved types into the parsed code structure;
generating, at the one or more hardware processors, computer programming language code from the computer data system query language parsed code structure;
determining, at the one or more hardware processors, whether precompiled code corresponding to the generated computer programming language code is available in a precompiled code repository stored in the electronic computer readable data storage;
when precompiled code is available in the precompiled code repository, loading, at the one or more hardware processors, the precompiled code;
when precompiled code is not available in the precompiled code repository;
compiling, at the one or more hardware processors, the computer programming language code to generate compiled computer programming language code; and
loading, at the one or more hardware processors, the compiled computer programming language code;
instantiating, at the one or more hardware processors, the loaded precompiled code or the compiled computer programming language code; and
executing, at the one or more hardware processors, the instantiated code to perform a query operation corresponding to the computer data system query language code,wherein determining whether precompiled code corresponding to the programming language code is available in a precompiled code repository comprises;
generating a token representing the generated computer programming language code; and
comparing the token to one or more repository tokens in the precompiled code repository corresponding to precompiled code units.
3 Assignments
0 Petitions
Accused Products
Abstract
Described are methods, systems and computer readable media for parsing and compiling data system queries.
427 Citations
20 Claims
-
1. A system for parsing, generating code and compiling computer data system query language code, the system comprising:
one or more hardware processors coupled to a nontransitory computer readable medium having stored thereon software instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including; obtaining, at the one or more hardware processors, computer data system query language code from an electronic computer readable data storage; parsing, at the one or more hardware processors, the computer data system query language code to generate a computer data system query language parsed code structure; resolving, at the one or more hardware processors, a type of one or more columns represented in the parsed code structure based on a determined context of the one or more columns; inserting, at the one or more hardware processors, resolved types into the parsed code structure; generating, at the one or more hardware processors, computer programming language code from the computer data system query language parsed code structure; determining, at the one or more hardware processors, whether precompiled code corresponding to the generated computer programming language code is available in a precompiled code repository stored in the electronic computer readable data storage; when precompiled code is available in the precompiled code repository, loading, at the one or more hardware processors, the precompiled code; when precompiled code is not available in the precompiled code repository; compiling, at the one or more hardware processors, the computer programming language code to generate compiled computer programming language code; and loading, at the one or more hardware processors, the compiled computer programming language code; instantiating, at the one or more hardware processors, the loaded precompiled code or the compiled computer programming language code; and executing, at the one or more hardware processors, the instantiated code to perform a query operation corresponding to the computer data system query language code, wherein determining whether precompiled code corresponding to the programming language code is available in a precompiled code repository comprises; generating a token representing the generated computer programming language code; and comparing the token to one or more repository tokens in the precompiled code repository corresponding to precompiled code units. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
8. A method for parsing, generating code and compiling computer data system query language code, the method comprising:
-
obtaining, at a hardware processor, computer data system query language code from an electronic computer readable data storage; parsing, at the hardware processor, the computer data system query language code to generate a computer data system query language parsed code structure; resolving, at the hardware processor, a type of one or more columns represented in the parsed code structure based on a determined context of the one or more columns; inserting, at the hardware processor, resolved types into the parsed code structure; generating, at the hardware processor, computer programming language code from the computer data system query language parsed code structure; determining, at the hardware processor, whether precompiled code corresponding to the generated computer programming language code is available in a precompiled code repository stored in the electronic computer readable data storage; when precompiled code is available in the precompiled code repository, loading, at the hardware processor, the precompiled code; when precompiled code is not available in the precompiled code repository; compiling, at the hardware processor, the computer programming language code to generate compiled computer programming language code; and loading, at the hardware processor, the compiled computer programming language code; instantiating, at the hardware processor, the loaded precompiled code or the compiled computer programming language code; and executing, at the hardware processor, the instantiated code to perform a query operation corresponding to the computer data system query language code, wherein determining whether precompiled code corresponding to the programming language code is available in a precompiled code repository comprises; generating a token representing the generated computer programming language code; and comparing the token to one or more repository tokens in the precompiled code repository corresponding to precompiled code units. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A nontransitory computer readable medium having stored thereon software instructions that, when executed by one or more processors, cause the one or more processors to perform operations including:
-
obtaining, at the one or more hardware processors, computer data system query language code from an electronic computer readable data storage; parsing, at the one or more hardware processors, the computer data system query language code to generate a computer data system query language parsed code structure; resolving, at the one or more hardware processors, a type of one or more columns represented in the parsed code structure based on a determined context of the one or more columns; inserting, at the one or more hardware processors, resolved types into the parsed code structure; generating, at the one or more hardware processors, computer programming language code from the computer data system query language parsed code structure; determining, at the one or more hardware processors, whether precompiled code corresponding to the generated computer programming language code is available in a precompiled code repository stored in the electronic computer readable data storage; when precompiled code is available in the precompiled code repository, loading, at the one or more hardware processors, the precompiled code; when precompiled code is not available in the precompiled code repository; compiling, at the one or more hardware processors, the computer programming language code to generate compiled computer programming language code; and loading, at the one or more hardware processors, the compiled computer programming language code; instantiating, at the one or more hardware processors, the loaded precompiled code or the compiled computer programming language code; and executing, at the one or more hardware processors, the instantiated code to perform a query operation corresponding to the computer data system query language code, wherein determining whether precompiled code corresponding to the programming language code is available in a precompiled code repository comprises; generating a token representing the generated computer programming language code; and comparing the token to one or more repository tokens in the precompiled code repository corresponding to precompiled code units. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification