Patents by Inventor ADAM KOCIUBES

ADAM KOCIUBES 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: 10558659
    Abstract: Techniques are described herein for performing join and aggregation operations for a received query using column dictionaries. In an embodiment, a query is received that requests to aggregate a measure column of a fact table based on an aggregate function and join the fact table with a dimension table on a join key column. Data of the fact table may be stored in one or more storage data units, for example a particular data portion of the fact table may be stored on a particular data storage unit. The respective data portion may include one or more column vectors corresponding to one or more columns of the fact table in which a cell element corresponds to a value at a particular row and a particular column of the one or more columns of the fact table. The cell element of the one or more column vectors includes a dictionary encoded value of the value at the particular column and row. This dictionary encoded value is mapped to the value of by a dictionary data structure of the particular column.
    Type: Grant
    Filed: September 16, 2016
    Date of Patent: February 11, 2020
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Albert Hopeman, Martin Roth, Ekrem Soylemez, Adam Kociubes
  • Publication number: 20190102391
    Abstract: Techniques related to cache storage formats are disclosed. In some embodiments, a set of values is stored in a cache as a set of first representations and a set of second representations. For example, the set of first representations may be a set of hardware-level representations, and the set of second representations may be a set of non-hardware-level representations. Responsive to receiving a query to be executed over the set of values, a determination is made as to whether or not it would be more efficient to execute the query over the set of first representations than to execute the query over the set of second representations. If the determination indicates that it would be more efficient to execute the query over the set of first representations than to execute the query over the set of second representations, the query is executed over the set of first representations.
    Type: Application
    Filed: April 2, 2018
    Publication date: April 4, 2019
    Inventors: Aurosish Mishra, Shasank K. Chavan, Vinita Subramanian, Ekrem S.C. Soylemez, Adam Kociubes, Eugene Karichkin, Garret F. Swart
  • Patent number: 10067954
    Abstract: Techniques are described herein for using a dynamic dictionary encoding with an associated hash table to support many-to-many join and aggregation operations. In an embodiment, within a first storage of a computing device, a first data structure that comprises a first dense grouping key column is created. The dense grouping key column includes a first plurality of dense grouping key values and one or more instances of a flag value. Within the first storage of the computing device, a second data structure is created that comprises a group-by column and a second dense grouping key column. The group-by column includes a plurality of group-by key values and the second dense grouping key column includes a second plurality of dense grouping key values. Within the first storage of the computing device, a third data structure, a hash table, is created that includes a hash bucket for each join key value that corresponds to an instance of the flag value.
    Type: Grant
    Filed: July 22, 2015
    Date of Patent: September 4, 2018
    Assignee: Oracle International Corporation
    Inventors: Adam Kociubes, Ekrem Soylemez, Hyemin Chung
  • Patent number: 9990398
    Abstract: Methods, computer systems, and stored instructions are described herein for inferring dimensional metadata from content of a query that references tables. A server analyzes the content of the query to determine which table(s) of the referenced tables could be fact tables and/or which table(s) of the referenced tables could be dimension tables. The server transforms the query to a transformed query that operates on a candidate fact table and candidate dimension table(s) of the referenced tables other than the candidate fact table. The transformed query, when executed, processes at least some data from dimension(s) using the candidate dimension table(s) before processing at least some data from the candidate fact table. Alternatively or additionally, the server generates an execution plan that operates on the candidate fact table and the candidate dimension table(s).
    Type: Grant
    Filed: September 20, 2013
    Date of Patent: June 5, 2018
    Assignee: Oracle International Corporation
    Inventors: James Hunter, Adam Kociubes
  • Publication number: 20180081939
    Abstract: Techniques are described herein for performing join and aggregation operations for a received query using column dictionaries. In an embodiment, a query is received that requests to aggregate a measure column of a fact table based on an aggregate function and join the fact table with a dimension table on a join key column. Data of the fact table may be stored in one or more storage data units, for example a particular data portion of the fact table may be stored on a particular data storage unit. The respective data portion may include one or more column vectors corresponding to one or more columns of the fact table in which a cell element corresponds to a value at a particular row and a particular column of the one or more columns of the fact table. The cell element of the one or more column vectors includes a dictionary encoded value of the value at the particular column and row. This dictionary encoded value is mapped to the value of by a dictionary data structure of the particular column.
    Type: Application
    Filed: September 16, 2016
    Publication date: March 22, 2018
    Inventors: Albert Hopeman, Martin Roth, Ekrem Soylemez, Adam Kociubes
  • Patent number: 9836519
    Abstract: Methods, computer systems, and stored instructions are described herein for densely grouping dimensional data and/or aggregating data using a data structure, such as one that is constructed based on dimensional data. When smaller tables are joined with a larger table, a server may analyze the smaller tables first to determine actual value combinations that occur in the smaller tables, and these actual value combinations are used to more efficiently process the larger table. A dense data structure may be generated by processing dimensional data before processing data from fact table. The dense data structure may be generated by compressing ranges of values that are possible in dimensions into a range of values that actually occurs in the dimensions. The compressed range of values may be represented by dense set identifiers rather than the actual compressed range of values.
    Type: Grant
    Filed: September 20, 2013
    Date of Patent: December 5, 2017
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Adam Kociubes, Ekrem S. C. Soylemez, Martin Roth
  • Publication number: 20170024435
    Abstract: Techniques are described herein for using a dynamic dictionary encoding with an associated hash table to support many-to-many join and aggregation operations. In an embodiment, within a first storage of a computing device, a first data structure that comprises a first dense grouping key column is created. The dense grouping key column includes a first plurality of dense grouping key values and one or more instances of a flag value. Within the first storage of the computing device, a second data structure is created that comprises a group-by column and a second dense grouping key column. The group-by column includes a plurality of group-by key values and the second dense grouping key column includes a second plurality of dense grouping key values. Within the first storage of the computing device, a third data structure, a hash table, is created that includes a hash bucket for each join key value that corresponds to an instance of the flag value.
    Type: Application
    Filed: July 22, 2015
    Publication date: January 26, 2017
    Inventors: ADAM KOCIUBES, EKREM SOYLEMEZ, HYEMIN CHUNG
  • Publication number: 20150088856
    Abstract: Methods, computer systems, and stored instructions are described herein for inferring dimensional metadata from content of a query that references tables. A server analyzes the content of the query to determine which table(s) of the referenced tables could be fact tables and/or which table(s) of the referenced tables could be dimension tables. The server transforms the query to a transformed query that operates on a candidate fact table and candidate dimension table(s) of the referenced tables other than the candidate fact table. The transformed query, when executed, processes at least some data from dimension(s) using the candidate dimension table(s) before processing at least some data from the candidate fact table. Alternatively or additionally, the server generates an execution plan that operates on the candidate fact table and the candidate dimension table(s).
    Type: Application
    Filed: September 20, 2013
    Publication date: March 26, 2015
    Inventors: JAMES HUNTER, ADAM KOCIUBES
  • Publication number: 20150088809
    Abstract: Methods, computer systems, and stored instructions are described herein for densely grouping dimensional data and/or aggregating data using a data structure, such as one that is constructed based on dimensional data. When smaller tables are joined with a larger table, a server may analyze the smaller tables first to determine actual value combinations that occur in the smaller tables, and these actual value combinations are used to more efficiently process the larger table. A dense data structure may be generated by processing dimensional data before processing data from fact table. The dense data structure may be generated by compressing ranges of values that are possible in dimensions into a range of values that actually occurs in the dimensions. The compressed range of values may be represented by dense set identifiers rather than the actual compressed range of values.
    Type: Application
    Filed: September 20, 2013
    Publication date: March 26, 2015
    Inventors: ADAM KOCIUBES, EKREM S.C. SOYLEMEZ, MARTIN ROTH
  • Publication number: 20150088919
    Abstract: Methods, computer systems, and stored instructions are described herein for transforming a query or execution plan to re-use stored data. A query processor stores a query or a representation thereof. Before executing the query, the query processor analyzes the query or representation to determine whether the query or representation could cause at least part of a data structure to be generated at least twice. Based at least in part on determining that the at least part of the data structure could be generated at least twice by the query or representation, the query processor transforms the query or representation. The transformed query or representation includes a first transformed sub-query or sub-operation that generates and stores the at least part of the data structure, and a second transformed sub-query or sub-operation uses the at least part of the data structure that was stored by the first transformed sub-query or sub-operation.
    Type: Application
    Filed: September 20, 2013
    Publication date: March 26, 2015
    Inventors: James HUNTER, Adam KOCIUBES, Ekrem S.C. SOYLEMEZ