Patents by Inventor Saeed Jahankhani
Saeed Jahankhani has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11669523Abstract: A question library aids in intuitive analysis of stored data. The question library comprises: 1) a plurality of text questions, 2) a numerical representation (e.g., a vector) of each text question, and 3) a corresponding query in a query language. A numerical vector is generated for a question posed to a database. If a matching library question (based upon vector similarity) is not found, the user receives the original answer. If a matching library question based upon vector similarity is found, the user receives the answer to that library question (with potential modifications). Embodiments may determine similarity by calculating Pearson's coefficient, Spearman's rho, or Kendall's tau. Embodiments may parse the first query to identify constituent elements (measures, dimensions, filters). These entities are extracted and compared to elements of the second question matched within the library, to allow modification of the library query to align with the initial query.Type: GrantFiled: December 12, 2019Date of Patent: June 6, 2023Assignee: BUSINESS OBJECTS SOFTWARE LTDInventors: Ahmet Yoldemir, Alexander MacAulay, Saeed Jahankhani
-
Patent number: 11194850Abstract: A system includes reception of an input string of words, determination, for each subset of consecutive one or more words in the input string, of one or more phrase types based on the subset, on a dictionary describing a plurality of entities, each of the plurality of entities associated with an entity type, and on a grammar describing a plurality of phrase types, each of the plurality of phrase types associated with one or more conditions, and determination of a plurality of candidate queries based on the determined phrase types.Type: GrantFiled: December 14, 2018Date of Patent: December 7, 2021Assignee: BUSINESS OBJECTS SOFTWARE LTD.Inventors: Saeed Jahankhani, Alexander MacAulay
-
Publication number: 20210182291Abstract: A question library aids in intuitive analysis of stored data. The question library comprises: 1) a plurality of text questions, 2) a numerical representation (e.g., a vector) of each text question, and 3) a corresponding query in a query language. A numerical vector is generated for a question posed to a database. If a matching library question (based upon vector similarity) is not found, the user receives the original answer. If a matching library question based upon vector similarity is found, the user receives the answer to that library question (with potential modifications). Embodiments may determine similarity by calculating Pearson's coefficient, Spearman's rho, or Kendall's tau. Embodiments may parse the first query to identify constituent elements (measures, dimensions, filters). These entities are extracted and compared to elements of the second question matched within the library, to allow modification of the library query to align with the initial query.Type: ApplicationFiled: December 12, 2019Publication date: June 17, 2021Inventors: Ahmet Yoldemir, Alexander MacAulay, Saeed Jahankhani
-
Publication number: 20200192924Abstract: A system includes reception of an input string of words, determination, for each subset of consecutive one or more words in the input string, of one or more phrase types based on the subset, on a dictionary describing a plurality of entities, each of the plurality of entities associated with an entity type, and on a grammar describing a plurality of phrase types, each of the plurality of phrase types associated with one or more conditions, and determination of a plurality of candidate queries based on the determined phrase types.Type: ApplicationFiled: December 14, 2018Publication date: June 18, 2020Inventors: Saeed Jahankhani, Alexander MacAulay
-
Patent number: 10380771Abstract: Some embodiments provide a program that receives from a client device a dimension value for a first dimension in a plurality of dimensions of a data model and a measure in a set of measures of the data model. The program further determines a cardinality of dimension values for each dimension in the plurality of dimensions. The program also selects a subset of dimensions in the plurality of dimensions based on the cardinalities of dimension values for the plurality of dimensions. The program further sends the subset of dimensions in the plurality of dimensions to the client device. The program also receives from the client device a request for a chart visualization comprising data values associated with the measure and categorized according to a second dimension in the subset of dimensions. In response to the request, the program further sends the chart visualization to the client device.Type: GrantFiled: October 4, 2017Date of Patent: August 13, 2019Assignee: SAP SEInventors: Guanjie Zhao, Shariq Aziz, Flavia Moser, Steve Norton, Saeed Jahankhani
-
Patent number: 10324943Abstract: Examples of auto-monitoring and adjusting dynamic data visualizations are provided herein. A data visualization based on initial data can be generated. A series of data updates can be received. The data visualization can be updated based on the series of data updates. Various performance metrics can be monitored, and data updates and/or the updated data visualization can be adjusted accordingly. Performance metrics can include at least one of: a data visualization rendering time; a data transfer time; or a data update generation time. Upon determining that one or more performance metrics exceed a threshold: a time between data updates of the series of data updates can be increased; sampled data can be requested for subsequent data updates; and/or a time-dimension extent of the updated data visualization can be reduced.Type: GrantFiled: August 10, 2015Date of Patent: June 18, 2019Assignee: Business Objects Software, Ltd.Inventors: Sybil Shim, Daniel Georges, Charles Wilson, Paul van der Eerden, Saeed Jahankhani
-
Patent number: 10235468Abstract: Embodiments relate to performing data blending operations across multiple different data sets comprising data structures with columns and rows. Columns of data sets to be blended may be linked together. Filters may be applied to data sets before the data blend operation is performed to specify which columns to be displayed in a visualization at a client interface. A direct filter may be applied to one of the data sets to obtain a filtered resulting data set. Data elements of the filtered resulting data set can be identified that correspond to the linked columns of the data sets to be blended. The results of applying the direct filter may then be used as the filtering criteria for an indirect filter to filter a second data set. The results of applying the direct and indirect filters may then be combined together in the data blending operation.Type: GrantFiled: December 30, 2015Date of Patent: March 19, 2019Assignee: Business Objects Software LimitedInventors: Justin Wong, Ali Moosavi, Saeed Jahankhani
-
Patent number: 10185755Abstract: In one embodiment, a method receives a query for data in a database system and calls a plurality of engines to analyze information for the query. A calculation graph is generated from at least a portion of the plurality of engines where each of the at least a portion of the plurality of engines add a node to the calculation graph based on analyzing of the information for the query. Then, the method executes the query by calling the nodes of the calculation graph. Each node uses metadata added to the node from a respective calculation engine to perform a calculation for the node. Then, a result of the query is output based on the respective calculations performed by the nodes.Type: GrantFiled: December 28, 2015Date of Patent: January 22, 2019Assignee: Business Objects Software LimitedInventors: Saeed Jahankhani, David Mosimann
-
Publication number: 20180336710Abstract: Some embodiments provide a program that receives from a client device a dimension value for a first dimension in a plurality of dimensions of a data model and a measure in a set of measures of the data model. The program further determines a cardinality of dimension values for each dimension in the plurality of dimensions. The program also selects a subset of dimensions in the plurality of dimensions based on the cardinalities of dimension values for the plurality of dimensions. The program further sends the subset of dimensions in the plurality of dimensions to the client device. The program also receives from the client device a request for a chart visualization comprising data values associated with the measure and categorized according to a second dimension in the subset of dimensions. In response to the request, the program further sends the chart visualization to the client device.Type: ApplicationFiled: October 4, 2017Publication date: November 22, 2018Inventors: Guanjie Zhao, Shariq Aziz, Flavia Moser, Steve Norton, Saeed Jahankhani
-
Publication number: 20180336254Abstract: Some embodiments provide a non-transitory machine-readable medium that stores a program. The program receives from a client device a request to execute a set of scripts on a set of data in a data model. The program further identifies an available virtual machine (VM) in a plurality of VMs. The program also loads a runtime instance configured to execute the set of scripts onto the identified VM. The program further instructs the runtime instance to execute the set of scripts in order to generate a visualization of the set of data. The program also sends the generated visualization of the set of data to the client device.Type: ApplicationFiled: October 4, 2017Publication date: November 22, 2018Inventors: Eran Bergman, Saeed Jahankhani
-
Patent number: 9886477Abstract: Innovations in the area of query processing for a database management system (“DBMS”) are presented herein. For example, for a database query, a query engine generates query code in an imperative language (such as a procedural, scripting language) based on query code in a declarative language (such as a structured query language). The query engine can embed the imperative-language query code in an intermediate representation of the database query, which is executed by the DBMS. In many instances (e.g., for non-linear operations of a database query), the imperative-language query code can be executed by the DBMS more quickly and efficiently than the original declarative-language query code. The DBMS returns results of the execution of the database query.Type: GrantFiled: October 24, 2014Date of Patent: February 6, 2018Assignee: SAP SEInventor: Saeed Jahankhani
-
Publication number: 20170193116Abstract: Embodiments relate to performing data blending operations across multiple different data sets comprising data structures with columns and rows. Columns of data sets to be blended may be linked together. Filters may be applied to data sets before the data blend operation is performed to specify which columns to be displayed in a visualization at a client interface. A direct filter may be applied to one of the data sets to obtain a filtered resulting data set. Data elements of the filtered resulting data set can be identified that correspond to the linked columns of the data sets to be blended. The results of applying the direct filter may then be used as the filtering criteria for an indirect filter to filter a second data set. The results of applying the direct and indirect filters may then be combined together in the data blending operation.Type: ApplicationFiled: December 30, 2015Publication date: July 6, 2017Inventors: Justin Wong, Ali Moosavi, Saeed Jahankhani
-
Publication number: 20170185655Abstract: In one embodiment, a method receives a query for data in a database system and calls a plurality of engines to analyze information for the query. A calculation graph is generated from at least a portion of the plurality of engines where each of the at least a portion of the plurality of engines add a node to the calculation graph based on analyzing of the information for the query. Then, the method executes the query by calling the nodes of the calculation graph. Each node uses metadata added to the node from a respective calculation engine to perform a calculation for the node. Then, a result of the query is output based on the respective calculations performed by the nodes.Type: ApplicationFiled: December 28, 2015Publication date: June 29, 2017Inventors: Saeed Jahankhani, David Mosimann
-
Publication number: 20170046404Abstract: Examples of auto-monitoring and adjusting dynamic data visualizations are provided herein. A data visualization based on initial data can be generated. A series of data updates can be received. The data visualization can be updated based on the series of data updates. Various performance metrics can be monitored, and data updates and/or the updated data visualization can be adjusted accordingly. Performance metrics can include at least one of: a data visualization rendering time; a data transfer time; or a data update generation time. Upon determining that one or more performance metrics exceed a threshold: a time between data updates of the series of data updates can be increased; sampled data can be requested for subsequent data updates; and/or a time-dimension extent of the updated data visualization can be reduced.Type: ApplicationFiled: August 10, 2015Publication date: February 16, 2017Applicant: BUSINESS OBJECTS SOFTWARE LTD.Inventors: Sybil Shim, Daniel Georges, Charles Wilson, Paul van der Eerden, Saeed Jahankhani
-
Publication number: 20160117364Abstract: Innovations in the area of query processing for a database management system (“DBMS”) are presented herein. For example, for a database query, a query engine generates query code in an imperative language (such as a procedural, scripting language) based on query code in a declarative language (such as a structured query language). The query engine can embed the imperative-language query code in an intermediate representation of the database query, which is executed by the DBMS. In many instances (e.g., for non-linear operations of a database query), the imperative-language query code can be executed by the DBMS more quickly and efficiently than the original declarative-language query code. The DBMS returns results of the execution of the database query.Type: ApplicationFiled: October 24, 2014Publication date: April 28, 2016Inventor: Saeed Jahankhani
-
Patent number: 8185818Abstract: What is described is a method and system for rendering HTML tables and crosstabs when insufficient data is available about the structure of the tables and data elements are positioned relative to the top-left corner of the table and not their first container, which is table data (TD).Type: GrantFiled: December 15, 2008Date of Patent: May 22, 2012Assignee: Business Objects S.A.Inventor: Saeed Jahankhani
-
Publication number: 20100153682Abstract: What is described is a method and system for rendering HTML tables and crosstabs when insufficient data is available about the structure of the tables and data elements are positioned relative to the top-left corner of the table and not their first container, which is table data (TD).Type: ApplicationFiled: December 15, 2008Publication date: June 17, 2010Inventor: SAEED JAHANKHANI