Harmonized structured query language and non-structured query language query processing

US2018293276A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2018293276-A1
Application numberUS-201715483690-A
CountryUS
Kind codeA1
Filing dateApr 10, 2017
Priority dateApr 10, 2017
Publication dateOct 11, 2018
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method can include: generating a query execution plan for a query including a plurality of operations that operate on data from a relational database and data from a non-structured query language (NoSQL) database, the generating comprising optimizing the query by: identifying a first operation that operate on data from the relational database and an intermediate result output by a second operation, the second operation outputting the intermediate result by operating on the data from the NoSQL database; and determining a fixed datatype for the intermediate result, an indication of the fixed datatype being included in the query execution plan; and executing, based on the query execution plan, the query, the executing of the query comprising converting the intermediate result to the fixed datatype, the converting enabling the first operation to operate on the intermediate result output by the second operation along with the data from the relational database.

First claim

Opening claim text (preview).

What is claimed is: 1 . A computer implemented method, comprising: generating a query execution plan for a query, the query including a plurality of operations that operate on data from a relational database and data from a non-structured query language (NoSQL) database, the generating of the query execution plan comprising optimizing the query by at least: identifying a first operation of the plurality of operations, the first operation operating on data from the relational database and an intermediate result output by a second operation of the plurality of operations, and the second operation outputting the intermediate result by at least operating on the data from the NoSQL database; and determining a fixed datatype for the intermediate result output by the second operation, an indication of the fixed datatype being included in the query execution plan; and executing, based at least on the query execution plan, the query, the executing of the query comprising converting the intermediate result to the fixed datatype, the converting enabling the first operation to operate on the intermediate result output by the second operation along with the data from the relational database. 2 . The computer-implemented method of claim 1 , wherein the optimizing further comprises: identifying a NoSQL path expression included in the query, the NoSQL path expression being identified based at least on the NoSQL path expression failing to match a column defined by a schema of the relational database; encapsulating the NoSQL path expression in a wrapper to at least generate a corresponding wrapped NoSQL path expression, the wrapping of the NoSQL path expression enabling the NoSQL path expression to be differentiated from a structure query language (SQL) column reference; and including the wrapped NoSQL path expression in the query execution plan. 3 . The computer-implemented method of claim 2 , wherein the executing of the query further comprises: identifying the wrapped NoSQL path expression; and resolving the encapsulated NoSQL path expression at the NoSQL database instead of the relational database. 4 . The computer-implemented method of claim 1 , wherein the intermediate result output by the second operation includes values having a plurality of different datatypes, and the converting of the intermediate result comprises converting the values included in the intermediate result from the plurality of different datatypes of the fixed data type. 5 . The computer-implemented method of claim 1 , wherein the fixed datatype is determined based at least on a type of the second operation. 6 . The computer-implemented method of claim 5 , wherein the fixed datatype is determined to be a numeric datatype based at least on the second operation being a count operation and/or a sum operation. 7 . The computer-implemented method of claim 1 , wherein the fixed datatype is determined based at least on a default datatype of the relational database. 8 . The computer-implemented method of claim 1 , wherein the first operation is identified based at least on an indicator of a boundary between a portion of the plurality of operations that operate on the data from the relational database and another portion of the plurality of operations that operate on the data from the NoSQL database. 9 . The computer-implemented method of claim 8 , wherein the indicator comprises a set of parentheses enclosing the portion of the plurality of operations that operates on the data from the NoSQL database. 10 . The computer-implemented method of claim 1 , wherein the NoSQL database comprises a document store. 11 . A system, comprising: at least one data processor; and at least one memory storing instructions which, when executed by the at least one processor, result in operations comprising: generating a query execution plan for a query, the query including a plurality of operations that operate on data from a relational database and data from a non-structured query language (NoSQL) database, the generating of the query execution plan comprising optimizing the query by at least: identifying a first operation of the plurality of operations, the first operation operating on data from the relational database and an intermediate result output by a second operation of the plurality of operations, and the second operation outputting the intermediate result by at least operating on the data from the NoSQL database; and determining a fixed datatype for the intermediate result output by the second operation, an indication of the fixed datatype being included in the query execution plan; and executing, based at least on the query execution plan, the query, the executing of the query comprising converting the intermediate result to the fixed datatype, the converting enabling the first operation to operate on the intermediate result output by the second operation along with the data from the relational database. 12 . The system of claim 11 , wherein the optimizing further comprises: identifying a NoSQL path expression included in the query, the NoSQL path expression being identified based at least on the NoSQL path expression failing to match a column defined by a schema of the relational database; encapsulating the NoSQL path expression in a wrapper to at least generate a corresponding wrapped NoSQL path expression, the wrapping of the NoSQL path expression enabling the NoSQL path expression to be differentiated from a structure query language (SQL) column reference; and including the wrapped NoSQL path expression in the query execution plan. 13 . The system of claim 12 , wherein the executing of the query further comprises: identifying the wrapped NoSQL path expression; and resolving the encapsulated NoSQL path expression at the NoSQL database instead of the relational database. 14 . The system of claim 11 , wherein the intermediate result output by the second operation includes values having a plurality of different datatypes, and the converting of the intermediate result comprises converting the values included in the intermediate result from the plurality of different datatypes of the fixed data type. 15 . The system of claim 11 , wherein the fixed datatype is determined based at least on a type of the second operation. 16 . The system of claim 15 , wherein the fixed datatype is determined to be a numeric datatype based at least on the second operation being a count operation and/or a sum operation. 17 . The system of claim 11 , wherein the fixed datatype is determined based at least on a default datatype of the relational database. 18 . The system of claim 11 , wherein the first operation is identified based at least on an indicator of a boundary between a portion of the plurality of operations that operate on the data from the relational database and another portion of the plurality of operations that operate on the data from the NoSQL database. 19 . The system of claim 18 , wherein the indicator comprises a set of parentheses enclosing the portion of the plurality of operations that operates on the data from the NoSQL database. 20 . A non-transitory computer-readable storage medium including program code, which when executed by at least one data processor, cause operations comprising: generating a query execution plan for a query, the query including a plurality of operations that operate on data from a relational database and data from a non-structured query language (NoSQL) database, the generating of the query ex

Assignees

Inventors

Classifications

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2018293276A1 cover?
A method can include: generating a query execution plan for a query including a plurality of operations that operate on data from a relational database and data from a non-structured query language (NoSQL) database, the generating comprising optimizing the query by: identifying a first operation that operate on data from the relational database and an intermediate result output by a second oper…
Who is the assignee on this patent?
Sap Se
What technology area does this patent fall under?
Primary CPC classification G06F17/30463. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Oct 11 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).