6

I read that there exists three main types of databases

* Transactional (Client-Server database// OLTP database)
* Decision support system (DSS) (Data warehouse database // Data mart // Reporting database)
* Hybrid

What is the type of database considered for a social network, like Facebook or Twitter?

I guess the category is:

Transactional > Client -Server database.

From the book:

A transactional database is a database based on small changes to the database (that is, small transactions).The database is transaction-driven. In other words, the primary function of the database is to add new data, change existing data, delete existing data, all done in usually very small chunks, such as individual records.

But, as I said, I am not sure.

13
  • 3
    Is this homework? Please update the question with your answer so we can comment on it. Please explain your understanding of the problem for a social network and the data base "type" that you understand.
    – S.Lott
    Commented Jun 7, 2011 at 15:33
  • 3
    if you don't know the answer please don't mark to close. the question is objective and related programming
    – user455318
    Commented Jun 7, 2011 at 15:34
  • @S.Lott is not an homework. I am reading this book: Wrox - Beginning Database Design, and i have some doubts in this chapter of the book. My only objective is understand what is the type of database used by facebook or twitter as example.
    – user455318
    Commented Jun 7, 2011 at 15:35
  • 1
    @user455318: "Facebook doesn't have small transactions"? What makes you say that? What evidence do you have? What definition of "Small Transaction" are you using?
    – S.Lott
    Commented Jun 7, 2011 at 17:04
  • 2
    Breaking down Databases into those categories seems very arbitrary and not very realistic.
    – JohnFx
    Commented Jun 7, 2011 at 23:44

3 Answers 3

6

The answer is e. none of the above. Twitter, for example, uses a graphing database called FlockDB for its social graph (which they developed and open sourced). Facebook uses an internally developed graph database. I'm not sure when that book was written but its categorization is rather suspect today.

2

Given those three choices, I would say that "Transactional" would be the type of database that would be used by social networking sites...

But, Wrox's categorization is a little simplistic, and would only apply to a SQL database; as mentioned in the comments, Facebook and Twitter use document databases. It's not that they couldn't be implemented in a Transactional SQL database, it's just that these social networks have just grown so large that they need alternate implementations in order to scale to the massive number of users that they have.

If you're interested in the various NoSQL implementations, the following link has a lot of valuable information: http://www.nosqlpedia.com/wiki/Survey_distributed_databases

0
0

Just for completeness sake: there are also object oriented databases, which work entirely different from any of the above.

And, to clarify: DSS databases are generally also SQL databases, but use a completely different focus on structuring the data to provide faster access (since they are used for data mining).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.