Publish Data from Snowflake to SAP® BDC Connect for Snowflake¶
This topic describes how to publish Snowflake data back to SAP® BDC Connect for Snowflake by creating a share, granting access to databases, schemas, and tables, and associating the share with a Zerocopy Connector.
The connector must be in CONNECTED state and have SHARE_BACK enabled
before associating a share. See Set Up SAP® BDC Connect for Snowflake Zerocopy Connector for details.
Enable Share Back¶
Before publishing data to SAP® BDC Connect for Snowflake, enable share back on the connector:
Note
The role used to create the share must have the CREATE SHARE privilege
on the account. For the full list of required privileges, see
SAP® BDC Connect for Snowflake Zerocopy Connector — Security and Privileges.
Grant Access to Snowflake Objects¶
To publish Snowflake data to SAP® BDC Connect for Snowflake, you first create a Snowflake share and grant access to the databases, schemas, and tables you want to publish. For more information about creating and managing shares, see CREATE SHARE.
Note
- Only Iceberg V3 tables with copy-on-write enabled can be shared with a Zerocopy Connector. For more information, see Use row-level deletes.
- Iceberg tables must use Snowflake as the catalog
(Snowflake-managed Iceberg tables).
To specify this when creating a table, use
CATALOG = 'SNOWFLAKE'andSTORAGE_SERIALIZATION_POLICY = 'COMPATIBLE'. Alternatively, you can set both properties at the database or schema level so that all tables automatically inherit them. For more information, see CREATE ICEBERG TABLE (Snowflake as the Iceberg catalog). - Each shared data product should map to a single dedicated database.
To create an Iceberg table that can be shared with a Zerocopy Connector:
Create a Share¶
To create a share, the role must have the CREATE SHARE privilege on the
account. For the full list of required privileges, see SAP® BDC Connect for Snowflake Zerocopy Connector — Security and Privileges.
Create a share using CREATE SHARE:
Grant Access to the Share¶
Grant USAGE on the database:
Grant USAGE on the schema:
Grant SELECT on a specific table:
Associate the Share with the Connector¶
After granting access, associate the share with the Zerocopy Connector:
To view the shares associated with a Zerocopy Connector, use
DESC ZEROCOPY CONNECTOR:
Revoke Access¶
To disassociate a share from the Zerocopy Connector:
To revoke access to a previously granted object from the share:
Publish a Data Product to SAP® BDC Connect for Snowflake¶
After granting access to Snowflake objects, publish the data product to
SAP® BDC by calling the SYSTEM$SAP_PUBLISH_DATA_PRODUCT function. This
makes the data product discoverable and accessible from the SAP® BDC side.
Note
The OPERATE privilege on the connector is required to call
SYSTEM$SAP_PUBLISH_DATA_PRODUCT.
For example:
| Parameter | Description |
|---|---|
connector_name | Fully qualified name of the Zerocopy Connector
(e.g., |
snowflake_share_name | Name of the Snowflake share, also the name of the share on the SAP® BDC side. |
open_resource_discovery_metadata | A JSON object describing the data product in SAP® BDC. Contains the following fields:
|
csn_document_json | The SAP® Core Schema Notation (CSN) JSON payload describing the structure of the data product. Provided by the caller. |
Note
If the function fails to resolve connector_name or
snowflake_share_name, verify that the names use the correct case.
Snowflake identifiers are case-sensitive when quoted. For more information,
see Identifier requirements.