Patents by Inventor Georgios Giannikis

Georgios Giannikis 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: 11023430
    Abstract: Techniques related to a sparse dictionary tree are disclosed. In some embodiments, computing device(s) execute instructions, which are stored on non-transitory storage media, for performing a method. The method comprises storing an encoding dictionary as a token-ordered tree comprising a first node and a second node, which are adjacent nodes. The token-ordered tree maps ordered tokens to ordered codes. The ordered tokens include a first token and a second token. The ordered codes include a first code and a second code, which are non-consecutive codes. The first node maps the first token to the first code. The second node maps the second token to the second code. The encoding dictionary is updated based on inserting a third node between the first node and the second node. The third node maps a third token to a third code that is greater than the first code and less than the second code.
    Type: Grant
    Filed: November 21, 2017
    Date of Patent: June 1, 2021
    Assignee: Oracle International Corporation
    Inventors: Georgios Giannikis, Seema Sundara, Sabina Petride, Nipun Agarwal
  • Patent number: 10810195
    Abstract: Techniques related to distributed relational dictionaries are disclosed. In some embodiments, one or more non-transitory storage media store a sequence of instructions which, when executed by one or more computing devices, cause performance of a method. The method involves generating, by a query optimizer at a distributed database system (DDS), a query execution plan (QEP) for generating a code dictionary and a column of encoded database data. The QEP specifies a sequence of operations for generating the code dictionary. The code dictionary is a database table. The method further involves receiving, at the DDS, a column of unencoded database data from a data source that is external to the DDS. The DDS generates the code dictionary according to the QEP. Furthermore, based on joining the column of unencoded database data with the code dictionary, the DDS generates the column of encoded database data according to the QEP.
    Type: Grant
    Filed: January 3, 2018
    Date of Patent: October 20, 2020
    Assignee: Oracle International Corporation
    Inventors: Anantha Kiran Kandukuri, Seema Sundara, Sam Idicula, Pit Fender, Nitin Kunal, Sabina Petride, Georgios Giannikis, Nipun Agarwal
  • Publication number: 20190205446
    Abstract: Techniques related to distributed relational dictionaries are disclosed. In some embodiments, one or more non-transitory storage media store a sequence of instructions which, when executed by one or more computing devices, cause performance of a method. The method involves generating, by a query optimizer at a distributed database system (DDS), a query execution plan (QEP) for generating a code dictionary and a column of encoded database data. The QEP specifies a sequence of operations for generating the code dictionary. The code dictionary is a database table. The method further involves receiving, at the DDS, a column of unencoded database data from a data source that is external to the DDS. The DDS generates the code dictionary according to the QEP. Furthermore, based on joining the column of unencoded database data with the code dictionary, the DDS generates the column of encoded database data according to the QEP.
    Type: Application
    Filed: January 3, 2018
    Publication date: July 4, 2019
    Inventors: Anantha Kiran Kandukuri, Seema Sundara, Sam Idicula, Pit Fender, Nitin Kunal, Sabina Petride, Georgios Giannikis, Nipun Agarwal
  • Publication number: 20190155925
    Abstract: Techniques related to a sparse dictionary tree are disclosed. In some embodiments, computing device(s) execute instructions, which are stored on non-transitory storage media, for performing a method. The method comprises storing an encoding dictionary as a token-ordered tree comprising a first node and a second node, which are adjacent nodes. The token-ordered tree maps ordered tokens to ordered codes. The ordered tokens include a first token and a second token. The ordered codes include a first code and a second code, which are non-consecutive codes. The first node maps the first token to the first code. The second node maps the second token to the second code. The encoding dictionary is updated based on inserting a third node between the first node and the second node. The third node maps a third token to a third code that is greater than the first code and less than the second code.
    Type: Application
    Filed: November 21, 2017
    Publication date: May 23, 2019
    Inventors: Georgios Giannikis, Seema Sundara, Sabina Petride, Nipun Agarwal
  • Patent number: 9348839
    Abstract: A distributed data store includes a storage layer comprised of a plurality of storage nodes, each storage node configured to receive and queue table operations, and an aggregation layer comprised of aggregator nodes configured to route table operations to storage nodes in the storage layer and merge results of table operations returned by storage nodes in the storage layer. Each storage node includes in part scan threads dedicated to continuous and full scanning of segments of a table that are respectively associated with processor cores upon which such scan threads are running.
    Type: Grant
    Filed: February 12, 2015
    Date of Patent: May 24, 2016
    Assignee: Amadeus S.A.S.
    Inventors: Dietmar Fauser, Jeremy Meyer, Cedric Florimond, Donald Kossmann, Gustavo Alonso, Georgios Giannikis, Philipp Unterbrunner
  • Publication number: 20150154225
    Abstract: A distributed data store includes a storage layer comprised of a plurality of storage nodes, each storage node configured to receive and queue table operations, and an aggregation layer comprised of aggregator nodes configured to route table operations to storage nodes in the storage layer and merge results of table operations returned by storage nodes in the storage layer. Each storage node includes in part scan threads dedicated to continuous and full scanning of segments of a table that are respectively associated with processor cores upon which such scan threads are running.
    Type: Application
    Filed: February 12, 2015
    Publication date: June 4, 2015
    Inventors: Dietmar Fauser, Jeremy Meyer, Cedric Florimond, Donald Kossmann, Gustavo Alonso, Georgios Giannikis, Philipp Unterbrunner
  • Patent number: 8990335
    Abstract: A method for storing and retrieving data in a storage node of a data store and storage node of a data store, storing in main-memory at least one segment of a relational table. The storage node includes at least one computational core running at least one scan thread each dedicated to the scanning of one of the at least one segment. At least one scan thread uniquely, continuously and exhaustively scans the dedicated segment of the relational table. The storage node receives and processes batches of query and update operations for the at least one segment of the relational table. The query and update operations of a batch are re-indexed at beginning of each scan by the scan thread. Then, the indexed query and update operations of a batch are independently joined to data records of said segment that match with predicates of the indexed query and update operations.
    Type: Grant
    Filed: August 23, 2010
    Date of Patent: March 24, 2015
    Assignee: Amadeus S.A.S.
    Inventors: Dietmar Fauser, Jeremy Meyer, Cedric Florimond, Donald Kossmann, Gustavo Alonso, Georgios Giannikis, Philipp Unterbrunner
  • Publication number: 20120197868
    Abstract: A method for storing and retrieving data in a storage node of a data store and storage node of a data store, storing in main-memory at least one segment of a relational table The storage node includes at least one computational core running at least one scan thread each dedicated to the scanning of one of the at least one segment. At least one scan thread uniquely, continuously and exhaustively scans the dedicated segment of the relational table. The storage node receives and processes batches of query and update operations for the at least one segment of the relational table. The query and update operations of a batch are re-indexed at beginning of each scan by the scan thread. Then, the indexed query and update operations of a batch are independently joined to data records of said segment that match with predicates of the indexed query and update operations.
    Type: Application
    Filed: August 23, 2010
    Publication date: August 2, 2012
    Inventors: Dietmar Fauser, Jeremy Meyer, Cedric Florimond, Donald Kossmann, Gustavo Alonso, Georgios Giannikis, Philipp Unterbrunner