digoal
2024-05-09
PostgreSQL , PolarDB , DuckDB , 学习 , 进阶
我经常被问到:
- 特别想学习开源PostgreSQL或基于PostgreSQL的国产开源数据库, 但是苦于找不到资料?
- 先把根学好, 很多国产数据库的文档、代码注释都不太清晰, 建议先把根(PostgreSQL)学好. 毕竟PG是教科书级别的存在.
- 资料太多, 不知道分辨哪些适合自己?
- 正规划一条寂寞的晋级之路, 应该如何一步一步实现从菜鸟到大咖?
为此整理了一些资料和方法, 仅供参考. 至于每个阶段达到什么样的标准就应该进入下个阶段, 我觉得你得自我感觉, 没有统一的标准.
1、《PostgreSQL Docker镜像学习环境 AMD64版, 已集成热门插件和工具》
# 拉取镜像, 第一次拉取一次即可. 或者需要的时候执行, 将更新到最新镜像版本.
docker pull registry.cn-hangzhou.aliyuncs.com/digoal/opensource_database:pg14_with_exts
# 启动容器
docker run --platform linux/amd64 -d -it -P --cap-add=SYS_PTRACE --cap-add SYS_ADMIN --privileged=true --name pg --shm-size=1g registry.cn-hangzhou.aliyuncs.com/digoal/opensource_database:pg14_with_exts
##### 如果你想学习备份恢复、修改参数等需要重启数据库实例的case, 换个启动参数, 使用参数--entrypoint将容器根进程换成bash更好. 如下:
docker run -d -it -P --cap-add=SYS_PTRACE --cap-add SYS_ADMIN --privileged=true --name pg --shm-size=1g --entrypoint /bin/bash registry.cn-hangzhou.aliyuncs.com/digoal/opensource_database:pg14_with_exts
##### 以上启动方式需要进入容器后手工启动数据库实例: su - postgres; pg_ctl start;
# 进入容器
docker exec -ti pg bash
# 连接数据库
psql
2、《PostgreSQL Docker镜像学习环境 ARM64版, 已集成热门插件和工具》
# 拉取镜像, 第一次拉取一次即可. 或者需要的时候执行, 将更新到最新镜像版本.
docker pull registry.cn-hangzhou.aliyuncs.com/digoal/opensource_database:pg14_with_exts_arm64
# 启动容器
docker run -d -it -P --cap-add=SYS_PTRACE --cap-add SYS_ADMIN --privileged=true --name pg --shm-size=1g registry.cn-hangzhou.aliyuncs.com/digoal/opensource_database:pg14_with_exts_arm64
##### 如果你想学习备份恢复、修改参数等需要重启数据库实例的case, 换个启动参数, 使用参数--entrypoint将容器根进程换成bash更好. 如下:
docker run -d -it -P --cap-add=SYS_PTRACE --cap-add SYS_ADMIN --privileged=true --name pg --shm-size=1g --entrypoint /bin/bash registry.cn-hangzhou.aliyuncs.com/digoal/opensource_database:pg14_with_exts_arm64
##### 以上启动方式需要进入容器后手工启动数据库实例: su - postgres; pg_ctl start;
# 进入容器
docker exec -ti pg bash
# 连接数据库
psql
官方手册:
内部原理(偏理论):
内部原理(偏实用):
加入各种微信群, 现在特别特别多, 都是资深玩家们建的群: PG社区,polardb社区,灿灿,若航,华阳,首席,尚雷techtalk,pgfans,青学会,老唐,老郭,恩墨大讲堂等等.
实在不知道可以加我, 拉你进去.
加入微信群不要只想着索取, 要多回馈(分享、解答别人的问题、参与讨论都可以), 回馈多了人家不仅感激你, 你的影响力也大了, 如果被贵人发现, 对你的职业发展有很大的帮助.
第一步给到的学习镜像里面集成了大量日常可能会用到的一些工具、插件, 可以逐渐熟悉.
- 解决日常管理问题. 例如备份、恢复、高可用、优化、诊断等日常管理需求.
- 解决业务层的问题. 例如文本搜索、向量搜索、图、时序、GIS、化学分子等业务层需求.
社区最近的新闻:
postgresql周刊:
规划功能交流区:
bug交流区:
内核开发者最活跃的交流区:
用户交流区:
代码Flowchart:
在线的代码结构分析工具:
开发者维基百科:
代码里面有很多readme和注释, 前期就可以翻阅, 里面参考的论文也可以看一看. 到这里你应该再横向看看其他的单点方面特别优秀的新产品:
- 例如在AP方面特别突出的DuckDB, 它参考了哪些论文进行设计, 用到了什么新的技术使得它在单点方面特别优秀,
- 又比如datafusion这种架构的产品, 多看, 未来能预判数据库产品可能会往什么方向发展(就像下棋会下出棋感?).
参与到开源项目中, 例如可以先从代码review开始. 或者参与issue的讨论.
如果你有更多的想法, PolarDB开源社区和高校有合作教研的项目, 可以作为PolarDB顾问委员会的成员参与进来, 指导学生们研读和修改代码, 你也可以参与一起开发.
如何成为顾问? 如何参与? 请联系我.
以下内容可能要科学上网获取:
1、视频下载链接: https://pan.baidu.com/s/1Q5u5NSrb0gL5-psA9DCBUQ (提取码:5nox 如果链接失效请通知我, 谢谢)
2、《2021-重新发现PG之美 系列 - 适合架构师与业务开发者》
3、《2021-DB吐槽大会 系列 - 适合产品经理、架构师与内核开发者》
4、《2020-PostgreSQL 应用场景最佳实践 - 适合架构师与业务开发者》
5、《2020-PostgreSQL+MySQL 联合解决方案课程 - 适合架构师与业务开发者》
6、《2019-PostgreSQL 2天体系化培训 - 适合DBA》
7、《2017-PostgreSQL 应用场景实践 - 适合架构师与业务开发者》
8、《2019-PG天天象上沙龙纪录 - 适合DBA》
9、《2019-Oracle迁移到PostgreSQL - 适合DBA与业务开发者》
10、《2021-Ask 德哥 系列 - 适合DBA与业务开发者》
11、《2018-PG生态、案例、开发实践系列 - 适合架构师与业务开发者》
12、《2018-阿里云POLARDB for Oracle|RDS for PPAS 讲解视频》
13、《2022-每天5分钟,PG聊通透 - 系列1 - 热门问题》
14、《2023-PostgreSQL|PolarDB 学习实验手册》
15、《2023-PostgreSQL|PolarDB 永久免费实验环境》
16、《2024-开源PolarDB|PostgreSQL 应用开发者&DBA 公开课》
1、《Oracle DBA 增值+转型 PostgreSQL 学习方法、路径》
2、《PostgreSQL、Greenplum 技术+108个场景结合最佳实践《如来神掌》》
3、《PostgreSQL 数据库安全指南 - 以及安全合规》
4、《PostgreSQL 持续稳定使用的小技巧 - 最佳实践、规约、规范》
5、《PostgreSQL DBA最常用SQL》
6、《PostgreSQL 数据库开发规范》
7、《企业数据库选型规则》
8、《PostgreSQL 规格评估 - 微观、宏观、精准 多视角估算数据库性能(选型、做预算不求人)》
9、《数据库选型之 - 大象十八摸 - 致 架构师、开发者》
10、《数据库选型思考(PostgreSQL,MySQL,Oracle)》
19、PolarDB开源数据库高校工作室 发布《PostgreSQL+PolarDB开源数据库人才认证培训》教程+实验手册 下载