《五天玩转EMAS Serverless》——第三节 实战:小程序疫苗预约-框架搭建&数据库管理【下】

简介: 本文整理自EMAS Serverless讲师柳色,在《5天玩转EMAS Serverless训练营》的分享。本篇内容主要分为五个部分:1.小程序疫苗预约项目介绍2.业务场景设计3.数据库设计4.数据操作命令学习5.云数据库控制台功能介绍

接上篇:https://developer.aliyun.com/article/1224150?spm=a2c6h.13148508.setting.21.4f394f0em1x0Jq

四、 数据操作命令学习

image.png

接下来,介绍一下MongoDB的基础命令。

 

如上图所示为MongoDB的四个基础命令即增删改查。db代表数据库实例;users代表操作的集合;deleteMany等代表操作命令。我们可以在云数据库控制台中打开“高级模式”进行练习:

image.png

如上图所示,按照固定格式写入查询命令点击执行。控制台返回运行结果。

 

注:这里运行命令和上面展示的增删改查语法有一定差异,这里不需要输入集合名称。在小程序SDK中调用也与此不同,具体请查看开发指南帮助文档。

 image.png

接下来,讲一讲聚合通道aggregate。当有一些复杂查询,例如连表、聚合、过滤等可以使用aggregate命令完成复杂操。aggregate命令接收数组、数组的每个元素,包括操作步骤。

 

如上图所示为查询状态为A的顾客消费总金额。

 

第一个操作是match,过滤所有status字段为A的数据记录。第二个操作是group,根据顾客ID做聚合,赋值给total字段。

 

如上图所示,原始表orders里有4条记录,每个记录有三个字段,分别是cust_id、amount和status。

 

接下来,通过$match命令符,筛选所有status字段为A的文档,筛选出三条文档。

 

接下来,通过$match操作符得到了中间结果,中间结果传递给第二个$group命令。通过$group命令聚合cust_id。

 image.png

如上图所示,aggregate的一些常用的表达式,aggregate支持更多的复杂操作可以参考官方MongoDB文档进行学习:

https://www.mongodb.com/docs/manual/aggregation/


五、 数据库控制台功能介绍

image.png

接下来,讲一讲云数据控制台的索引操作。打开一张数据表,数据表包含三个字段,其中_id字段是系统默认生成的且不可删除。

image.png

打开索引界面。在查询数据时根据实际的业务添加相应的索引。

 

首先,指定索引名字。然后,选择索引属性,根据该字段是否具有唯一特性选择唯一索引或非唯一。添加索引字段,必须和文档里的字段完全一致。在很大程度上提升了查询效率几十倍甚至几百倍。

 image.png

云数据库支持回档,每天上午不固定时间会产生一个数据备份。当业务发生故障时,可以选择回档到某个具体的时间点,免费提供最近7天的回档记录。

相关文章
|
关系型数据库 MySQL Serverless
探索PolarDB MySQL版:Serverless数据库的灵活性与性能
本文介绍了个人开发者对阿里云PolarDB MySQL版,特别是其Serverless特性的详细评测体验。评测涵盖了产品初体验、性能观测、Serverless特性深度评测及成本效益分析等方面。尽管试用过程中遇到一些小问题,但总体而言,PolarDB MySQL版表现出色,提供了高性能、高可用性和灵活的资源管理,是个人开发者和企业用户的优秀选择。
|
运维 物联网 关系型数据库
关于阿里云Serverless 框架的产品体验
阿里云Serverless框架简化运维,实现5分钟一键部署。弹性伸缩、按需付费等特点让企业专注业务创新,降低成本与运维负担。适用于Web应用、数据分析、物联网等多种场景,支持快速迭代与多语言开发。尽管面临资源配额、网络配置等挑战,其竞争力在于成本节约、功能集成与性能优化,尤其适合追求高效开发与弹性扩展的团队。
625 121
|
消息中间件 人工智能 Kubernetes
解密开源Serverless容器框架:事件驱动篇
Knative是一款基于Kubernetes的开源Serverless框架,提供了云原生、跨平台的Serverless编排标准。作为Serverless中必不可少的事件驱动能力,Knative Eventing提供了云原生的事件驱动能力。
|
缓存 前端开发 JavaScript
前端serverless探索之组件单独部署时,利用rxjs实现业务状态与vue-react-angular等框架的响应式状态映射
本文深入探讨了如何将RxJS与Vue、React、Angular三大前端框架进行集成,通过抽象出辅助方法`useRx`和`pushPipe`,实现跨框架的状态管理。具体介绍了各框架的响应式机制,展示了如何将RxJS的Observable对象转化为框架的响应式数据,并通过示例代码演示了使用方法。此外,还讨论了全局状态源与WebComponent的部署优化,以及一些实践中的改进点。这些方法不仅简化了异步编程,还提升了代码的可读性和可维护性。
625 2
|
关系型数据库 Serverless 分布式数据库
揭秘PolarDB Serverless:大促洪峰秒级应对,无感伸缩见证科技魔法!一探云数据库管理的颠覆性革新,强一致性的守护神来了!
【8月更文挑战第13天】在云计算背景下,阿里巴巴的云原生数据库PolarDB Serverless针对弹性伸缩与高性能一致性提供了出色解决方案。本文通过一个电商平台大促活动的真实案例全面测评PolarDB Serverless的表现。面对激增流量,PolarDB Serverless能秒级自动扩展资源,如通过调用`pd_add_reader`快速增加读节点分摊压力;其无感伸缩确保服务平滑运行,不因扩展中断;强一致性模型则保障了数据准确性,即便在高并发写操作下也确保库存等数据的同步一致性。PolarDB Serverless简化了数据库管理,提升了系统效能,是追求高效云数据库管理企业的理想选择。
419 7
|
安全 关系型数据库 MySQL
揭秘:如何在无影的Serverless世界中,悄无声息地操控MySQL数据库!
【8月更文挑战第8天】在云计算领域,Serverless 枟能凭借其高效与弹性特性脱颖而出。本文采用问答形式解析函数计算环境中 MySQL 数据库的安全高效访问方法。介绍了如何利用数据库插件或 SDK 连接 MySQL,并提供了一个使用 Python 和 `pymysql` 在阿里云函数计算中连接 MySQL 的示例代码片段。同时强调了通过环境变量或密钥管理服务安全处理数据库凭证的重要性。随着 Serverless 技术的发展,数据库操作将更加简便。
450 7
|
JSON 运维 Serverless
Serverless 应用引擎使用问题之ThinkPHP框架是否有基于SDK的demo
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
运维 Serverless 对象存储
函数计算产品使用问题之如何使用Flask框架支持Stream模式
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
SQL canal Serverless
Serverless 应用引擎使用问题之每次记录的数据很少,如何不使用外链数据库储存数据
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
存储 关系型数据库 Serverless
函数计算产品使用问题之连外部数据库请求特别慢是什么原因导致的
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
319 1

热门文章

最新文章

相关产品

  • 移动研发平台