数据仓库
1、什么是数据仓库?
面向主题的、集成的、相对稳定的、反映历史变化的数据集合
2、数据建模三范式
第一范式:必须要有主键、且每个属性值都是不可再分的最小数据单位
第二范式:关系模式R中所有非主属性都完全依赖于主关键字
第三范式:关系模式R中的非主键字不能依赖于其他非主键字,即非主键字段不能有依赖关系
3、数据仓库分层 DWD/ODS、DWB、DWS
DWD:细节数据层,业务层与数据仓库的隔离层
DWB:基础数据层,存储客观数据,一般作为中间层,存储大量指标
DWS:基于DWB之上的基础数据,整合汇总某个主题域的服务数据
4、星型、星座、雪花模型
https://blog.csdn.net/huojiao2006/article/details/51209982
5、存储过程与函数的使用
游标、存储过程、常用函数、row_number()
6、索引的优缺点与使用方法
优点:快 缺点:存储空间大
检查:看执行计划
强制走索引:mysql: force index oracle :/*+index(t pk_index)*/
odps map join: /*+mapjoin(t)*/
7、事务与锁
事务:事务就是被绑定在一起作为一个逻辑工作单元的SQL语句组(一个失败、整个回滚)
脏读、幻读、不可重复读
锁: 保证事务的完整性和并发性 行锁与表锁的区别
乐观锁与悲观锁
使用:https://blog.csdn.net/weixin_41850404/article/details/84653909
死锁
8、行专列、列转行
mysql:decode \ group by case when
odps: lateral view explode(map('name',name,'password',password)) / lateral view explode(split(name,',')) \ group by case when
Java
https://gitchat.blog.csdn.net/article/details/90666996