Post 1: Understanding Migration, Interfacing, and Hybrid Integration in Novulo
Welcome to the Series
This is the first post in a series on import and migration best practices for Novulo developers and implementation consultants.
Whether you’re preparing for go-live, setting up a long-running interface, or dealing with edge-case data structures — getting your import strategy right is essential for performance, reliability, and long-term maintainability.
In this series, we’ll walk through the core concepts, real-world challenges, and specific design decisions that come up during Novulo implementations.
Upcoming posts in the series:
- Why Import Design Decisions Matter – Laying the Groundwork
- Key Factors That Shape Your Import Strategy
- Handling Normalization and Reverse-Normalization
- Record Fragmentation and Other Edge Cases
- When (and How) to Use Temporary Tables in Novulo
- Error Handling, Monitoring, and Operational Stability
We’ll link each post here once they’re published, so you can follow along or revisit relevant sections later.
Why Start Here?
Before diving into import design or technical options, it’s important to step back and answer the most basic — yet often overlooked — question:
Why are we importing data at all?
In Novulo projects, data integration happens in three primary forms:
- Migration
- Interfacing
- Hybrid approaches
At first glance, these might feel like completely different use cases. But from an implementation point of view — especially when using the Novulo Import Engine — they’re deeply connected.
This post explains each scenario and sets the foundation for the rest of the series.
Migration
Migration refers to a one-time or limited-run transfer of data from a legacy system into Novulo. It typically occurs at or before go-live, when the old system is being phased out.
Examples
- Moving all customers, contracts, or product records from an ERP into Novulo
- A cutover migration where the last week of transactions are synced during go-live weekend
Characteristics
- Source system is retired after migration
- Novulo becomes the new system of record
- Data is typically loaded once
- Source system is always leading
- Can include multiple migration phases (e.g. master data first, then transactional data)
Interfacing (Incoming)
In many implementations, Novulo receives ongoing data from external systems. This is what we refer to here as incoming interfacing.
Note: While Novulo also supports outgoing or bi-directional interfaces, this post focuses on large incoming interfaces, where Novulo consumes data from an external master system. Outgoing interfaces are a different implementation topic.
Examples
- Nightly product catalog sync from a PIM system
- Real-time updates from an HRM system
- Weekly updates of asset data from an external platform
Characteristics
-
Data is imported repeatedly (e.g. daily or real-time)
-
Source system remains active
-
Novulo acts as a consumer, not the master
-
Typically one-way inbound
-
Requires more attention to:
- Idempotency (avoid duplicates)
- Performance optimization
- Monitoring and error handling

Hybrid Approaches
Some projects need a temporary interface as part of a larger migration strategy. These hybrid approaches are common in phased rollouts.
Examples
- Gradual migration of a CRM system by region
- Temporary sync during long data cleansing cycles
- Parallel running of old and new systems for a transition period
Characteristics
- Source system remains active during migration
- Data is imported repeatedly, but with a planned stop
- Often used for large-scale, high-risk projects
- Must be clear that the source remains leading during the sync
Why We Cover Them Together
Even though migration, interfacing, and hybrid setups serve different business goals, they all:
-
Use the same Novulo Import Engine
-
Share the same data modeling challenges
-
Require similar choices about structure, mapping, and error handling
-
Can be implemented with either:
- Direct imports
- Or temporary staging tables
Whether your data is loaded once or every hour, the import design principles are remarkably similar — and the decisions you make early on will impact maintainability, performance, and traceability later.
That’s why this series discusses these topics in one connected flow.
What’s Next?
In the next post, we’ll zoom in on why import design decisions matter so much — and what kind of questions you need to ask up front before picking a strategy.
If you’ve ever thought:
“We’ll clean the data later,”
or
“We just need a quick import for go-live,”
…you’ll want to read Post 2.
Visual Summary
Scenario | Description | Source Active? | Frequency | Novulo Role |
---|---|---|---|---|
Migration | One-time data move into Novulo | ![]() |
One-off | New system of record |
Interfacing (Incoming) | Continuous data sync into Novulo | ![]() |
Recurring / Real-time | Data consumer |
Hybrid | Temporary sync during phased migration | ![]() |
Recurring | Future system of record |