首页 > 其他分享 >DBA 《八扇屏》 说说那些不懂装懂的 人儿

DBA 《八扇屏》 说说那些不懂装懂的 人儿

时间:2023-11-10 14:03:20浏览次数:25  
标签:八扇 项目 DBA 数据库 系统 你们 不懂装懂 架构师


DBA 《八扇屏》   说说那些不懂装懂的 人儿_数据

最近整体的风向都朝着不好的方向在走,或许到底了就好了,根据一些专家和经济学家判断,我们还能坏到哪里去。当然今天说的不是经济,而是DBA 到底应不应该当背锅侠,或者谁是DBA 当背锅侠的幕后黑手。

最近有几个同学和我私下诉说最近的工作一些不顺心,大部分可以总结出几点:

1   工作中的数据库使用的太单一,导致技术能力提升慢,尤其金融领域中部分抑郁的DBA

2   工作中遇到口谕就是圣旨的领导,工作根本没法开展,天天郁闷之极的DBA

3   工作中因为整体的项目架构设计有重大的问题,最终由数据库DBA买单的正在掉头发的DBA

4    工作流程有问题,导致DBA 的工作过程不畅,导致的各种沟通成本太高的问题,导致DBA 有苦说不出,苦瓜脸DBA

最终总结出来一句话,不懂装懂的人,害死个人呀

下面我们就用传统相声八扇屏来说说, 想当初

DBA 《八扇屏》   说说那些不懂装懂的 人儿_数据库_02

我说说你听听,在想当初 !

话说在一个大型项目初始的时候,有一群“专家” ,这群专家985 211,海龟名牌大学毕业,硕士博士,一大堆,在这个举世瞩目的项目中,架构师,高级开发,项目经理,一大堆,准备把这个大型的项目做成,璀璨的明珠,我们大家成为 “铭猪项目”。

可惜了,可惜了,项目里面既没有读写分离,也没有分库分表,并且专家们一致要求,开发中表设计必须有

1  外键,必须有外键,否则如何通过程序来标定,表和表之间的关系,约束数据,保证两个表之间数据的关系

2  必须大量使用存储过程,通过存储过程来削减,程序和数据库之间的交互,提高整体应用的系统的效率

3  项目必须使用三范式,严格要求表中不会有重复的字段,通过严格遵守三范式保证数据库表设计的正确性

4   DBA 负责数据库的,运行维护的稳定性,正确性,出现数据库问题,都是DBA 的责任

这个大项目的一些海内外专家,项目管理专家一致的意见下,项目在1.5亿的资金的支持下,轰隆隆的开工了。

此间不识抬举的 DBA 小喽啰们,提出了各种建议,如这个项目并发高,要不要使用物理分库的方式,同时基于数据经常频繁更改,项目里面也没有设计 REDIS 等缓存式数据库,全部用传统的单体数据库来进行支撑,后期可能会陷入垂直硬件升级的陷阱,同时存储过程将限制整体项目的扩展性和灵活性,以及项目的在高并发 ,高访问量下使用存储过程的不可控的问题,可能会导致性能瓶颈出现在数据库层面,导致整体系统CRASH 的可能性增加的问题。

当然在基于整体项目的由麻瓜省理工海龟博士作为系统架构师总负责项目和有着多年的大型国有项目管理经验的项目管理的专家的把持下,DBA 的言语,轻如鸿毛,在大师的眼里,DBA 就是一个打杂的,背锅都不配的小卡里米。

轰轰烈烈的项目启动后,伴随着找来的开发小哥哥在百度上不断的搜寻和粘贴代码的速成法下,项目进展顺利,此时只有 DBA 在项目里面是一个奇葩,天天担心,杞人忧天。最终项目上线顺利,架构师,项目管理,开发小哥哥,都得到大大的赞赏,并和领导表示,我们设计的系统万无一失,后面就看运维和 DBA 的工作情况了,希望这些人,能好好守护好,24K 纯金打造的 伟岸系统。

系统上线前,DBA 就之初一些问题,如这个系统日志系统使用了 BLOB数据类型,并且每天产生的系统日志都存在业务数据库里面,传统数据库作为唯一的项目的数据库,为什么就不能与时俱进,用mongodb 来进行存储和解耦, 得到的答复是,你算什么东西,你在教我架构做事咯 !

同时在系统运行一段时间,经常有因为前端数据控制输入不规范,导致频繁数据库对于数据进行,主键冲突,键值冲突,唯一索引冲突,check 值冲突,以及主外键约束级联等方面的工作,导致数据库只要并发一大,就出现性能问题,而架构师和项目管理者,不以为然,提出这就是硬件的问题,提高硬件 内存到2个T  ,CPU 加到200核的,问题就解决了,这不是系统设计的问题,这是我们业务访问量大的问题,仔细一问,每天并发访问不足50.

最后,没有办法,领导只能责问 DBA ,你们怎么干的活,人家架构,开发和项目经理都投诉你们

1   OXXX数据库没有维护好,为什么每天业务数据量才 1G ,日志就100G,让系统运行的性能都耗费在日志的插入上,你们要优化,你们必须整改

2    项目工作中,表设计索引为什么不早添加,当然SQL语句没有给你们,表设计逻辑说明文档也没有给你们,你们怎么就这么没有主动性吗,非要人家都给你这些 你们才能干活 ,不会猜吗 ?

