Processing user-defined functions (UDFs) using multiple execution environments

    公开(公告)号:US12174817B2

    公开(公告)日:2024-12-24

    申请号:US18338938

    申请日:2023-06-21

    Applicant: Snowflake Inc.

    Abstract: A method includes detecting, by at least one hardware processor, an upload of a user application within a database system. The user application includes user-defined function (UDF) code. A plurality of dependencies of the user application is determined by the at least one hardware processor. A plurality of execution environments corresponding to the plurality of dependencies is generated by the at least one hardware processor. The plurality of execution environments is associated with a corresponding plurality of data types of the UDF. A database query is decoded. The database query specifies database data of a data type of the plurality of data types of the UDF. The database query is processed using at least one of the plurality of execution environments to generate results data. The at least one of the plurality of execution environments corresponds to the data type of the plurality of data types of the UDF.

    Load history calculation in internal stage replication

    公开(公告)号:US11983165B1

    公开(公告)日:2024-05-14

    申请号:US18128212

    申请日:2023-03-29

    Applicant: Snowflake Inc.

    CPC classification number: G06F16/2365 G06F16/1748 G06F16/27

    Abstract: Embodiments of the present disclosure provide techniques for deduplicating files during internal stage replication using a directory table of the replicated internal stage that is modified as a cache for storing and retrieving original file-level metadata for the replicated files. An initial list of candidate files for loading from the internal stage to a table of the target deployment is prepared based on the files listed in the internal stage, and refined using a directory table lookup. If there is any inconsistency between the files registered in the directory table and the files listed in the internal stage, the target deployment will inspect the user-defined file-level metadata to obtain original file-level metadata for each file that is present in the internal stage but not in the directory table. This information may be used during deduplication to ensure that no duplicate files are loaded.

    PROCESSING USER-DEFINED FUNCTIONS (UDFs) USING MULTIPLE EXECUTION ENVIRONMENTS

    公开(公告)号:US20230409552A1

    公开(公告)日:2023-12-21

    申请号:US18338938

    申请日:2023-06-21

    Applicant: Snowflake Inc.

    Abstract: A method includes detecting, by at least one hardware processor, an upload of a user application within a database system. The user application includes user-defined function (UDF) code. A plurality of dependencies of the user application is determined by the at least one hardware processor. A plurality of execution environments corresponding to the plurality of dependencies is generated by the at least one hardware processor. The plurality of execution environments is associated with a corresponding plurality of data types of the UDF. A database query is decoded. The database query specifies database data of a data type of the plurality of data types of the UDF. The database query is processed using at least one of the plurality of execution environments to generate results data. The at least one of the plurality of execution environments corresponds to the data type of the plurality of data types of the UDF.

    PROCESSING USER-DEFINED FUNCTIONS (UDFs) USING MULTIPLE UDF CLIENTS

    公开(公告)号:US20250068616A1

    公开(公告)日:2025-02-27

    申请号:US18944963

    申请日:2024-11-12

    Applicant: Snowflake Inc.

    Abstract: A method to process UDFs includes performing, by at least one hardware processor of a database system, a resolution of application components to determine a plurality of resolved components of an application and a plurality of data types corresponding to the plurality of resolved components. The method includes instantiating a plurality of UDF clients. The plurality of UDF clients are associated with the plurality of data types. The method includes detecting a received database query specifies a data type of the plurality of data types. The method includes executing the received database query at a UDF client of the plurality of UDF clients.

    MULTIPLE ENVIRONMENTS AND FUNCTIONS IN A DATABASE SYSTEM

    公开(公告)号:US20240168947A1

    公开(公告)日:2024-05-23

    申请号:US18429286

    申请日:2024-01-31

    Applicant: Snowflake Inc.

    CPC classification number: G06F16/2448 G06F16/248 G06F16/27 G06F8/433

    Abstract: Multiple execution environments are established for processing database statements with diverse package dependencies. A database system receives a user application and identifies, via hardware processors, multiple package dependencies required by the application, including at least a first and a second package dependency. Upon receiving a database statement from a user that invokes these dependencies, the system retrieves the necessary packages from a repository. It then creates a first execution environment incorporating the first package dependency and a second execution environment with the second package dependency. Utilizing the multiple execution environments, the system generates results data in response to the database statement, effectively managing and executing user-defined functions that rely on different versions or types of package dependencies within a unified database framework.

Patent Agency Ranking