============
Since StackMob is now defunct, forking this code to support moving a Parse dataset to a different backend.
see stackmob-parse-migrator for the original project
- Install pip (
brew install python
works on mac) pip install stackmob-parse-migrator
or clone this repo- If you're importing geopoints, create schema with geopoint fields using the same names you had on Parse. All other schema types can be inferred and you don't need to worry about them.
- Unzip the parse export zip to somewhere on your harddrive
- Windows only: Rename any relation JSON files (see Windows Caveats below)
stackmob-parse-migrator --path=/path/to/unzipped-json/folder --verbose 1
- Primitives data types
- Arrays
- ID fields
- Overriding createddate/lastmoddate
- Geopoints
- Dates
- Relations
- Subobjects
- Pointers
- Binary Files
- Mixed type arrays are not allowed (this is a feature)
- Subobjects greater than 1 level deep can't be migrated
- StackMob doesn't support actual subobjects. Subobjects will be split off into separate relations, which can be joined together by using the expand feature
- StackMob doesn't have a date format. Dates are stored as longs in unix time
- This script loads all the objects for each collection into memory. This could lead to OOM with sufficiently large datasets
Please visit http://www.python.org/getit/ to download a Python distribution for your Windows platform. We have tested this script successfully on Windows 7 using ActivePython 2.7.2.
If your application uses relations in its schemas, then the zip archive you downloaded from Parse has files of the form _Join:<relationName>:_<schemaName>.json
. Windows handles this badly, and some zip clients do too. We recommend that you rename these files after unarchiving to the form _Join#<relationName>#_<schemaName>.json
Windows may not be able to find stackmob-parse-migrator
at the command prompt. If you installed the script using pip
, then it should reside in C:\Python27\Scripts
, or wherever your Python installation lives. Navigate to that directory, and execute the script directly from there, e.g. python .\stackmob-parse-migrator --api_key=...
This project is open source! You are welcome to modify this and improve it as you come along. There's such a variety of data out there that we hope we've covered, but just in case you find any corner cases, we and other developers would truly be grateful for your contributions :) Thanks, and happy coding!