官术网_书友最值得收藏!

  • Mastering MongoDB 3.x
  • Alex Giamas
  • 310字
  • 2021-08-20 10:10:53

Summary

In this chapter, we learned about schema design for relational databases and MongoDB and how we can achieve the same goal starting from a different starting point.

In MongoDB, we have to think about read/write ratios, the questions that our users will have in the most common cases, as well as cardinality among relationships.

We learned about atomic operations and how we can construct our queries so that we can have ACID properties without the overhead of transactions.

We also learned about MongoDB data types, how they can be compared, and some special data types such as the ObjectId that can be used both by the database and for our advantage.

Starting from modeling simple one-one relationships, we went through one-many and also many-many relationship modeling, without the need for an intermediate table, like we would do in a relational database, either using references or embedded documents.

We learned how to model data for keyword searches, one of the features that most applications need to support in a web context.

Finally, we explored different use cases for using MongoDB with three of the most popular web programming languages. We saw examples using Ruby with the official driver and Mongoid ODM. Then we explored how to connect using Python with the official driver and PyMODM ODM, and lastly we worked through an example using PHP with the official driver and Doctrine ODM.

With all these languages (and many others), there are both official drivers offering support and full access functionality to the underlying database operations and also object data modeling frameworks for ease of modeling our data and rapid development.

In the next chapter, we will dive deeper into the MongoDB shell and the operations we can achieve using it. We will also master using the drivers for CRUD operations on our documents.

主站蜘蛛池模板: 克拉玛依市| 仙居县| 安阳市| 个旧市| 临海市| 威海市| 嘉鱼县| 义马市| 彰化县| 凤台县| 河源市| 南丰县| 大丰市| 兰溪市| 白山市| 昌平区| 庆阳市| 揭西县| 长治县| 信阳市| 庆城县| 徐州市| 马龙县| 大洼县| 巩义市| 安泽县| 黎川县| 关岭| 武汉市| 银川市| 泊头市| 甘孜县| 克东县| 新丰县| 阿拉尔市| 东兴市| 合川市| 长寿区| 泉州市| 临颍县| 如东县|