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
MongoDB
Score 8.6 out of 10
N/A
MongoDB is an open source document-oriented database system. It is part of the NoSQL family of database systems. Instead of storing data in tables as is done in a "classical" relational database, MongoDB stores structured data as JSON-like documents with dynamic schemas (MongoDB calls the format BSON), making the integration of data in certain types of applications easier and faster.
$0.10
million reads
Pricing
Amazon S3 (Simple Storage Service)
MongoDB
Editions & Modules
No answers on this topic
Shared
$0
per month
Serverless
$0.10million reads
million reads
Dedicated
$57
per month
Offerings
Pricing Offerings
Amazon S3
MongoDB
Free Trial
No
Yes
Free/Freemium Version
No
Yes
Premium Consulting/Integration Services
No
No
Entry-level Setup Fee
No setup fee
No setup fee
Additional Details
—
Fully managed, global cloud database on AWS, Azure, and GCP
I haven't been personally involved in the decision to use S3, but in comparison to Dropbox or Google Drive, this offers a less robust UI to modify things, while being a cheaper storage mechanism over the rest.
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.
If asked by a colleague I would highly recommend MongoDB. MongoDB provides incredible flexibility and is quick and easy to set up. It also provides extensive documentation which is very useful for someone new to the tool. Though I've used it for years and still referenced the docs often. From my experience and the use cases I've worked on, I'd suggest using it anywhere that needs a fast, efficient storage space for non-relational data. If a relational database is needed then another tool would be more apt.
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.
Being a JSON language optimizes the response time of a query, you can directly build a query logic from the same service
You can install a local, database-based environment rather than the non-relational real-time bases such a firebase does not allow, the local environment is paramount since you can work without relying on the internet.
Forming collections in Mango is relatively simple, you do not need to know of query to work with it, since it has a simple graphic environment that allows you to manage databases for those who are not experts in console management.
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
An aggregate pipeline can be a bit overwhelming as a newcomer.
There's still no real concept of joins with references/foreign keys, although the aggregate framework has a feature that is close.
Database management/dev ops can still be time-consuming if rolling your own deployments. (Thankfully there are plenty of providers like Compose or even MongoDB's own Atlas that helps take care of the nitty-gritty.
I am looking forward to increasing our SaaS subscriptions such that I get to experience global replica sets, working in reads from secondaries, and what not. Can't wait to be able to exploit some of the power that the "Big Boys" use MongoDB for.
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.
NoSQL database systems such as MongoDB lack graphical interfaces by default and therefore to improve usability it is necessary to install third-party applications to see more visually the schemas and stored documents. In addition, these tools also allow us to visualize the commands to be executed for each operation.
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.
Finding support from local companies can be difficult. There were times when the local company could not find a solution and we reached a solution by getting support globally. If a good local company is found, it will overcome all your problems with its global support.
While the setup and configuration of MongoDB is pretty straight forward, having a vendor that performs automatic backups and scales the cluster automatically is very convenient. If you do not have a system administrator or DBA familiar with MongoDB on hand, it's a very good idea to use a 3rd party vendor that specializes in MongoDB hosting. The value is very well worth it over hosting it yourself since the cost is often reasonable among providers.
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.
We have [measured] the speed in reading/write operations in high load and finally select the winner = MongoDBWe have [not] too much data but in case there will be 10 [times] more we need Cassandra. Cassandra's storage engine provides constant-time writes no matter how big your data set grows. For analytics, MongoDB provides a custom map/reduce implementation; Cassandra provides native Hadoop support.
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.
Open Source w/ reasonable support costs have a direct, positive impact on the ROI (we moved away from large, monolithic, locked in licensing models)
You do have to balance the necessary level of HA & DR with the number of servers required to scale up and scale out. Servers cost money - so DR & HR doesn't come for free (even though it's built into the architecture of MongoDB