Hi,
I'm looking for a Couchbase hosting service to provide Couchbase Lite replication services for my (non-enterprise) Mac and iOS apps. Here are my requirements:
- Security. I don't want to have access to any user's data. All communication with server must be secure. Storage of user data must be secure.
- There must be an API so that my app can create both databases and user accounts on demand with multiple databases per user account.
- Each user must have their own databases. I don't want documents from one user intermixed with documents of another user. One reason is for security, another is that different users can possibly have documents with the same documentID. I think having separate databases solves this problem. I'm not sure if Couchbase Server's "channels" feature allows for this.
- Lots of storage available for attachments. In order to provide easy access to files outside the document, I'm using the attachments feature of CBL.
- A nice to have would be direct client billing. I would prefer if my customers had to sign-up for an account and pay for the service themselves rather than me having to pay on their behalf.
Does such a service exist outside of Cloudant? I think Cloudant sounds like a fantastic service to use, but they want to charge me a starting price of $2500 / month for a hosted solution and that's with only 480 GB of disk space. They seemed very reluctant when I asked them about using attachments to store files. Not sure why, attachments are a great feature of Couchbase and it solves a huge problem with synchronizing files. My data has to be available offline, so I can't just store a URL to some other file storage system like Amazon S3 and I don't want to write my own file sync solution. That's why I chose Couchbase Lite in the first place.
Perhaps I'm just living in a dreamworld where such a service exists. Currently my app uses iCloud Drive and Dropbox for syncing user's data. So it's up to the user to provide their own cloud storage space.
Why don't I just keep using iCloud Drive and Dropbox for cloud storage? Mostly because I am also giving user's an option to use Couchbase Lite's peer-to-peer replication feature and using document attachments is perfect for this. I don't have to worry about syncing files separately from the database. It just all happens automatically. I don't want to have to write different code for syncing files via a cloud service and a separate one for syncing peer-to-peer. And then what about if the user switches from syncing via a cloud service to syncing via peer-to-peer? I'd have to manage copying files from the cloud service down to their device and then adding them as document attachments so they could be synced peer-to-peer.
Anyway, so I'm hoping that it's possible for me to provide this kind of sync service to my customers. If anyone has any advice it would be greatly appreciated.
Thanks,
Brendan