You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
119 lines
5.6 KiB
Plaintext
119 lines
5.6 KiB
Plaintext
00:01 Hello and welcome to MongoDB Quick Start with Python.
|
|
00:05 MongoDB is one of the most popular
|
|
00:07 and exciting database technologies around.
|
|
00:09 Python is one of the most popular
|
|
00:11 and fastest growing language there is
|
|
00:12 and these two technologies work great together
|
|
00:15 and that's exactly what this course is about.
|
|
00:17 We're going to quickly get started with MongoDB,
|
|
00:20 write some code against it,
|
|
00:22 and build some realistic applications.
|
|
00:24 The goal with this class is to teach you MongoDB.
|
|
00:27 We assume you know a little bit of Python
|
|
00:29 but you'll of course pick some things up along the way
|
|
00:31 if you don't know it already, and really,
|
|
00:33 we want to get you going quick, hence the name, Quick Start.
|
|
00:36 Let's get started by talking about
|
|
00:38 what we're going to cover in this course.
|
|
00:39 We're going to focus on three main things.
|
|
00:41 We're going to start with why do you care about
|
|
00:44 NoSQL and Document Databases.
|
|
00:46 How do document databases make working with schemas easier,
|
|
00:50 modeling data easier, as well as add performance
|
|
00:54 and flexibility to our applications.
|
|
00:55 We're going to talk about modeling specifically,
|
|
00:58 'cause it is one of the things that is
|
|
00:59 pretty challenging about document databases.
|
|
01:02 If you come from a relational database world,
|
|
01:04 you probably know about third normal form.
|
|
01:06 This is a way to carefully and
|
|
01:08 more structured way to plan out how you model your data.
|
|
01:11 In document databases, you don't really have that.
|
|
01:13 There's a lot more sort of flexibility
|
|
01:16 in how you design things.
|
|
01:18 This is great for you once you understand it
|
|
01:20 and get really good at it, but it's challenging to know
|
|
01:22 how to model things when you get started
|
|
01:24 because there's so much flexibility
|
|
01:26 and it's kind of open-ended.
|
|
01:27 It feels a little more like art than science, in some sense.
|
|
01:30 So we're going to focus specifically on
|
|
01:32 techniques and trade offs, and some guidelines
|
|
01:35 I have to come up with to help you be successful
|
|
01:38 modeling your data with document databases such as MongoDB.
|
|
01:42 Then we're going to start writing code for real.
|
|
01:44 We're going to use a Mongo ODM, Object Document Mapper.
|
|
01:49 Think of SQL Alchemy but for document databases.
|
|
01:51 They're called MongoEngine, and we're going to use that
|
|
01:54 to create some classes to model our data,
|
|
01:57 and map those classes to and from MongoDB
|
|
01:59 and use that as the foundation of our application.
|
|
02:02 Speaking of applications,
|
|
02:03 what are we going to build in this class?
|
|
02:05 Well, we're going to build an AirBnB clone but for snakes.
|
|
02:09 Okay, so we're going to build Snake BnB
|
|
02:11 and this allows you, when you're traveling with your snake,
|
|
02:14 your pet snake, you don't want it to have to
|
|
02:17 live out in the car or something like that.
|
|
02:19 You want to get it a cage that it can live in,
|
|
02:21 a proper snake cage where it'll be happy.
|
|
02:23 There'll be owners of cages
|
|
02:25 who can put their cages up for rent,
|
|
02:27 and snake owners, pet owners
|
|
02:29 who want to travel with their pets and
|
|
02:31 have their pet have a place to stay.
|
|
02:33 We're going to create this sort of silly
|
|
02:35 AirBnB knockoff clone, but we're going to model
|
|
02:37 many of the operations you would see
|
|
02:39 in real AirBnB on our application here
|
|
02:42 so it's going to be pretty rich in terms of data.
|
|
02:44 As far as tools go, well of course,
|
|
02:45 we're going to talk about MongoDB, right.
|
|
02:47 That's the database we're using,
|
|
02:49 but you're also going to learn some other things
|
|
02:50 that are pretty awesome in the course.
|
|
02:52 We're going to talk about MongoEngine.
|
|
02:54 This is the primary library
|
|
02:55 we're going to use to talk to MongoDB.
|
|
02:57 It's built upon another one that's very popular
|
|
03:00 that has sort of the lowest level
|
|
03:01 official way to talk to MongoDB called PyMongo,
|
|
03:04 so you might see a little bit of
|
|
03:05 both of those actually in the course.
|
|
03:07 We're going to use what I think is
|
|
03:08 the best tool for accessing MongoDB,
|
|
03:11 something that used to be called Robomongo
|
|
03:14 but now it's called Robo 3T,
|
|
03:16 'cause it was acquired by a company called 3T.
|
|
03:18 This is part command line,
|
|
03:20 part GUI way to interact with MongoDB,
|
|
03:23 and it's beautiful, and free open source, it's great.
|
|
03:26 Also, we're going to use PyCharm for our Python code.
|
|
03:29 You don't have to use PyCharm for this course,
|
|
03:31 but you'll see me using it, and I think you'll see
|
|
03:33 a lot of benefits as we go.
|
|
03:36 Speaking of me, who am I anyway?
|
|
03:37 Who is this voice that you're listening to?
|
|
03:39 Hi, my name is Michael Kennedy.
|
|
03:40 You can find me on Twitter at @mkennedy.
|
|
03:43 What makes me qualified to teach this course?
|
|
03:45 Well, first of all, I host the most popular Python podcast
|
|
03:48 called Talk Python to Me, and I've interviewed
|
|
03:51 many, many people, including some of the folks from MongoDB,
|
|
03:54 the company as well as authors who've written about
|
|
03:57 MongoDB design patterns and things like that,
|
|
03:59 so I've had a lot of experience
|
|
04:00 working with people from Python and MongoDB.
|
|
04:03 I've created the Talk Python Training Company
|
|
04:06 and written many Python courses
|
|
04:08 and MongoDB courses there as well.
|
|
04:10 And also, I am part of the MongoDB Masters Program.
|
|
04:14 This is a group of about 35 external community members
|
|
04:18 who give advice back to MongoDB,
|
|
04:21 and I've been part of this for many years,
|
|
04:23 worked closely with the folks inside MongoDB over the years.
|
|
04:26 So this is what you have in store for you,
|
|
04:28 lots of awesome MongoDB and Python.
|
|
04:30 I hope you're excited.
|
|
04:31 Let's get right to it.
|