第7周作业
作业内容
Week07 作业题目:
Week07 作业题目
- (选做)用今天课上学习的知识,分析自己系统的 SQL 和表结构
- (必做)按自己设计的表结构,插入 100 万订单模拟数据,测试不同方式的插入效率
- (选做)按自己设计的表结构,插入 1000 万订单模拟数据,测试不同方式的插入效率
- (选做)使用不同的索引或组合,测试不同方式查询效率
- (选做)调整测试数据,使得数据尽量均匀,模拟 1 年时间内的交易,计算一年的销售报表:销售总额,订单数,客单价,每月销售量,前十的商品等等(可以自己设计更多指标)
- (选做)尝试自己做一个 ID 生成器(可以模拟 Seq 或 Snowflake)
- (选做)尝试实现或改造一个非精确分页的程序
- (选做)配置一遍异步复制,半同步复制、组复制
- (必做)读写分离 - 动态切换数据源版本 1.0
- (必做)读写分离 - 数据库框架版本 2.0
- (选做)读写分离 - 数据库中间件版本 3.0
- (选做)配置 MHA,模拟 master 宕机
- (选做)配置 MGR,模拟 master 宕机
- (选做)配置 Orchestrator,模拟 master 宕机,演练 UI 调整拓扑结构
作业提交规范:
- 作业不要打包 ;
- 同学们写在 md 文件里,而不要发 Word, Excel , PDF 等 ;
- 代码类作业需提交完整 Java 代码,不能是片段;
- 作业按课时分目录,仅上传作业相关,笔记分开记录;
- 画图类作业提交可直接打开的图片或 md,手画的图手机拍照上传后太大,难以查看,推荐画图(推荐 PPT、Keynote);
- 提交记录最好要标明明确的含义(比如第几题作业)。
操作步骤
第七周-作业1. (选做)
本题目需要同学们自己完成.
- 找一个业务系统。
- 分析SQL表结构
- 范式
- 考虑: 开发效率、查询效率、拓展性、索引、有哪些优化空间。
- 其他
第七周-作业2. (必做)
- 作业题目: 按自己设计的表结构,插入 100 万订单模拟数据,测试不同方式的插入效率
- 打开 Spring 官网: https://spring.io/
- 找到 Projects —> Spring Initializr: https://start.spring.io/
- 填写项目信息:
- Project: Maven Project
- Language: Java
- Spring Boot版本: 2.5.4
- Group: 自己的包名, 以做标识;
- Artifact: mysql-demo
- JDK版本: 8
- Dependencies: 添加依赖, 比如 MyBatis, Spring Web, MySQL, JDBC
- 生成 maven 项目; 下载并解压。 参考: mysql-demo项目Share信息
- Idea或者Eclipse从已有的Source导入Maven项目。
- 搜索依赖, 推荐 mvnrepository: https://mvnrepository.com/
- 搜索 fastjson , 然后在 pom.xml 之中增加对应的依赖。
- 准备MySQL环境, 创建订单表
- 7.1
- 生成项目;
- 8.1 创建Controller
- 执行与测试.