Why use Staging and Production?
Using separate workspaces for staging and production is a critical best practice for managing reliable systems. This separation allows you to isolate development and testing environments to prevent unintended disruptions to live systems.Staging Workspaces
- Contain staging data and connection settings
- Serve as testing environments to validate changes, perform integration testing, and simulate production behavior
- Allow teams to iterate on new features or pipeline configurations without affecting live systems
- Testing a new pipeline or query configuration with mock or limited data before deploying it to production
- Debugging and resolving issues that could arise in production without impacting live users
Production Workspaces
- Use live data and connection settings
- Serve data to real users, powering your production systems
- Provide a stable and high-performance environment for your pipelines
- Delivering production-ready API endpoints to customers or applications
- Running queries on the full production dataset
- Monitoring pipeline performance and ensuring real-time data accuracy for end-users
Example Workflow
- Create Workspaces:
- Set up two workspaces through app.us.airfold.co
- One for staging, another for production
- For example, we may set up staging and production workspaces for
sales_calls
as follows:
- Set up two workspaces through app.us.airfold.co
-
Develop in Staging:
- Create a new pipeline in the staging workspace and test it with a subset of data
-
Validate Results:
- Ensure that the pipeline produces the expected results
- Test integration with external systems or mock API calls using staging credentials
-
Promote to Production:
- Once validated, deploy the same pipeline to the production workspace using live data and credentials
-
Monitor Production:
- Continuously monitor the production workspace for pipeline performance, data accuracy, and API reliability