Introducing: Hightouch Environments
Never make a mistake in production again. We’re enabling companies to test and manage sync and model changes more flexibly than ever.
Kevin Tran
Nate Wardwell
June 27, 2023
4 minutes
Organizations continually use Hightouch to activate data directly from the warehouse and solve their most complex business problems. Simply put, companies around the world rely on Hightouch to run effectively.
As Hightouch grows in importance for our customers, we strive to empower them to manage and moderate changes to prevent unintended consequences. We’ve solved this for our more technical users through our Git Sync feature. Today, we’re excited to announce the release of our Environments feature, which allows users to develop models and syncs in test environments and then push them to production—all without writing a single line of code.
The Classic Environments Use Case: Staging and Production
Most digital teams are familiar with the concept of a staging (“test”) environment that only internal members can see and a production (“real”) environment that customers see every day. This approach permeates many tools and workflows because it allows team members to draft changes in staging so others can review and make improvements. Once everything has been perfected in staging, publishing in production is easy so real users can interact with it.
Separating staging and production environments ensures organizations consistently deliver professional, error-free user experiences. Many companies work through tiers of test environments to vet their changes through multiple levels of quality assurance before deploying changes to production.
For example, a common practice in code development is to start coding in a “development” environment and then thoroughly verify quality assurance in “staging” before deploying to “production.” Our latest Environments feature builds upon this standard practice, allowing teams to create environments tailor-fit to their workflows so they can ensure that production syncs proceed without disruption.
How Hightouch Environments Works
Overall Environment Setup
Each Hightouch workspace in your organization acts as a separate environment. As with all Hightouch workspaces, organizations can granularly adjust user permissions and settings for each environment. For example, an organization may grant broad access to team members to edit a test environment but only grant a few admins permission to edit a production environment directly.
There is no limit to how many environment workspaces an organization can set up. For example, a company can set up two different production environments—one tailored to Sales Operations and another to Advertising and Marketing.
The overriding theme of our product approach is flexibility. We are building features to support companies at any maturity level for critical data pipeline workflows.
Deploying Changes
There are two types of resources that organizations can test and deploy across environments: models and syncs.
Models are data tables or collections of data that a company wants to push to downstream tools. Organizations update models to modify the data they include, using features like SQL queries or dbt. Model changes can directly impact the users and data that appears in downstream tools, so it’s essential for organizations to test model changes before deploying them.
Syncs are the last mile of data activation, where data reaches each target destination, so change management is an essential best practice. Organizations update syncs to change their timing and settings. For example, an organization may increase the frequency of a sync and add additional fields they want to update in their downstream tool.
Other Environments Features
- Bi-directionality: If a sync in a staging environment has a corresponding sync in production, a user can push updates from either environment to the other. As with anything else in Hightouch, organizations can define specific relationships and permissions to create workflows that mirror their own structure and best practices.
- Automated Validations: Hightouch will automatically check for any dependencies before deploying a change from one environment to another. For example, if an organization tries to deploy a dbt-based model from a staging workspace to a production workspace, but the dbt extension needs to be set up in production, Hightouch blocks the deployment until production is configured for dbt.
- Observability: Organizations can see precisely what will change in each deployment before they finalize it. Hightouch displays an entire deployment history for each resource, like a sync or a model. This visibility ensures transparency for every deployment and easy troubleshooting before organizations commit to each change.
Getting Started
Environments are just another example of how Hightouch enables the world’s leading companies to operate flawlessly. Organizations can tailor-build environments and reap the benefits of flexible yet highly powerful and observable deployments.
You can read our docs to learn about Environments or book a demo to speak to our solutions engineers.
For existing customers: environments and deployments are currently in early access and only available on Business tier plans. Please reach out if you’d like to have this feature enabled.