数据库的一些知识点记录

  1. 为什么大公司不推荐用连表查询而使用单表查询
    第一:单机数据库计算资源很贵,数据库同时要服务写和读,都需要消耗CPU,为了能让数据库的吞吐变得更高,而业务又不在乎那几百微妙到毫秒级的延时差距,业务会把更多计算放到service层做,毕竟计算资源很好水平扩展,数据库很难啊,所以大多数业务会把纯计算操作放到service层做,而将数据库当成一种带事务能力的kv系统来使用,这是一种重业务,轻DB的架构思路
  2. 不利于写操作。执行读操作时,会锁住被读的数据,阻塞其他业务对该部分数据的更新操作(U or D)。如果涉及多个聚合函数(缓存中没有max or min时),相当于同时锁住多张表,不能进行读写,直接影响其他业务,这影响了系统的整体性能;
  3. 不利于维护。业务发生变动时,比如join中一张表改了,可能导致系统中原有的sql不可用,最终导致基于该SQL执行结果的上层显示失败(也意味着以往的开发工作已无效)。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章