Syntasa provides three distinct notebook interaction models designed to support different stages of the data lifecycle from exploratory development to large-scale automated production workflows. Selecting the right notebook type is essential for optimizing performance, collaboration, scalability, and automation within your data engineering and data science projects.
This guide explains when and why to use a Notebook Workspace, Notebook Card, or Notebook Process, along with practical decision criteria to help you choose the right approach.
Quick Reference:
When to Use Each Option
| Feature | Notebook Workspace | Notebook Card | Notebook Process |
|---|---|---|---|
| Primary Use Case | Interactive exploration and collaboration | Heavy interactive workloads with dedicated resources | Automated pipelines and production workflows |
| Kernel Requirement | Standard JupyterLab kernel | Standard kernel with enhanced resources | Customized kernel configuration |
| Runtime Environment | Shared JupyterLab environment | Dedicated scalable runtime | Dedicated automated runtime |
| Automation Support | Manual execution only | Manual execution only | Fully automatable and schedulable |
| Collaboration Level | High (shared workspaces) | Medium (directory-based sharing) | Low (workflow-integrated) |
Notebook Workspace (JupyterLab Integration)
The Notebook Workspace serves as the primary environment for interactive development within Syntasa. It provides a familiar JupyterLab experience designed for collaboration and rapid experimentation.
Recent enhancements allow multiple workspaces per user, enabling better organization and shared project development.
Best For
Initial data exploration and analysis
Code prototyping and experimentation
Collaborative development scenarios
Standard workloads that do not require specialized resources
Key Characteristics
Collaboration-First Design
Users can create multiple workspaces beyond the default environment and share them with individuals or teams, making collaborative workflows seamless.
Standard Kernel Environment
Notebook Workspaces utilize the built-in JupyterLab kernel, suitable for most general-purpose tasks.
Multi-Cloud Storage Integration
Supports persistent storage through GCS (Google Cloud Storage), Amazon S3, and Azure Blob Storage.
User Experience
Notebook Workspaces are accessed through the workspace management interface, where users can create, edit, delete, favorite, and launch workspaces directly into a full JupyterLab environment.
Notebook Card
A Notebook Card represents a standalone notebook within a directory structure. It bridges the gap between exploratory development and resource-intensive processing by enabling dedicated runtime environments.
Best For
Interactive workflows requiring more computing power
Large dataset processing
Machine learning training workloads
Situations where the shared environment is insufficient
Key Characteristics
Dedicated Runtime Configuration
Notebook Cards can connect to specific Syntasa runtimes such as GCP Dataproc, AWS EMR, Kubernetes Spark clusters, or other scalable infrastructures.
Flexible Resource Management
Users can configure machine types, GPU availability, runtime limits, maximum uptime, and idle shutdown to balance performance and cost.
Initialization Scripts
Supports custom initialization scripts that execute during kernel startup to prepare the environment automatically.
User Experience
Notebook Cards appear as objects within workspace directories. Launching a card opens the notebook along with runtime configuration controls accessible via a settings panel.
Notebook Process
A Notebook Process integrates a notebook directly into a Syntasa application workflow, transforming exploratory code into automated, production-ready logic.
Best For
Productionizing notebook workflows
Scheduled or automated data processing
Complex dependency or environment requirements
Integration into larger application pipelines
Key Characteristics
Custom Kernel Configuration
Supports advanced environment customization including OS-level libraries, specialized Python dependencies, and Spark configurations.
Automation and Scheduling
Notebook Processes can be included in App Jobs and scheduled to run periodically or triggered on demand.
Dynamic Parameterization
Allows injection of runtime parameters from workflows (e.g., date ranges, configuration values, or custom inputs).
Output Tracking and Visibility
Tracks generated partitions and provides a Notebook Preview showing executed cells and outputs after completion.
User Experience
Notebook Processes are created by dragging a notebook node onto the workflow canvas and linking it to an existing or newly created notebook within the application.
Decision Guide: How to Choose
Use the following logic when selecting a notebook type:
Use a Notebook Workspace if:
The standard JupyterLab environment meets your needs.
You are exploring data or developing collaboratively.
You do not require automation or dedicated compute resources.
Use a Notebook Card if:
The shared environment lacks sufficient performance.
You need stronger compute resources but still want interactive execution.
The workflow remains manual rather than automated.
Use a Notebook Process if:
Execution must be automated or scheduled.
The notebook is part of a production workflow.
You require a customized runtime or advanced environment configuration.
Final Thoughts
Each notebook option in Syntasa addresses a specific stage in the development lifecycle:
Notebook Workspace supports collaboration and experimentation.
Notebook Card provides scalable interactive computing power.
Notebook Process enables automation and production deployment.
Understanding these distinctions allows teams to design efficient workflows, optimize resource utilization, and transition seamlessly from experimentation to production.