I don't know exactly how many roster updates there are during one game's cycle, but plenty. EA usually waits until a week-ish or so until the proper start of the season update comes for the rosters. Some players need to play a regular season game in the NHL before they are allowed to be added to the game (because of licensing). When all teams have played a game the start of season roster update is usually near.
One option is to use shared rosters of course. It has many advantages, like that those who are serious are usually fast to upload their updated version. They usually create a lof of missing rookies and prospects, some which EA will add in their roster update and some that they can't (from NCAA).
But only EA can add the real faces and photos, so you win some and you lose some with that solution. Also if new jerseys and stuff are added, the only way to add them is by using the official roster. I find myself very torn between these solutions, since I do like to create my own roster, but knowing that all my work can be for nothing if a significant thing is added via the official roster, I need to start over.