使用异步 Python 操作 MongoDB
MongoDB with Async Python
课程总结
学生们在说什么
源代码和课程 GitHub 仓库
github.com/talkpython/mongodb-for-async-python-course
这门课程是关于什么的,它有什么不同?
本课程将教您如何使用 MongoDB 和文档数据库来构建更简单、更快速的数据驱动应用程序。
我们首先解释 NoSQL 和文档数据库的起源和主要概念。然后,您将学习如何从其本机 shell 以及许多 CLI 和 GUI 管理工具使用 MongoDB。
许多MongoDB课程就此止步。本课程旨在对 MongoDB 进行实用的端到端介绍。我们通过涵盖现实世界的主题来超越表面。
您将了解如何使用 Beanie(一种流行的 MongoDB ODM – 想想 NoSQL 的 ORM)将类映射到 MongoDB。Beanie 基于最先进的 Python 技术,例如 Pydantic 和 Python 的 async 和 await。
在这个基于代码、动手实践、演示驱动的课程中,我们将使用 Beanie 构建一些简单的示例应用程序。然后,我们将继续在 MongoDB 中使用 100,000 条记录对真实 PyPI 数据进行建模。一旦我们有了 Python 代码处理 PyPI 数据,我们将围绕数据构建一个完整的 FastAPI API,展示 Beanie 和异步 MongoDB 在 FastAPI 中的顺利集成。
在我们掌握了从 Python 使用 MongoDB 的操作之后,我们将把注意力转向性能。我们采用一个包含数百万个数据点的大型数据库,使其运行速度比使用 MongoDB 开箱即用的速度快数百倍。我们使用自定义 Python 代码和 Locust 负载测试框架来测试性能更改。
我们通过将 MongoDB 部署到生产 Linux 服务器来结束本课程。让MongoDB在生产环境中运行有几个非常重要的步骤,我们将逐步完成此设置。
最后,您将准备好开始构建和运行高性能、MongoDB 支持的、数据驱动的应用程序。
查看完整的课程大纲。
你会学到什么?
在本课程中,您将:
- 文档数据库(如 MongoDB)的工作原理
- MongoDB在世界上使用的更大范围内的数据库中的位置
- 如何安装和配置 MongoDB 以及多个管理工具和 GUI
- 一组基本的 MongoDB 原生 shell 命令和查询
- 基础技术,例如 Pydantic 和 Python 的 async 和 await
- 如何使用 Beanie 和 Pydantic 设计数据模型
- 了解使用文档对数据进行建模时的权衡
- 了解何时将数据嵌入其他记录是个好主意(何时是个坏主意)
- 使用 ORM 风格的编程与 MongoDB 和 Beanie 结合使用
- 使用更高效的“就地”操作,例如将 addToSet 与 Beanie 结合使用
- 在Pydantic中设计投影类以提高性能
- 如何在MongoDB中安全地存储用户帐户(即密码)
- 将 Beanie 和 MongoDB 与 FastAPI 深度集成
- 从 Beanie 在 MongoDB 中创建复杂索引,性能提升 1000 倍
- 在MongoDB中使用索引强制执行数据完整性
- 在多台 Linux 机器上的云提供商内的自托管环境中安全地部署 MongoDB
- 使用负载测试框架 Locust 探测和测试基于 MongoDB 的 Web API 的性能限制
-
还有更多
-
查看完整的课程大纲。
这门课程是为谁准备的?
适用于任何想要使用最新的 Python 技术来使用 MongoDB 的人。
至于先决条件,我们假设:
- 基本熟悉 Python 编程语言和核心工具(例如 pip)
- 您对某些数据库技术(关系或NoSQL)的理解和经验非常少
在本课程中选择和展示的工具是 100% 免费的,其中大多数是开源的或有免费和可靠的替代品。
评论(0)