Patents by Inventor Prasanna Rajaperumal

Prasanna Rajaperumal 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: 10963443
    Abstract: Automatic clustering of a database table is disclosed. A method for automatic clustering of a database table includes receiving an indication that a data modification task has been executed on a table and determining whether the table is sufficiently clustered. The method includes, in response to determining the table is not sufficiently clustered, selecting one or more micro-partitions of the table to be reclustered. The method includes assigning each of the one or more micro-partitions to an execution node to be reclustered.
    Type: Grant
    Filed: July 1, 2020
    Date of Patent: March 30, 2021
    Assignee: Snowflake Inc.
    Inventors: Jiaqi Yan, Thierry Cruanes, Jeffrey Rosen, William Waddington, Prasanna Rajaperumal, Abdul Munir
  • Patent number: 10956394
    Abstract: The subject technology determines whether a table is sufficiently clustered. The subject technology in response to determining the table is not sufficiently clustered, selects one or more micro-partitions of the table to be reclustered. The subject technology constructs a data structure for the table. The subject technology extracts minimum and maximum endpoints for each micro-partition in the data structure. The subject technology sorts each of one or more peaks in the data structure based on height. The subject technology sorts overlapping micro-partitions based on width. The subject technology selects based on which micro-partitions are within the tallest peaks of the one or more peaks and further based on which of the overlapping micro-partitions have the widest widths.
    Type: Grant
    Filed: July 28, 2020
    Date of Patent: March 23, 2021
    Assignee: Snowflake Inc.
    Inventors: Jiaqi Yan, Thierry Cruanes, Jeffrey Rosen, William Waddington, Prasanna Rajaperumal, Abdul Munir
  • Patent number: 10891288
    Abstract: Systems, methods, and devices for generating and updating cross-account materialized views in multiple tenant database systems. A method includes defining a share object in a first account wherein the share object includes data associated with the first account. The method includes granting cross-account access rights to the share object to a second account such that the second account has access to the share object without copying the share object. The method includes generating a materialized view over the share object. The method includes updating the data associated with the first account. The method includes identifying whether the materialized view is stale with respect to the share object by merging the materialized view and the share object.
    Type: Grant
    Filed: April 1, 2020
    Date of Patent: January 12, 2021
    Assignee: Snowflake Inc.
    Inventors: Prasanna Rajaperumal, Thierry Cruanes, Allison Waingold Lee, Igor Demura, Jiaqi Yan, Benoit Dageville
  • Patent number: 10860381
    Abstract: Embodiments of the present disclosure may provide dynamic and fair assignment techniques for allocating resources on a demand basis. Assignment control may be separated into at least two components: a local component and a global component. Each component may have an active dialog with each other; the dialog may include two aspects: 1) a demand for computing resources, and 2) a total allowed number of computing resources. The global component may allocate resources from a pool of resources to different local components, and the local components in turn may assign their allocated resources to local competing requests. The allocation may also be throttled or limited at various levels.
    Type: Grant
    Filed: May 14, 2020
    Date of Patent: December 8, 2020
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Igor Demura, Varun Ganesh, Prasanna Rajaperumal, Libo Wang, Jiaqi Yan
  • Publication number: 20200379996
    Abstract: Systems, methods, and devices for generating and updating cross-account materialized views in multiple tenant database systems. A methods method includes defining a share object in a first account wherein the share object includes data associated with the first account. The method includes granting cross-account access rights to the share object to a second account such that the second account has access to the share object without copying the share object. The method includes generating a materialized view over the share object. The method includes updating the data associated with the first account. The method includes identifying whether the materialized view is stale with respect to the share object by merging the materialized view and the share object.
    Type: Application
    Filed: April 1, 2020
    Publication date: December 3, 2020
    Inventors: Prasanna Rajaperumal, Thierry Cruanes, Allison Waingold Lee, Igor Demura, Jiaqi Yan, Benoit Dageville
  • Publication number: 20200379995
    Abstract: Systems, methods, and devices for sharing materialized views in multiple tenant database systems. A method includes defining a materialized view over a source table that is associated with a first account of a multiple tenant database. The method includes defining cross-account access rights to the materialized view to a second account such that that second account can read the materialized view without copying the materialized view. The method includes modifying the source table for the materialized view. The method includes identifying whether the materialized view is stale with respect to the source table by merging the materialized view and the source table.
    Type: Application
    Filed: March 26, 2020
    Publication date: December 3, 2020
    Inventors: Prasanna Rajaperumal, Thierry Cruanes, Allison Waingold Lee, Igor Demura, Jiaqi Yan, Benoit Dageville
  • Publication number: 20200379993
    Abstract: Systems, methods, and devices for generating and updating cross-account materialized views in multiple tenant database systems. A methods includes defining a share object in a first account wherein the share object includes data associated with the first account. The method includes granting cross-account access rights to the share object to a second account such that the second account has access to the share object without copying the share object. The method includes generating a materialized view over the share object. The method includes updating the data associated with the first account. The method includes identifying whether the materialized view is stale with respect to the share object by merging the materialized view and the share object.
    Type: Application
    Filed: May 31, 2019
    Publication date: December 3, 2020
    Inventors: Prasanna Rajaperumal, Thierry Cruanes, Allison Waingold Lee, Igor Demura, Jiaqi Yan, Benoit Dageville
  • Publication number: 20200379994
    Abstract: Systems, methods, and devices for sharing materialized views in multiple tenant database systems. A method includes defining a materialized view over a source table that is associated with a first account of a multiple tenant database. The method includes defining cross-account access rights to the materialized view to a second account such that that second account can read the materialized view without copying the materialized view. The method includes modifying the source table for the materialized view. The method includes identifying whether the materialized view is stale with respect to the source table by merging the materialized view and the source table.
    Type: Application
    Filed: May 31, 2019
    Publication date: December 3, 2020
    Inventors: Prasanna Rajaperumal, Thierry Cruanes, Allison Waingold Lee, Igor Demura, Jiaqi Yan, Benoit Dageville
  • Publication number: 20200379997
    Abstract: The subject technology defines a materialized view over a source table that is associated with a first account of a database. The subject technology defines cross-account access rights to the materialized view for a second account. The subject technology modifies the source table for the materialized view. The subject technology identifies that the materialized view is stale with respect to the source table by merging the materialized view and the source table. The subject technology causes the materialized view to be refreshed with respect to the source table.
    Type: Application
    Filed: July 31, 2020
    Publication date: December 3, 2020
    Inventors: Prasanna Rajaperumal, Thierry Cruanes, Allison Waingold Lee, Igor Demura, Jiaqi Yan, Benoit Dageville
  • Patent number: 10853345
    Abstract: Automatic clustering of a database table is disclosed. A method for automatic clustering of a database table includes receiving an indication that a data modification task has been executed on a table and determining whether the table is sufficiently clustered. The method includes, in response to determining the table is not sufficiently clustered, selecting one or more micro-partitions of the table to be reclustered. The method includes assigning each of the one or more micro-partitions to an execution node to be reclustered.
    Type: Grant
    Filed: December 17, 2019
    Date of Patent: December 1, 2020
    Assignee: Snowflake Inc.
    Inventors: Jiaqi Yan, Thierry Cruanes, Jeffrey Rosen, William Waddington, Prasanna Rajaperumal, Abdul Munir
  • Publication number: 20200356543
    Abstract: The subject technology determines whether a table is sufficiently clustered. The subject technology in response to determining the table is not sufficiently clustered, selects one or more micro-partitions of the table to be reclustered. The subject technology constructs a data structure for the table. The subject technology extracts minimum and maximum endpoints for each micro-partition in the data structure. The subject technology sorts each of one or more peaks in the data structure based on height. The subject technology sorts overlapping micro-partitions based on width. The subject technology selects based on which micro-partitions are within the tallest peaks of the one or more peaks and further based on which of the overlapping micro-partitions have the widest widths.
    Type: Application
    Filed: July 28, 2020
    Publication date: November 12, 2020
    Inventors: Jiaqi Yan, Thierry Cruanes, Jeffrey Rosen, William Waddington, Prasanna Rajaperumal, Abdul Munir
  • Publication number: 20200334222
    Abstract: Automatic clustering of a database table is disclosed. A method for automatic clustering of a database table includes receiving an indication that a data modification task has been executed on a table and determining whether the table is sufficiently clustered. The method includes, in response to determining the table is not sufficiently clustered, selecting one or more micro-partitions of the table to be reclustered. The method includes assigning each of the one or more micro-partitions to an execution node to be reclustered.
    Type: Application
    Filed: July 1, 2020
    Publication date: October 22, 2020
    Inventors: Jiaqi Yan, Thierry Cruanes, Jeffrey Rosen, William Waddington, Prasanna Rajaperumal, Abdul Munir
  • Publication number: 20200327124
    Abstract: Resource provisioning systems and methods are described. In an embodiment, a system includes a plurality of shared storage devices collectively storing database data, an execution platform, and a compute service manager. The compute service manager is configured to determine a task to be executed in response to a trigger event and determine a query plan for executing the task, wherein the query plan comprises a plurality of discrete subtasks. The compute service manager is further configured to assign the plurality of discrete subtasks to one or more nodes of a plurality of nodes of the execution platform, determine whether execution of the task is complete, and in response to determining the execution of the task is complete, store a record in the plurality of shared storage devices indicating the task was completed.
    Type: Application
    Filed: January 31, 2020
    Publication date: October 15, 2020
    Inventors: Jeffrey Rosen, Abdul Munir, Jiaqi Yan, William Waddington, Prasanna Rajaperumal, Thierry Cruanes
  • Publication number: 20200327123
    Abstract: Resource provisioning systems and methods are described. In an embodiment, a system includes a plurality of shared storage devices collectively storing database data, an execution platform, and a compute service manager. The compute service manager is configured to determine a task to be executed in response to a trigger event and determine a query plan for executing the task, wherein the query plan comprises a plurality of discrete subtasks. The compute service manager is further configured to assign the plurality of discrete subtasks to one or more nodes of a plurality of nodes of the execution platform, determine whether execution of the task is complete, and in response to determining the execution of the task is complete, store a record in the plurality of shared storage devices indicating the task was completed.
    Type: Application
    Filed: April 10, 2019
    Publication date: October 15, 2020
    Inventors: Jeffrey Rosen, Abdul Munir, Jiaqi Yan, William Waddington, Prasanna Rajaperumal, Thierry Cruanes
  • Publication number: 20200133937
    Abstract: Systems, methods, and devices for incrementally refreshing a materialized view are disclosed. A method includes generating a materialized view based on a source table. The method includes merging the source table and the materialized view to generate a merged table to identify whether an update has been executed on the source table that is not reflected in the materialized view. The method includes, in response to detecting an update made to the source table that is not reflected in the materialized view, applying the update to the materialized view.
    Type: Application
    Filed: October 24, 2019
    Publication date: April 30, 2020
    Inventors: Thierry Cruanes, Benoit Dageville, Prasanna Rajaperumal, Jiaqi Yan
  • Patent number: 10628415
    Abstract: Systems, methods, and devices for generating and updating cross-account materialized views in multiple tenant database systems. A methods includes defining a share object in a first account wherein the share object includes data associated with the first account. The method includes granting cross-account access rights to the share object to a second account such that the second account has access to the share object without copying the share object. The method includes generating a materialized view over the share object. The method includes updating the data associated with the first account. The method includes identifying whether the materialized view is stale with respect to the share object by merging the materialized view and the share object.
    Type: Grant
    Filed: December 6, 2019
    Date of Patent: April 21, 2020
    Assignee: Snowflake Inc.
    Inventors: Prasanna Rajaperumal, Thierry Cruanes, Allison Waingold Lee, Igor Demura, Jiaqi Yan, Benoit Dageville
  • Publication number: 20200117650
    Abstract: Automatic clustering of a database table is disclosed. A method for automatic clustering of a database table includes receiving an indication that a data modification task has been executed on a table and determining whether the table is sufficiently clustered. The method includes, in response to determining the table is not sufficiently clustered, selecting one or more micro-partitions of the table to be reclustered. The method includes assigning each of the one or more micro-partitions to an execution node to be reclustered.
    Type: Application
    Filed: December 17, 2019
    Publication date: April 16, 2020
    Inventors: Jiaqi Yan, Thierry Cruanes, Jeffrey Rosen, William Waddington, Prasanna Rajaperumal, Abdul Munir
  • Publication number: 20200026695
    Abstract: Automatic clustering of a database table is disclosed. A method for automatic clustering of a database table includes receiving an indication that a data modification task has been executed on a table and determining whether the table is sufficiently clustered. The method includes, in response to determining the table is not sufficiently clustered, selecting one or more micro-partitions of the table to be reclustered. The method includes assigning each of the one or more micro-partitions to an execution node to be reclustered.
    Type: Application
    Filed: July 17, 2019
    Publication date: January 23, 2020
    Inventors: Jiaqi Yan, Thierry Cruanes, Jeffrey Rosen, William Waddington, Prasanna Rajaperumal, Abdul Munir