Patents by Inventor Chi Kim Hoang

Chi Kim Hoang 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: 11860830
    Abstract: Columns of a table are stored in either row-major format or column-major format in an in-memory DBMS. For a given table, one set of columns is stored in column-major format; another set of columns for a table are stored in row-major format. This way of storing columns of a table is referred to herein as dual-major format. In addition, a row in a dual-major table is updated “in-place”, that is, updates are made directly to column-major columns without creating an interim row-major form of the column-major columns of the row. Users may submit database definition language (“DDL”) commands that declare the row-major columns and column-major columns of a table.
    Type: Grant
    Filed: February 27, 2019
    Date of Patent: January 2, 2024
    Assignee: Oracle International Corporation
    Inventors: Tirthankar Lahiri, Martin A. Reames, Kirk Edson, Neelam Goyal, Kao Makino, Anindya Patthak, Dina Thomas, Subhradyuti Sarkar, Chi-Kim Hoang, Qingchun Jiang
  • Patent number: 11829349
    Abstract: A database is stored as a plurality of database shards in a distributed database grid comprising a plurality of grid elements, each including a mid-tier database system. A first grid element receives, from an application executing in the same memory as a mid-tier database system of the first grid element, a first database transaction including at least one database operation on specific data stored in a first database shard that belongs to the first grid element. The first grid element performs and commits the first database transaction without participation of another grid element of the plurality of grid elements. The first grid element receives a second database transaction that requires access to another database shard that does not belong to the first grid element. Multiple grid elements of the plurality of grid elements perform the second database transaction and commit the second database transaction using a two-phase commit protocol.
    Type: Grant
    Filed: May 11, 2015
    Date of Patent: November 28, 2023
    Assignee: Oracle International Corporation
    Inventors: Tirthankar Lahiri, Derek Taylor, Nagender Bandi, John Miller, Chi-Kim Hoang, Ryder Rishel, Varadarajan Aravamudhan, Chih-Ping Wang, Susan Cheung, Samuel Drake, Paul Tuck, David Aspinwall
  • Patent number: 11188516
    Abstract: An approach for consistent database recovery for distributed database systems uses “synchronization points”. A synchronization point is a global timestamp for which across all nodes of a distributed database system, the nodes have stored change records for any transaction occurring at and before the synchronization point in persistent logs. Each node may employ asynchronous flushing. However, on a periodic basis, each node coordinates to establish a synchronization point, which may entail ensuring change records for transactions that committed at or before the synchronization point are stored in persistent logs. In effect, a synchronization point represents that any transaction committed at or before the synchronization point has been durably committed.
    Type: Grant
    Filed: July 25, 2019
    Date of Patent: November 30, 2021
    Assignee: Oracle International Corproation
    Inventors: Derek Taylor, Chi-Kim Hoang, Yu-Han Chou, Varadarajan Aravamudhan
  • Patent number: 11176115
    Abstract: Techniques are described for performing dependency locking to enable parallel execution of database server processes modifying the same object. In an embodiment, a DBMS receives a request to execute an operation on its managed database. The request may include an object identifier and a version identifier for a version of a database object, which is required for the successful execution of the operation on the database. The required version of the database object may not exist and may be generated only after the execution of another, second, operation on the database. The first database server process initiates execution of the earlier received operation on the database. The first database server process queries the first database for the version of the particular database object and determines that the version of the database object does not exist yet, in one embodiment.
    Type: Grant
    Filed: May 31, 2019
    Date of Patent: November 16, 2021
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Chi Kim Hoang, Chih-Ping Wang, Nagender Bandi, John Miller
  • Patent number: 10756759
    Abstract: In column domain dictionary compression, column values in one or more columns are tokenized by a single dictionary. The domain of the dictionary is the entire set of columns. A dictionary may not only map a token to a tokenized value, but also to a count (“token count”) of the number of occurrences of the token and corresponding tokenized value in the dictionary's domain. Such information may be used to compute queries on the base table.
    Type: Grant
    Filed: September 2, 2011
    Date of Patent: August 25, 2020
    Assignee: Oracle International Corporation
    Inventors: Tirthankar Lahiri, Chi-Kim Hoang, Dina Thomas, Kirk Meredith Edson, Subhradyuti Sarkar, Mark McAuliffe, Marie-Anne Neimat, Chih-Ping Wang
  • Publication number: 20200125549
    Abstract: Techniques are described for performing dependency locking to enable parallel execution of database server processes modifying the same object. In an embodiment, a DBMS receives a request to execute an operation on its managed database. The request may include an object identifier and a version identifier for a version of a database object, which is required for the successful execution of the operation on the database. The required version of the database object may not exist and may be generated only after the execution of another, second, operation on the database. The first database server process initiates execution of the earlier received operation on the database. The first database server process queries the first database for the version of the particular database object and determines that the version of the database object does not exist yet, in one embodiment.
    Type: Application
    Filed: May 31, 2019
    Publication date: April 23, 2020
    Inventors: CHI KIM HOANG, CHIH-PING WANG, NAGENDER BANDI, JOHN MILLER
  • Publication number: 20200065297
    Abstract: An approach for consistent database recovery for distributed database systems uses “synchronization points”. A synchronization point is a global timestamp for which across all nodes of a distributed database system, the nodes have stored change records for any transaction occurring at and before the synchronization point in persistent logs. Each node may employ asynchronous flushing. However, on a periodic basis, each node coordinates to establish a synchronization point, which may entail ensuring change records for transactions that committed at or before the synchronization point are stored in persistent logs. In effect, a synchronization point represents that any transaction committed at or before the synchronization point has been durably committed.
    Type: Application
    Filed: July 25, 2019
    Publication date: February 27, 2020
    Inventors: DEREK TAYLOR, CHI-KIM HOANG, YU-HAN CHOU, VARADARAJAN ARAVAMUDHAN
  • Publication number: 20190197026
    Abstract: Columns of a table are stored in either row-major format or column-major format in an in-memory DBMS. For a given table, one set of columns is stored in column-major format; another set of columns for a table are stored in row-major format. This way of storing columns of a table is referred to herein as dual-major format. In addition, a row in a dual-major table is updated “in-place”, that is, updates are made directly to column-major columns without creating an interim row-major form of the column-major columns of the row. Users may submit database definition language (“DDL”) commands that declare the row-major columns and column-major columns of a table.
    Type: Application
    Filed: February 27, 2019
    Publication date: June 27, 2019
    Inventors: TIRTHANKAR LAHIRI, MARTIN A. REAMES, KIRK EDSON, NEELAM GOYAL, KAO MAKINO, ANINDYA PATTHAK, DINA THOMAS, SUBHRADYUTI SARKAR, CHI-KIM HOANG, QINGCHUN JIANG
  • Patent number: 10311154
    Abstract: Columns of a table are stored in either row-major format or column-major format in an in-memory DBMS. For a given table, one set of columns is stored in column-major format; another set of columns for a table are stored in row-major format. This way of storing columns of a table is referred to herein as dual-major format. In addition, a row in a dual-major table is updated “in-place”, that is, updates are made directly to column-major columns without creating an interim row-major form of the column-major columns of the row. Users may submit database definition language (“DDL”) commands that declare the row-major columns and column-major columns of a table.
    Type: Grant
    Filed: December 5, 2013
    Date of Patent: June 4, 2019
    Assignee: Oracle International Corporation
    Inventors: Tirthankar Lahiri, Martin A. Reames, Kirk Edson, Neelam Goyal, Kao Makino, Anindya Patthak, Dina Thomas, Subhradyuti Sarkar, Chi-Kim Hoang, Qingchun Jiang
  • Patent number: 9569475
    Abstract: A plurality of mid-tier databases form a single, consistent cache grid for data in one or more backend data sources, such as a database system. The mid-tier databases may be standard relational databases. Cache agents at each mid-tier database swap in data from the backend database as needed. Ownership locks maintain consistency in the cache grid. Cache agents prevent database operations that will modify cached data in a mid-tier database unless and until ownership of the cached data can be acquired for the mid-tier database. Cache groups define what backend data may be cached, as well as a general structure in which the backend data is to be cached. Metadata for cache groups is shared to ensure that data is cached in the same form throughout the entire grid. Ownership of cached data can then be tracked through a mapping of cached instances of data to particular mid-tier databases.
    Type: Grant
    Filed: March 13, 2013
    Date of Patent: February 14, 2017
    Assignee: Oracle International Corporation
    Inventors: Chi-Kim Hoang, Tirthankar Lahiri, Marie-Anne Neimat, Chih-Ping Wang, John E. Miller, Dilys Thomas, Nagender Bandi, Susan Cheng
  • Publication number: 20160335310
    Abstract: A database is stored as a plurality of database shards in a distributed database grid comprising a plurality of grid elements, each including a mid-tier database system. A first grid element receives, from an application executing in the same memory as a mid-tier database system of the first grid element, a first database transaction including at least one database operation on specific data stored in a first database shard that belongs to the first grid element. The first grid element performs and commits the first database transaction without participation of another grid element of the plurality of grid elements. The first grid element receives a second database transaction that requires access to another database shard that does not belong to the first grid element. Multiple grid elements of the plurality of grid elements perform the second database transaction and commit the second database transaction using a two-phase commit protocol.
    Type: Application
    Filed: May 11, 2015
    Publication date: November 17, 2016
    Inventors: Tirthankar Lahiri, Derek Taylor, Nagender Bandi, John Miller, Chi-Kim Hoang, Ryder Rishel, Varadarajan Aravamudhan, Chih-Ping Wang, Susan Cheung, Samuel Drake, Paul Tuck, David Aspinwall
  • Publication number: 20150088813
    Abstract: Columns of a table are stored in either row-major format or column-major format in an in-memory DBMS. For a given table, one set of columns is stored in column-major format; another set of columns for a table are stored in row-major format. This way of storing columns of a table is referred to herein as dual-major format. In addition, a row in a dual-major table is updated “in-place”, that is, updates are made directly to column-major columns without creating an interim row-major form of the column-major columns of the row. Users may submit database definition language (“DDL”) commands that declare the row-major columns and column-major columns of a table.
    Type: Application
    Filed: December 5, 2013
    Publication date: March 26, 2015
    Applicant: Oracle International Corporation
    Inventors: Tirthankar Lahiri, Martin A. Reames, Kirk Edson, Neelam Goyal, Kao Makino, Anindya Patthak, Dina Thomas, Subhradyuti Sarkar, Chi-Kim Hoang, Qingchun Jiang
  • Publication number: 20130060780
    Abstract: In column domain dictionary compression, column values in one or more columns are tokenized by a single dictionary. The domain of the dictionary is the entire set of columns. A dictionary may not only map a token to a tokenized value, but also to a count (“token count”) of the number of occurrences of the token and corresponding tokenized value in the dictionary's domain. Such information may be used to compute queries on the base table.
    Type: Application
    Filed: September 2, 2011
    Publication date: March 7, 2013
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Tirthankar Lahiri, Chi-Kim Hoang, Dina Thomas, Kirk Meredith Edson, Subhradyuti Sarkar, Mark McAuliffe, Marie-Anne Neimat, Chih-Ping Wang
  • Patent number: 8010497
    Abstract: A two copy versioning scheme is proposed. The scheme provides efficient implementation for a high read load database and eliminates read dependencies. The versioning scheme provides efficient implementation for transactions executing under ANSI READ COMMITTED isolation, and is extensible to serializable isolation. The two-copy versioning scheme is garbage free meaning that all versions of data records are used during execution and is adapted to index scanning operations. A “deferred delete” scheme allows read transactions to complete data deallocation operations. Statements that require “snapshots” are efficiently supported.
    Type: Grant
    Filed: June 1, 2007
    Date of Patent: August 30, 2011
    Assignee: Oracle International Corporation
    Inventors: Sanjay Verma, Mark L. McAuliffe, Sherry Listgarten, Sibsankar Haldar, Chi-Kim Hoang
  • Patent number: 7739244
    Abstract: Clients are permitted to directly attach to a client server system. An oplog management system tracks changes as clients make the changes to control structures of the direct connection client server system. The Oplogging system stores changes in oplogs. Then, if a client fails, the Oplogging system can repair the control structures, either by undoing the changes made by the client, or else completing the changes in place of the client; depending upon principles defined.
    Type: Grant
    Filed: October 14, 2004
    Date of Patent: June 15, 2010
    Assignee: Oracle International Corporation
    Inventors: Sanjay Verma, Chi-Kim Hoang, Mark Lawrence McAuliffe, Kirk Meredith Edson
  • Patent number: 7680794
    Abstract: New lock modes are based on the concept of neighborhoods and are applied to spaces in indexes. The new lock modes include a Read, or shared, neighborhood (Snei) lock mode and a Write neighborhood (Xnei) that enhance concurrency among non-serializable transactions.
    Type: Grant
    Filed: June 4, 2007
    Date of Patent: March 16, 2010
    Assignee: Oracle International Corporation
    Inventors: Sanjay Verma, Sibsankar Haldar, Chi-Kim Hoang, Sherry Listgarten
  • Publication number: 20080222111
    Abstract: A fully transactional mid-tier database system services database transactions. A cache manager dynamically loads database entries from a fully transactional backend-tier database system into the mid-tier database system according to the received database transactions. Time based aging or usage based aging can be assigned to selected tables in the mid-tier database system. Database entries contained in the selected tables are then automatically removed according to assigned aging constraints.
    Type: Application
    Filed: February 12, 2008
    Publication date: September 11, 2008
    Applicant: Oracle International Corporation
    Inventors: Chi Kim Hoang, Chih-Ping Wang, John Ernest Miller, Marie-Anne Neimat, Susan Sokeng Cheung
  • Publication number: 20070233683
    Abstract: A two copy versioning scheme is proposed. The scheme provides efficient implementation for a high read load database and eliminates read dependencies. The versioning scheme provides efficient implementation for transactions executing under ANSI READ COMMITTED isolation, and is extensible to serializable isolation. The two-copy versioning scheme is garbage free meaning that all versions of data records are used during execution and is adapted to index scanning operations. A “deferred delete” scheme allows read transactions to complete data deallocation operations. Statements that require “snapshots” are efficiently supported.
    Type: Application
    Filed: June 1, 2007
    Publication date: October 4, 2007
    Applicant: Oracle International Corporation
    Inventors: Sanjay Verma, Mark McAuliffe, Sherry Listgarten, Sibsankar Haldar, Chi-Kim Hoang
  • Publication number: 20070233684
    Abstract: New lock modes are based on the concept of neighborhoods and are applied to spaces in indexes. The new lock modes include a Read, or shared, neighborhood (Snei) lock mode and a Write neighborhood (Xnei) that enhance concurrency among non-serializable transactions.
    Type: Application
    Filed: June 4, 2007
    Publication date: October 4, 2007
    Applicant: Oracle International Corporation
    Inventors: Sanjay Verma, Sibsankar Haldar, Chi-Kim Hoang, Sherry Listgarten
  • Patent number: 7269588
    Abstract: New lock modes are based on the concept of neighborhoods and are applied to spaces in indexes. The new lock modes include a Read, or shared, neighborhood (Snei) lock mode and a Write neighborhood (Xnei) that enhance concurrency among non-serializable transactions.
    Type: Grant
    Filed: September 24, 2003
    Date of Patent: September 11, 2007
    Assignee: Oracle International Corporation
    Inventors: Sanjay Verma, Sibsankar Haldar, Chi-Kim Hoang, Sherry Listgarten