IP Library Granted Patent US 11,080,290
Granted Patent B2
US 11,080,290 · App. 15/373,980 · Granted Aug 3, 2021

Performance improvement in data visualization filters

Inventors: Dharmesh Rana (Nadiad, IN); Swati Krishna Setty (Bangalore, IN); Tejram Jagannath Sonwane (Bangalore, IN)
Assignee: SAP SE
G06F16/248G06F16/2228
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,080,290
App. No.
15/373,980
Granted
Aug 3, 2021
Kind
B2
Abstract

A document is received, the document including metadata for a data visualization of a data set. The data set includes a plurality of data columns, each of the plurality of columns having a column name and a plurality of data values. A first set of columns of the plurality of columns is present in the data visualization. The first set of columns is determined based on the metadata. A second set of columns of the plurality of columns is determined, where the second set of columns includes remaining columns of the plurality of columns excluding the first set of columns. The data set is ordered by having the first set of columns prior to the second set of columns. A composite index is generated on the ordered data set.

Claims (54)

1. A computer-implemented method comprising:

receiving, by one or more processors, a document, the document comprising visualization metadata for a data visualization of a data set and data set metadata comprising information of all columns of the data set, wherein the visualization metadata comprises information of all the columns of the data set present in a data visualization and indicates a mapping between the columns and vertical bars displayed relative to a horizontal axis and a vertical axis of the data visualization, and wherein the data set comprises a plurality of data columns, each of the plurality of data columns has a column name and a plurality of data values, and a first set of columns of the plurality of data columns is displayed by the data visualization;

determining, by the one or more processors, the first set of columns displayed by the data visualization based on the visualization metadata;

determining, by the one or more processors, a second set of columns of the plurality of data columns that are excluded from the data visualization, wherein the second set of columns comprises remaining columns of the plurality of data columns excluding the first set of columns;

generating, by the one or more processors, an ordered data set by having the first set of columns prior to the second set of columns;

generating, by the one or more processors, a composite index on the ordered data set, the composite index comprising an array, wherein each string of the array comprises a concatenation of visualization data values corresponding to the first set of columns and non-visualization data values corresponding to the second set of columns based on an order of the ordered data set;

generating, by the one or more processors, a query by retrieving at least one string from the composite index and for each column in the second set of columns:

determining whether a filtering operation is applied to the column,

in response to determining that the filtering operation is applied to the column and that the filter operation is associated with a first filter value, including a filter for the column in the query, wherein the filter comprises the first filter value, and

in response to determining that a filtering operation is not applied to the column, including a NOT filter for the column in the query, wherein the NOT filter comprises a second filter value different than the data values in the column; and

processing, by the one or more processors, the query for the data visualization.

2. The computer-implemented method of claim 1 ,

wherein generating the query comprises applying a plurality of filtering operations to the second set of columns.

3. The computer-implemented method of claim 1 , further comprising:

generating a column value map, the column value map comprising a plurality of column values, wherein each of the plurality of column values corresponds to a particular column of the second set of columns and is different than the data values in the particular column.

4. The computer-implemented method of claim 1 , wherein the document comprises metadata for a plurality of data visualizations of the data set.

5. The computer-implemented method of claim 4 , further comprising for each of the plurality of data visualizations:

generating an index string for the data visualization; and

if the index string is not present in an index array, storing the index string in the index array.

6. A non-transitory, computer-readable medium storing one or more instructions executable by a computer system to perform operations comprising:

receiving a document, the document comprising visualization metadata for a data visualization of a data set and data set metadata comprising information of all columns of the data set, wherein the visualization metadata comprises information of all the columns of the data set present in a data visualization and indicates a mapping between the columns and vertical bars displayed relative to a horizontal axis and a vertical axis of the data visualization, and wherein the data set comprises a plurality of data columns, each of the plurality of data columns has a column name and a plurality of data values, and a first set of columns of the plurality of data columns is displayed by the data visualization;

determining the first set of columns displayed by the data visualization based on the visualization metadata;

determining a second set of columns of the plurality of data columns that are excluded from the data visualization, wherein the second set of columns comprises remaining columns of the plurality of data columns excluding the first set of columns;

