freshidea - Fotolia
As the final curtain for Facebook's Parse mobile backend as a service draws closer, developers scrambling to move their program code and databases to alternative services are finding the process is not always smooth. Their advice: Don't wait.
Facebook acquired Parse in 2013, with the intention of offering it as a mobile backend as a service for developers to build and host apps that interoperated with the Facebook ecosystem. Owing to evolutionary changes in its business priorities, the social media giant announced in January 2016 it would shutter the Parse service on January 28, 2017, giving developers a window of one full year to migrate both apps and data. Facebook published a migration guide to simplify the transition to any MongoDB database and opened up the Parse server code to the open source community.
For Ron Bresler, a systems architect with Milestone Sports, the looming shutdown sped up a migration away from Parse that he already knew was inevitable. Based in Columbia, Md., Milestone develops and markets a shoe-mounted wearable device that tracks workout gait metrics, distance, pace and time.
Being on Parse was not his decision. "I inherited this deployment and didn't think we'd be as dependent on Parse as we became," Bresler said from the company's development center in Tel Aviv, Israel. "Parse didn't provision compute power, and we experienced unexplained crashes when running code. We reached a point where I told our people not to write any more Parse server code." As for Bresler's initial reaction to the Parse shutdown announcement, "I was relieved, actually. Parse was not meant to be used in the way we were using it."
Ron Breslersystems architect, Milestone Sports
Milestone's migration has not proven to be as simple as hoped, Bresler said. "We needed to update a lot of our code to make the open source Parse server work for us. The open source version of the Parse server is not fully compatible with the [Parse software developer's kit]."
Derek Penn, CEO and CTO at Music Aficionado Inc., which bills itself as an online community for people passionate about music, said Parse was good for getting established, for prototyping and for beta testing. "It was so good and its weaknesses so easy to work around, we kept it for production," he said. "I assumed we'd eventually have to move to our own servers, but Parse kept up with our needs." That all blew up on January 28, 2016, when Parse co-founder Kevin Lacker announced the service would be retired.
MongoDB as a service
Milestone sought help from mLab, a database-as-a-service provider for MongoDB, based in Austin, Texas. In planning for migration, it is essential to understand Facebook's Parse server and the open source incarnation of it are not the same, according to mLab CEO Will Shulman. "There will be gaps between what the Parse service did for you and what the open source Parse server can do," he said. "It's not an exact replacement to the Parse service."
One fundamental example is the Parse service provided auto-indexing of databases. Developers didn't have to think about it, but the open source server lacks corresponding functionality. "If you add a new query, it's likely to be very slow. Now, you have to think about it," Shulman said. "If you decide to create a new query based on email addresses, now you have to create an index."
At Malibu, Calif., Music Aficionado, Penn began the migration process by moving the database to mLab. But the code continues to run on Facebook's production parse.com service for now. "We are separating the Parse layer from the database," Penn said.
In testing the open source Parse server, Penn became aware of the same incompatibilities experienced by Milestone Sports. "There are issues with the open source Parse API and queries are not as optimized."
James Curtis, a senior analyst at 451 Research, corroborated the reports of incompatibilities. "We have had reports that the open source Parse platform is not fully API-compatible with the real thing and that this is causing problems," he said. "We've seen a lot of panic among Parse users, but companies like mLab and ObjectRocket are providing needed migration paths through MongoDB as a service."
Ultimately, the clock continues to run, and Parse is slated to go dark on January 28, 2017. Given the incompatibility and performance issues with the open source server implementations, migration projects should already be well under way, Shulman said. "Moving your database from Parse to a MongoDB-as-a-service provider like mLab is relatively straightforward." Get that done and then focus on solving issues with code.
Parse alternatives want your business
What's the allure of MongoDB?