Is MongoDB the right database for a community site?

I create a community site with Node.JS and Express, and almost all of the quick tutorials or examples use MongoDB, so I checked it out. The only database I have used so far is MySQL, but I am not so familiar with it, so I would not like to read in MongoDB. Mongo looks good, and a document model can be useful. And with mongoose it is easy to use. But I have some questions, so I don’t spend much time learning MongoDB, if it doesn’t work at all:

  • I read that MongoDB is unreliable if you use it on only one computer and you may face data loss. It is right? The project is not so large that I can afford another server, and data loss is not an option at all! Imagine that some forum posts just disappear. But I think that people will not use it if this happens.

  • The site will contain a forum for self-assembly, and I'm not sure if relational db would be better. However, you can save streams with inline messages and so on. But I do not know how to search, since Mongo does not support full-text search. What do you think?

  • When to use embedded documents in Mongo? Example. The user can post status updates, for example, on Twitter. Would you save these updates to a user document? There may be many updates. Or a document for updating and binding it to a user ID? 3.1. And how to execute a request for several documents? You want to receive the last 10 status updates of your friends. You can do this with MySQL JOINs.

  • Is there a way to use auto-increment identifiers for documents like MySQL? For example, the user must have a unique integer key, but I do not want some random number, such as Mongo, to do this, so that the small identifiers of the user.

  • ? db, - . , , .

+5
3

:

  • , . MongoDB , , v. 2 . , SafeMode , .

  • . , , ParentId ParentThreadId. , :

    a) , .

    b) , , concurrency. , , , ,

    c) , .

  • , , ( , ) . , MongoDB , .

    3 (). . .

  • . , . db , int 0x00000001 0xfa9ac7335. . Mongo ObjectId Guid/UUID. .

  • , .

+8
  • MongoDB , , - , . SafeMode, , , . , . , , node , .

  • , Mongo. , , . , . Map Reduce, . , SOLR Elastic Search.

  • , . Mongo , : , - . , , , .

  • , Mongo. , . , . Mongo , , TimeStamp .

  • Mongoose.

+4
+2