个人学习笔记,主要为数据结构与算法、后端、大数据相关。
汇总散落在为知笔记(Windows 时使用)、有道云笔记(Mac 时使用)、Typora + 坚果云同步(系统性整理)中的内容,统一使用 Notion 进行管理,博客辅助知识的整理, 笔记整理说明见 link。
见 这里
基础的语法细节,装箱拆箱,内部类,访问权限,面向对象,泛型,JDBC,反射,注解,序列化,克隆,枚举等。
JDK 中 ArrayList,LinkedList,Vector,CopyOnWriteArrayList,PriorityQueue,ArrayDeque,Collections,Arrays 源码分析比较,关注于 集合类型的底层结构、扩容机制、线程安全、复杂度震荡、迭代方式等方面。
JDK 中 HashMap,LinkedHashMap,ConcurrentHashMap,HashTable,ThreadLocalMap,WeakHashMap 源码分析比较,JDK7 和 JDK8 版本下的不同, 关注 Map 的 Hash 函数与元素定位、Hash 冲突的处理、NULL 值的处理、扩容与 rehash 机制、结构的变更、线程安全的保证(全局锁,分段锁,CAS)
内存、GC 配置参数,内存划分,内存问题,内存回收...
使用 arthas 在未有 jdk 自带工具的 Docker 中获取堆 dump,获取类中的静态变量,获取运行在 Spring 中的实际配置参数, 获取运行时候的方法请求和返回参数,获取方法的耗时统计情况
sql 标准的语法,where 正则过滤,group by 去重,子查询,join,limit 分页,常用的函数...
聚簇索引、普通索引、唯一索引、联合索引,最左匹配原则。 字符串索引,前缀索引,列的区分度,区分度不足的处理。 常见的索引失效问题,索引选择异常问题,索引重建。 索引实现,自适应 hash 索引, b 树、b+ 树。
事务的四大特性,并发问题,隔离级别,事务实现方式,事务分类,两阶段提交,Innodb 在 RR 下解决幻读,MVCC 机制。
锁的分类、粒度、实现算法,乐观锁、悲观锁、死锁等
decimal,varchar,char,date,datetime,time 等字段的占用,避免索引失效、确定索引顺序、索引列的选取、清理重复索引等,SQL 执行过程,慢查询分析, 特定条件的 SQL 优化等。
慢查询日志,慢查询日志的分析,explain 各个字段的含义,慢查询分析工具 mysqldumpslow,pt-query-digest,配置... binlog,两阶段提交,与 redo 日志的比较,实时获取 binlog 内容,binlog 的清理... redo log,wal, 脏页的刷新,配置... relay log、error log、general log
备份的内容,恢复的策略,基于 binlog 的恢复,导入导出方式,mysqldump 进行 全量、条件、表结构、压缩等备份恢复,xtrabackup 进行全量、条件、压缩、增量备份和恢复...
常用的 MySQL 运维管理操作整理,mysql 制作报表,用户与权限管理,运行情况查看与监控,碎片整理,在线表结构变更;服务器配置参数、连接参数、归档数据库配置说明;大表数据的删除;
Percona 公司开发用于管理 MySQL 的工具使用整理,在线更改表结构工具 pt-online-schema-change, 慢查询分析工具 pt-query-digest,主从表同步工具 pt-table-sync,重复索引发现工具 pt-duplicate-key-checker ...
HDFS 的元数据管理,secondary name node 处理流程与配置参数,元数据存储的 FSImage 和 edit 文件,HDFS 的读写过程,常用参数...
数据导入导出,表结构修改,内外部表、分区表、分桶表创建,lateral view,join,union,各个排序子句,HQL 转换为 MR,Join 与 MR,JSON 数据的处理...
内嵌的函数: 日期函数、条件函数、字符串函数、数学函数、集合处理函数。 聚集函数、表生成函数、窗口函数、排名函数、序列函数。 自定义函数的导入与使用。
数据仓库的特征,作用,数仓的分层,OLAP 与 OLTP 的比较,各种 OLAP 的比较。 范式建模,维度建模,指标体系和指标,缓慢变化维和周期性事实表,拉链表。 数据采集,主题分析,任务调度系统,元数据管理,数据质量监控,数据可视化。
Docker 镜像、容器、仓库,单机网络、多机网络、overlay 网络、etcd 存储,数据持久化,Dockerfile 语法,Docker compose...
构建前端项目、maven 项目,使用容器作为编译环境,镜像打包,将参数在运行时传入,编写 Dockerfile 的一些约定(规范)