Building Data-Driven Web Apps with Pyramid and SQLAlchemy Transcripts
Chapter: MongoDB edition
Lecture: Introduction to the NoSQL version

Login or purchase this course to watch this video and the rest of the course contents.
0:00 We've built our app. We've deployed it. It's basically done. But let's take one more look. Let's try one more version of our application.
0:09 So we're going to rebuild our PyPI demo app this time with a NoSQL-based document database called MongoDB.
0:18 It's the most popular of the document databases but the ideas will be pretty similar across the board. So the first question is, why are we doing this?
0:26 Why do we have this MongoDB version? Well, there's two basic reasons. The first reason is many people prefer document databases
0:33 over relational databases. The whole thing about migrations? A whole lot less of that when you're doing document databases and things like that.
0:40 The running of it is easier a lot of times and also the performance can be better. So that's one reason. People might just want a MongoDB version.
0:48 The other reason though is we've talked a lot about some amazing design patterns. We've organized our code in nice ways.
0:55 We have these data access services that group say the user queries and data processing, the package processing and we have our view models.
1:05 So what I'd like to show you the main takeaway here is the power of these design patterns that we've employed.
1:12 What you'll see is we'll be able to change a very few set of files and actually completely switch not just the database
1:19 but entirely the style of underlying data altogether. So it's going to be really quite easy and quite awesome. If you're not interested in MongoDB
1:28 feel free to skip to the end. Skip over this chapter. But if you are or you want to see the power
1:33 of these design patterns to allow us to evolve our application as we build it so we don't have to design it all perfectly up front 'cause you never do
1:40 you'll get to see that in action during this chapter.

Talk Python's Mastodon Michael Kennedy's Mastodon