3   系统备份要恢复几条数据,让你们用全备50多个T 的备份恢复,找这几条日志数据,有那么难吗,为什么推脱,虽然1.5亿的项目,但是我们都花在了研发上,硬件是差了点,磁盘是不够,但是你们不能拿出主人翁的精神,不要和我说,巧妇难为无米之炊,你们是DBA 不是巧妇,天天给我在这里大嘴仗,不会恢复一点,看看有没有,删除在恢复一点,在看看吗 ?有那么难吗?

你们要学会沟通,学会检讨,学会反思,提高服务意识,提高技术水平,我作为这个项目的领导对你们很不满意。

————————————————————————————

这就是 上亿大项目,伟岸大领导,智多洋架构,苗正深项目,只可惜了君子DBA,人称  一个小孩子。

DBA 《八扇屏》   说说那些不懂装懂的 人儿_项目管理_03

DBA 《八扇屏》   说说那些不懂装懂的 人儿_项目管理_04

标签:八扇,项目,DBA,数据库,系统,你们,不懂装懂,架构师
From: https://blog.51cto.com/u_14150796/8298101

相关文章

  • 小景的Dba之路--压力测试和Oracle数据库缓存
    小景最近在做系统查询接口的压测相关的工作,其中涉及到了查询接口的数据库缓存相关的内容,在这里做一个汇总和思维发散,顺便简单说下自己的心得:针对系统的查询接口,首次压测执行的时候TPS较低,平均响应时间较高,后续的查询中,TPS和平均相应时间较第一次比有较为明显的提升,这里考虑到时Or......
  • lamdba表达式
    lamdba表达式是为了避免匿名内部类定义过多为什么要使用lambda表达式避免匿名内部类定义过多可以让你的代码看起来很简洁去掉了一堆没有意义的代码,只留下核心的逻辑。packagecom.xh.Thread;/***lamdba表达式事实上是内部接口**/publicclassLamdbaTest{ //3,定义一......
  • 临时工说: 他们说DBA 是IT 行业的职位的常青树,你信吗
    最近和一个开发的友人聊天,他发出感慨,你们DBA是一个好职业,知识不怎么变化,还越老越值钱,并对开发人员行业的内卷和苦楚进行了一段论述。实际上,现在那个行业都不好做,DBA远远没有开发人员想象的那样,稳定,并且知识不更新,那是误传。现在的DBA的工作对比开发的工作,也是半斤八两,卷上了天,......
  • SpringCloud复习:(2)@LoadBalanced注解的工作原理
    @LoadBalanced注解标记了一个RestTemplate或WebClientbean使用LoadBalancerClient来进行负载均衡。LoadBalancerAutoConfiguration类给带注解的@RestTemplate添加了拦截器:LoadBalancerInterceptor.具体流程如下:首先定义一个LoadBalancerInterceptor然后定义了一个RestTemplateC......
  • SpringCloud复习:(3)LoadBalancerInterceptor
    使用Ribbon时,execute方法会由RibbonLoadBalancerClient类来实现它会调用重载的execute方法getLoadBalancer默认会返回ZoneAwareLoadBalancer(基类是BaseLoadBalancer).此处调用的getServer方法就会根据负载均衡策略选择适当的服务器来为下一步的http请求做准备。这个execute方法......
  • 小景的Dba之路--Oracle用exp导出dmp文件很慢
    小景最近在系统压测相关的工作,其中涉及了Oracle数据库相关的知识,之前考的OCP证书也在此地起了作用。今天的问题是:Oracle用exp导出dmp文件很慢,究竟是什么原因,具体的解决方案都有哪些呢? 下面我逐一来说下,首先列举了一些常见的原因:1.数据量大:如果你要导出的数据库包含大量数据,导......
  • nacos负载均衡改为loadbance
    nacos用于负载均衡使用了ribbon组件,现如今ribbon已经不维护了,SpringCloudLoadBalancer是SpringCloud官方自己提供的客户端负载均衡器,抽象和实现,用来替代Ribbon(已经停更)1.去除ribbon的依赖<!--nacos-服务注册发现--><dependency><groupId>com.alibaba.cloud</groupId>......
  • 如何让裸机的虚拟机上的k8s拥有LoadBalace的能力?
    很久之前就接触k8s了,但是一直没有深入学习。最近一段时间刚好有空,所以开始了复习的路程。我们以一个小项目作为试验。1.看部署的yaml文件  在k8s中,运行kubectlapply-fdemo.yaml之后,会创建service和pod的资源对象,但是如果没有安装第三方插件metalab的话,不会......
  • 开源数据库Mysql_DBA运维实战 (DDL语句)
    DDLDDL语句数据库定义语言:数据库、表、视图、索引、存储过程.例如:CREATE DROPALTERDDL库定义库{CREAATEDATABASE  ___数据库名___ ;                数据库名要求{                                        a.......
  • @LoadBalanced注解实现负载均衡功能过程
     基本流程如下:拦截我们的RestTemplate请求http://userservice/user/1RibbonLoadBalancerClient会从请求url中获取服务名称,也就是user-serviceDynamicServerListLoadBalancer根据user-service到eureka拉取服务列表eureka返回列表,localhost:8081、localhost:8082I......