企业技术、数据库团队评估一百零八问
背景
通过一些问题,评估数据库团队的健康程度,看看你的团队有没有系安全带?
一、企业、个人介绍
1、个人介绍
PS:行业、职位
2、企业介绍 (主营业务、规模、业务分布区域)
3、企业业务、架构介绍
PS:行业、区域、规模、核心价值
二、数据库种类、规模
1、企业中用了哪些数据库产品(关系数据库,缓存,NOSQL,仓库,HADOOP)?
分别用于什么业务场景?
2、不同数据库产品分别是什么规模(实例数,容量)?
3、不同数据库产品的使用占比如何?
PS:使用的数据库种类,应用场景,实例数,容量。
4、哪些项目中使用了商用数据库(ORACLE,MSSQL,DB2 等)?实例数,容量?
数据量方面, 最大多大?
并发方面, 最大多大?
5、在哪些项目中使用了 PG?实例数,容量?
数据量方面, 最大多大?
并发方面, 最大多大?
6、产品问题:这些问题你遇到过吗?
老板要看活动运营数据,有一个复杂大 SQL 查询非常慢,半个小时了还没出结果。
活动上线,压力突增,数据库来不及升级了
使用读写分离,刚更新的数据,查询不到
大表添加一个字段,备库延迟几小时
主从复制经常中断,
数据库即将超过 3TB,业务发展很快,没有时间做分库分表改造
备份时会锁表,必须在业务低峰期操作
1T 数据量,一次备份竟然要十几个小时
上百台 ECS 连接同一台数据库,高并发下性能问题凸显
PS: 管理成本,加速 DBA 业务转型。
三、数据库投入
1、目前数据库软件一年投入多少?
2、数据库周边软件一年投入多少?
3、数据库的服务支持一年投入多少?
PS: 自主可控,成本。
四、数据库团队介绍
1、研发、运维组织架构,以及责任、分工如何?
2、目前数据库团队多少人?
3、您的企业中 DBA 团队主要职责是什么,有没有分开发 DBA 和运维 DBA?
4、数据库团队的考核指标是什么?
5、研发团队有线上稳定性考核指标吗,代码质量如何考核?DBA 需要经常为研发差屁股吗?
6、有制定数据库开发、管理规范吗?规范的推行效果如何?规范的推行阻力通常有哪些?
7、数据库团队工作有覆盖完整的数据库生命周期管理吗?
有没有建立知识库?
有没有监控机制?
有没有巡检机制?
有没有值班机制?
有没有事件处理机制?
有没有事件分级?
有没有节假日应急响应机制?
有没有发布机制、变更机制、审核机制等?
对可用性、可靠性、备份有效性、备份时效、恢复时效、恢复范围、容灾延迟、容灾有效性、等有没有完整的 SLA 定义?
8、平均每个 DBA 管理多少套数据库?
9、DBA 有 STANDBY 角色吗?有轮岗机制吗?
10、同一个 DBA 需要管理多种数据库产品吗?
11、DBA 角色目前的痛点在哪里?
12、DBA 团队的未来发展方向、工作规划展望?
13、数据库团队有经常参加社区活动吗?会去分享吗?
PS: 管理成本,加速 DBA 业务转型。
五、IT 架构与数据库架构
1、您的企业中数据库是如何管理的?是烟囱式的管理吗?有统一的管理平台吗?
2、应用开发通常使用的开发语言有哪些?
3、一般一个数据库有多少个应用连接?最多有多少个连接数?应用是短连接还是长连接?应用有自动重连机制吗?应用有配置连接池吗?有使用数据库连接池吗?使用的是什么连接池软件?
4、目前数据库 HA 的架构是什么样的?怎么做的?是流复制方式还是共享存储方式?或者传统的存储复制方式?
5、如果 HA 是流复制方式,异步还是同步模式,一对一还是多副本?
6、有 0 丢失 HA 方案吗?
7、首先主持人解释一下半同步。然后问您认为半同步对业务有帮助吗?
8、有使用数据库读写分离吗?使用的是物理主从还是逻辑主从?主从的占比如何?一个主库最多拖多少个从库?主从的硬件配置一致吗?
9、什么情况下 SLAVE 库的延迟会比较高?如何解决的?
10、读写分离是业务实现还是数据库透明实现?
11、有使用 SHARDING 架构吗?什么情况下会使用 SHARDING?如何衡量使用 sharding 的利弊?使用 SHARDING 主要解决业务上的哪些问题?
12、sharding 流行的根本原因?和 mysql 有关吗?mysql 多大时需要 sharding?为什么 oracle 到 12c 才有 sharding?为什么银行大机不需要 sharding?
分布键如何变更?
跨库 JOIN 如何做?
分布式事务性能如何?
SQL 限制多吗?哪些 SQL 会受到限制?
如果 JOIN 或 GROUP BY 要做任意字段的,需要用到维表吗? 维表很大超过单个实例大小怎么办?
13、使用 SHARDING 后,对应用开发有哪些限制?还可以像使用单实例一样吗?
14、使用 SHARDING 后,数据库如何备份,如何恢复,能做到全局一致恢复吗,能做到任意时间点恢复吗?如何容灾?
15、目前的数据库容灾怎么做的?延迟多少?是自动切换吗?
16、容灾节点需要进行演练吗?演练频率如何?会切回来吗?
17、容灾节点的硬件与生产节点的配比如何?
18、备份怎么做的?要不要做增量备份?
19、备份时间和恢复时间能做到可控吗(不管数据库多大)?如果不可控,问题或难点在哪里?
PS: 管理成本,专注业务,加速 DBA 业务转型。微服务化。
六、数据库安全问题
1、目前如何审计上线的 SQL?
2、有 SQL 防火墙吗?如何防范误操作,SQL 注入?
3、业务层有防 SQL 注入的过滤吗?
4、如果发生了误操作或 SQL 注入,有什么措施快速闪回吗?
5、数据存储安全加固方法有哪些?对业务透明吗?性能损耗有多少?
6、链路安全做了哪些措施?性能损耗有多少?
7、数据类型安全做了哪些措施,是数据库端加解密,还是服务端加解密?性能损耗有多少?
8、业务层有限流措施吗?有没有遇到过业务突增把数据库打死的情况,如何解决的?
9、还做了哪些安全措施?
PS: 安全,管理成本,专注业务,加速 DBA 业务转型。SQL 防火墙,SQL 洞察,闪回。
七、数据库优化与诊断问题
1、目前是如何监测性能异常的?
2、多久能发现性能问题?
3、从发现性能问题到解决,通常需要多久?
4、平均每个人每天花了多少时间在优化方面?
PS: CloudDBA,管理成本,专注业务,加速 DBA 业务转型。
八、数据库自研、选型、分级问题
1、您的企业中,有自研的数据库产品吗?
2、自研的数据库应用于什么场景?为什么选择自研?解决什么业务问题?
3、有哪些开源数据库能解决这些问题吗?
4、自研数据库会重新完全开发,还是基于开源数据库开发?为什么?
5、如果基于开源数据库开发,会关注开源数据库的开源许可协议吗?
6、自研数据库研发团队的考核指标是什么?
7、自研数据库研发团队未来的发展方向,是做通用的数据库产品吗,输出数据库产品吗?
8、您的企业中,数据库如何选型?有些什么选型规则?
9、企业里面的业务如何分级?有些什么规则?
10、不同等级的业务对数据库的要求分别有哪些?主要有什么差别?
11、不同等级的业务会混合在同一个数据库中使用吗?如何进行租户资源隔离?
PS: 等级划分,数据库要求。
九、数据库生态、多模、异构问题
1、一个业务系统中会使用多个数据库产品吗?
2、为什么需要用多个数据库产品?
3、使用多个数据库产品有什么弊端吗?
4、如果一个数据库产品能满足所有业务的需求,会使用吗?
5、不同的数据库产品之间需要同步数据吗?如何实现同步?延迟多少?
6、异构数据库如何同步数据?
7、数仓用的什么产品(是否 GPDB?),多大的数据量,并发如何?
8、数据如何同步到数仓?如何回流到业务数据库?
9、数据迁移和数据同步的区别?
10、异构、同构数据库同步通常会有哪些问题?为什么会有这些问题?如何解决?
11、异构迁移的内部驱动力在哪里?为什么要做异构迁移?
12、异构迁移的阻力有哪些?
13、异构迁移如何做数据一致性验证?功能兼容性验证?SQL 请求的结果一致性验证?
十、数据库人才问题
1、如何招人?有哪些渠道?
2、主要看中人才的什么特质?
3、如何培养人才?
4、您认为数据库人才具有相通性吗?从一个数据库转型到另一个数据库,需要多久?
5、如何留住人才?
6、如何建立人才梯队?
7、如何规划人才职业发展?
8、部门的 5 年计划是什么?
9、如何在企业内推广 PG?
10、如何在研发人员中推广 PG?
PS: 播种,人才战略,人才成本。
十一、数据库云化问题、对数据库未来的展望
1、您认为数据库管理中比较突出的问题有哪些?
2、企业 IT 架构云化可以解决这些问题吗?
3、如何看待 IT 云化、数据库云化?
4、数据库上云阻力在哪里?
5、数据库云化可以减轻哪些 DBA 的工作?
6、数据库云化前 DBA 的价值在哪里?
7、数据库云化后 DBA 的价值在哪里?
8、企业使用了多个云厂商吗?
9、为什么要使用多个云厂商的产品?
10、多个云厂商之间的业务独立吗?是作为容灾吗?
11、跨云厂商的数据如何同步?
12、如果要上云,数据库是自建还是使用的云数据库服务?
13、为什么选择在 ECS 上自建?
14、业务使用了多个 AZ 吗?
15、如何实现数据库实例的单元化,多向同步?
16、不同云厂商的体验如何?
17、期望云厂商支持哪些数据库功能?
18、对阿里云数据库产品有什么建议?
19、对云厂商有哪些建议吗?
PS: 管理问题,云化,专注业务,加速 DBA 业务转型。
十二、PG 数据库、社区
1、使用了哪些数据库插件?
2、对 PG 最赞的印象有哪些?
3、遇到过哪些 PG 的坑,怎么解决的?
4、对 PG 产品有什么建议?
5、对 PG 产品还有什么期望,为什么?解决什么问题?
6、对 PG 天天象上活动有什么建议?
7、对 PG 中国社区有什么建议?
PS: 社区优化。
评论区