generating an ordered data set by having the first set of columns prior to the second set of columns;

generating a composite index on the ordered data set, the composite index comprising an array, wherein each string of the array comprises a concatenation of visualization data values corresponding to the first set of columns and non-visualization data values corresponding to the second set of columns based on an order of the ordered data set;

generating a query by retrieving at least one string from the composite index and for each column in the second set of columns:

determining whether a filtering operation is applied to the column,

in response to determining that the filtering operation is applied to the column and that the filter operation is associated with a first filter value, including a filter for the column in the query, wherein the filter comprises the first filter value, and

in response to determining that a filtering operation is not applied to the column, including a NOT filter for the column in the query, wherein the NOT filter comprises a second filter value different than the data values in the column; and

processing the query for the data visualization.

7. The non-transitory, computer-readable medium of claim 6 , wherein generating the query comprises applying a plurality of filtering operations to the second set of columns.

8. The non-transitory, computer-readable medium of claim 6 , comprising one or more instructions to generate a column value map, the column value map comprising a plurality of column values, wherein each of the plurality of column values corresponds to a particular column of the second set of columns and is different than the data values in the particular column.

9. The non-transitory, computer-readable medium of claim 6 , wherein the document comprises metadata for a plurality of data visualizations of the data set.

10. The non-transitory, computer-readable medium of claim 9 , comprising one or more instructions to, for each of the plurality of data visualizations:

generate an index string for the data visualization; and

if the index string is not present in an index array, store the index string in the index array.

11. A computer-implemented system, comprising:

a computer memory; and

a hardware processor interoperably coupled with the computer memory and configured to perform operations comprising:

receiving a document, the document comprising visualization metadata for a data visualization of a data set and data set metadata comprising information of all columns of the data set, wherein the visualization metadata comprises information of all the columns of the data set present in a data visualization and indicates a mapping between the columns and vertical bars displayed relative to a horizontal axis and a vertical axis of the data visualization, and wherein the data set comprises a plurality of data columns, each of the plurality of data columns has a column name and a plurality of data values, and a first set of columns of the plurality of data columns is displayed by the data visualization;

determining the first set of columns displayed by the data visualization based on the visualization metadata;

determining a second set of columns of the plurality of data columns that are excluded from the data visualization, wherein the second set of columns comprises remaining columns of the plurality of data columns excluding the first set of columns;

generating an ordered data set by having the first set of columns prior to the second set of columns;

generating a composite index on the ordered data set, the composite index comprising an array, wherein each string of the array comprises a concatenation of visualization data values corresponding to the first set of columns and non-visualization data values corresponding to the second set of columns based on an order of the ordered data set;

generating a query by retrieving at least one string from the composite index and for each column in the second set of columns:

determining whether a filtering operation is applied to the column,

in response to determining that the filtering operation is applied to the column and that the filter operation is associated with a first filter value, including a filter for the column in the query, wherein the filter comprises the first filter value, and

in response to determining that a filtering operation is not applied to the column, including a NOT filter for the column in the query, wherein the NOT filter comprises a second filter value different than the data values in the column; and

processing the query for the data visualization.

12. The computer-implemented system of claim 11 , wherein generating the query comprises applying a plurality of filtering operations to the second set of columns.

13. The computer-implemented system of claim 11 , wherein the hardware processor is further configured to generate a column value map, the column value map comprising a plurality of column values, wherein each of the plurality of column values corresponds to a particular column of the second set of columns and is different than the data values in the particular column.

14. The computer-implemented system of claim 11 , wherein the document comprises metadata for a plurality of data visualizations of the data set, and the hardware processor is further configured to, for each of the plurality of data visualizations:

generate an index string for the data visualization; and

if the index string is not present in an index array, store the index string in the index array.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2016
From: RANA, DHARMESH; SETTY, SWATI KRISHNA; SONWANE, TEJRAM JAGANNATH
To: SAP SE
Reel/Frame 040699/0390 →
Continuity (1)
Related Publication 20180165283A1 · Jun 14, 2018