From the course: Data Modeling in MongoDB

Prerequisites

- As we jump into the topic of data modeling with MongoDB, it's important that we first call out some of the prerequisites that you'll need moving forward. At a basic level, here are some Mongo concepts that you'll want to be familiar with as we move throughout the course. We'll be building on these core elements as we go. Using these terms and methodologies with the assumption that you've got at least a baseline of experience with them. For example. A database being a collection of documents. The understanding of what a document represents in a Mongo database and the basic and proper use of a sub document. Even if you haven't gone through a full modeling process with a document and sub document, knowing how we can nest objects within a document is a big part of this. You should be familiar and comfortable with performing CRUD operations directly in a Mongo database as well as your programming languages ORM or whatever driver that you're using. So, being able to perform operations in Mongo should be something that you've done in the past. Aggregation pipelines are great. There's something that'll be taking advantage of in our course. So any experience that you have here would be excellent, but this is not required. We're just going to build on those a little bit. And when we get to those, we'll certainly dive into them as well. But the aggregation pipeline process in Mongo, something you definitely want to be, at least somewhat familiar with. From a tooling perspective, familiarity with the Mongo Shell's essential. We don't expect you to be an expert with use of the shell, but a basic grasp of operating a Mongo database from the command line, highly recommended. We'd like you to be able to create selected database, create a collection and be comfortable inserting, updating, deleting records and performing basic queries from the command line. For many users, the command line or the CLI is the lowest barrier to entry. And it puts you directly in touch with the database at a system level. Now, I will use is this shell quite a bit here during this course. And a lot of folks just prefer it this way. So just be used to at least seeing what's going on in the shell and being able to replicate what you see in the shell environment. Another tool we want you to be comfortable with is MongoDB compass. Compass is an excellent visual tool that gives you a non command line way to interact with your database, your collections and your documents. It easily works with both local and remote databases. It's an excellent way to get a visual on query efficiency, your validation rules, you can check and set your indexing and perform other DBA level tasks without fear of a typo on the command line. And it gives you a nice, comfortable interface to work with. While it's not an essential part of navigating this course. Compass is a tool you definitely need to have at the ready. Get this downloaded, installed and start getting familiar with its basic operations. It'll really improve your productivity. Finally, we'll be doing a bit of modeling with a visual tools that is Moon Modeler as shown here or Hackolade. Now, tools like these help us to turn our processes and research into something more tangible. While they do ultimately serve as a code generation tool, their strength is in helping us lead conversations at a high level and really visualize how our data models will fit together and give us a better sense of how our data models can work with and support our applications. At the finer level, identifying data types and constraints and defining relationships visually is where these tools really shine. Seeing the 10,000 foot view of your data and application is crucial. And the fact that ERD design tools such as these will help us produce the necessary code to set up our models, it's a huge bonus, big time saver and actually ramps up the quality of the code that we produce and the models that come out of our system. If you're not familiar with some of these tools and concepts, we recommend that you visit our basic MongoDB courses to acquaint yourself with them and then restart this course on a firmer foundation.

Contents