-
公开(公告)号:US20210073207A1
公开(公告)日:2021-03-11
申请号:US17086253
申请日:2020-10-30
Applicant: Snowflake Inc.
Inventor: Benoit Dageville , Martin Hentschel , William Waddington
IPC: G06F16/23 , G06F21/60 , G06F16/22 , G06F16/2455
Abstract: The subject technology caches, in connection with processing a first query, one or more table-metadata files in at least one of a current version set of one or more table-metadata files and a new version set of one or more table-metadata files, the new version set of one or more table-metadata files comprising table metadata for a new version of a database table. The subject technology receives a subsequent query directed to the database table. The subject technology downloads, in connection with processing the subsequent query, at least one uncached table-metadata file in a scan set of table-metadata files for the subsequent query. The subject technology processes the subsequent query using the at least one uncached table-metadata file.
-
公开(公告)号:US20200334222A1
公开(公告)日:2020-10-22
申请号:US16918591
申请日:2020-07-01
Applicant: Snowflake Inc.
Inventor: Jiaqi Yan , Thierry Cruanes , Jeffrey Rosen , William Waddington , Prasanna Rajaperumal , Abdul Munir
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.
-
公开(公告)号:US10713238B2
公开(公告)日:2020-07-14
申请号:US15812892
申请日:2017-11-14
Applicant: Snowflake Inc.
Inventor: Benoit Dageville , Martin Hentschel , William Waddington
IPC: G06F16/00 , G06F16/23 , G06F21/60 , G06F16/22 , G06F16/2455
Abstract: A method for a database system includes storing table data for a database, the table data including information in rows and columns of one or more database tables. The method includes storing metadata on immutable storage, the metadata including information about the table data for the database. In one embodiment, mutable metadata may be periodically consolidated in the background to create new versions of metadata files and which allows for deletions of old metadata files and old data files.
-
公开(公告)号:US20200117650A1
公开(公告)日:2020-04-16
申请号:US16716989
申请日:2019-12-17
Applicant: Snowflake Inc.
Inventor: Jiaqi Yan , Thierry Cruanes , Jeffrey Rosen , William Waddington , Prasanna Rajaperumal , Abdul Munir
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.
-
公开(公告)号:US12222960B2
公开(公告)日:2025-02-11
申请号:US18326683
申请日:2023-05-31
Applicant: Snowflake Inc.
Inventor: Chen Luo , Alexander Miller , William Waddington , Zhaohui Zhang
Abstract: The subject technology performs, using asynchronous threads of execution nodes of a distributed database, asynchronous transformation and compaction of key-value pairs of data that correspond to a plurality of transactional queries, the asynchronous threads transforming the key-value pairs from an initial format to a commit format that includes a commit time of data committed to the distributed database, the asynchronous threads compacting the key-value pairs by deleting the key-value pairs in the initial format. The subject technology processes, using transactional threads in the execution nodes, the plurality of transactional queries to generate results data, the asynchronous threads performing the asynchronous transformation and compaction while the transactional threads generate the results data. The subject technology stores the results data.
-
公开(公告)号:US20240281288A1
公开(公告)日:2024-08-22
申请号:US18172515
申请日:2023-02-22
Applicant: Snowflake Inc.
Inventor: Jiajun Huang , Prasanna Kumar Krishnamurthy , Amit Kumar , Hari Shreedharan , Swapnil Taneja , Michael Uhlar , William Waddington
IPC: G06F9/50
CPC classification number: G06F9/5027
Abstract: Described herein are techniques for improving performance of a data system by profiling and executing background services based on task type profiles. Techniques described herein can break down background services into tasks and provide the ability to accurately size the tasks based on task types and provide recommendations for gateways for autoscaling and throttling computing resources accordingly.
-
公开(公告)号:US11914602B2
公开(公告)日:2024-02-27
申请号:US18050255
申请日:2022-10-27
Applicant: Snowflake Inc.
Inventor: Jeffrey Rosen , Abdul Munir , Jiaqi Yan , William Waddington , Prasanna Rajaperumal , Thierry Cruanes
IPC: G06F16/24 , G06F16/2458 , G06F16/2453 , G06F9/50 , G06F16/2455
CPC classification number: G06F16/2465 , G06F9/505 , G06F9/5077 , G06F16/24535 , G06F16/24542 , G06F16/24565
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.
-
公开(公告)号:US11899648B2
公开(公告)日:2024-02-13
申请号:US17821581
申请日:2022-08-23
Applicant: Snowflake Inc.
Inventor: Chen Luo , Alexander Miller , William Waddington , Zhaohui Zhang
IPC: G06F16/23
CPC classification number: G06F16/2322 , G06F16/2365 , G06F16/2379
Abstract: The subject technology inserts, by a first transaction, a new version of an object, the first transaction including a first statement to perform an update operation to a row in a first table, the object corresponding to data in the row to be updated, the first statement including information comprising an object key associated with the object. The subject technology performs, by a second transaction, a range read, the range read including information indicating the object key. The subject technology receives a set of conflicting transactions from the range read. The subject technology determines that a conflict occurred between the first transaction and a third transaction from the set of conflicting transactions. The subject technology performs a restart of the first transaction in response to determining that the conflict occurred.
-
公开(公告)号:US20230315720A1
公开(公告)日:2023-10-05
申请号:US18326356
申请日:2023-05-31
Applicant: Snowflake Inc.
Inventor: Chen Luo , Alexander Miller , William Waddington , Zhaohui Zhang
CPC classification number: G06F16/2379 , G06F9/524 , G06F16/2365
Abstract: The subject technology determines that a first visible version of a key is not one of a N number of newest versions of the key based on searching for the key in a regular space to locate the first visible version of the key. The subject technology performs a search of an undo space to locate a second visible version of the key. The subject technology determines whether the first visible version or the second visible version of the key is newer. The subject technology provides a newer version of the key between the first visible version and the second visible version of the key.
-
公开(公告)号:US11709818B2
公开(公告)日:2023-07-25
申请号:US17821670
申请日:2022-08-23
Applicant: Snowflake Inc.
Inventor: Alexander Miller , William Waddington
IPC: G06F16/248 , G06F16/23 , G06F16/2455 , G06F16/22
CPC classification number: G06F16/2329 , G06F16/2282 , G06F16/248 , G06F16/24568
Abstract: The subject technology receives a first transaction, the first transaction to be executed on linearizable storage. The subject technology assigns, prior to performing a read operation, a first read version to the first transaction, the first read version indicating a first version of the linearizable storage, the first read version corresponding to a particular timestamp of a current time. The subject technology performs the read operation from the first transaction on a table in a database. The subject technology determines a first commit version identifier corresponding to first data resulting from the read operation. The subject technology proceeds to perform a particular write operation from the first transaction. The subject technology determines that the first commit version identifier fails to match a second commit version identifier corresponding to a second transaction. The subject technology aborts the particular write operation from the first transaction.
-
-
-
-
-
-
-
-
-