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: 11669523
    Abstract: 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: Grant
    Filed: December 12, 2019
    Date of Patent: June 6, 2023
    Assignee: BUSINESS OBJECTS SOFTWARE LTD
    Inventors: Ahmet Yoldemir, Alexander MacAulay, Saeed Jahankhani
  • Patent number: 11194850
    Abstract: 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: Grant
    Filed: December 14, 2018
    Date of Patent: December 7, 2021
    Assignee: BUSINESS OBJECTS SOFTWARE LTD.
    Inventors: Saeed Jahankhani, Alexander MacAulay
  • Publication number: 20210182291
    Abstract: 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: Application
    Filed: December 12, 2019
    Publication date: June 17, 2021
    Inventors: Ahmet Yoldemir, Alexander MacAulay, Saeed Jahankhani
  • Publication number: 20200192924
    Abstract: 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: Application
    Filed: December 14, 2018
    Publication date: June 18, 2020
    Inventors: Saeed Jahankhani, Alexander MacAulay
  • Patent number: 10380771
    Abstract: 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: Grant
    Filed: October 4, 2017
    Date of Patent: August 13, 2019
    Assignee: SAP SE
    Inventors: Guanjie Zhao, Shariq Aziz, Flavia Moser, Steve Norton, Saeed Jahankhani
  • Patent number: 10324943
    Abstract: 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: Grant
    Filed: August 10, 2015
    Date of Patent: June 18, 2019
    Assignee: Business Objects Software, Ltd.
    Inventors: Sybil Shim, Daniel Georges, Charles Wilson, Paul van der Eerden, Saeed Jahankhani
  • Patent number: 10235468
    Abstract: 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: Grant
    Filed: December 30, 2015
    Date of Patent: March 19, 2019
    Assignee: Business Objects Software Limited
    Inventors: Justin Wong, Ali Moosavi, Saeed Jahankhani
  • Patent number: 10185755
    Abstract: 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: Grant
    Filed: December 28, 2015
    Date of Patent: January 22, 2019
    Assignee: Business Objects Software Limited
    Inventors: Saeed Jahankhani, David Mosimann
  • Publication number: 20180336710
    Abstract: 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: Application
    Filed: October 4, 2017
    Publication date: November 22, 2018
    Inventors: Guanjie Zhao, Shariq Aziz, Flavia Moser, Steve Norton, Saeed Jahankhani
  • Publication number: 20180336254
    Abstract: 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: Application
    Filed: October 4, 2017
    Publication date: November 22, 2018
    Inventors: Eran Bergman, Saeed Jahankhani
  • Patent number: 9886477
    Abstract: 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: Grant
    Filed: October 24, 2014
    Date of Patent: February 6, 2018
    Assignee: SAP SE
    Inventor: Saeed Jahankhani
  • Publication number: 20170193116
    Abstract: 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: Application
    Filed: December 30, 2015
    Publication date: July 6, 2017
    Inventors: Justin Wong, Ali Moosavi, Saeed Jahankhani
  • Publication number: 20170185655
    Abstract: 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: Application
    Filed: December 28, 2015
    Publication date: June 29, 2017
    Inventors: Saeed Jahankhani, David Mosimann
  • Publication number: 20170046404
    Abstract: 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: Application
    Filed: August 10, 2015
    Publication date: February 16, 2017
    Applicant: BUSINESS OBJECTS SOFTWARE LTD.
    Inventors: Sybil Shim, Daniel Georges, Charles Wilson, Paul van der Eerden, Saeed Jahankhani
  • Publication number: 20160117364
    Abstract: 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: Application
    Filed: October 24, 2014
    Publication date: April 28, 2016
    Inventor: Saeed Jahankhani
  • Patent number: 8185818
    Abstract: 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: Grant
    Filed: December 15, 2008
    Date of Patent: May 22, 2012
    Assignee: Business Objects S.A.
    Inventor: Saeed Jahankhani
  • Publication number: 20100153682
    Abstract: 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: Application
    Filed: December 15, 2008
    Publication date: June 17, 2010
    Inventor: SAEED JAHANKHANI