title
MongoDB Complete Introduction & Summary

description
Learn what MongoDB is, its core concepts, how to write queries and what else MongoDB has to offer (MongoDB Atlas, Compass, Stitch...) Join the full MongoDB course: https://acad.link/mongodb Check out all our other courses: https://academind.com/learn/our-courses ---------- NoSQL vs SQL: https://academind.com/learn/web-dev/sql-vs-nosql/ Installation Instructions: https://docs.mongodb.com/manual/installation/ Query Operators: https://docs.mongodb.com/manual/reference/operator/query/ CRUD Operations: https://docs.mongodb.com/manual/crud/ ---------- • Go to https://www.academind.com and subscribe to our newsletter to stay updated and to get exclusive content & discounts • Follow @maxedapps and @academind_real on Twitter • Join our Facebook community on https://www.facebook.com/academindchannel/ See you in the videos! ---------- Academind is your source for online education in the areas of web development, frontend web development, backend web development, programming, coding and data science! No matter if you are looking for a tutorial, a course, a crash course, an introduction, an online tutorial or any related video, we try our best to offer you the content you are looking for. Our topics include Angular, React, Vue, Html, CSS, JavaScript, TypeScript, Redux, Nuxt.js, RxJs, Bootstrap, Laravel, Node.js, Progressive Web Apps (PWA), Ionic, React Native, Regular Expressions (RegEx), Stencil, Power BI, Amazon Web Services (AWS), Firebase or other topics, make sure to have a look at this channel or at academind.com to find the learning resource of your choice!

