Patents by Inventor Subramanian Muralidhar
Subramanian Muralidhar 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: 11354316Abstract: Disclosed herein are systems and methods for selective scanning of external partitions. In an embodiment, a database platform receives a query directed at least in part to an external table stored on an external data storage platform. The external table is partitioned into partitions corresponding to storage locations in the external data storage platform. The database platform prunes, using external-table metadata that is stored by the database platform and that maps the partitions of the external table to the storage locations in the external data storage platform, those partitions that do not potentially contain data that satisfies the query. The database platform identifies data that satisfies the query by scanning any one or more of the partitions of the external table that were not pruned, and responds to the query at least in part with the identified data that satisfies the query.Type: GrantFiled: December 23, 2021Date of Patent: June 7, 2022Assignee: Snowflake Inc.Inventors: Subramanian Muralidhar, Benoit Dageville, Thierry Cruanes, Nileema Shingte, Saurin Shah, Torsten Grabs, Istvan Cseri
-
Patent number: 11347773Abstract: Disclosed herein are systems and methods for database replication to a remote deployment with automated fulfillment. In an embodiment, a data platform detects receipt of a database-replication request associated with a data consumer, requesting availability of a local instance of a primary-deployment database in a remote-deployment account of a data provider at a remote deployment of the data platform. The data platform responsively performs remote-deployment-activation operations including provisioning the remote-deployment account with a set of one or more replication-preparation objects associated with the primary-deployment database, and also including invoking at least one refresh command with respect to the set of one or more replication-preparation objects, which makes available to the data consumer a local instance of the primary-deployment database in the remote-deployment account of the data provider at the remote deployment of the data platform.Type: GrantFiled: September 30, 2021Date of Patent: May 31, 2022Assignee: Snowflake Inc.Inventors: Pui Kei Johnston Chu, Benoit Dageville, Shreyas Narendra Desai, Sameer Deshpande, Subramanian Muralidhar, Di Wu
-
Patent number: 11347728Abstract: The subject technology receives a notification that a modification has been made to an external table, the modification comprising inserting at least one row of new data to the external table, the at least one row corresponding to a first micro-partition that includes a first portion of data from the external table prior to the inserting. The subject technology, in response to the notification indicating the modification to the external table, generates a new micro-partition different from the first micro-partition, the new micro-partition including the inserted at least one row of new data and the first portion of data from the external table. The subject technology generates a refreshed materialized view based at least in part on the generated new micro-partition such that the refreshed materialized view comprises a representation of the external table after the modification has been made.Type: GrantFiled: August 31, 2021Date of Patent: May 31, 2022Assignee: Snowflake Inc.Inventors: Subramanian Muralidhar, Benoit Dageville, Thierry Cruanes, Nileema Shingte, Saurin Shah, Torsten Grabs, Istvan Cseri
-
Patent number: 11347730Abstract: Aspects of the present disclosure address systems, methods, and devices for tracking object dependencies in a cloud database system. An object dependency created between a referencing object and a referenced object is detected. Based on detecting the object dependency, a dependency record is generated. The dependency record includes dependency information describing the object dependency between the reference object and the referenced object. The dependency record is stored in a database of dependency records.Type: GrantFiled: July 28, 2021Date of Patent: May 31, 2022Assignee: Snowflake Inc.Inventors: Raja Balakrishnan, Khalid Zaman Bijon, Subramanian Muralidhar, David Schultz, Jian Xu
-
Publication number: 20220138184Abstract: A database platform receives an object identifier from a client in association with a database session. The client is associated with a customer account of the database platform, and the database session is associated with the client. The customer account includes multiple disjoint account-level namespaces, each of which represents a distinct context for resolution of object identifiers, such that matching object identifiers in different account-level namespaces in the customer account do not collide with respect to object-identifier resolution. The database platform determines that the object identifier does not specify an account-level namespace, and responsively resolves the object identifier with reference to a current account-level namespace of the database session by identifying an object corresponding to the object identifier in the customer account.Type: ApplicationFiled: January 13, 2022Publication date: May 5, 2022Inventors: Damien Carru, Thierry Cruanes, Istvan Cseri, Benoit Dageville, Zheng Mi, Subramanian Muralidhar
-
Publication number: 20220138342Abstract: Row-level security (RLS) may provide fine-grained access control based on flexible, user-defined access policies to databases, tables, objects, and other data structures. A RLS policy may be an entity or object that defines rules for row access. A RLS policy may be decoupled or independent from any specific table. This allows more robust and flexible control. A RLS policy may then be attached to one or more tables. The RLS policy may include a Boolean-valued expression.Type: ApplicationFiled: October 29, 2020Publication date: May 5, 2022Inventors: Artin Avanes, Khalid Zaman Bijon, Zheng Mi, Subramanian Muralidhar, David Schultz, Jian Xu
-
Publication number: 20220138206Abstract: A method of implementing object tagging framework starts with the processor receiving a tag creation command including a tag name. In response to the tag creation command, the processor creates a current tag. The processor then receives an association command, the tag name and a target object identifier. The processor determines a target object associated with the target object identifier. The target object includes a tag value. The processor associates the current tag with the target object. The processor identifies a first child object of the target object. The target object and the first child object are hierarchical objects. In response to determining that the first child object is tag-unassociated, the processor associates the current tag with the first child object. In response to receiving a query including the tag name, the processor generates an output based on the tag name. Other embodiments are also described herein.Type: ApplicationFiled: November 23, 2020Publication date: May 5, 2022Inventors: Artin Avanes, Khalid Zaman Bijon, Yujie Li, Zheng Mi, Subramanian Muralidhar, David Schultz
-
Publication number: 20220114180Abstract: Disclosed herein are systems and methods for selective scanning of external partitions. In an embodiment, a database platform receives a query directed at least in part to an external table stored on an external data storage platform. The external table is partitioned into partitions corresponding to storage locations in the external data storage platform. The database platform prunes, using external-table metadata that is stored by the database platform and that maps the partitions of the external table to the storage locations in the external data storage platform, those partitions that do not potentially contain data that satisfies the query. The database platform identifies data that satisfies the query by scanning any one or more of the partitions of the external table that were not pruned, and responds to the query at least in part with the identified data that satisfies the query.Type: ApplicationFiled: December 23, 2021Publication date: April 14, 2022Inventors: Subramanian Muralidhar, Benoit Dageville, Thierry Cruanes, Nileema Shingte, Saurin Shah, Torsten Grabs, Istvan Cseri
-
Patent number: 11301478Abstract: A method of implementing object tagging framework starts with the processor receiving a tag creation command including a tag name. In response to the tag creation command, the processor creates a current tag. The processor then receives an association command, the tag name and a source object identifier. The processor determines a source object associated with the source object identifier. The source object includes a tag value. The processor associates the current tag with the source object. The processor receives a replication command including the source object and a target object. The processor causes replication of the source object to the target object that comprises replicating the current tag with the tag name and the tag value in the source object to the target object. Other embodiments are also described herein.Type: GrantFiled: January 28, 2021Date of Patent: April 12, 2022Assignee: Snowflake Inc.Inventors: Artin Avanes, Khalid Zaman Bijon, Yujie Li, Zheng Mi, Subramanian Muralidhar, David Schultz
-
Patent number: 11294882Abstract: Systems, methods, and devices for transactional processing of change tracking data for a database are discussed. A method includes generating a micro-partition based on execution of a transaction on a table of a database, the micro-partition reflecting changes made to the table by the transaction. A change tracking entry is generated in response to the execution of the transaction. The change tracking entry includes an indication of one or more modifications made to the table by the transaction and an indication of the micro-partition generated based on the execution of the transaction. The change tracking entry is stored in the micro-partition as metadata. At least one existing micro-partition is removed from the table, responsive to storing the change tracking entry.Type: GrantFiled: September 30, 2021Date of Patent: April 5, 2022Assignee: Snowflake Inc.Inventors: Subramanian Muralidhar, Istvan Cseri, Torsten Grabs, Benoit Dageville
-
Publication number: 20220075776Abstract: Disclosed herein are systems and methods for pruning external data. In an embodiment, a database platform receives a query directed at least in part to external data in an external table on an external data storage platform. The external table includes partitions that correspond to storage locations in a source directory of the external data storage platform. The storage locations contain files that contain the external data. The database platform identifies, from external-table metadata that is stored by the database platform and that maps the partitions of the external table to the storage locations in the source directory, a subset of the partitions as including data that potentially satisfies the query. The database platform identifies data that satisfies the query by scanning the identified subset of the partitions, and responds to the query at least in part with the identified data that satisfies the query.Type: ApplicationFiled: November 19, 2021Publication date: March 10, 2022Inventors: Subramanian Muralidhar, Benoit Dageville, Thierry Cruanes, Nileema Shingte, Saurin Shah, Torsten Grabs, Istvan Cseri
-
Patent number: 11270020Abstract: Techniques described herein can allow users to share cached results of an original query with other users while protecting sensitive information. The techniques described herein can check whether the other users have access to the underlying data queried before allowing those users to see the stored query results. That is, the system may perform privilege checks on the shared users before giving them access to the stored query results but without having to re-run the original query.Type: GrantFiled: September 28, 2021Date of Patent: March 8, 2022Assignee: Snowflake Inc.Inventors: Damien Carru, Thierry Cruanes, Subramanian Muralidhar, Nicola Dan Onose, Ryan Michael Thomas Shelly, Brian Smith, Jaeyun Noh
-
Patent number: 11269868Abstract: Systems, methods, and devices for automated maintenance of external tables in database systems are disclosed. A method includes receiving, by a database platform, read access to content in an external data storage platform that is separate from the database platform. The method includes defining an external table based on the content in the external data storage platform. The method includes connecting the database platform to the external table such that the database platform has read access for the external table and does not have write access for the external table. The method includes generating metadata for the external table, the metadata comprising information about data stored in the external table. The method includes receiving a notification that a modification has been made to the content in the external data storage platform, the modification comprising one or more of an addition of a file, a deletion of a file, or an update to a file in a source location for the external table.Type: GrantFiled: March 31, 2021Date of Patent: March 8, 2022Assignee: Snowflake Inc.Inventors: Subramanian Muralidhar, Benoit Dageville, Thierry Cruanes, Nileema Shingte, Saurin Shah, Torsten Grabs, Istvan Cseri
-
Patent number: 11269869Abstract: Disclosed herein are systems and methods for processing queries over external tables. In an embodiment, a database platform receives a query directed at least to data in an external table stored in a storage platform that is external to the database platform. The database platform uses metadata that summarizes the data in the external table to identify one or more partitions of the external table as potentially including data satisfying the query, and generates a query plan that includes a plurality of discrete subtasks that collectively include instructions to scan the identified one or more partitions of the external table for data satisfying the query. The database platform assigns, based on the metadata, the plurality of discrete subtasks to one or more nodes in an execution platform, and refreshes the metadata in response to a threshold number of modifications being made to the external table.Type: GrantFiled: October 11, 2021Date of Patent: March 8, 2022Assignee: Snowflake Inc.Inventors: Subramanian Muralidhar, Benoit Dageville, Thierry Cruanes, Nileema Shingte, Saurin Shah, Torsten Grabs, Istvan Cseri
-
Patent number: 11249988Abstract: A database platform receives an object identifier from a client in association with a database session. The client is associated with a customer account of the database platform, and the database session is associated with the client. In response to receiving the object identifier, the database platform identifies a resolution namespace for the object identifier, where the resolution namespace for the object identifier is a namespace that is specified in the object identifier if the object identifier includes a specified namespace, and where the resolution namespace is otherwise a current account-level namespace of the database session. The database platform resolves the object identifier with reference to the identified resolution namespace for the object identifier, including identifying an object corresponding to the object identifier in the customer account.Type: GrantFiled: July 31, 2020Date of Patent: February 15, 2022Assignee: Snowflake Inc.Inventors: Damien Carru, Thierry Cruanes, Istvan Cseri, Benoit Dageville, Zheng Mi, Subramanian Muralidhar
-
Publication number: 20220027368Abstract: Disclosed herein are systems and methods for processing queries over external tables. In an embodiment, a database platform receives a query directed at least to data in an external table stored in a storage platform that is external to the database platform. The database platform uses metadata that summarizes the data in the external table to identify one or more partitions of the external table as potentially including data satisfying the query, and generates a query plan that includes a plurality of discrete subtasks that collectively include instructions to scan the identified one or more partitions of the external table for data satisfying the query. The database platform assigns, based on the metadata, the plurality of discrete subtasks to one or more nodes in an execution platform, and refreshes the metadata in response to a threshold number of modifications being made to the external table.Type: ApplicationFiled: October 11, 2021Publication date: January 27, 2022Inventors: Subramanian Muralidhar, Benoit Dageville, Thierry Cruanes, Nileema Shingte, Saurin Shah, Torsten Grabs, Istvan Cseri
-
Publication number: 20220019570Abstract: Systems, methods, and devices for transactional processing of change tracking data for a database are discussed. A method includes generating a micro-partition based on execution of a transaction on a table of a database, the micro-partition reflecting changes made to the table by the transaction. A change tracking entry is generated in response to the execution of the transaction. The change tracking entry includes an indication of one or more modifications made to the table by the transaction and an indication of the micro-partition generated based on the execution of the transaction. The change tracking entry is stored in the micro-partition as metadata. At least one existing micro-partition is removed from the table, responsive to storing the change tracking entry.Type: ApplicationFiled: September 30, 2021Publication date: January 20, 2022Inventors: Subramanian Muralidhar, Istvan Cseri, Torsten Grabs, Benoit Dageville
-
Publication number: 20210390095Abstract: The subject technology receives a notification that a modification has been made to an external table, the modification comprising inserting at least one row of new data to the external table, the at least one row corresponding to a first micro-partition that includes a first portion of data from the external table prior to the inserting. The subject technology, in response to the notification indicating the modification to the external table, generates a new micro-partition different from the first micro-partition, the new micro-partition including the inserted at least one row of new data and the first portion of data from the external table. The subject technology generates a refreshed materialized view based at least in part on the generated new micro-partition such that the refreshed materialized view comprises a representation of the external table after the modification has been made.Type: ApplicationFiled: August 31, 2021Publication date: December 16, 2021Inventors: Subramanian Muralidhar, Benoit Dageville, Thierry Cruanes, Nileema Shingte, Saurin Shah, Torsten Grabs, Istvan Cseri
-
Patent number: 11194795Abstract: Systems, methods, and devices for automated maintenance of external tables in database systems are disclosed. A method includes receiving, by a database platform, read access to content in an external data storage platform that is separate from the database platform. The method includes defining an external table based on the content in the external data storage platform. The method includes connecting the database platform to the external table such that the database platform has read access for the external table and does not have write access for the external table. The method includes generating metadata for the external table, the metadata comprising information about data stored in the external table. The method includes receiving a notification that a modification has been made to the content in the external data storage platform, the modification comprising one or more of an addition of a file, a deletion of a file, or an update to a file in a source location for the external table.Type: GrantFiled: April 16, 2019Date of Patent: December 7, 2021Assignee: Snowflake Inc.Inventors: Subramanian Muralidhar, Benoit Dageville, Thierry Cruanes, Nileema Shingte, Saurin Shah, Torsten Grabs, Istvan Cseri
-
Publication number: 20210374159Abstract: A method of implementing sub-table replication starts with the processor detecting an update to an entitlements table. The processor performs filtering of a data table based on the update to the entitlements table. The data table including an entitlements column. The processor detects an update to the entitlements column and performs incremental replication of the data table by causing a version-based replication to be executed. Other embodiments are also described herein.Type: ApplicationFiled: June 18, 2021Publication date: December 2, 2021Inventors: Pui Kei Johnston Chu, Shreyas Narendra Desai, German Alberto Gil Echeverri, Prasanna Krishnan, Nithin Mahesh, Subramanian Muralidhar, Eric Robinson, Sahaj Saini