0
votes

Parse migration guide suggests if we move over to AWS, it recommends using Elastic Beanstalk. The more I read about AWS services, I'm thinking DynomoDB is the better choice. DynamoDB and Elastic Beanstalk both use noSQL. Does anyone know the obvious difference between the two? The ability to handle many small but frequent requests is important for my project.

2
They aren't even slightly similar services. One is a database, the other is a managed web server. I don't see how you could possibly compare the two services. They recommend using Elastic Beanstalk because you can install Parse server on there and continue using Parse. If you want to instead rewrite your code to use DynamoDB then go for it, but your question comparing the two services makes little sense. - Mark B
Then just to make things to apples to apples terms, Parse server is based on mongodb hence its comparable to dynamodb right? Which means for me to use parse server i don't have a choice but to go with elastic beanstalk? Or am i still making an apples to oranges comparison here? - shle2821
You could compare MongoDB to DynamoDB as they are both NoSQL databases. If you want to use Parse server though, it is only compatible with MongoDB so you can't use it with DynamoDB. - Mark B
Note that you wouldn't run the Parse server database (MongoDB) on Elastic Beanstalk. You would probably use MongoLab, or setup MongoDB directly on an EC2 server. Your questions keep mixing databases and web servers. For example I wouldn't say Parse is "based on MongoDB" so much as it uses MongoDB as its database. Elastic Beanstalk is really a managed web server, and has literally nothing to do with the use, or non-use, of MongoDB vs DynamoDB. - Mark B

2 Answers

1
votes

DynamoDB is the ultimate, scalable noSql database system. Go with Dynamo. It handles many small requests very well.

1
votes

Contrary to what the comments say, Elastic Beanstalk is NOT a web server, and it is NOT a database. Elastic Beanstalk is an AWS service that helps users quickly provision other AWS services, such as compute (think EC2) and storage (think S3 or DynamoDB) and set up monitoring and deployment of user's application on these resources. With Beanstalk you can deploy your applications and retain control over the underlying AWS resources. In your case, you might use Elastic Beanstalk do deploy a MongoDB server database to store your parse data.

DynamoDB on the other hand is a managed, distributed highly available and scalable non-relational (NoSQL) database provided as an AWS service. Dynamo is in some ways comparable to MongoDB (they can both store data and they are both non-relational) but where Mongo is a system that you have to manage and deploy yourself (perhaps with the help of Elastic Beanstalk), Dynamo is a fully managed system where you only have to worry about your application logic. In your case you'd be replacing MongoDB with DynamoDB which will free yourself to focus on your appliction instead of having to worry about maintaining MongoDB (i.e updating it and the host OS when new releases come out, etc).