Executing conditions with negation operators in analytical databases
US-10210223-B2 · Feb 19, 2019 · US
US11188552B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11188552-B2 |
| Application number | US-201916693428-A |
| Country | US |
| Kind code | B2 |
| Filing date | Nov 25, 2019 |
| Priority date | Oct 27, 2015 |
| Publication date | Nov 30, 2021 |
| Grant date | Nov 30, 2021 |
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.
Embodiments of the present invention provide a method and system for processing a query on a set of data blocks in analytical databases. The query is on a set of data blocks, having at least one attribute and specifies at least one selection condition on the attribute. The selection condition is associated with at least one selection expression. Attribute value information on each attribute is generated for each data block. Next, a condition is generated on each attribute to negate the selection expression, if the selection expression has a negation operator. Additional conditions are generated for each selection expression that does not contain a negation operation. The attribute value is used to select the positive and negative subsets of data blocks for each condition. Next, a negative subset that does not require processing to evaluate the query is skipped and the positive subsets and the non-skipped negative subsets are processed.
Opening claim text (preview).
What is claimed is: 1. A method for processing a query on a set of data blocks, the method comprising: generating an attribute value information on at least one attribute, for each data block of a set of data blocks; generating a first condition on the at least one attribute, wherein the first condition negates each selection expression of at least one selection expression, when the selection expression comprises a negation operator; generating a first set of conditions that comprises the generated first condition on the at least one attribute, and each of the at least one selection expression that does not comprise a negation operator; selecting a positive subset of data blocks, of the set of data blocks, for each condition of the first set of conditions, wherein the positive subset of data blocks satisfies a condition of the first set of conditions; selecting a negative subset of data blocks, of the set of data blocks, for each condition of the first set of conditions, wherein the negative subset of data blocks does not satisfy a condition of the first set of conditions; determining a skipped portion of the negative subsets of the data blocks, using the selection condition, and a non-skipped portion of the negative subsets of the data blocks; generating result data based on the skipped portion of the negative subsets of the data blocks and the non-skipped portion of the negative subsets of the data blocks. 2. The method of claim 1 , wherein receiving the selection condition further comprises: receiving a conjunction of a first selection expression and a second selection expression, wherein the first selection expression comprises a first negation operator, and wherein the second selection expression comprises a second negation operator; and determining a skipped portion of the data blocks, wherein the skipped portion of the data blocks comprises selecting common data blocks of a first negative subset of data blocks and selecting common data blocks of a second negative subset of data blocks. 3. The method of claim 1 , wherein receiving the selection condition further comprises: receiving a conjunction of a first selection expression and a second selection expression, wherein the first selection expression comprises a positive operator, and wherein the second selection expression comprises a first negative; and determining the skipped portion of the data blocks, wherein the skipped portion of the data blocks comprises a first negative subset of data blocks. 4. The method of claim 1 , wherein receiving the selection condition further comprises: receiving a disjunction of a first selection expression and a second selection expression, wherein the first selection expression comprises a first negation operator, and wherein the second selection expression comprises a second negation operator; and determining the skipped portion of the data blocks, wherein the skipped portion of the data blocks comprises first negative subset of data blocks and the second negative subset of data blocks. 5. The method of claim 1 , wherein receiving the selection condition further comprises: receiving a conjunction of a first selection expression and a second selection expression, wherein the first selection expression comprises a positive operator, and wherein the second selection expression comprises a first negative; and determining the skipped portion of the data blocks, wherein the skipped portion of the data blocks comprises the second negative subset of data blocks. 6. The method of claim 1 , wherein generating the attribute value information further comprises: generating a multi-dimensional data structure, wherein the multi-dimensional data structure represents the set of data blocks; and adding a data element, for each data block of the set of data blocks, into the multi-dimensional data structure, wherein the data element comprises multiple values associated with the attribute. 7. The method of claim 1 further comprising: selecting data elements, of a multi-dimensional data structure, whose value satisfies the condition wherein, a positive subset of data blocks correspond to a set of selected data elements, and a negative subset of data blocks corresponds to a set of non-selected elements of the multi-dimensional data structure. 8. The method of claim 7 , wherein the multi-dimensional data structure further comprises a spatial index. 9. The method of claim 1 wherein the negation operator further comprises at least one of: an inequality operator; and a negated range operator.
Join operations · CPC title
Presentation of query results · CPC title
of operators · CPC title
Data partitioning, e.g. horizontal or vertical partitioning · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.