Snowflake
Overview
HockeyStack’s Snowflake integration allows you to seamlessly connect your Snowflake instance to our platform. This custom-built connector is designed to pull in data from Snowflake based on your unique infrastructure and analytics needs. Typical use cases include:
Pulling specific user profile data to enrich your analytics
Mapping offline revenue opportunities to your CRM activities
Incorporating additional custom data points that help unify your customer data story
If you’re unsure about what data is most valuable to pull, we’re happy to schedule a call to help you determine which tables and fields will best support your use cases.
Prerequisites
Before we begin, please ensure you have:
Access to your Snowflake instance with the ability to manage users, permissions, and network policies.
Clear information on which Snowflake tables, databases, and columns contain the data you’d like HockeyStack to ingest.
An understanding of whether HockeyStack should have read-only access, or if write permissions are also needed (for pushing data back to Snowflake).
Connecting to Snowflake
To establish a secure connection between HockeyStack and Snowflake, follow these steps:
User Invitation (if using email-based authentication): Invite
dev@hockeystack.com
to your Snowflake instance. This grants HockeyStack the ability to authenticate and connect.IP Whitelisting (if applicable): If you have IP restrictions in place, whitelist the following IP addresses to allow HockeyStack’s workers to communicate with Snowflake:
3.68.172.249
35.157.54.242
Assigning Permissions: Decide whether HockeyStack should have read-only or read-write permissions, depending on your use case. Grant these permissions to the
dev@hockeystack.com
account or its designated role.Node.js Integration Details: We connect using Node.js workers to ensure a stable and efficient integration. For more technical details on how the Node.js connector works, refer to Snowflake’s official documentation: Node.js Snowflake Driver Connect Docs
Pulling Data from Snowflake
HockeyStack runs scheduled workers (typically daily, though this can be customized) to pull data from your Snowflake instance. The process is as follows:
Initial Historical Backfill: We start by running a full backfill of your historical data. This ensures that HockeyStack has all necessary historical records before moving on to incremental updates. Depending on the size of your data and infrastructure, this can take some time.
Ongoing Incremental Updates: After the initial backfill, HockeyStack’s daily (or otherwise scheduled) jobs will query your specified Snowflake tables to fetch any new or updated data. This process continues until the connection is closed or modified.
Data Processing: The pulled data is processed on HockeyStack’s servers and inserted into our database, making it available for analysis, reporting, and integrations.
Pushing Data into Snowflake
If you need to send data from HockeyStack back into Snowflake, we can configure the integration to do so on a regular (e.g., daily) schedule, or at a frequency you choose:
Data Formatting: Our workers query HockeyStack’s database, format the data as required by your Snowflake schema, and prepare it for insertion.
Data Destination & Validation: You choose the target database, table, and columns in Snowflake. Before pushing data, we ensure all table and column data types match the required formats.
Sync Options: We offer two main methods for syncing data back into Snowflake:
Append: Insert new rows without altering existing data.
Clear & Rewrite: Truncate the target table and then insert a fresh, full dataset.
By tailoring these options, we help you maintain consistent and accurate datasets in Snowflake that align perfectly with your HockeyStack insights.
If you have any questions, need more details on the integration process, or want to discuss the specifics of your data pulls, please reach out to our support team. We’re here to help make sure your Snowflake integration is set up seamlessly and supports your analytics goals.
Last updated