Migration process & Checklist
It's important to understand the migration process before you begin moving any of the videos. A major part of the work involved happens before you migrate actual videos and it starts with planning & decision making. The stages below give a view of the migration process and steps needed to migrate.
Note: Adoption to Stream (on SharePoint) is disjoint activity, it can start before or go along the migration process depending on the strategy chosen by your organization
Stage 1: Planning & decisions
When planning your migration, it's important to decide what content needs to be migrated and where the content should go. It's also crucial to understand the difference between Stream (Classic) and Stream (on SharePoint), as well as the capabilities and limitations of the migration tool. To help with planning and migration decisions, it's recommended that you take the following steps:
- Use our migration public docs to understand the two versions of Stream and see this guide for how users are using Stream (on SharePoint) differently than Stream (Classic).
- Run the Stream (classic) inventory report to identify videos to migrate. The report provides all metadata required to plan which videos to migrate
- Have internal discussions with stakeholders on which content to migrate. Often these discussions and descions are the hard part of the entire process.
- Decide policies: videos after X publish or last view date with > Y views OR User’s non-Teams Meeting Recordings content OR Choose high visibility creators/Corp comms videos.
- Attend our dedicated migration office hours for any more queries or to learn from experiences of other admins
Stage 2: Execution
When running the migration, it involves detailed change management with your users along side physically running the migrations in the tool. To help with executiation of the migration, it's recommended that you take the following steps:
- Get buy-in from stakeholders, announce retirement timelines, and communicate your plans and progress.
- Migrate test videos & verify metadata
- Do some migration pilots with videos on your production environment.
- Finally migrate the content that was decided in your planning.
Stage 3: Troubleshoot & closure
As you run migrations, you may encounter specific issues with your content that you need to troubleshoot. To help with troubleshooting, it's recommended that you take the following steps:
- Refer back to all the Stream migration help docs including FAQs and release notes of changes coming to the tool and any known issues.
- Join our public office hours to hear questions from other customers or ask your own questions.
- Open a support ticket to get help from support engineers.
- As migrations complete make sure to follow up your change management communications with end users.
If you're a small organization, you may follow a less elaborate process, or even start using Stream (on SharePoint) right away.
The planning and execution process in stage #2 is further explained in our migration checklist article next.
The article covers, all nuances that large customers face in the migration process. It give you not just an overview of the process, but details of links spanning different articles and pages in the documentation. This will also give admins a check on the overall progress and remaining steps and they use this as an anchor article to reach a specific page.
A small or medium tenant, may not require to go through all the mentioned steps.
1. Start using Stream (on SharePoint)
Your organization can start using Stream (on SharePoint) now, this slows down the ingestion of new videos in classic and eventually you can stop the ingestion completely. Follow the ideas in the adoption guide.
As your organization starts to use new Stream, you can block uploads new videos in Stream (classic). You can do that via two ways:
- Redirect your users to upload to Stream (on SharePoint): All upload entry points in Classic will be blocked. On Classic upload page, users see an option to go to Stream (on SharePoint) and upload there. Complete details
- Block upload for your users, with exceptions to a few: If you want to allow a few people to upload in Classic while block others, you can use existing Stream(Classic) settings. This blocks all entry points in Classic including the upload page, which will be not longer accessible.
2. Plan your migration
Before starting the planning, you may choose from migration strategies mentioned. Most large tenant may prefer slowing switching the user over users and in that case, planning on what content to migrate becomes critical.
For large customers, planning involves more effort than actual button select to move the videos. It involves talking to stakeholder, deciding which videos to migrate and the destination locations. Stream (Classic) inventory report is a great resource to know all your content in Classic and related metadata, that can help you take decisions. You can contact the videos owners to decide, which videos you need to migrate. Few nuances you should know:
- Videos migrate in logical groups or containers. But, don't appear in the tool in the same way as they appear in Stream(Classic).
- Videos can appear at multiple place in Stream (Classic) but is stored and visible only at a single location in Stream (on SharePoint). For migrating videos associated with multiple groups or channels, the tool assigns them to one of the containers based on container priority logic. The video migrates to new Stream with assigned container and physically be located in a single destination, specified against the container.
- For videos assigned to multiple groups, container priority logic may assign it to one of the groups, but admins may want to migrate them as part of another group. Also, videos assigned as 'display' instead as an owner on the group, move as part of the User container. To solve these problems, admin can use a script to rearrange permissions on Stream (Classic) content, such that the video migrates with the intended container.
- Admins can migrate either the full containers or a specific videos inside a container via filters. To finish with planning phase admins should have a list of critical business containers, that they want to migrate completely. And/Or generic high level policies that they want to apply, so as to move specific videos inside a container. Few, e.g., of such policies. Migrate videos viewed in last one year with more than five views. Or Migrate videos published in last two year excluding Teams meeting recording.
- And finally, admins should prefer to migrate business critical containers first, since you may want to migrate them completely or keep all the videos together. Follow that up with partial migration for the remaining content. We have seen admins migrating Microsoft 365 group/ company channel before migrating User containers.
3. Change management
- Create internal help pages: Set up help pages that answer frequently asked questions about migration. Internal help pages help your users transition smoothly
- Communicate the migration plan: Once you decide on videos to migrate and plan the activity, share the plan with your users. Communicate via email, in-product messaging, and your internal help pages. Use the example messages based on the migration policy that you choose.
4. Moving the videos
This phase includes executing the plan decided in #2 above.
Migrate test content first: Migrate some test content first to get familiar with the migration tool.
Pilot with business critical containers: Containers from CEO videos, corp comms, training or product demos should first be migrated. Admins usually want to migrate complete container for such business critical content. Use the script to Update ownership in Stream (Classic) to keep this content together in single place post migration in Stream (on SharePoint).
Use Partial migration to migrate remaining content: Once critical content is migrated, admins may use partial migration to migrate remaining video based on policies as mentioned above.
No Auto-destination mapping for Company channels & Stream groups: The destination location is auto-populated for Microsoft 365 groups and User containers, but not for Company channel and Stream group. You need to talk to owners of these containers to decide what content they need migrated to Stream (on SharePoint). Based on their input you can create individual sites for company-wide channels or combine them under one or a few sites.
Migrate in batches: Don't migrate all content at once. It's advisable to choose a batch of right size, say 500, 1000 or ever more. Resolve error in a batch before starting to migrate the next one. Use tags to choose a batch from all containers in UI.
Nuances for large customers: If your Stream (Classic) has more than 40-K containers, you would need to, either manually add containers or delete migrated containers and then you'll be able to discover more. UI has a limit of 40-K containers, with a 10-K buffer to add containers manually. Read complete details
Complete the migration in the minimum possible time: Both versions coexist but your users will be happier the sooner they're only working in Stream (on SharePoint) and not split across experiences.
Track migration progress via Migration summary report: There are several reports from the migration tool you can use to track your progress. See report details.
Migration tool speed or throughput
Customers can expect 1.5-2 TB/day data transfer speeds. Read further for details and tips to improve throughput.
Migration tool is built over Migration Manager Platform (MMP), which in turn uses the underlying SharePoint migration APIs. So, there are three systems closely interacting with each other; Stream APIs, MMP and SharePoint migration APIs. The speed mentioned is the end to end throughput of the migration tool. In case you're interested to know about details of individual system, refer to the perf guide for SharePoint Migration API.
Empirically, we observed a throughput for one of our early large customers to be ~2.2 TB/Day. They migrated 1,200 GBs in 13 hours in a single migration.
Tips for migration
- Migration performance is impacted by network infrastructure, file size, migration time, and throttling. Understanding these factors help you to plan and maximize the throughput of your migrations.
- Throughput is highest during off-peak hours, which are typically nights and weekends in your region's time zone. Your region's time zone is determined by where your SharePoint tenant is set up.
- Large file size migrates faster than smaller ones. Raw videos files can be copied quickly, the speed constraint is in copying metadata. Due to this, small file size can result in larger overhead and processing time, which directly impacts the performance.
- Migration manager autoscales infra dynamically for each tenant based on number of containers queued, network infrastructure, peak or off-peak hours, file size, throttling, etc. Autoscaling allows anywhere between 1-50 containers to be processed in parallel.
- Hence users are encouraged to run containers in parallel, and enqueue more than 50 containers against different site collections. The more the queue, faster the autoscaling can kick in.
- Exceptionally large files (>15 GB) aren't supported for migration. If you have such video, guidance is to download and upload the video in SharePoint directly.
- During migration, it isn't uncommon for your migration task to be throttled. Throttling is implemented to ensure the best user experience and reliability of Stream Classic and SharePoint. It's primarily used to load balance the database and can occur if load is high. Some of such instances can be migrating all large video content in a single migration or attempting to migrate during peak hours. It's advised to migrate a mix of large and small videos files in a one migration. Tool has built in automatic retries to handle such throttling scenarios.
Time taken to complete migration
While the previous section tries to answer the speed at which videos migrate, the total time taken for migration process will be more than the throughput of the tool for the 'Execution' stage. It can be due to the following reasons.
- If you're a large organization, there may be some cases unique to your company and may need extra effort.
- Some time may go into getting clarifications on the nuances of migration that you didn't understand during the 'Planning & decisions' stage. It's done via raising the support ticket and there's a lead time involved.
- If you discover a bug in the tool, the fix time may increase the total time to complete the migration. As many customers are already migrating now, the tool is more stable and chances for the bugs are reducing.
Note: you may not need to migrate all videos shown in your inventory report, but only a fraction of it. Some of our large customers that have finished planning are migrating 5%-15% of their total videos in Stream (Classic). Look at your Stream (classic) inventory report
Migration details Understand migration tool Migration strategies guide