Amazon S3 is a cloud-based object storage service from Amazon Web Services. It's key features are storage management and monitoring, access management and security, data querying, and data transfer.
N/A
CouchDB
Score 6.0 out of 10
N/A
Apache CouchDB is an HTTP + JSON document database with Map Reduce views and bi-directional replication. The Couch Replication Protocol is implemented in a variety of projects and products that span computing environments from globally distributed server-clusters, over mobile phones to web browsers.
S3 blew this out of the water, we can get over 30 files a second, almost no failures, auto backed up, don't need our own server, and a much simpler interface with PHP Laravel.
Amazon S3 is a great service to safely backup your data where redundancy is guaranteed and the cost is fair. We use Amazon S3 for data that we backup and hope we never need to access but in the case of a catastrophic or even small slip of the finger with the delete command we know our data and our client's data is safely backed up by Amazon S3. Transferring data into Amazon S3 is free but transferring data out has an associated, albeit low, cost per GB. This needs to be kept in mind if you plan on transferring out a lot of data frequently. There may be other cost effective options although Amazon S3 prices are really low per GB. Transferring 150TB would cost approximately $50 per month.
Great for REST API development, if you want a small, fast server that will send and receive JSON structures, CouchDB is hard to beat. Not great for enterprise-level relational database querying (no kidding). While by definition, document-oriented databases are not relational, porting or migrating from relational, and using CouchDB as a backend is probably not a wise move as it's reliable, but It may not always be highly available.
Fantastic developer API, including AWS command line and library utilities.
Strong integration with the AWS ecosystem, especially with regards to access permissions.
It's astoundingly stable- you can trust it'll stay online and available for anywhere in the world.
Its static website hosting feature is a hidden gem-- it provides perhaps the cheapest, most stable, most high-performing static web hosting available in PaaS.
It can replicate and sync with web browsers via PouchDB. This lets you keep a synced copy of your database on the client-side, which offers much faster data access than continuous HTTP requests would allow, and enables offline usage.
Simple Map/Reduce support. The M/R system lets you process terabytes of documents in parallel, save the results, and only need to reprocess documents that have changed on subsequent updates. While not as powerful as Hadoop, it is an easy to use query system that's hard to screw up.
Sharding and Clustering support. As of CouchDB 2.0, it supports clustering and sharding of documents between instances without needing a load balancer to determine where requests should go.
Master to Master replication lets you clone, continuously backup, and listen for changes through the replication protocol, even over unreliable WAN links.
Web console can be very confusing and challenging to use, especially for new users
Bucket policies are very flexible, but the composability of the security rules can be very confusing to get right, often leading to security rules in use on buckets other than what you believe they are
Because our current solution S3 is working great and CouchDB was a nightmare. The worst is that at first, it seemed fine until we filled it with tons of data and then started to create views and actually delete.
It is tricky to get it all set up correctly with policies and getting the IAM settings right. There is also a lot of lifecycle config you can do in terms of moving data to cold/glacier storage. It is also not to be confused with being a OneDrive or SharePoint replacement, they each have their own place in our environment, and S3 is used more by the IT team and accessed by our PHP applications. It is not necessarily used by an average everyday user for storing their pictures or documents, etc.
Couchdb is very simple to use and the features are also reduced but well implemented. In order to use it the way its designed, the ui is adequate and easy. Of course, there are some other task that can't be performed through the admin ui but the minimalistic design allows you to use external libraries to develop custom scripts
AWS has always been quick to resolve any support ticket raised. S3 is no exception. We have only ever used it once to get a clarification regarding the costs involved when data is transferred between S3 and other AWS services or the public internet. We got a response from AWS support team within a day.
it support is minimal also hw requirements. Also for development, we can have databases replicated everywhere and the replication is automagical. once you set up the security and the rules for replication, you are ready to go. The absence of a model let you build your app the way you want it
Overall, we found that Amazon S3 provided a lot of backend features Google Cloud Storage (GCS) simply couldn't compare to. GCS was way more expensive and really did not live up to it. In terms of setup, Google Cloud Storage may have Amazon S3 beat, however, as it is more of a pseudo advanced version of Google Drive, that was not a hard feat for it to achieve. Overall, evaluating GCS, in comparison to S3, was an utter disappointment.
It practically eliminated some real heavy storage servers from our premises and reduced maintenance cost.
The excellent durability and reliability make sure the return of money you invested in.
If the objects which are not active or stale, one needs to remove them. Those objects keep adding cost to each billing cycle. If you are handling a really big infrastructure, sometimes this creates quite a huge bill for preserving un-necessary objects/documents.