cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Announcements
What’s new: end-to-end encryption, Replay and Dash updates. Find out more about these updates, new features and more here.

Dropbox API Support & Feedback

Find help with the Dropbox API from other developers.

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Re: Dropbox Datastore API Alternatives

Dropbox Datastore API Alternatives

Clifton L.
Helpful | Level 5

I'm sure you've all heard Dropbox's news that they will be deprecating the Datastore API. I'm curious to know what everyone is going to move over to.

I originally chose the Datastore API for a few reasons:

  • It can gracefully handle large datasets (my users have thousands of records each)
  • Importing lots of data is very fast (thousands of records in less than 10 seconds; doing the same thing on Parse takes ~25 minutes).
  • Dropbox is well known and trusted by many

I am currently considering a few other options, but I'd love to hear what you all are looking to do.

  1. Firebase - firebase.com - This seems to be the most similar to the Datastore API so far. Developers claim it performs really well with large datasets. The downside is that it costs money for more concurrent connections (but the prices are reasonable).

  2. Couchbase - couchbase.com - This is open source and seems pretty good. The downside is having to get your own server environment up and running.

  3. Helios - helios.io - This seems to provide a lot of flexibility, but you have to do some of your own back-end setup, and it doesn't seem to provide an object-base sync interface. Instead, you have to use Core Data and its REST API.

  4. Parse - parse.com - There is a lot to like about this option, and it can handle large datasets, but doing basic database operations like importing data and summing the numbers in a column is surprisingly difficult (for me, at least).

Anyone else found an alternative they like?

Good luck with your BaaS migration. 😕

30 Replies 30

Todd F.9
New member | Level 1

Amazon S3 - needs some tweeking but supports arbitrary object types.

Todd F.9
New member | Level 1

Apache Usergrid - A BaaS solution. Hosted at apigee.com too.

David D.7
New member | Level 1

A word on Parse. I initially developed this app with a Parse interface. However, as I started to use it, I realized I could see (and change) all user data. That just isn't right, Maybe I implemented it incorrectly. I'd be interested in others' experiences.

Denis B.
New member | Level 1

Thank you so much for firebase, you saved my life 🙂

Richard F.44
New member | Level 1

My use case would be fine with switching to files, but the notifications are too noisy. I use the Dropbox API with a writing app, and it autosaves as you type. With the Datastore API, this wouldn't trigger notifications, but when updating files, there's a notification every time (unless the user disables all notifications).

Does anyone know of a way to disable (some) notifications when using the Core API?

Steve M.
Dropbox Staff

Richard, I'm hoping to add such a feature to API v2.

Caram
New member | Level 1

Here is the results of my own experiments.

Firebase:

  • excellent for realtime events, Web-minded at its core
  • multiple auth providers
  • local cache in beta for iOS since Dec. 2013, in beta for Android since Feb. 2015
  • alternatively, you can use FeventTypeChildAdded and FeventTypeChildChanged to pick the state since last run, but FeventTypeChildRemoved will not be fired to allow deleting data that was removed in the cloud since the previous run of the app. Incidentally, FeventTypeChildChanged does not say which keys have changed
  • security is flexible, but needs to be setup for each app and could easily lead to leaked data if not set properly
  • the dashboard is great

Cognito:

  • probably the closest offering to the former Datastore API, even has the notion of a "dataset", but
  • cumbersome to setup
  • quite thin currently
  • dataset limited to 1MB and entire store to 20MB, which is small
  • multiple auth providers
  • how will it evolve in the future?

Parse:

  • I have yet to experiment, but my current impression from the doc is that the Parse local datastore is not quite like the Datastore cache, i.e. data is either in the cloud or in the local store, but not in both simultaneously. Again, as said, since I have not experimented yet, I could be wrong

CloudKit:

  • fully paid by the user like Dropbox, but iOS only and the schema becomes fixed once one enters production (unfortunately)

Caram
New member | Level 1

Clifton L.
Helpful | Level 5

Thanks for that rundown, Caram. I had looked at Cognito but wondered about its future since I don't know a single developer using it.

Since Dropbox's news about deprecating the Datastore API, I have been working with Parse. It requires a bit of a shift in how you think about storing data since it's much more about querying the cloud than it is storing data locally, but so far I am really liking it. I used to always want my data on the device, but this makes make my app slower. Doing lots of queries and intensive calculations on the device is doable, but using Cloud Code on Parse seems like a more reasonable way to handle such things.

Parse is unique in that it has a huge following and tremendous financial support from Facebook, so I see it being around for a long time and only getting better. I also like that I can see my users' data (to reference David D.'s comment) because it makes troubleshooting custom support issues MUCH easier. There's no way to see a user's data when using the Dropbox Datastore unless you log in with their Dropbox account.

Need more support?