detail
{'title': 'MongoDB Complete Introduction & Summary', 'heatmap': [{'end': 1164.283, 'start': 1087.571, 'weight': 0.791}, {'end': 1660.215, 'start': 1634.244, 'weight': 0.782}, {'end': 2012.855, 'start': 1981.735, 'weight': 0.707}], 'summary': 'Provides a comprehensive introduction to mongodb, highlighting its significance for web developers and capacity to store large data. it covers setup, security, connectivity, database management, querying, updating, and connectivity solutions for mongodb, offering valuable insights for users.', 'chapters': [{'end': 63.793, 'segs': [{'end': 51.483, 'src': 'embed', 'start': 2.364, 'weight': 0, 'content': [{'end': 3.905, 'text': 'welcome to this video.', 'start': 2.364, 'duration': 1.541}, {'end': 11.812, 'text': "in this video, we'll have a look at one of the most important and trending databases you can work with as a web developer these days mongodb.", 'start': 3.905, 'duration': 7.907}, {'end': 18.839, 'text': "we'll have a look at what it exactly is, how it works, how we can use it and what belongs to its rich ecosystem,", 'start': 11.812, 'duration': 7.027}, {'end': 24.324, 'text': "because that's so much more than that little database you can install locally on your system.", 'start': 18.839, 'duration': 5.485}, {'end': 31.976, 'text': "So we'll have a look at all these things and after this video, you'll already be ready to start using it in your next applications.", 'start': 24.924, 'duration': 7.052}, {'end': 32.718, 'text': "So let's start.", 'start': 32.137, 'duration': 0.581}, {'end': 41.434, 'text': "So what is MongoDB? Well, first, let's start with the name.", 'start': 36.829, 'duration': 4.605}, {'end': 49.041, 'text': 'It comes from the English word humongous, which basically means that it can store lots and lots of data.', 'start': 41.754, 'duration': 7.287}, {'end': 51.483, 'text': 'And that is why that name was chosen.', 'start': 49.081, 'duration': 2.402}], 'summary': 'Introduction to mongodb, a trending database for web developers, capable of storing large amounts of data.', 'duration': 49.119, 'max_score': 2.364, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM2364.jpg'}], 'start': 2.364, 'title': 'Introduction to mongodb', 'summary': 'Provides an introduction to mongodb, highlighting its importance as a trending database for web developers, its capacity to store large amounts of data, and its rich ecosystem, preparing viewers to start using it in their applications.', 'chapters': [{'end': 63.793, 'start': 2.364, 'title': 'Introduction to mongodb', 'summary': 'Provides an introduction to mongodb, highlighting its importance as a trending database for web developers, its capacity to store large amounts of data, and its rich ecosystem, preparing viewers to start using it in their applications.', 'duration': 61.429, 'highlights': ['MongoDB is highlighted as one of the most important and trending databases for web developers.', "The name 'MongoDB' comes from the English word 'humongous,' indicating its ability to store large amounts of data.", 'The chapter covers what MongoDB is, how it works, how to use it, and its rich ecosystem, preparing viewers to start using it in their applications.']}], 'duration': 61.429, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM2364.jpg', 'highlights': ['MongoDB is highlighted as one of the most important and trending databases for web developers.', "The name 'MongoDB' comes from the English word 'humongous,' indicating its ability to store large amounts of data.", 'The chapter covers what MongoDB is, how it works, how to use it, and its rich ecosystem, preparing viewers to start using it in their applications.']}, {'end': 432.289, 'segs': [{'end': 90.868, 'src': 'embed', 'start': 63.793, 'weight': 0, 'content': [{'end': 79.162, 'text': 'the core idea behind mongodb is that we can store a lot of data in there and work with it in a very performant way so that we can write with high throughput and retrieve data very efficiently and fast.', 'start': 63.793, 'duration': 15.369}, {'end': 87.926, 'text': "I'm talking about milliseconds here, which is, of course, super important for modern web and mobile applications, where you typically use MongoDB,", 'start': 79.462, 'duration': 8.464}, {'end': 90.868, 'text': 'because you can deliver data to your users fast.', 'start': 87.926, 'duration': 2.942}], 'summary': 'Mongodb enables high throughput writing and fast data retrieval in milliseconds for modern web and mobile applications.', 'duration': 27.075, 'max_score': 63.793, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM63793.jpg'}, {'end': 188.631, 'src': 'embed', 'start': 139.423, 'weight': 1, 'content': [{'end': 141.865, 'text': 'We might have a users and orders collection.', 'start': 139.423, 'duration': 2.442}, {'end': 146.148, 'text': "If you're coming from a SQL world, collections would be tables.", 'start': 142.485, 'duration': 3.663}, {'end': 152.593, 'text': 'So collections are basically the parts of our database where we put our data into.', 'start': 147.009, 'duration': 5.584}, {'end': 158.337, 'text': 'Now, the data itself would be a row or entry in a SQL database.', 'start': 153.133, 'duration': 5.204}, {'end': 163.42, 'text': "In MongoDB world, we're talking about documents, which look something like this.", 'start': 158.637, 'duration': 4.783}, {'end': 169.203, 'text': "If you're working with JavaScript, then you might recognize these curly braces.", 'start': 164.341, 'duration': 4.862}, {'end': 172.344, 'text': 'That looks a lot like JavaScript objects.', 'start': 169.663, 'duration': 2.681}, {'end': 180.948, 'text': 'And indeed, MongoDB uses a notation or a data format, which they call BSON, very similar to JSON.', 'start': 172.725, 'duration': 8.223}, {'end': 186.13, 'text': "I'll come back to that in a second, which looks a lot like JSON and actually also works a lot like it.", 'start': 181.048, 'duration': 5.082}, {'end': 188.631, 'text': 'So we store such documents in there.', 'start': 186.51, 'duration': 2.121}], 'summary': 'Mongodb uses collections for storing data, similar to tables in sql. data is stored as documents, resembling javascript objects and following bson format.', 'duration': 49.208, 'max_score': 139.423, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM139423.jpg'}, {'end': 239.09, 'src': 'embed', 'start': 212.628, 'weight': 2, 'content': [{'end': 216.431, 'text': "because maybe we didn't retrieve the age data In MongoDB.", 'start': 212.628, 'duration': 3.803}, {'end': 224.639, 'text': "it's no problem to store such mixed data in one and the same collection, which makes MongoDB very, very flexible.", 'start': 216.431, 'duration': 8.208}, {'end': 228.963, 'text': "And it's especially great, for example, for growing businesses,", 'start': 225.079, 'duration': 3.884}, {'end': 234.868, 'text': "where you don't know which kind of data you will need in the end or you will be able to gather in like six months.", 'start': 228.963, 'duration': 5.905}, {'end': 239.09, 'text': 'But you want to start now and you can basically store the data you have.', 'start': 235.549, 'duration': 3.541}], 'summary': 'Storing mixed data in mongodb is flexible and beneficial for growing businesses.', 'duration': 26.462, 'max_score': 212.628, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM212628.jpg'}, {'end': 300.323, 'src': 'embed', 'start': 275.647, 'weight': 3, 'content': [{'end': 285.674, 'text': "JSON is, in the end, using the same format, but it's binary encoded to make working with it behind the scenes on the server more efficient,", 'start': 275.647, 'duration': 10.027}, {'end': 292.998, 'text': 'to make it work with basically all languages you might use to reach out or to connect to your Mongo database.', 'start': 285.674, 'duration': 7.324}, {'end': 296.3, 'text': "so it gives you more flexibility, but you don't have to worry about that.", 'start': 292.998, 'duration': 3.302}, {'end': 300.323, 'text': 'You, in the end, store objects in your database that look like that.', 'start': 296.62, 'duration': 3.703}], 'summary': 'Using binary encoded json for efficient server operations and multi-language compatibility with mongo database.', 'duration': 24.676, 'max_score': 275.647, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM275647.jpg'}], 'start': 63.793, 'title': 'Mongodb features and bson', 'summary': "Discusses mongodb's performance benefits for web and mobile applications, its flexible data storage using collections and documents, and its schemaless nature. it also introduces bson as a binary encoding of json, explaining its role in efficient data storage and faster data retrieval in mongodb.", 'chapters': [{'end': 255.576, 'start': 63.793, 'title': 'Mongodb data storage and flexibility', 'summary': 'Explains the performance benefits of mongodb for modern web and mobile applications, its flexible data storage through collections and documents, and its schemaless nature, making it suitable for growing businesses.', 'duration': 191.783, 'highlights': ['MongoDB allows for high throughput and efficient data retrieval, with a focus on delivering data in milliseconds for modern web and mobile applications. MongoDB is optimized for high throughput and efficient data retrieval, delivering data in milliseconds, which is crucial for modern web and mobile applications.', 'Collections in MongoDB serve as the parts of the database where data is stored, and documents, resembling JavaScript objects, are used to store the actual data, providing flexibility for storing mixed data. Collections in MongoDB store data, while documents provide flexibility for storing mixed data, making it suitable for growing businesses with evolving data needs.', "MongoDB's schemaless nature allows for storing different data in the same collection, making it flexible and suitable for businesses with uncertain or evolving data requirements. The schemaless nature of MongoDB allows for storing diverse data in the same collection, providing flexibility for businesses with evolving data needs and uncertain future data requirements."]}, {'end': 432.289, 'start': 256.641, 'title': 'Bson: efficient data storage', 'summary': 'Introduces bson, a binary encoding of json, which provides more flexibility and efficient data storage in mongodb, allowing for nested documents and eliminating the need for complex joins, resulting in simpler and faster data retrieval and manipulation.', 'duration': 175.648, 'highlights': ['BSON provides more flexibility and efficient data storage in MongoDB BSON, a binary encoding of JSON, offers more flexibility and efficient data storage in MongoDB, enabling nested documents and eliminating complex joins, resulting in quicker data retrieval and manipulation.', 'Nested documents eliminate the need for complex joins and simplify data retrieval BSON allows for nested documents, simplifying data retrieval by eliminating the need for complex joins, resulting in faster and easier data manipulation.', 'BSON allows for mixed data structures in the same collection BSON permits mixed data structures within the same collection, providing a high level of flexibility in data organization and storage.', 'BSON enables data to be stored together, simplifying retrieval and manipulation BSON allows data to be stored together, simplifying data retrieval and manipulation by eliminating the need for joining multiple collections or tables.', 'BSON is compatible with various programming languages, including JavaScript, PHP, and Python BSON is compatible with a range of programming languages such as JavaScript, PHP, and Python, making it accessible and easy to work with across different platforms.']}], 'duration': 368.496, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM63793.jpg', 'highlights': ['MongoDB is optimized for high throughput and efficient data retrieval, delivering data in milliseconds, crucial for modern web and mobile applications.', 'Collections in MongoDB store data, while documents provide flexibility for storing mixed data, suitable for growing businesses with evolving data needs.', 'The schemaless nature of MongoDB allows for storing diverse data in the same collection, providing flexibility for businesses with evolving data needs and uncertain future data requirements.', 'BSON, a binary encoding of JSON, offers more flexibility and efficient data storage in MongoDB, enabling nested documents and eliminating complex joins, resulting in quicker data retrieval and manipulation.', 'BSON permits mixed data structures within the same collection, providing a high level of flexibility in data organization and storage.', 'BSON allows data to be stored together, simplifying data retrieval and manipulation by eliminating the need for joining multiple collections or tables.', 'BSON is compatible with a range of programming languages such as JavaScript, PHP, and Python, making it accessible and easy to work with across different platforms.']}, {'end': 897.57, 'segs': [{'end': 562.012, 'src': 'embed', 'start': 539.658, 'weight': 0, 'content': [{'end': 548.743, 'text': 'And deploying a Mongo database, just like any database, is a more complicated process, because obviously you want to have a scalable, performant,', 'start': 539.658, 'duration': 9.085}, {'end': 549.924, 'text': 'secure database.', 'start': 548.743, 'duration': 1.181}, {'end': 552.426, 'text': 'And MongoDB Atlas does all of that for you.', 'start': 550.144, 'duration': 2.282}, {'end': 554.867, 'text': "It's easy to set up sharding there,", 'start': 552.886, 'duration': 1.981}, {'end': 562.012, 'text': 'which basically is the process of using multiple servers that are connected together to store and retrieve and work with your data.', 'start': 554.867, 'duration': 7.145}], 'summary': 'Mongodb atlas simplifies deploying and scaling a secure, performant database with sharding for better data management.', 'duration': 22.354, 'max_score': 539.658, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM539658.jpg'}, {'end': 650.185, 'src': 'embed', 'start': 625.366, 'weight': 1, 'content': [{'end': 631.129, 'text': 'Now here you basically set up your cloud Mongo database and we can use the standard settings here,', 'start': 625.366, 'duration': 5.763}, {'end': 635.731, 'text': 'because these are the settings which will give us a free MongoDB cluster and database.', 'start': 631.129, 'duration': 4.602}, {'end': 641.196, 'text': 'Now, you can obviously also switch to more advanced settings if you need that for production.', 'start': 636.531, 'duration': 4.665}, {'end': 650.185, 'text': 'You can split your database across multiple regions worldwide to have the fastest retrieval time and latency for the different regions your users might be in.', 'start': 641.516, 'duration': 8.669}], 'summary': 'Set up a cloud mongo database with free mongodb cluster and database, switch to advanced settings for production, and split database across multiple regions for fastest retrieval time and latency.', 'duration': 24.819, 'max_score': 625.366, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM625366.jpg'}, {'end': 692.479, 'src': 'embed', 'start': 660.515, 'weight': 3, 'content': [{'end': 667.181, 'text': 'There you can use the region or choose the region where your Mongo database will be hosted in, and I will leave the default.', 'start': 660.515, 'duration': 6.666}, {'end': 672.146, 'text': 'Make sure to choose an option with free tier available to well get this for free.', 'start': 667.582, 'duration': 4.564}, {'end': 674.768, 'text': 'Then you have to choose the cluster tier.', 'start': 673.167, 'duration': 1.601}, {'end': 681.935, 'text': 'And here we only got one free cluster tier, which is this very simple one, which is fine for development and testing purposes though.', 'start': 675.088, 'duration': 6.847}, {'end': 692.479, 'text': 'But, of course, you can also ramp this up to get better, faster clusters with more storage space where you can store more data and retrieve it faster.', 'start': 682.515, 'duration': 9.964}], 'summary': 'Choose free tier for mongo database, upgrade for faster clusters and more storage.', 'duration': 31.964, 'max_score': 660.515, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM660515.jpg'}, {'end': 751.176, 'src': 'embed', 'start': 726.57, 'weight': 4, 'content': [{'end': 735.851, 'text': 'here tiers up there we could also add backup and shard our clusters, which is the process of using multiple connected servers.', 'start': 726.57, 'duration': 9.281}, {'end': 738.552, 'text': "And that's not to be mistaken with the replica sets.", 'start': 735.991, 'duration': 2.561}, {'end': 741.053, 'text': 'where we have fault-tolerancy.', 'start': 738.932, 'duration': 2.121}, {'end': 751.176, 'text': 'Sharding basically means that we get even more power because we basically duplicate the number of servers that are working together.', 'start': 741.473, 'duration': 9.703}], 'summary': 'Sharding increases server power by duplicating clusters for fault-tolerancy.', 'duration': 24.606, 'max_score': 726.57, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM726570.jpg'}, {'end': 839.857, 'src': 'embed', 'start': 816.944, 'weight': 5, 'content': [{'end': 827.431, 'text': 'as you can see, you can add an ip whitelist and there you can basically control which ips are able to connect to that cluster.', 'start': 816.944, 'duration': 10.487}, {'end': 832.674, 'text': 'now i got a couple of ips there and that might be, or probably is, empty for you,', 'start': 827.431, 'duration': 5.243}, {'end': 839.857, 'text': "and then you can just add an ip address and enter your current ip address of the local machine you're connecting to this,", 'start': 832.674, 'duration': 7.183}], 'summary': 'Add an ip whitelist to control access to the cluster, allowing specific ips to connect.', 'duration': 22.913, 'max_score': 816.944, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM816944.jpg'}], 'start': 432.709, 'title': 'Mongodb setup and security', 'summary': 'Covers getting started with mongodb, including options for free usage and installation, setting up a free mongodb cluster using atlas, emphasizing the availability of a free tier, and explaining the process of setting up a cluster, including sharding for increased power, and securing the cluster through user permissions and ip whitelisting.', 'chapters': [{'end': 586.744, 'start': 432.709, 'title': 'Getting started with mongodb', 'summary': 'Covers getting started with mongodb, including options for free usage, installation, and the benefits of using mongodb atlas for easier setup, scalability, and fault tolerance.', 'duration': 154.035, 'highlights': ['MongoDB Atlas provides an easier way of starting, is free to get started with, and offers a more realistic deployment solution compared to locally installed servers.', 'MongoDB Atlas allows for easy set up of sharding and replica sets for scalable, performant, and fault-tolerant databases.', 'Installing MongoDB locally is a valid option, but MongoDB Atlas offers simpler starting, free usage, and realistic deployment solutions.']}, {'end': 726.57, 'start': 586.984, 'title': 'Setting up mongodb using atlas', 'summary': 'Outlines the process of setting up a free mongodb cluster using atlas, including the options for cloud providers, cluster tiers, and additional settings, emphasizing the availability of a free tier and the simplicity for development and testing purposes.', 'duration': 139.586, 'highlights': ['You can set up a free MongoDB cluster and database using the standard settings in Atlas, which is free and suitable for development and testing purposes.', 'You have the option to choose different cloud providers and regions to optimize retrieval time and latency for users, with the availability of a free tier for hosting the Mongo database.', 'The chapter emphasizes the availability of a free tier for setting up the MongoDB cluster in Atlas, providing a cost-effective option for development and testing purposes.', 'The transcript explains the process of setting up a free MongoDB cluster using Atlas, highlighting the simplicity and availability of free options for development and testing purposes.']}, {'end': 897.57, 'start': 726.57, 'title': 'Cluster setup and security', 'summary': 'Explains the process of setting up a cluster, including sharding for increased power, and the importance of securing the cluster by controlling access through user permissions and ip whitelisting.', 'duration': 171, 'highlights': ['Sharding means duplicating the number of servers for increased power, providing more data storage nodes, and allowing the addition of multiple shards, increasing the overall power of the system.', 'Securing the cluster involves controlling access by creating different users with different permissions, implementing an IP whitelist to control which IPs can connect, and ensuring that only the local machine can connect with the created users.', 'The process of securing the cluster includes creating different users with specific permissions, adding an IP whitelist to control connections, and ensuring that only the local machine can connect.']}], 'duration': 464.861, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM432709.jpg', 'highlights': ['MongoDB Atlas provides an easier way of starting, is free to get started with, and offers a more realistic deployment solution compared to locally installed servers.', 'You can set up a free MongoDB cluster and database using the standard settings in Atlas, which is free and suitable for development and testing purposes.', 'MongoDB Atlas allows for easy set up of sharding and replica sets for scalable, performant, and fault-tolerant databases.', 'The chapter emphasizes the availability of a free tier for setting up the MongoDB cluster in Atlas, providing a cost-effective option for development and testing purposes.', 'Sharding means duplicating the number of servers for increased power, providing more data storage nodes, and allowing the addition of multiple shards, increasing the overall power of the system.', 'Securing the cluster involves controlling access by creating different users with different permissions, implementing an IP whitelist to control which IPs can connect, and ensuring that only the local machine can connect with the created users.']}, {'end': 1331.172, 'segs': [{'end': 940.888, 'src': 'embed', 'start': 917.259, 'weight': 0, 'content': [{'end': 924.761, 'text': 'ASP.NET, Python, whatever it is, not directly from Angular or React or so on,', 'start': 917.259, 'duration': 7.502}, {'end': 931.264, 'text': 'because you will need a server-side application connecting to MongoDB for both technical and security issues,', 'start': 924.761, 'duration': 6.503}, {'end': 937.806, 'text': "because you don't want to expose your credentials in your client-side code, which would be the case in Angular or React.", 'start': 931.264, 'duration': 6.542}, {'end': 940.888, 'text': 'therefore we will have such an application.', 'start': 938.126, 'duration': 2.762}], 'summary': 'Server-side application needed for connecting to mongodb due to technical and security reasons', 'duration': 23.629, 'max_score': 917.259, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM917259.jpg'}, {'end': 990.323, 'src': 'embed', 'start': 963.982, 'weight': 2, 'content': [{'end': 970.467, 'text': 'So here you would have to basically choose your version to get detailed instructions.', 'start': 963.982, 'duration': 6.485}, {'end': 974.57, 'text': 'You then find out how to connect in Node.js with the MongoDB driver.', 'start': 970.487, 'duration': 4.083}, {'end': 979.294, 'text': "And obviously you need to install that driver too, but I'll have a look at this in a separate video.", 'start': 974.911, 'duration': 4.383}, {'end': 985.719, 'text': "There basically for Node is an NPM package, an official one, which you add to your project and you're good to go.", 'start': 979.474, 'duration': 6.245}, {'end': 990.323, 'text': 'And you can basically start importing the MongoDB package here.', 'start': 985.999, 'duration': 4.324}], 'summary': 'Choose node.js version, connect with mongodb driver using npm package.', 'duration': 26.341, 'max_score': 963.982, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM963982.jpg'}, {'end': 1147.352, 'src': 'embed', 'start': 1118.447, 'weight': 1, 'content': [{'end': 1122.248, 'text': 'So I navigated into that bin folder that was extracted on Mac.', 'start': 1118.447, 'duration': 3.801}, {'end': 1124.428, 'text': "On Windows, you'll have an installer.", 'start': 1122.788, 'duration': 1.64}, {'end': 1127.949, 'text': "And once you walk through that, you'll also have a folder where the shell is installed.", 'start': 1124.448, 'duration': 3.501}, {'end': 1132.369, 'text': 'And then you execute that Mongo command, which is in there.', 'start': 1128.509, 'duration': 3.86}, {'end': 1136.99, 'text': 'You can just copy and paste in the command you got in that modal on the MongoDB cluster.', 'start': 1132.409, 'duration': 4.581}, {'end': 1140.151, 'text': 'But there is something you have to add on Mac.', 'start': 1137.53, 'duration': 2.621}, {'end': 1142.991, 'text': 'You have to add .slash at the beginning.', 'start': 1140.671, 'duration': 2.32}, {'end': 1147.352, 'text': 'Now, this will try to connect to your cluster and ask you for your password.', 'start': 1143.611, 'duration': 3.741}], 'summary': 'Install mongodb using installer on windows or navigate to bin folder on mac and execute command to connect to cluster.', 'duration': 28.905, 'max_score': 1118.447, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM1118447.jpg'}, {'end': 1199.544, 'src': 'heatmap', 'start': 1087.571, 'weight': 3, 'content': [{'end': 1091.295, 'text': "In the video description, you'll also find a link with some information on how that works.", 'start': 1087.571, 'duration': 3.724}, {'end': 1099.944, 'text': 'In the end, on Mac, you just extract a file, and then you get a folder which contains the shell.', 'start': 1091.715, 'duration': 8.229}, {'end': 1108.153, 'text': 'And you can move that folder anywhere you want and simply navigate into that folder in your terminal and start it.', 'start': 1100.504, 'duration': 7.649}, {'end': 1114.521, 'text': 'And you start it with this command actually to connect to this cluster for that given user here.', 'start': 1108.614, 'duration': 5.907}, {'end': 1117.305, 'text': "And on Windows, it's very similar, by the way.", 'start': 1115.282, 'duration': 2.023}, {'end': 1122.248, 'text': 'So I navigated into that bin folder that was extracted on Mac.', 'start': 1118.447, 'duration': 3.801}, {'end': 1124.428, 'text': "On Windows, you'll have an installer.", 'start': 1122.788, 'duration': 1.64}, {'end': 1127.949, 'text': "And once you walk through that, you'll also have a folder where the shell is installed.", 'start': 1124.448, 'duration': 3.501}, {'end': 1132.369, 'text': 'And then you execute that Mongo command, which is in there.', 'start': 1128.509, 'duration': 3.86}, {'end': 1136.99, 'text': 'You can just copy and paste in the command you got in that modal on the MongoDB cluster.', 'start': 1132.409, 'duration': 4.581}, {'end': 1140.151, 'text': 'But there is something you have to add on Mac.', 'start': 1137.53, 'duration': 2.621}, {'end': 1142.991, 'text': 'You have to add .slash at the beginning.', 'start': 1140.671, 'duration': 2.32}, {'end': 1147.352, 'text': 'Now, this will try to connect to your cluster and ask you for your password.', 'start': 1143.611, 'duration': 3.741}, {'end': 1150.985, 'text': 'That password is something you set up for the user.', 'start': 1147.881, 'duration': 3.104}, {'end': 1158.295, 'text': 'If you forgot it, you can, of course, assign a new one, and then enter that password here, and it should now connect to your cluster.', 'start': 1151.206, 'duration': 7.089}, {'end': 1164.283, 'text': 'Now, once this is finished, you should be connected to the cluster and therefore to the database server, not to a single database.', 'start': 1158.716, 'duration': 5.567}, {'end': 1170.227, 'text': 'Now, you can start running MongoDB commands, and, of course, you find all available commands in the official docs.', 'start': 1164.864, 'duration': 5.363}, {'end': 1172.289, 'text': 'One useful one is showdbs.', 'start': 1170.768, 'duration': 1.521}, {'end': 1177.572, 'text': "It shows you all the databases you have on your cluster, and if it's brand new, you'll have these two.", 'start': 1172.749, 'duration': 4.823}, {'end': 1184.416, 'text': "Now, on MongoDB, which is pretty convenient, you don't have to create databases with complex commands.", 'start': 1178.272, 'duration': 6.144}, {'end': 1187.218, 'text': 'Instead, they are created on the fly when you need them.', 'start': 1184.736, 'duration': 2.482}, {'end': 1190.059, 'text': 'You can switch to a database with the use command.', 'start': 1187.698, 'duration': 2.361}, {'end': 1193.942, 'text': 'For example, we can use first test here.', 'start': 1190.119, 'duration': 3.823}, {'end': 1199.544, 'text': "now we switch to the first test database, even though that didn't exist up there.", 'start': 1194.722, 'duration': 4.822}], 'summary': 'Guide on installing and using mongodb on mac and windows, connecting to a cluster, and executing commands.', 'duration': 40.828, 'max_score': 1087.571, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM1087571.jpg'}, {'end': 1258.323, 'src': 'embed', 'start': 1223.118, 'weight': 5, 'content': [{'end': 1225.08, 'text': "Now let's say we want to manage a couple of users.", 'start': 1223.118, 'duration': 1.962}, {'end': 1229.343, 'text': 'We can simply add such a collection also on the fly.', 'start': 1225.64, 'duration': 3.703}, {'end': 1231.565, 'text': 'There is no special create collection command.', 'start': 1229.403, 'duration': 2.162}, {'end': 1234.126, 'text': 'with db.users.', 'start': 1232.205, 'duration': 1.921}, {'end': 1240.71, 'text': 'If you work with JavaScript, or actually with most programming languages, you know that dot notation from objects.', 'start': 1234.446, 'duration': 6.264}, {'end': 1245.513, 'text': "And it's pretty similar here in MongoDB, which is why it's really fun to use it as a developer.", 'start': 1241.051, 'duration': 4.462}, {'end': 1250.637, 'text': 'A lot of the way you work with that database resembles the way you write code.', 'start': 1245.894, 'duration': 4.743}, {'end': 1258.323, 'text': "So now I'm accessing the user's collection, which does not exist yet, in the first test database, which also doesn't exist yet.", 'start': 1251.497, 'duration': 6.826}], 'summary': 'In mongodb, managing users is easy and resembles working with code, using dot notation for collections.', 'duration': 35.205, 'max_score': 1223.118, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM1223118.jpg'}, {'end': 1298.229, 'src': 'embed', 'start': 1270.093, 'weight': 6, 'content': [{'end': 1274.698, 'text': 'i can run insert, and now we have insert many or insert one.', 'start': 1270.093, 'duration': 4.605}, {'end': 1277.701, 'text': 'by the way, you have auto completion with tab.', 'start': 1274.698, 'duration': 3.003}, {'end': 1283.628, 'text': 'insert one, as the names, just inserts one element into that collection in that database.', 'start': 1277.701, 'duration': 5.927}, {'end': 1286.531, 'text': 'and now that element is like a json object.', 'start': 1283.628, 'duration': 2.903}, {'end': 1289.674, 'text': 'we use curly braces here to define that object.', 'start': 1286.531, 'duration': 3.143}, {'end': 1294.805, 'text': "Now, unlike in JSON, you now don't need to wrap your keys in double quotation marks.", 'start': 1290.72, 'duration': 4.085}, {'end': 1298.229, 'text': 'You can instead just write name, colon, and then the value.', 'start': 1295.125, 'duration': 3.104}], 'summary': 'The system now supports insert many and insert one, with auto completion using tab. insert one inserts a single element into the collection as a json object, with keys not needing to be wrapped in double quotation marks.', 'duration': 28.136, 'max_score': 1270.093, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM1270093.jpg'}], 'start': 898.271, 'title': 'Connecting and working with mongodb', 'summary': 'Discusses methods for connecting to mongodb, including using server-side applications with various programming languages, the installation and usage of node.js mongodb driver, and the installation and connection process of the mongo shell. it also explains how to connect to a mongodb cluster, create and switch between databases, manage collections, and store data using commands, emphasizing the flexibility and simplicity of the process.', 'chapters': [{'end': 1158.295, 'start': 898.271, 'title': 'Connecting to mongodb', 'summary': 'Discusses the different methods for connecting to mongodb, including using server-side applications with various programming languages, the installation and usage of the node.js mongodb driver, and the installation and connection process of the mongo shell on different operating systems.', 'duration': 260.024, 'highlights': ['The chapter emphasizes the importance of using server-side applications to connect to MongoDB for both technical and security reasons, as exposing credentials in client-side code is not recommended. Emphasizing the importance of using server-side applications for connecting to MongoDB for technical and security reasons.', 'The chapter explains the process of installing and using the Node.js MongoDB driver, which involves choosing the appropriate version and installing the official NPM package to connect to MongoDB. Explaining the process of installing and using the Node.js MongoDB driver, including choosing the appropriate version and installing the NPM package.', 'The chapter details the installation process of the Mongo shell on different operating systems, including navigating into the folder, executing commands, and connecting to the MongoDB cluster. Detailing the installation process of the Mongo shell on different operating systems, including navigating into the folder, executing commands, and connecting to the MongoDB cluster.']}, {'end': 1331.172, 'start': 1158.716, 'title': 'Working with mongodb databases', 'summary': 'Explains how to connect to a mongodb cluster, create and switch between databases, manage collections, and store data using commands, with a focus on the flexibility and simplicity of the process.', 'duration': 172.456, 'highlights': ['You can start running MongoDB commands and find all available commands in the official docs. One useful command is showdbs, which shows all the databases on the cluster. Emphasizes the availability of MongoDB commands and the utility of showdbs command.', 'Databases are created on the fly when needed, and you can switch to a database with the use command. Highlights the dynamic creation of databases and the use command for switching between databases.', 'Collections can be added on the fly with no special create collection command, using dot notation for simplicity. Emphasizes the ease of adding collections and the use of dot notation for simplicity.', 'Inserting data using commands like insert one, which allows for the insertion of a single element as a JSON object with keys and values. Explains the process of inserting data using insert one command and the structure of the JSON object.']}], 'duration': 432.901, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM898271.jpg', 'highlights': ['The chapter emphasizes the importance of using server-side applications to connect to MongoDB for both technical and security reasons.', 'The chapter details the installation process of the Mongo shell on different operating systems, including navigating into the folder, executing commands, and connecting to the MongoDB cluster.', 'The chapter explains the process of installing and using the Node.js MongoDB driver, including choosing the appropriate version and installing the NPM package.', 'Emphasizes the availability of MongoDB commands and the utility of showdbs command.', 'Databases are created on the fly when needed, and you can switch to a database with the use command.', 'Emphasizes the ease of adding collections and the use of dot notation for simplicity.', 'Explains the process of inserting data using insert one command and the structure of the JSON object.']}, {'end': 1572.698, 'segs': [{'end': 1419.353, 'src': 'embed', 'start': 1355.298, 'weight': 0, 'content': [{'end': 1362.968, 'text': 'you can also see that if you type show collections now here, you see that users collection which we created on the fly, and in that collection,', 'start': 1355.298, 'duration': 7.67}, {'end': 1369.992, 'text': 'if you want to see all, you can just access db.users, which is the collection, and then find, if you execute it like this,', 'start': 1362.968, 'duration': 7.024}, {'end': 1378.416, 'text': 'it finds all the documents in there and therefore right now we only see one, and that is that one document we created with our name and our age.', 'start': 1369.992, 'duration': 8.424}, {'end': 1385.64, 'text': 'here you now see these double quotation marks around the keys to and also that automatically generated id.', 'start': 1378.416, 'duration': 7.224}, {'end': 1390.482, 'text': 'So this is how we can add and find documents.', 'start': 1386.841, 'duration': 3.641}, {'end': 1397.143, 'text': 'Now, often we, of course, want to find just a subset of all the documents.', 'start': 1391.002, 'duration': 6.141}, {'end': 1399.083, 'text': "Now, for that, let's first of all add more.", 'start': 1397.423, 'duration': 1.66}, {'end': 1403.364, 'text': "Let's first of all clear the console so that it's easier to read with the CLS command.", 'start': 1399.603, 'duration': 3.761}, {'end': 1405.305, 'text': "We're still in the database.", 'start': 1403.764, 'duration': 1.541}, {'end': 1406.105, 'text': "We're still connected.", 'start': 1405.325, 'duration': 0.78}, {'end': 1407.445, 'text': 'I just emptied the screen.', 'start': 1406.145, 'duration': 1.3}, {'end': 1409.325, 'text': "And now let's simply add more.", 'start': 1408.105, 'duration': 1.22}, {'end': 1412.386, 'text': "And for that, I'll insert many users.", 'start': 1409.545, 'duration': 2.841}, {'end': 1416.971, 'text': 'Now insertMany simply takes as many entries as we want.', 'start': 1413.126, 'duration': 3.845}, {'end': 1419.353, 'text': 'So we can add a user here.', 'start': 1417.411, 'duration': 1.942}], 'summary': 'Creating and finding documents in the users collection, adding multiple entries with insertmany.', 'duration': 64.055, 'max_score': 1355.298, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM1355298.jpg'}, {'end': 1572.698, 'src': 'embed', 'start': 1524.804, 'weight': 1, 'content': [{'end': 1530.265, 'text': 'We could, for example, type age 26 to find all entries where the age is 26.', 'start': 1524.804, 'duration': 5.461}, {'end': 1538.068, 'text': "Therefore, we only find Lisa because she's the only person in or the only document in that collection with an age of 26.", 'start': 1530.265, 'duration': 7.803}, {'end': 1543.689, 'text': 'But I wanted to find all persons with an age greater than 25.', 'start': 1538.068, 'duration': 5.621}, {'end': 1546.612, 'text': 'And for that, we can use a so-called query criteria.', 'start': 1543.689, 'duration': 2.923}, {'end': 1550.757, 'text': 'I add another set of curly braces as a value for the age here.', 'start': 1547.013, 'duration': 3.744}, {'end': 1557.825, 'text': 'And in there, there are a couple of reserved operations or helpers we can use, and you can find them all in the official box.', 'start': 1551.057, 'duration': 6.768}, {'end': 1564.191, 'text': 'These all start with a dollar sign, and then there is the GT, the greater than helper.', 'start': 1558.706, 'duration': 5.485}, {'end': 1572.698, 'text': 'And now I can define the value, which is the value I wanna have, or I wanna find records which have a greater than value.', 'start': 1564.931, 'duration': 7.767}], 'summary': 'Using query criteria, we can find persons over 25 in the collection.', 'duration': 47.894, 'max_score': 1524.804, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM1524804.jpg'}], 'start': 1331.812, 'title': 'Mongodb database management', 'summary': 'Covers working with mongodb collections, including adding and finding documents, creating and accessing databases and collections, and finding subsets of documents. it also explores adding multiple documents using the insertmany command, using filter criteria to find documents based on age, and applying the greater than helper to retrieve records with age greater than a certain value.', 'chapters': [{'end': 1397.143, 'start': 1331.812, 'title': 'Working with mongodb collections', 'summary': 'Demonstrates how to add and find documents in a mongodb collection, including creating and accessing databases and collections, and finding subsets of documents.', 'duration': 65.331, 'highlights': ['Creating and accessing databases and collections The chapter shows how to create and access databases and collections in MongoDB, including adding and viewing the test database and the users collection.', 'Finding documents in a collection The process of finding documents in a collection is demonstrated, including accessing the collection, using the find method to retrieve documents, and viewing the generated id and document details.']}, {'end': 1572.698, 'start': 1397.423, 'title': 'Working with mongodb documents', 'summary': 'Explains how to add multiple documents in a mongodb collection using insertmany command, use filter criteria to find documents based on age, and apply the greater than helper to retrieve records with age greater than a certain value.', 'duration': 175.275, 'highlights': ['The insertMany command allows adding multiple entries to a MongoDB collection, simplifying the process and enhancing efficiency.', 'Demonstrating the usage of filter criteria to find documents based on specific attributes like age, providing a practical approach to querying in MongoDB.', 'The explanation of the greater than helper in MongoDB, showcasing a valuable method to retrieve records with a specific attribute value exceeding a given threshold.']}], 'duration': 240.886, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM1331812.jpg', 'highlights': ['The insertMany command allows adding multiple entries to a MongoDB collection, simplifying the process and enhancing efficiency.', 'Demonstrating the usage of filter criteria to find documents based on specific attributes like age, providing a practical approach to querying in MongoDB.', 'The explanation of the greater than helper in MongoDB, showcasing a valuable method to retrieve records with a specific attribute value exceeding a given threshold.', 'Creating and accessing databases and collections in MongoDB, including adding and viewing the test database and the users collection.', 'Finding documents in a collection is demonstrated, including accessing the collection, using the find method to retrieve documents, and viewing the generated id and document details.']}, {'end': 1990.141, 'segs': [{'end': 1602.531, 'src': 'embed', 'start': 1572.958, 'weight': 0, 'content': [{'end': 1579.384, 'text': 'So if I enter 25 here, now I find Lisa and Max, but not Chris, because 25 is not greater than 25, obviously.', 'start': 1572.958, 'duration': 6.426}, {'end': 1588.627, 'text': 'And this shows you how easy and fun it is to work with MongoDB and write more complex queries.', 'start': 1580.965, 'duration': 7.662}, {'end': 1592.128, 'text': "It's not super complex, to be honest, but it is a good start.", 'start': 1588.687, 'duration': 3.441}, {'end': 1595.649, 'text': "Now let's add some nested record.", 'start': 1593.468, 'duration': 2.181}, {'end': 1598.009, 'text': "For that, I'm clearing the window again.", 'start': 1596.129, 'duration': 1.88}, {'end': 1602.531, 'text': "I'll again reach out to my users and insert one user.", 'start': 1598.029, 'duration': 4.502}], 'summary': 'Demonstrating mongodb querying with 25, lisa, max, and chris. adding nested record.', 'duration': 29.573, 'max_score': 1572.958, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM1572958.jpg'}, {'end': 1668.658, 'src': 'heatmap', 'start': 1634.244, 'weight': 1, 'content': [{'end': 1634.964, 'text': "Let's hit Enter.", 'start': 1634.244, 'duration': 0.72}, {'end': 1641.427, 'text': 'If we now find all users again, we see Susanna there with the nested address.', 'start': 1635.704, 'duration': 5.723}, {'end': 1645.568, 'text': 'Now, we can also run queries on such embedded documents.', 'start': 1642.327, 'duration': 3.241}, {'end': 1648.27, 'text': 'For that, we can, again, find.', 'start': 1645.949, 'duration': 2.321}, {'end': 1656.273, 'text': "And now let's find all users where the address street is first street.", 'start': 1648.67, 'duration': 7.603}, {'end': 1657.874, 'text': 'We only have one such record.', 'start': 1656.393, 'duration': 1.481}, {'end': 1660.215, 'text': 'We only have one record with an address anyways.', 'start': 1657.994, 'duration': 2.221}, {'end': 1662.395, 'text': 'But still, I just want to show you how that works.', 'start': 1660.455, 'duration': 1.94}, {'end': 1668.658, 'text': 'For that, we again add curly braces to define our search criteria, our filter here.', 'start': 1663.056, 'duration': 5.602}], 'summary': 'Demonstrating querying embedded documents with one record found.', 'duration': 34.414, 'max_score': 1634.244, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM1634244.jpg'}, {'end': 1751.716, 'src': 'embed', 'start': 1709.518, 'weight': 3, 'content': [{'end': 1713.4, 'text': 'obviously, a common task also is to update or delete them.', 'start': 1709.518, 'duration': 3.882}, {'end': 1715.361, 'text': "now let's start with updating.", 'start': 1713.4, 'duration': 1.961}, {'end': 1724.044, 'text': 'for that we have another command, the update command, and for that command here we basically need two arguments.', 'start': 1715.361, 'duration': 8.683}, {'end': 1728.385, 'text': 'the first one identifies which document to update.', 'start': 1724.044, 'duration': 4.341}, {'end': 1731.946, 'text': 'the second one defines how to update it.', 'start': 1728.385, 'duration': 3.561}, {'end': 1738.707, 'text': "and then there's a third one where you can also configure the update mechanism, for example, define what should happen if no document is found.", 'start': 1731.946, 'duration': 6.761}, {'end': 1740.888, 'text': 'should it create one or do nothing?', 'start': 1738.707, 'duration': 2.181}, {'end': 1745.469, 'text': 'or if multiple documents are found for your filter, should it update them all or just the first one?', 'start': 1740.888, 'duration': 4.581}, {'end': 1748.532, 'text': "but we'll focus on the first two arguments only.", 'start': 1746.109, 'duration': 2.423}, {'end': 1751.716, 'text': 'The first one identifies which document to update.', 'start': 1749.032, 'duration': 2.684}], 'summary': 'Updating documents requires two arguments: document identifier and update method.', 'duration': 42.198, 'max_score': 1709.518, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM1709518.jpg'}, {'end': 1873.588, 'src': 'embed', 'start': 1847.718, 'weight': 5, 'content': [{'end': 1855.181, 'text': 'And finally, if you want to delete something, well, then we can use db users delete.', 'start': 1847.718, 'duration': 7.463}, {'end': 1858.082, 'text': "And then there's delete many or delete one.", 'start': 1855.461, 'duration': 2.621}, {'end': 1860.002, 'text': 'Now delete one is straightforward.', 'start': 1858.582, 'duration': 1.42}, {'end': 1862.864, 'text': 'You again have to search for what you want to delete.', 'start': 1860.383, 'duration': 2.481}, {'end': 1866.845, 'text': 'And that works in the same way as it does in update and as it does in find.', 'start': 1863.104, 'duration': 3.741}, {'end': 1873.588, 'text': 'By the way, there also would have been find one and so on if you just want to find one element instead of all matching.', 'start': 1867.225, 'duration': 6.363}], 'summary': 'Using db users delete allows for deletion, including delete many or delete one, while find one can be used for specific searches.', 'duration': 25.87, 'max_score': 1847.718, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM1847718.jpg'}, {'end': 1938.122, 'src': 'embed', 'start': 1910.414, 'weight': 6, 'content': [{'end': 1913.097, 'text': 'So this is how we can play around with it in the console.', 'start': 1910.414, 'duration': 2.683}, {'end': 1920.686, 'text': "But of course, sometimes it's also nice to have a graphical user interface and we can get that too with MongoDB Compass.", 'start': 1913.498, 'duration': 7.188}, {'end': 1925.251, 'text': "For that, let's connect again and let's choose connect with MongoDB Compass.", 'start': 1921.026, 'duration': 4.225}, {'end': 1929.876, 'text': 'Choose your operating system and download it because this is a tool you install locally.', 'start': 1925.611, 'duration': 4.265}, {'end': 1938.122, 'text': "Now, as you can see, it's quite big because it's a full program with a graphical user interface and a lot of logic attached to it.", 'start': 1930.757, 'duration': 7.365}], 'summary': 'Mongodb compass provides a graphical user interface for local installation, offering a comprehensive program with significant capabilities.', 'duration': 27.708, 'max_score': 1910.414, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM1910414.jpg'}], 'start': 1572.958, 'title': 'Mongodb querying, updating, and deleting', 'summary': 'Covers working with mongodb queries to find users based on specified criteria, running queries on embedded documents, and inserting a user with a nested address. it also introduces update and delete operations, covering their commands, mechanisms, and the use of mongodb compass for a graphical user interface.', 'chapters': [{'end': 1709.518, 'start': 1572.958, 'title': 'Working with mongodb queries', 'summary': 'Demonstrates how to work with mongodb by writing complex queries, such as finding users based on specified criteria and running queries on embedded documents, with an example of inserting a user with a nested address and then querying based on the embedded address field.', 'duration': 136.56, 'highlights': ['The chapter demonstrates how to work with MongoDB by writing complex queries, such as finding users based on specified criteria and running queries on embedded documents.', 'An example is given of inserting a user with a nested address, including name, age, and address with street and city, and then querying based on the embedded address field using dot notation.', "The example shows the process of finding all users where the address street is 'first street', with only one such record available for the query."]}, {'end': 1990.141, 'start': 1709.518, 'title': 'Mongodb update and delete operations', 'summary': 'Introduces the update and delete operations in mongodb, covering the update command with its arguments and mechanisms, as well as the delete command using delete one and delete many. it also touches on the use of mongodb compass for a graphical user interface.', 'duration': 280.623, 'highlights': ['The update command in MongoDB requires two arguments: the identifier for the document to update and the definition of how to update it. The update command in MongoDB requires two arguments: the identifier for the document to update and the definition of how to update it.', 'The update mechanism in MongoDB can be configured to define actions if no document is found or multiple documents are found for the filter. The update mechanism in MongoDB can be configured to define actions if no document is found or multiple documents are found for the filter.', 'The delete command in MongoDB includes options for delete many or delete one, allowing users to search for and delete specific documents. The delete command in MongoDB includes options for delete many or delete one, allowing users to search for and delete specific documents.', 'The chapter also mentions the usage of MongoDB Compass, a graphical user interface tool for MongoDB, which allows users to install it locally and connect to databases for inspection. The chapter also mentions the usage of MongoDB Compass, a graphical user interface tool for MongoDB, which allows users to install it locally and connect to databases for inspection.']}], 'duration': 417.183, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM1572958.jpg', 'highlights': ['The chapter demonstrates how to work with MongoDB by writing complex queries, such as finding users based on specified criteria and running queries on embedded documents.', 'An example is given of inserting a user with a nested address, including name, age, and address with street and city, and then querying based on the embedded address field using dot notation.', "The example shows the process of finding all users where the address street is 'first street', with only one such record available for the query.", 'The update command in MongoDB requires two arguments: the identifier for the document to update and the definition of how to update it.', 'The update mechanism in MongoDB can be configured to define actions if no document is found or multiple documents are found for the filter.', 'The delete command in MongoDB includes options for delete many or delete one, allowing users to search for and delete specific documents.', 'The chapter also mentions the usage of MongoDB Compass, a graphical user interface tool for MongoDB, which allows users to install it locally and connect to databases for inspection.']}, {'end': 2473.964, 'segs': [{'end': 2088.338, 'src': 'embed', 'start': 2063.696, 'weight': 4, 'content': [{'end': 2070.04, 'text': 'because these are the commands you will also write in your applications, which you then connect to MongoDB.', 'start': 2063.696, 'duration': 6.344}, {'end': 2077.187, 'text': 'So that is MongoDB in a nutshell, how we work with it, how we manipulate data, and how it thinks and works.', 'start': 2071.101, 'duration': 6.086}, {'end': 2080.15, 'text': "And in my opinion, it's really easy to work with it.", 'start': 2077.527, 'duration': 2.623}, {'end': 2088.338, 'text': "As a developer, it's so close to how you write code, in my opinion, much easier to work with it than with SQL databases,", 'start': 2080.55, 'duration': 7.788}], 'summary': 'Working with mongodb is easy for developers, akin to writing code, and simpler than sql databases.', 'duration': 24.642, 'max_score': 2063.696, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM2063696.jpg'}, {'end': 2143.674, 'src': 'embed', 'start': 2113.917, 'weight': 3, 'content': [{'end': 2115.318, 'text': "Now, what's that all about?", 'start': 2113.917, 'duration': 1.401}, {'end': 2121.542, 'text': 'MongoDB, Enterprise, Advanced and for OEM are basically also just the database,', 'start': 2116.079, 'duration': 5.463}, {'end': 2127.306, 'text': 'the database servers for you to install on your own servers and to work with them.', 'start': 2121.542, 'duration': 5.764}, {'end': 2132.65, 'text': 'So not the cloud managed version, just the commercial self-managed database.', 'start': 2127.506, 'duration': 5.144}, {'end': 2143.674, 'text': 'And Ops Manager and Cloud Manager are connected to that, because these are tools which allow you to manage your database, manage your own charts,', 'start': 2133.49, 'duration': 10.184}], 'summary': 'The mongodb enterprise, advanced, and oem are self-managed database servers for installation on own servers, not cloud managed.', 'duration': 29.757, 'max_score': 2113.917, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM2113917.jpg'}, {'end': 2201.332, 'src': 'embed', 'start': 2156.499, 'weight': 0, 'content': [{'end': 2161.741, 'text': 'because it is easy to mess up and something you probably should get right.', 'start': 2156.499, 'duration': 5.242}, {'end': 2169.528, 'text': 'That is why we have MongoDB Atlas, which makes that a lot easier and which, for example, allows you, if you get a great app idea,', 'start': 2162.481, 'duration': 7.047}, {'end': 2172.791, 'text': "to focus on your code and don't worry so much about the database.", 'start': 2169.528, 'duration': 3.263}, {'end': 2176.215, 'text': 'Now, we also get other options here, though.', 'start': 2173.913, 'duration': 2.302}, {'end': 2178.077, 'text': 'We saw Compass.', 'start': 2176.695, 'duration': 1.382}, {'end': 2179.698, 'text': 'that is our graphical UI.', 'start': 2178.077, 'duration': 1.621}, {'end': 2180.88, 'text': 'but what is Stitch?', 'start': 2179.698, 'duration': 1.182}, {'end': 2190.284, 'text': 'MongoDB? Stitch is a pretty cool offering by MongoDB, which is only loosely connected to their database.', 'start': 2182.119, 'duration': 8.165}, {'end': 2195.388, 'text': 'Stitch is, you could say, their serverless services offering.', 'start': 2191.045, 'duration': 4.343}, {'end': 2201.332, 'text': "Now, if that's not telling you anything, serverless basically does not mean that there are no servers involved.", 'start': 2195.408, 'duration': 5.924}], 'summary': 'Mongodb atlas simplifies database management, while stitch offers serverless services.', 'duration': 44.833, 'max_score': 2156.499, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM2156499.jpg'}, {'end': 2277.076, 'src': 'embed', 'start': 2247.833, 'weight': 1, 'content': [{'end': 2250.897, 'text': 'Instead, in the end, you get an invisible API, you could say.', 'start': 2247.833, 'duration': 3.064}, {'end': 2257.022, 'text': 'Stitch Functions is a serverless offering which is completely decoupled from the database.', 'start': 2251.938, 'duration': 5.084}, {'end': 2262.165, 'text': 'Here, this is basically something like AWS Lambda or Firebase Cloud Functions.', 'start': 2257.462, 'duration': 4.703}, {'end': 2264.547, 'text': "So it's code in the cloud.", 'start': 2262.505, 'duration': 2.042}, {'end': 2272.853, 'text': 'You write some code which you then just upload there and which you can execute, which you can trigger and which does something,', 'start': 2264.707, 'duration': 8.146}, {'end': 2277.076, 'text': "something that can interact with the Mongo database but doesn't have to necessarily.", 'start': 2272.853, 'duration': 4.223}], 'summary': 'Stitch functions is a serverless offering like aws lambda, completely decoupled from the database.', 'duration': 29.243, 'max_score': 2247.833, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM2247833.jpg'}], 'start': 1990.842, 'title': 'Mongodb connectivity and management solutions', 'summary': 'Covers connecting to mongodb, managing databases, collections, and documents, and explores mongodb atlas and stitch, offering simplified database management, serverless features, and enhancing app development and user experience.', 'chapters': [{'end': 2156.499, 'start': 1990.842, 'title': 'Connecting and managing mongodb', 'summary': 'Explains how to connect to mongodb, manage databases, collections, and documents, and the availability of different mongodb products and solutions for self-managed databases.', 'duration': 165.657, 'highlights': ['Explaining how to connect to MongoDB, manage databases, collections, and documents. N/A', 'Availability of different MongoDB products and solutions for self-managed databases. MongoDB, Enterprise, Advanced, and for OEM are self-managed database products offered by MongoDB.', 'Emphasizing the importance of knowing the commands used in the terminal in the shell for writing applications connected to MongoDB. N/A']}, {'end': 2473.964, 'start': 2156.499, 'title': 'Introduction to mongodb atlas and stitch', 'summary': 'Introduces mongodb atlas, a platform to simplify database management, and mongodb stitch, a serverless offering that provides features like stitch functions, triggers, mobile sync, and charts to enhance app development and user experience.', 'duration': 317.465, 'highlights': ["MongoDB Atlas simplifies database management, allowing users to focus on app development. MongoDB Atlas allows users to focus on app development by simplifying database management, ensuring that users don't have to worry as much about the database.", 'MongoDB Stitch is a serverless offering that provides features like Stitch Functions, Triggers, Mobile Sync, and Charts. MongoDB Stitch is a serverless offering that provides features like Stitch Functions, Triggers, Mobile Sync, and Charts to enhance app development and user experience.', 'Stitch Functions allows users to write code in the cloud and execute it, interacting with the Mongo database or other cloud functions. Stitch Functions allows users to write code in the cloud and execute it, interacting with the Mongo database or other cloud functions, enabling the automation of various processes.']}], 'duration': 483.122, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/VELru-FCWDM/pics/VELru-FCWDM1990842.jpg', 'highlights': ['MongoDB Atlas simplifies database management, allowing users to focus on app development.', 'Stitch Functions allows users to write code in the cloud and execute it, interacting with the Mongo database or other cloud functions.', 'MongoDB Stitch is a serverless offering that provides features like Stitch Functions, Triggers, Mobile Sync, and Charts to enhance app development and user experience.', 'Availability of different MongoDB products and solutions for self-managed databases. MongoDB, Enterprise, Advanced, and for OEM are self-managed database products offered by MongoDB.', 'Emphasizing the importance of knowing the commands used in the terminal in the shell for writing applications connected to MongoDB.']}], 'highlights': ['MongoDB is optimized for high throughput and efficient data retrieval, delivering data in milliseconds, crucial for modern web and mobile applications.', 'The schemaless nature of MongoDB allows for storing diverse data in the same collection, providing flexibility for businesses with evolving data needs and uncertain future data requirements.', 'BSON, a binary encoding of JSON, offers more flexibility and efficient data storage in MongoDB, enabling nested documents and eliminating complex joins, resulting in quicker data retrieval and manipulation.', 'MongoDB Atlas provides an easier way of starting, is free to get started with, and offers a more realistic deployment solution compared to locally installed servers.', 'Sharding means duplicating the number of servers for increased power, providing more data storage nodes, and allowing the addition of multiple shards, increasing the overall power of the system.', 'The chapter emphasizes the importance of using server-side applications to connect to MongoDB for both technical and security reasons.', 'The insertMany command allows adding multiple entries to a MongoDB collection, simplifying the process and enhancing efficiency.', 'Demonstrating the usage of filter criteria to find documents based on specific attributes like age, providing a practical approach to querying in MongoDB.', 'The chapter demonstrates how to work with MongoDB by writing complex queries, such as finding users based on specified criteria and running queries on embedded documents.', 'MongoDB Atlas simplifies database management, allowing users to focus on app development.', 'Stitch Functions allows users to write code in the cloud and execute it, interacting with the Mongo database or other cloud functions.', 'MongoDB Stitch is a serverless offering that provides features like Stitch Functions, Triggers, Mobile Sync, and Charts to enhance app development and user experience.']}