Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Development Tools

What kind of database does Teamtreehouse itself uses(MySQL/NoSQL).

I want to make a site where there user has to keep track of all progress under various courses and topics. I am unable to design schema. should I use NoSql? I dont know NoSQL though. Or is Relational Databases good enough? How to go about it.

Andrew Chalkley , Amit Bijlani , Nick Pettit

4 Answers

Nathan Williams
seal-mask
.a{fill-rule:evenodd;}techdegree
Nathan Williams
Python Web Development Techdegree Student 6,851 Points

Andrew Chalkley is correct, we use MySQL internally for any relational database needs. PostgreSQL is also a popular and rigorous solution, and is definitely worth a look if you're going to use a relational database.

Other data stores we use internally are memcache for caching, and Redis for queues and transient/non-critical data stores.

Before choosing a NoSQL solution, I'd recommend reading over this person's experience and giving it some serious consideration.

For further reading on the topic of databases and the trade-offs you have to make in relation to CAP, i'd recommend a read through this series of articles, which is both entertaining, terrifying, and illuminating (especially in regard to the reality vs the marketing hype w/r/t mongo).

Regards,

Nathan W

Treehouse Site Ops

edit: it should be noted that w/r/t that grimoire mysql article, a lot of those issues have been improved in recent versions. even so, it's well worth the read as an example of the types of issues you can face running a database system, and emphasizes the importance of carefully choosing a system appropriate to your use case.

Andrew Chalkley
STAFF
Andrew Chalkley
Treehouse Guest Teacher

At Treehouse I know we use MySQL for the most part. I don't know if any of our stack is NoSQL. I'll tag one of our Ops guys to let you know.

Relational databases are great for relational data! Hence the name :)

Generally, relational data is data you want kept around, NoSQL is often used for non-critical data that isn't relational, often used for caching, worker queues and other trivial content.

Jimmy Hsu
Jimmy Hsu
6,511 Points

I would recommend NoSQL personally, but I can't seem to find any videos on it from the Treehouse library.

MongoDB is a popular solution. I would try out their "Try It Out" interactive tutorial.

Treehouse only cover MySQL in their own courses but they make reference to other databases. It would be good to see them delve into others especially non SQL based ones.