- 博客(17)
- 收藏
- 关注
原创 为什么MySQL 单表记录行数最大建议值是 2000W
老生常谈的一个面试题,基本都已经问烂了,但是昨天看到一个博主写的文章,感觉写的很好,介绍的很详细。这篇博客是先分析了innodb的默认的索引树的结构,然后再去讨论为什么,我这里只摘取了部分内容,应该是够解释2000w的由来了。如果看完我下面的发现有什么地方有误解的或者解释混淆的,可以去原文看看, 原文地址:mysql最大建议行数2000w行,靠谱吗注意 这里我们假设mysql存储引擎使用的是Innodb,一般情况下mysql默认的存储引擎也是Innodb。
2024-10-30 09:54:41
963
原创 7个理由:从Java8升级到Java17
从Java8到Java18,Java已经经历了漫长的发展历程(Java20非长期维护版本)。同时也是从Java 8开始,Java生态系统发生了许多变化。其中最明显的变化是Java版本发布节奏的改变。Java 8于2014年发布,而Java 17则是在2021年发布的,这两个版本之间相差了7年的时间。然而,2017年9月,Java 平台的主架构师 Mark Reinhold 发出提议,要求将 Java 的功能更新周期从之前的每两年一个新版本缩减到每六个月一个新版本。该提议获得了通过,并在提出后不久生效。
2024-10-29 13:47:06
1337
2
原创 Mysql日常案例Demo_05 纵横表的转换
不过对于这种通过max(case when)的方式有个弊端就是如果横表的列数量不确定,那么这种方式就处理不了了,这种方式比较适用于表中数据的维度确定,比如统计每个学生各科的成绩,用横表来统计,通过这种方式是比较合理的。进行 group_concat里面的逻辑,这个里面的逻辑是 concat,也就是拼接字符串, 那么对于这四行中的每一条记录分别进行concat的处理逻辑最后得到的结果就是。这一列,共有两个值,一个是第一条记录的已签到,另一个是第二条记录的null, 那么max的结果就是已签到,
2024-10-25 15:09:32
892
原创 Mysql日常案例 Demo_04
这个就相对简单一些了,我就不像之前那样一步一步贴中间结果数据了,增长率的话其实也就是把上一条记录的数值拿过来 ,算出和当前记录的数值的差值,然后用这个差值除以上月的数值。第二步,获取每月的上条记录的数量,也就是上一个月的,代码里用了order by mth_num这个来对月份进行排序,保证当前记录的上一条记录的月份是上一个月。第三步,拿第二步获取的上月的数量和当月数量 计算增长率,注意第一个月由于没有上条记录的数据,所以要增加一个ifnull的判断,首月的增长率记为0。
2024-10-25 13:49:01
263
原创 Mysql日常实例 Demo_03
车辆上安装了gps设备,设备一般30s上传一次数据报文, 报文中有动作类型字段 video_status, 1代表 车辆acc打开,也就是点火了,那么车辆就处于关闭状态,0代表 车辆acc关闭,也就是熄火。lag 可以用来计算增长率之类的,这个 后满有时间我会再出一篇 增长率的demo以及讲解。后面有时间了回来解释具体是什么原理,其实核心是 lag 这个窗口函数,现在想统计 每辆车当天 累计在线时长分别是多少。有张车辆工作表,表结构如下。
2024-10-24 17:34:29
165
原创 Mysql 日常案例Demo_02
从第一行记录到最后ramaining条件不满足, 上面图片比较生动的解释了递归的执行过程,第一行是sql中 union all的上面的查询部分, 然后将该查询结果作为数据集 传递给下面的部分,直到下面的部分中的where条件不满足,亦或者 下面的查询部分查不出记录 为止。上面一篇博客说了如何把逗号拼接的字符串中的id逐个替换成对应的人名,现在新的需求是 将逗号拼接的字符串拆分程 逗号数量的数据行。这种就比较限制了,超过4个逗号的话 就会出问题了,所以具体需要哪种 自行斟酌。
2024-10-22 17:25:42
295
1
原创 Mysql 日常实例 Demo_01
B表为子表,和A表的执行人相关联, 现在的问题是写一条sql语句 将A表中的executor字段替换成B表中的user_name字段,替换后的效果是。上面简单介绍了 substring_index和group_concat这两个函数,下面我们根据sql关键字的执行顺序来一步步处理结果,看看为什么最终能得到想要的结果集。作用是 将group by分组后的结果集 中的某个数据列 按照给定的拼接符,给定的分组字段的排序规则 进行拼接, 默认的拼接符号是逗号。那么在on的过滤之后的结果集如下。
2024-10-22 13:10:32
1176
原创 还得是百度,深入了解问题的根源
这是从另外一个博主那里看到的,博文我还没看完,解释的很详细,推荐大家去看看。没有其他想说的,直接上图,也是被这个图逗笑了。
2024-02-18 16:34:41
296
1
原创 新年第一天上班,他就如此不务正业,简直令人发指,到底是人性的扭曲 还是道德的败坏。。
开工啦,新年上班第一天,本来这篇博客是年前放假的头一天就该写完的,但是,由于放假心情比较激动,按耐不住,还是拖到现在才写。
2024-02-18 15:01:44
1462
1
原创 统计系统UV\PV\Top10请求
年底了 要写年终总结了,另外还需要将自己负责的系统的相关指标数据统计出来给领导看,方便后面的业务决策判断,我接手的一个系统是用springcloud开发的,但是我找了一圈 发现没有用到skywalking ,当时直接崩溃了,没办法就只能从另一个角度去想办法解决了。其实在入口处去记录日志是比较合适的,想添加自定义的日志的话可以在springcloud gateway那里添加log;每日访问ip数每日接收到的请求数量用户的终端设备分布情况topN的请求及具体请求次数。
2024-01-01 15:37:40
624
原创 多线程+NIO优化代码,批次处理时间从50s优化到10s
今年5月份 也就是2023年5月,新接手了一个小项目,是关于财务测算,其实就是计算得出财务几大报表和关键指标,通过分析指标数据判断项目是否具有投资价值,业务领域是新能源 光伏方面的,我对于金钱方面的业务是比较头疼的,虽然不涉及金钱交易,但是牵扯到钱的概念,我都生怕那里搞错了 喜提 缝纫机锻炼包吃包住套餐,绝对不刑!
2023-12-07 17:34:59
403
原创 还是要支持国产,走特色社会主义道路,我响应党的号召从Prometheus切换到夜莺(Nightingale),由exporter切换到categraf
滴滴夜莺监控 categraf采集数据
2023-12-07 16:25:10
1306
原创 Prometheus+Grafana搭建运维平台,通知自定义java服务 实现Jenkins自动构建+飞书告警
prometheus+grafana+jenkins+飞书 自动化运维 实时告警
2023-11-08 10:57:39
394
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人