Snowflake Data Share

The Data Share (platform-ca | platform-eu | platform-au) feature of the Coveo Administration Console provides a convenient way to retrieve your data if you already have a Snowflake account. You can use this feature to extract and integrate your data into your account and leverage it using your business intelligence (BI) tool of choice.

Example

The BestTech organization stores their data in their own Snowflake data lake. Meanwhile, they have a Coveo-powered search page, and they would like to retrieve the corresponding data and add it to their data lake. As a result, they use the Data Share feature, which accesses their data from Coveo’s UA database and shares it to their Snowflake account.

There are two steps that you must complete to set up your data share:

  • Initiate the data share in the Coveo Administration Console and link it to your Snowflake account.

  • Access the Snowflake console and create a database in your Snowflake account to complete the share.

Notes
  • You can have multiple data shares active simultaneously.

  • To learn more about creating and configuring shares with Snowflake, see Working with Shares.

Initiate Data Share

  1. On the Raw Data page, under Snowflake Access > Data Share (platform-ca | platform-eu | platform-au), click Initiate data share.

  2. In the Initiate Data Share dialog that appears, enter the Snowflake account locator.

    Note

    If you’re unsure about which account locator to enter, you can find the correct one by entering select current_account() in the Snowflake console.

  3. Click the dropdown menu and select the region where your Snowflake account is hosted.

    Notes
    • Data sharing is currently supported for a limited number of regions, which are listed in the dropdown menu.

    • If you’re unsure about which region to select, you can find the correct one by entering select current_region() in the Snowflake console.

  4. Click Initiate.

  5. On the Snowflake console:

Tip
Leading practice

If you’re creating the database using SQL:

  1. Run the following query:

    USE role accountadmin;
    SHOW shares;
  2. Take note of the data obtained from the Name column in the SQL results table. If you have more than one share, then you’ll see multiple rows, therefore be sure to note the info for the correct share.

  3. Run the following statement to create the database:

    CREATE DATABASE <NAME> FROM SHARE <PROVIDER_ACCOUNT>.<SHARE_NAME>

    Where you replace:

    • <NAME> with the database name of your choice.

    • <PROVIDER_ACCOUNT>.<SHARE_NAME> with the data obtained from the Name column following the initial query (for example, COVEO.PROVIDER.COVEO_UA).

  4. Run the following statement to grant database access to the user role:

    USE ROLE accountadmin;
    GRANT IMPORTED PRIVILEGES ON DATABASE <NAME> TO ROLE <ROLE>;

    Where you replace:

    • <NAME> with the database name.

    • <ROLE> with the user role to which you want to provide access.

Your Snowflake account appears in the Data Share subtab, and you can begin exploring your Coveo data on the Snowflake console.

Data Share
Notes
  • The Status column indicates the status of the share. If the status is Invalid, the Snowflake account locator you entered or the region you selected may be incorrect. If the status is Pending, the data share is still in the process of synchronizing.

  • A data share with a Snowflake account in the same region as one of our Snowflake Disaster Recovery (DR) sites takes more time to synchronize, therefore the share may be unavailable for up to one hour.

  • When you’ve shared the data with a specific account, the users within that account can view the data but can’t edit it.

Regions and site

For information on sharing data in different regions, see Sharing Data With Data Consumers in a Different Region and Cloud Platform.

Region Site

US

  • Main: US East (N. Virginia) - us-east-1

  • DR: US West (Oregon) - us-west-2

Canada

Main: Canada (Central) - ca-central-1

Europe

  • Main: EU (Ireland) - eu-west-1

  • DR: EU (Frankfurt) - eu-central-1

Asia

Main: Asia Pacific (Sydney) - ap-southeast-2

Revoke Data Share

  1. Use SQL to run the following query:

    USE ROLE accountadmin;
    DROP DATABASE <NAME>;

    Where you replace <NAME> with the database you want to remove.

  2. On the Raw Data page, under Snowflake Access > Data Share (platform-ca | platform-eu | platform-au), click the account name from the Data Share list, and then click Revoke.

Required privileges

Privileges required to view or manage Data Share.

Action Service - Domain Required access level

Share data

Organization - Organization

View

Analytics - Snowflake management

Edit

Analytics - Administrate

Allowed