-
公开(公告)号:US11487597B1
公开(公告)日:2022-11-01
申请号:US17658530
申请日:2022-04-08
Applicant: Snowflake Inc.
Inventor: Isaac Kunen , Srinath Shankar , Zihan Li , Khushboo Bhatia , Edward Ma
IPC: G06F9/54 , G06F21/53 , G06F16/28 , G06F16/2455
Abstract: Disclosed are systems, methods, and non-transitory computer-readable media for a providing stored procedures in a network-based database system. A database system executes a stored procedure within a sandbox process. The sandbox process separates the stored procedure from the other services and processes of the database system and may also limit the resources (e.g., storage, memory, etc.) and functionality available to the stored procedure. Stored procedures are commonly designed to execute database queries that are processed by other components of the database system. To provide for secure communication between the stored procedure and the other components of the database system, the sandbox process is loaded with java database connectivity (JDBC) libraries (e.g., JDBC instance) that is modified to limit the communication abilities of the stored procedure.
-
公开(公告)号:US11321154B1
公开(公告)日:2022-05-03
申请号:US17536173
申请日:2021-11-29
Applicant: Snowflake Inc.
Inventor: Isaac Kunen , Srinath Shankar , Zihan Li , Khushboo Bhatia , Edward Ma
IPC: G06F9/54 , G06F21/53 , G06F16/2455 , G06F16/28
Abstract: Disclosed are systems, methods, and non-transitory computer-readable media for a providing stored procedures in a network-based database system. A database system executes a stored procedure within a sandbox process. The sandbox process separates the stored procedure from the other services and processes of the database system and may also limit the resources (e.g., storage, memory, etc.) and functionality available to the stored procedure. Stored procedures are commonly designed to execute database queries that are processed by other components of the database system. To provide for secure communication between the stored procedure and the other components of the database system, the sandbox process is loaded with java database connectivity (JDBC) libraries (e.g., JDBC instance) that is modified to limit the communication abilities of the stored procedure.
-
公开(公告)号:US11113390B1
公开(公告)日:2021-09-07
申请号:US17236812
申请日:2021-04-21
Applicant: Snowflake Inc.
Inventor: Elliott Brossard , Derek Denny-Brown , Isaac Kunen , Soumitr Rajiv Pandey , Jacob Salassi , Srinath Shankar , Haowei Yu , Andong Zhan
Abstract: The subject technology receives, in a first computing process, a user defined function, the user defined function including code related to at least one operation to be performed. The subject technology sends a request based at least in part on the at least one operation to a second computing process to perform. The subject technology determines, by a security manager executing within the second computing process, whether performing the at least one operation is permitted, the security manager determines restrictions, based at least in part on a security policy, on operations executing within a sandbox environment provided by the second computing process. The subject technology performs, in the second computing process, the at least one operation, the security manager executing within the second computing process.
-
公开(公告)号:US10997286B1
公开(公告)日:2021-05-04
申请号:US16945390
申请日:2020-07-31
Applicant: Snowflake Inc.
Inventor: Elliott Brossard , Derek Denny-Brown , Isaac Kunen , Soumitr Rajiv Pandey , Jacob Salassi , Srinath Shankar , Haowei Yu , Andong Zhan
Abstract: The subject technology receives, in a first computing process, a user defined function, the user defined function including code related to at least one operation to be performed. The subject technology sends a request based on the at least one operation to a second computing process to perform, the second computing process being different than the first computing process and comprising a sandbox for executing the at least one operation. The subject technology receives, by the second computing process, the request. The subject technology determines, using at least a security policy, whether performing the at least one operation is permitted. The subject technology performs, in the second computing process, the least one operation. The subject technology sends, by the second computing process, a result of the at least one operation to the first computing process.
-
公开(公告)号:US20250094418A1
公开(公告)日:2025-03-20
申请号:US18525811
申请日:2023-11-30
Applicant: Snowflake Inc.
Inventor: Srilakshmi Chintala , Jianzhun Du , Naresh Kumar , Jaeyun Noh , Srinath Shankar , Leonhard Franz Spiegelberg , Eric Shawn Vandenberg , Jiaqi Yan , Andong Zhan , Yun Zou
IPC: G06F16/2453
Abstract: Examples provide a method for performing dynamic pivot queries employing PANDA-compatible semantics inside a cloud data platform workload. A SQL engine receives a pivot query specifying a pivot column for dynamically determining pivot values in a dynamic pivot operation. The SQL engine identifies, in the pivot query, a keyword or a subquery indicating dynamic determination of the pivot values. Based on identifying the keyword or the subquery indicating the dynamic determination of the pivot values, the SQL engine determines distinct pivot values for the pivot column by evaluating the keyword or executing the subquery. The evaluating of the keyword includes issuing a query to a data store to obtain the distinct pivot values for the pivot column. The SQL engine performs the dynamic pivot operation using the distinct pivot values for the pivot column.
-
公开(公告)号:US12216648B1
公开(公告)日:2025-02-04
申请号:US18393324
申请日:2023-12-21
Applicant: Snowflake Inc.
Inventor: Srilakshmi Chintala , Jianzhun Du , Naresh Kumar , Srinath Shankar , Leonhard Franz Spiegelberg , Eric Shawn Vandenberg , Andong Zhan , Yun Zou
IPC: G06F16/242 , G06F16/2453 , G06F16/25
Abstract: A method includes receiving instructions to perform order-dependent DataFrame operation on data. In response to receiving the instructions, the framework analyzes the instructions to identify the order-dependent DataFrame operation, and generates an executable query corresponding to the identified order-dependent DataFrame operation. The framework executes the generated executable query on the data stored in the first database in the cloud data platform, creates a row position column that generates for each row a unique integer identifier, reproducible across multiple sessions and/or queries for the same underlying data to make the data accessible via positional indexing, and assigns each row of the first database a unique row index value based on the row position column and the row position column order. The framework orders a result from performing the order-dependent DataFrame operation based on the unique row index value assigned to each row of the first database, and returns the ordered result to the user.
-
公开(公告)号:US12124462B2
公开(公告)日:2024-10-22
申请号:US18178758
申请日:2023-03-06
Applicant: Snowflake Inc.
Inventor: Harsha S. Kapre , Mark T. Keller , Srinath Shankar , Kushan A. Zaveri
IPC: G06F16/2458 , G06F16/2453 , G06F16/2455 , G06F16/25
CPC classification number: G06F16/2471 , G06F16/24532 , G06F16/24561 , G06F16/256 , G06F16/258
Abstract: Techniques for configuring query result information include decoding a query received from a client device of a network-based database system. A multi-stage execution of the query is configured to obtain a plurality of query result subsets. A combined query result is generated using the plurality of query result subsets. The combined query result further includes storage location information for each of the plurality of query result subsets. The combined query result is encoded for transmission to the client device in response to the query.
-
公开(公告)号:US11704176B2
公开(公告)日:2023-07-18
申请号:US18051075
申请日:2022-10-31
Applicant: Snowflake Inc.
Inventor: Isaac Kunen , Srinath Shankar , Zihan Li , Khushboo Bhatia , Edward Ma
IPC: G06F9/54 , G06F16/2455 , G06F16/28 , G06F21/53
CPC classification number: G06F9/547 , G06F16/2455 , G06F16/289 , G06F21/53
Abstract: Disclosed are systems, methods, and non-transitory computer-readable media for receiving a remote procedure call from a stored procedure executing within a sandbox process. A database system converts the remote procedure call into a database query, and a sandbox process separates the stored procedure from the other services and processes the database query on a database.
-
19.
公开(公告)号:US20230120159A1
公开(公告)日:2023-04-20
申请号:US17813539
申请日:2022-07-19
Applicant: Snowflake Inc.
Inventor: Harsha S. Kapre , Mark T. Keller , Srinath Shankar , Kushan A. Zaveri
IPC: G06F16/2458 , G06F16/2453 , G06F16/2455 , G06F16/25
Abstract: Techniques for configuring query result information associated with query result data include configuring execution of a query using a plurality of execution stages. Query result data is generated based on the execution of the query. The query result data includes a plurality of data portions. Each data portion of the plurality of data portions is obtained at a corresponding execution stage of the plurality of execution stages. Query result information is generated based on the execution of the query. The query result information includes authentication information associated with accessing the plurality of data portions.
-
公开(公告)号:US20230117449A1
公开(公告)日:2023-04-20
申请号:US17813662
申请日:2022-07-20
Applicant: Snowflake Inc.
Inventor: Harsha S. Kapre , Mark T. Keller , Srinath Shankar , Kushan A. Zaveri
IPC: G06F16/2458
Abstract: Techniques for fetching query result data using result batches includes generating a plurality of result batches based on query result information. The query result information is associated with query result data generated from execution of a query. Each result batch of the plurality of result batches includes a result data retrieval function for a corresponding data portion of a plurality of data portions of the query result data. The plurality of result batches are encoded for distribution to a corresponding plurality of computing nodes. The techniques further include causing retrieving of the plurality of data portions of the query result data by the corresponding plurality of computing nodes based on the result data retrieval function for each of the plurality of data portions.
-
-
-
-
-
-
-
-
-