Patents by Inventor Kumar Ramaiyer

Kumar Ramaiyer 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).

  • Publication number: 20190102445
    Abstract: In accordance with an embodiment, described herein are systems and methods for enabling multiple parents with weights in a multidimensional database. An exemplary system can comprise a computer that includes one or more microprocessors, and a multidimensional database server executing on the computer, wherein the multidimensional database server supports at least one hierarchical structure of data dimensions. A data dimension can comprises a plurality of members, a first set of members being a first level, and a second set of members being at a second level. A member of the second set of members at the second level can comprises two or more member-member relationships with two or more members of the first set of members at the first level. Each of the two or more member-member relationships are associated with a weight.
    Type: Application
    Filed: June 29, 2018
    Publication date: April 4, 2019
    Inventor: Kumar Ramaiyer
  • Publication number: 20190102447
    Abstract: In accordance with an embodiment, described herein are systems and methods for supporting metadata sandboxing and what-if analysis in a multidimensional database, comprising. A system allow for various iterations of “what-if” analysis that allows users and administrators to test various situations and changing metadata relationships between data dimensions without altering a primary copy of the hierarchical data structure.
    Type: Application
    Filed: June 29, 2018
    Publication date: April 4, 2019
    Inventor: Kumar Ramaiyer
  • Publication number: 20190102446
    Abstract: In accordance with an embodiment, systems and methods can provide for load, aggregate, and batch calculation in in a multidimensional database environment. Metadata can be used to identify in which higher dimensions each leaf-level load is used. At such time, the data from the leaf level is aggregated to each of the higher dimensions where it is to be used. Then, the aggregate values are stored in memory until a completed sum (or other calculation) is completed at the higher levels. At such time, the aggregate values can be discarded from memory. The ability of the system to perform a load, aggregate, and batch calculation in one scan is particularly useful in processing very large sets of data, for example in big data environments, where it may not be desirable to load the data for all of the leaf nodes into current memory.
    Type: Application
    Filed: June 29, 2018
    Publication date: April 4, 2019
    Inventor: Kumar Ramaiyer
  • Publication number: 20190079959
    Abstract: In accordance with an embodiment, described herein are systems and methods for supporting slowly changing dimensions and metadata versioning in a multidimensional database, comprising. A system can comprise a computer that includes one or more microprocessors, and a multidimensional database server executing on the computer, wherein the multidimensional database server supports at least one hierarchical structure of data dimensions. A data dimension can slowly change over time. When such changes occur, metadata associated with the data dimension can be updated. Advantageously, a current snapshot of the data structure can allow searching of previous changes to the slowly changing dimension based upon the metadata.
    Type: Application
    Filed: June 29, 2018
    Publication date: March 14, 2019
    Inventor: Kumar Ramaiyer
  • Publication number: 20190073366
    Abstract: In accordance with an embodiment, described herein are systems and methods that enable client-side calculation with data provided at a multidimensional or other database server. Data provided at the server in accordance with a server-side model, can be transformed/prepared into a grid, for use with a client-side application, for example a client spreadsheet application. During preparation of the grid, one or more portions of the grid that are identified as client-side dynamic parameters, can be represented as dynamic formulas that are modifiable within the client-side application; while parameters of the server-side model that are outside of the grid can be represented as constant values. The grid provided to the client can be used to perform client-side calculations that allow for rapid calculations in response to changes in the client-side model, without introducing a round-trip performance lag between the client-side and server-side.
    Type: Application
    Filed: June 29, 2018
    Publication date: March 7, 2019
    Inventors: Kumar Ramaiyer, John Xiao
  • Publication number: 20170116312
    Abstract: In accordance with an embodiment, described herein is a system and method for supporting queries having sub-select constructs in a multidimensional database computing environment. The system enables a sub-select construct to be provided as part of an input query, for example using a Multidimensional Expressions (MDX), or other type of query. The inner sub-select, specified by the input query, is not executed by the system before the main query, but is used to restrict the data space for execution of the main select. The approach to processing the sub-select enables support for security-sensitive or other types of aggregation use cases.
    Type: Application
    Filed: October 24, 2016
    Publication date: April 27, 2017
    Inventors: Roman Reichman, Victor Belyaev, Kumar Ramaiyer, Inna Grois, Natasha Reichman
  • Publication number: 20170116310
    Abstract: In accordance with an embodiment, described herein is a system and method for improving performance within a multidimensional database computing environment. A multidimensional database, utilizing a block storage option, performs numerous input/output (I/O) operations when executing calculations. To separate I/O operations from calculations, a background task queue is created to identify data blocks requiring I/O. The background task queue is utilized by background writer threads to execute the I/O operations in parallel with calculations.
    Type: Application
    Filed: October 24, 2016
    Publication date: April 27, 2017
    Inventors: Cloud Walker, Vinod Padinjat Menon, Kumar Ramaiyer
  • Publication number: 20170116032
    Abstract: A system and method is described for use with a multidimensional database computing environment to provide support for parallel calculation of multidimensional slices. Users are able to specify a set of slices and a number of parallel threads to employ. The multidimensional database environment generates tasks that include calculations and/or aggregations, which are able to be executed by the system in parallel. Also described herein are mechanisms of utilizing variables within the calculations performed by respective threads, and combining thread variables after execution.
    Type: Application
    Filed: October 24, 2016
    Publication date: April 27, 2017
    Inventors: Long Tran, Vinod Padinjat Menon, Kumar Ramaiyer
  • Publication number: 20170116290
    Abstract: In accordance with an embodiment, described herein is a system and method for use of a dynamic flow process (referred to herein in some examples as Query Processing Dynamic Flow (QPDF)) in a multidimensional database computing environment. The dynamic flow process enables hybrid use of, for example, aggregate storage option, block storage option, or other types of storage containers, and provides a common flow to process a received input query in bottom-up mode. The approach can be used to reduce the size of the cube, which provides for efficient calculation of dynamic members.
    Type: Application
    Filed: October 24, 2016
    Publication date: April 27, 2017
    Inventors: Natasha Reichman, Sergei Riaboi, Alexey Roytman, Victor Belyaev, Kumar Ramaiyer
  • Publication number: 20170116215
    Abstract: In accordance with an embodiment, described herein is a system and method for use with a multidimensional database computing environment. Particularly, a system and method are described for performing in-place data writes to a data storage medium associated with the multidimensional database computing environment. For example, when multiple data updates from calculation scripts are associated with a same set of blocks, the in-place data enable the system to reduce fragmentation of the data storage medium, and also to reduce contention due to index updates.
    Type: Application
    Filed: October 24, 2016
    Publication date: April 27, 2017
    Inventors: Kumar Ramaiyer, Young Joon Kim, Haritha Gongalore, Vilas Ketkar, Shubhagam Gupta
  • Publication number: 20170116309
    Abstract: In accordance with an embodiment, described herein is a system and method for dependency analysis for a calculation script in a multidimensional database computing environment. A multidimensional database cube aggregation can be represented as a lattice of blocks or cube, arranged according to a database outline (e.g., intra-dimensional or member hierarchy). When the multidimensional database system performs computations in parallel for a given calculation script, portions of the cube that can be computed concurrently are identified.
    Type: Application
    Filed: October 24, 2016
    Publication date: April 27, 2017
    Inventors: Vinod Padinjat Menon, Kumar Ramaiyer
  • Publication number: 20170116311
    Abstract: In accordance with an embodiment, the system supports automatic slice merge in a multidimensional database computing environment. In a multidimensional database that uses an aggregate storage option container for data storage, the system can create a plurality of slices to support data load transactions, or modifications to the data in response to requests from clients. When the system receives a data update request, for example to update a record within the cube, the system can allow the data to be updated, by writing the updated data to another slice. Subsequently, the system can determine to merge two or more of the slices having modified data, to reduce the overall size of the stored data footprint, and to improve system performance.
    Type: Application
    Filed: October 24, 2016
    Publication date: April 27, 2017
    Inventors: Roman Reichman, Victor Belyaev, Kumar Ramaiyer
  • Patent number: 8271426
    Abstract: A method includes storing a first value for one or more measures in a block of data for the cube of data. The first value is a value where the state of the cube is that no changes are applicable to the block of data. A second value is stored for the one or more measures in the block of data. The second value is a delta value representing changes made to the block of data based on the first value. A change is received to the block. A computer processor then calculates a new second value based on the change to the block. The new second value is stored in place of the second value previously stored while the first value remains the same. The second value represents the cumulative changes to the measure since the frozen value was determined.
    Type: Grant
    Filed: October 1, 2009
    Date of Patent: September 18, 2012
    Assignee: Oracle International Corporation
    Inventor: Kumar Ramaiyer
  • Patent number: 8069146
    Abstract: Methods and apparatus for updating a database using a multi-dimensional data model in which data corresponding to the database are organized in multi-dimensional data blocks. Each data block has summary information associated therewith corresponding to a current state of evolution of the associated data block. Dependency information is maintained in the data model which identifies data dependencies within and among the data blocks. A list of change entries identifies changes made to the data blocks and times at which the changes were made. A request to apply a change entry to a data block is received. The change entry is applied to the data block, including generating a dependency list of data blocks whose data depends directly or indirectly from the updated data block. The data blocks in the dependency list are processed in accordance with a dependency update algorithm to update the data blocks in the dependency list.
    Type: Grant
    Filed: June 18, 2009
    Date of Patent: November 29, 2011
    Assignee: Oracle International Corporation
    Inventors: Anurag Gupta, Kumar Ramaiyer, Matthew Shore, John Xiao
  • Patent number: 8024288
    Abstract: Particular embodiments store multidimensional block data using a value-bit format. A block of data is determined that includes a first dimension and a second dimension. The occurrences of unique values in the block of data is then determined. If the number of unique values does not violate a threshold, a value-bit format may be used instead of storing the data in a fully-exploded array. In this case, the value for the unique values is stored with an indication of where the unique values occur in the block of data. When a request for a value at an index position in the array is received, the value-bit format is used to retrieve the value requested. A bit that indicates the value that is associated with the index position in the array is determined and that value is returned.
    Type: Grant
    Filed: August 27, 2008
    Date of Patent: September 20, 2011
    Assignee: Oracle International Corporation
    Inventor: Kumar Ramaiyer
  • Publication number: 20110082830
    Abstract: A method includes storing a first value for one or more measures in a block of data for the cube of data. The first value is a value where the state of the cube is that no changes are applicable to the block of data. A second value is stored for the one or more measures in the block of data. The second value is a delta value representing changes made to the block of data based on the first value. A change is received to the block. A computer processor then calculates a new second value based on the change to the block. The new second value is stored in place of the second value previously stored while the first value remains the same. The second value represents the cumulative changes to the measure since the frozen value was determined.
    Type: Application
    Filed: October 1, 2009
    Publication date: April 7, 2011
    Applicant: Oracle International Corporation
    Inventor: Kumar Ramaiyer
  • Publication number: 20100057676
    Abstract: Particular embodiments store multidimensional block data using a value-bit format. A block of data is determined that includes a first dimension and a second dimension. The occurrences of unique values in the block of data is then determined. If the number of unique values does not violate a threshold, a value-bit format may be used instead of storing the data in a fully-exploded array. In this case, the value for the unique values is stored with an indication of where the unique values occur in the block of data. When a request for a value at an index position in the array is received, the value-bit format is used to retrieve the value requested. A bit that indicates the value that is associated with the index position in the array is determined and that value is returned.
    Type: Application
    Filed: August 27, 2008
    Publication date: March 4, 2010
    Applicant: Oracle International Corporation
    Inventor: Kumar Ramaiyer
  • Publication number: 20090259695
    Abstract: Methods and apparatus for updating a database using a multi-dimensional data model in which data corresponding to the database are organized in multi-dimensional data blocks. Each data block has summary information associated therewith corresponding to a current state of evolution of the associated data block. Dependency information is maintained in the data model which identifies data dependencies within and among the data blocks. A list of change entries identifies changes made to the data blocks and times at which the changes were made. A request to apply a change entry to a data block is received. The change entry is applied to the data block, including generating a dependency list of data blocks whose data depends directly or indirectly from the updated data block. The data blocks in the dependency list are processed in accordance with a dependency update algorithm to update the data blocks in the dependency list.
    Type: Application
    Filed: June 18, 2009
    Publication date: October 15, 2009
    Applicant: Oracle International Corporation
    Inventors: Anurag Gupta, Kumar Ramaiyer, Matthew Shore, John Xiao
  • Patent number: 7571192
    Abstract: Methods and apparatus for updating a database using a multi-dimensional data model in which data corresponding to the database are organized in multi-dimensional data blocks. Each data block has summary information associated therewith corresponding to a current state of evolution of the associated data block. Dependency information is maintained in the data model which identifies data dependencies within and among the data blocks. A list of change entries identifies changes made to the data blocks and times at which the changes were made. A request to apply a change entry to a data block is received. The change entry is applied to the data block, including generating a dependency list of data blocks whose data depends directly or indirectly from the updated data block. The data blocks in the dependency list are processed in accordance with a dependency update algorithm to update the data blocks in the dependency list.
    Type: Grant
    Filed: June 15, 2005
    Date of Patent: August 4, 2009
    Assignee: Oracle International Corporation
    Inventors: Anurag Gupta, Kumar Ramaiyer, Matthew Shore, John Xiao
  • Publication number: 20060288046
    Abstract: Methods and apparatus for updating a database using a multi-dimensional data model in which data corresponding to the database are organized in multi-dimensional data blocks. Each data block has summary information associated therewith corresponding to a current state of evolution of the associated data block. Dependency information is maintained in the data model which identifies data dependencies within and among the data blocks. A list of change entries identifies changes made to the data blocks and times at which the changes were made. A request to apply a change entry to a data block is received. The change entry is applied to the data block, including generating a dependency list of data blocks whose data depends directly or indirectly from the updated data block. The data blocks in the dependency list are processed in accordance with a dependency update algorithm to update the data blocks in the dependency list.
    Type: Application
    Filed: June 15, 2005
    Publication date: December 21, 2006
    Applicant: Interlace Systems, Inc.
    Inventors: Anurag Gupta, Kumar Ramaiyer, Matthew Shore, John Xiao