Patents by Inventor Varun Ganesh

Varun Ganesh 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: 20210374135
    Abstract: Embodiments of the present disclosure may provide a dynamic query execution model. This query execution model may provide acceleration by scaling out parallel parts of a query (also referred to as a fragment) to additional computing resources, for example computing resources leased from a pool of computing resources. Execution of the parts of the query may be coordinated by a parent query coordinator, where the query originated, and a fragment query coordinator.
    Type: Application
    Filed: June 1, 2020
    Publication date: December 2, 2021
    Inventors: Thierry Cruanes, Igor Demura, Varun Ganesh, Prasanna Rajaperumal, Libo Wang, Jiaqi Yan
  • Publication number: 20210357263
    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: Application
    Filed: June 9, 2021
    Publication date: November 18, 2021
    Inventors: Thierry Cruanes, Igor Demura, Varun Ganesh, Prasanna Rajaperumal, Libo Wang, Jiaqi Yan
  • Patent number: 11163768
    Abstract: Embodiments of the present disclosure may provide a dynamic query execution model with fault tolerance and failure recovery techniques. Embodiments of the present disclosure may utilize checkpoints to map processed output files to their corresponding input files. Therefore, if an error occurs in processing one or more files, the system may only need to reschedule processing of selected file(s).
    Type: Grant
    Filed: June 1, 2020
    Date of Patent: November 2, 2021
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Igor Demura, Varun Ganesh, Prasanna Rajaperumal, Libo Wang, Jiaqi Yan
  • Patent number: 11055280
    Abstract: Systems, methods, and devices for batch ingestion of data into a table of a database. A method includes determining a notification indicating a presence of a user file received from a client account to be ingested into a database. The method includes identifying data in the user file and identifying a target table of the database to receive the data in the user file. The method includes generating an ingest task indicating the data and the target table. The method includes assigning the ingest task to an execution node of an execution platform, wherein the execution platform comprises a plurality of execution nodes operating independent of a plurality of shared storage devices collectively storing database data. The method includes registering metadata concerning the target table in a metadata store after the data has been fully committed to the target table by the execution node.
    Type: Grant
    Filed: November 27, 2018
    Date of Patent: July 6, 2021
    Assignee: Snowflake Inc.
    Inventors: Jiansheng Huang, Jiaxing Liang, Scott Ziegler, Haowei Yu, Benoit Dageville, Varun Ganesh
  • Patent number: 11055142
    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: October 30, 2020
    Date of Patent: July 6, 2021
    Assignee: Snowflake Inc.
    Inventors: Thierry Cruanes, Igor Demura, Varun Ganesh, Prasanna Rajaperumal, Libo Wang, Jiaqi Yan
  • Patent number: 10997163
    Abstract: The subject technology at a data system, an ingest request to ingest one or more files into a table. The subject technology, after obtaining the ingest request and prior to the ingesting of the one or more files, persists the one or more files in a first file queue that corresponds to the table, the first file queue further corresponding to a client account, and the data system further comprising a second file queue that corresponds to both a second client account and a second table. The subject technology ingests, by one or more execution nodes, the one or more files into one or more micro-partitions of the table, each of the one or more micro-partitions comprising contiguous units of storage of a storage device.
    Type: Grant
    Filed: July 30, 2020
    Date of Patent: May 4, 2021
    Assignee: Snowflake Inc.
    Inventors: Benoit Dageville, Varun Ganesh, Jiansheng Huang, Jiaxing Liang, Haowei Yu, Scott Ziegler
  • Patent number: 10977245
    Abstract: The subject technology obtains, at a database system, an ingest request to ingest one or more files into a table of a database. The subject technology, after obtaining the ingest request and prior to the ingesting of the one or more files, persists the one or more files in a file queue that corresponds to the table. The subject technology assigns the one or more files to one or more execution nodes to be ingested into the table. The subject technology operates an ingest puller to poll the file queue. The subject technology ingests, by the one or more execution nodes, the one or more files into one or more micro-partitions of the table via one or more pipes.
    Type: Grant
    Filed: July 29, 2020
    Date of Patent: April 13, 2021
    Assignee: Snowflake Inc.
    Inventors: Benoit Dageville, Varun Ganesh, Jiansheng Huang, Jiaxing Liang, Haowei Yu, Scott Ziegler
  • Patent number: 10896172
    Abstract: Systems, methods, and devices for batch ingestion of data into a table of a database. A method includes determining a notification indicating a presence of a user file received from a client account to be ingested into a database. The method includes identifying data in the user file and identifying a target table of the database to receive the data in the user file. The method includes generating an ingest task indicating the data and the target table. The method includes assigning the ingest task to an execution node of an execution platform, wherein the execution platform comprises a plurality of execution nodes operating independent of a plurality of shared storage devices collectively storing database data. The method includes registering metadata concerning the target table in a metadata store after the data has been fully committed to the target table by the execution node.
    Type: Grant
    Filed: December 19, 2019
    Date of Patent: January 19, 2021
    Assignee: Snowflake Inc.
    Inventors: Benoit Dageville, Varun Ganesh, Jiansheng Huang, Jiaxing Liang, Haowei Yu, Scott Ziegler
  • 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: 20200356551
    Abstract: The subject technology obtains, at a database system, an ingest request to ingest one or more files into a table of a database. The subject technology, after obtaining the ingest request and prior to the ingesting of the one or more files, persists the one or more files in a file queue that corresponds to the table. The subject technology assigns the one or more files to one or more execution nodes to be ingested into the table. The subject technology operates an ingest puller to poll the file queue. The subject technology ingests, by the one or more execution nodes, the one or more files into one or more micro-partitions of the table via one or more pipes.
    Type: Application
    Filed: July 29, 2020
    Publication date: November 12, 2020
    Inventors: Benoit Dageville, Varun Ganesh, Jiansheng Huang, Jiaxing Liang, Haowei Yu, Scott Ziegler
  • Publication number: 20200356552
    Abstract: The subject technology at a data system, an ingest request to ingest one or more files into a table. The subject technology, after obtaining the ingest request and prior to the ingesting of the one or more files, persists the one or more files in a first file queue that corresponds to the table, the first file queue further corresponding to a client account, and the data system further comprising a second file queue that corresponds to both a second client account and a second table. The subject technology ingests, by one or more execution nodes, the one or more files into one or more micro-partitions of the table, each of the one or more micro-partitions comprising contiguous units of storage of a storage device.
    Type: Application
    Filed: July 30, 2020
    Publication date: November 12, 2020
    Inventors: Benoit Dageville, Varun Ganesh, Jiansheng Huang, Jiaxing Liang, Haowei Yu, Scott Ziegler
  • Publication number: 20200125558
    Abstract: Systems, methods, and devices for batch ingestion of data into a table of a database. A method includes determining a notification indicating a presence of a user file received from a client account to be ingested into a database. The method includes identifying data in the user file and identifying a target table of the database to receive the data in the user file. The method includes generating an ingest task indicating the data and the target table. The method includes assigning the ingest task to an execution node of an execution platform, wherein the execution platform comprises a plurality of execution nodes operating independent of a plurality of shared storage devices collectively storing database data. The method includes registering metadata concerning the target table in a metadata store after the data has been fully committed to the target table by the execution node.
    Type: Application
    Filed: December 19, 2019
    Publication date: April 23, 2020
    Inventors: Benoit Dageville, Varun Ganesh, Jiansheng Huang, Jiaxing Liang, Haowei Yu, Scott Ziegler
  • Publication number: 20190220459
    Abstract: Systems, methods, and devices for batch ingestion of data into a table of a database. A method includes determining a notification indicating a presence of a user file received from a client account to be ingested into a database. The method includes identifying data in the user file and identifying a target table of the database to receive the data in the user file. The method includes generating an ingest task indicating the data and the target table. The method includes assigning the ingest task to an execution node of an execution platform, wherein the execution platform comprises a plurality of execution nodes operating independent of a plurality of shared storage devices collectively storing database data. The method includes registering metadata concerning the target table in a metadata store after the data has been fully committed to the target table by the execution node.
    Type: Application
    Filed: March 26, 2019
    Publication date: July 18, 2019
    Inventors: Jiansheng Huang, Jiaxing Liang, Scott Ziegler, Haowei Yu, Benoit Dageville, Varun Ganesh
  • Publication number: 20190163754
    Abstract: Systems, methods, and devices for batch ingestion of data into a table of a database. A method includes determining a notification indicating a presence of a user file received from a client account to be ingested into a database. The method includes identifying data in the user file and identifying a target table of the database to receive the data in the user file. The method includes generating an ingest task indicating the data and the target table. The method includes assigning the ingest task to an execution node of an execution platform, wherein the execution platform comprises a plurality of execution nodes operating independent of a plurality of shared storage devices collectively storing database data. The method includes registering metadata concerning the target table in a metadata store after the data has been fully committed to the target table by the execution node.
    Type: Application
    Filed: November 27, 2018
    Publication date: May 30, 2019
    Inventors: Jiansheng Huang, Jiaxing Liang, Scott Ziegler, Haowei Yu, Benoit Dageville, Varun Ganesh
  • Patent number: 9830091
    Abstract: A storage platform computing apparatus obtains a lifecycle management policy and configuration information for a cloud repository identified in the lifecycle management policy. The configuration information includes at least one access parameter for the cloud repository. The lifecycle management policy is applied to determine when an object is required to be replicated to the cloud repository in response to a received write request. A request to store the object in the cloud repository is generated, when the object is determined to be required to be stored in the cloud repository, wherein the request includes the access parameter. The request is sent to the cloud repository using a representational state transfer (REST) interface associated with the cloud repository.
    Type: Grant
    Filed: February 20, 2015
    Date of Patent: November 28, 2017
    Assignee: NETAPP, INC.
    Inventors: Vivek Venkatesan, Alvin Lam, Varun Ganesh, Emalayan Vairavanathan
  • Publication number: 20160246517
    Abstract: A method, non-transitory computer readable medium, and storage platform computing apparatus that obtains a lifecycle management policy and configuration information for a cloud repository identified in the lifecycle management policy. The configuration information includes at least one access parameter for the cloud repository. The lifecycle management policy is applied to determine when an object is required to be replicated to the cloud repository in response to a received write request. A request to store the object in the cloud repository is generated, when the object is determined to be required to be stored in the cloud repository, wherein the request includes the access parameter. The request is sent to the cloud repository using a representational state transfer (REST) interface associated with the cloud repository.
    Type: Application
    Filed: February 20, 2015
    Publication date: August 25, 2016
    Inventors: Vivek Venkatesan, Alvin Lam, Varun Ganesh, Emalayan Vairavanathan