Notă
Accesul la această pagină necesită autorizare. Puteți încerca să vă conectați sau să modificați directoarele.
Accesul la această pagină necesită autorizare. Puteți încerca să modificați directoarele.
Applies to: ✅ Warehouse in Microsoft Fabric
This article describes strategies, considerations, and methods for migrating from Azure Synapse Analytics dedicated SQL pools to Microsoft Fabric Data Warehouse.
Tip
Use the Fabric Migration Assistant for Data Warehouse for an automated migration experience from Azure Synapse Analytics dedicated SQL pools. This article contains important strategic and planning information.
Migration introduction
Microsoft Fabric is an all-in-one SaaS analytics solution for enterprises. It offers a comprehensive suite of services, including Data Factory, Data Engineering, Data Warehousing, Data Science, Real-Time Intelligence, and Power BI.
This article describes options for schema (DDL), database code (DML), and data migration and helps you choose an option for your scenario. It uses the TPC-DS industry benchmark for illustration and performance testing. Your results might vary depending on factors such as data types, table width, and source latency.
Prepare for migration
Carefully plan your migration project before you get started, and ensure that your schema, code, and data are compatible with Fabric Data Warehouse. Consider the limitations. Quantify the work required to refactor incompatible items and any other resources needed to deliver the migration.
Another key goal of planning is to adjust your design so that your solution takes full advantage of Fabric Data Warehouse query performance. Designing data warehouses for scale introduces unique design patterns, so traditional approaches aren't always the best. Review the performance guidelines. Although you can make some design adjustments after migration, making changes earlier saves time and effort. Migration from one technology or environment to another is always a major effort.
The following diagram shows the migration lifecycle and the tasks associated with its five pillars: Assess and Evaluate, Plan and Design, Migrate, Monitor and Govern, and Optimize and Modernize.
Runbook for migration
Consider the following activities as a planning runbook for your migration from Synapse dedicated SQL pools to Fabric Data Warehouse.
- Assess and Evaluate
- Identify objectives and motivations. Establish clear desired outcomes.
- Discover, assess, and baseline the existing architecture.
- Identify key stakeholders and sponsors.
- Define the scope of what to migrate.
- Start small and simple, and prepare for multiple small migrations.
- Begin to monitor and document all stages of the process.
- Build an inventory of data and processes for migration.
- Define data model changes, if any.
- Set up the Fabric workspace.
- Assess your team's skill set and preferences.
- Automate wherever possible.
- Use Azure built-in tools and features to reduce migration effort.
- Train staff early on the new platform.
- Identify upskilling needs and training assets, including Microsoft Learn.
- Plan and Design
- Define the desired architecture.
- Select the methods and tools for the migration to accomplish the following tasks:
- Data extraction from the source.
- Schema (DDL) conversion, including metadata for tables and views.
- Data ingestion, including historical data.
- If necessary, re-engineer the data model by using new platform performance and scalability.
- Database code (DML) migration.
- Migrate or refactor stored procedures and business processes.
- Inventory and extract the security features and object permissions from the source.
- Design and plan to replace or modify existing ETL/ELT processes for incremental load.
- Create parallel ETL/ELT processes to the new environment.
- Prepare a detailed migration plan.
- Map the current state to the desired state.
- Migrate
- Perform schema, data, and code migration.
- Data extraction from the source.
- Schema (DDL) conversion.
- Data ingestion
- Database code (DML) migration.
- If necessary, scale the dedicated SQL pool resources up temporarily to aid speed of migration.
- Apply security and permissions.
- Migrate existing ETL/ELT processes for incremental load.
- Migrate or refactor ETL/ELT incremental load processes.
- Test and compare parallel incremental load processes.
- Adapt the detailed migration plan as necessary.
- Perform schema, data, and code migration.
- Monitor and Govern
- Run in parallel, and compare against your source environment.
- Test applications, business intelligence platforms, and query tools.
- Benchmark and optimize query performance.
- Monitor and manage cost, security, and performance.
- Perform a governance benchmark and assessment.
- Run in parallel, and compare against your source environment.
- Optimize and Modernize
- When the business is comfortable, transition applications and primary reporting platforms to Fabric.
- Scale resources up or down as the workload shifts from Azure Synapse Analytics to Microsoft Fabric.
- Build a repeatable template from the experience gained for future migrations. Iterate.
- Identify opportunities for cost optimization, security, scalability, and operational excellence.
- Identify opportunities to modernize your data estate with the latest Fabric features.
- When the business is comfortable, transition applications and primary reporting platforms to Fabric.
Lift and shift or modernize?
In general, there are two types of migration scenarios, regardless of the purpose and scope of the planned migration: lift and shift as-is, or a phased approach that incorporates architectural and code changes.
Lift and shift
In a lift and shift migration, you migrate an existing data model with minor changes to the new Fabric Data Warehouse. This approach minimizes risk and migration time by reducing the new work needed to realize the benefits of migration.
Lift and shift migration is a good fit for these scenarios:
- You have an existing environment with a small number of warehouses to migrate.
- You have an existing environment with data that's already in a well-designed star or snowflake schema.
- You're under time and cost pressure to move to Fabric Data Warehouse.
In summary, this approach works well for workloads that are optimized for your current Azure Synapse dedicated SQL pool environment and don't require major changes in Fabric.
Modernize in a phased approach with architectural changes
If a legacy data warehouse evolved over a long period of time, you might need to re-engineer it to maintain the required performance levels.
You might also want to redesign the architecture to take advantage of the new engines and features available in the Fabric workspace.
Design differences: Synapse dedicated SQL pools and Fabric Data Warehouse
Consider the following Azure Synapse and Microsoft Fabric data warehousing differences, comparing dedicated SQL pools to the Fabric Data Warehouse.
Table considerations
When you migrate tables between different environments, typically only the raw data and the metadata physically migrate. You usually don't migrate other database elements from the source system, such as indexes, because they might be unnecessary or implemented differently in the new environment.
Performance optimizations in the source environment, such as indexes, indicate where you might need optimization in a new environment. Fabric manages these optimizations automatically.
T-SQL considerations
There are several Data Manipulation Language (DML) syntax differences to consider. Review the T-SQL surface area in Fabric Data Warehouse and perform a code assessment when you choose a method for migrating database code.
Depending on the parity differences at the time of the migration, you might need to rewrite parts of your T-SQL DML code.
Data type mapping differences
Fabric Data Warehouse has several data type differences from Azure Synapse Analytics dedicated SQL pools. For more information, see Data types in Microsoft Fabric.
The following table shows the mapping of supported data types from Azure Synapse dedicated SQL pools to Fabric Data Warehouse.
| Synapse dedicated SQL pools | Fabric Data Warehouse |
|---|---|
| money | decimal(19,4) |
| smallmoney | decimal(10,4) |
| smalldatetime | datetime2 |
| datetime | datetime2 |
| nchar | char |
| nvarchar | varchar |
| tinyint | smallint |
| binary | varbinary |
| datetimeoffset* | datetime2 |
* Datetime2 doesn't store the extra time zone offset information that datetimeoffset stores. Since Fabric Data Warehouse doesn't currently support the datetimeoffset data type, you need to extract the time zone offset data into a separate column.
Tip
Ready to migrate?
To get started with an automated migration experience, see Fabric Migration Assistant for Data Warehouse.
For more manual migration steps and details, see Migration methods for Azure Synapse Analytics dedicated SQL pools to Fabric Data Warehouse.