05 2020 档案
摘要:在分布式系统中,为保证同一时间只有一个客户端可以对共享资源进行操作,需要对共享资源加锁来实现,常见有三种方式: 基于数据库实现分布式锁 基于 Redis 实现分布式锁 基于 Zookeeper 实现分布式锁 高并发下数据库锁性能太差,本文不做探究。仅针对Redis 和 Zookeeper 实现的分布
阅读全文
摘要:1. explain是什么 使用explain关键字可以模拟优化器执行SQL查询语句,从而知道MySQL是如何处理你的SQL语句的,分析你的查询语句或是表结构的性能瓶颈。 2. explain能干吗 可用于分析: 表的读取顺序 数据读取操作的操作类型 哪些索引可以使用 哪些索引被实际使用 表之间的引
阅读全文
摘要:1. 直接添加字段 ALTER TABLE my_table ADD name VARCHAR(64) DEFAULT '' COMMENT '名字' ; 方法适合十几万的数据量,可以直接进行加字段操作,但是,线上的一张表如果数据量很大,执行加字段操作就会锁表,这个过程可能需要很长时间甚至导致服务崩
阅读全文
摘要:结合自己工作中的使用和收集的一些经验,谈谈对Kettle中的ETL的一些优化。 1. 数据库方面 1.1 配置连接池 如果业务数据量很多和短连接很多,可以考虑使用数据库连接池,在这个时候,每次数据库连接建立和断开所花费的时间远长于进行数据库操作的时间,配置连接池可以更好的利用网络资源,将连接建立和断
阅读全文