work hard work smart

专注于Java后端开发。 不断总结,举一反三。
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
上一页 1 2 3 4 5 6 7 8 9 ··· 59 下一页

2021年2月27日

摘要: 数据库Group by语句调优 松散索引扫描(Loose Index Scan):性能最好 explain中会有Using index for group-by 紧凑索引扫描(Tight Index Scan): 性能第二 explain中无明显标识 临时表(Temporary table): 性能 阅读全文

posted @ 2021-02-27 17:41 work hard work smart 阅读(265) 评论(0) 推荐(0)

摘要: Order By语句优化最好的做法是: 利用索引避免排序 哪些情况下Order by字句能用索引 MySQL排序原理 Order by调优原则与技巧 Order by调优实战 1、哪些情况下Order by字句能用索引 下图是B+Tree 利用索引本身的有序性,让MySQL跳过排序过程。 测试数据准 阅读全文

posted @ 2021-02-27 16:17 work hard work smart 阅读(201) 评论(0) 推荐(0)

摘要: 一、count实验和结论 1、测试数据准备 create table user_test_count ( id int primary key not null auto_increment, name varchar(45), age int, email varchar(60), birthda 阅读全文

posted @ 2021-02-27 16:16 work hard work smart 阅读(442) 评论(0) 推荐(0)

摘要: -- 查询第一页(前10条),花费102msselect * from employees limit 0,10; -- 查询300001~300010,花费230msselect * from employees limit 300000,10; explain select * from emp 阅读全文

posted @ 2021-02-27 16:12 work hard work smart 阅读(160) 评论(0) 推荐(0)

摘要: 1、第一范式(1NF) 字段具有原子性,即数据库表的每一个字段都是不可分割的原子数据项,不能是集合、数组、记录等非原子数据项。 当实体中的某个属性有多个值时,必须拆分为不同的属性。 如地址address字段,可以拆分成省市区 2、第二范式(2NF) 满足1NF的基础上,要求每一行数据具有唯一性,并且 阅读全文

posted @ 2021-02-27 13:47 work hard work smart 阅读(232) 评论(0) 推荐(0)

摘要: 一、JOIN语句优化 join的种类有哪些? 彼此的区别? join有哪些算法? join语句如何优化 1、join的种类有哪些? 彼此的区别? 还有一种join select * from A a corss join B b; 笛卡尔积连接。行数是A表和B表的乘积。 如果corss join带有 阅读全文

posted @ 2021-02-27 13:44 work hard work smart 阅读(420) 评论(0) 推荐(0)

2021年2月22日

摘要: 在Windows下搭建Scala开发环境,需要做以下几个步骤 1) 安装JDK 2) 安装Scala,并配置环境变量 3) Idea安装并创建Scala 类 1、安装JDK JDK安装,这里不再介绍,如下图,可以查看安装后的版本。 2、下载Scala 下载scala-2.11.7.zip,解压到D: 阅读全文

posted @ 2021-02-22 13:28 work hard work smart 阅读(313) 评论(0) 推荐(0)

2021年2月20日

摘要: Kibana版本为7.4.2,与ElasticSerach 7.4.2 保持一致。 1、解压 cd /home/tools tar -zxvf kibana-7.4.2-linux-x86_64.tar.gz mv kibana-7.4.2-linux-x86_64 /usr/local/ 2、修改 阅读全文

posted @ 2021-02-20 16:39 work hard work smart 阅读(314) 评论(0) 推荐(0)

摘要: ElasticSearch安装请参考: Linux 下ElasticSearch安装 登录Kibana, 点击Manage, 点击Index Patterns, 然后创建index pattern。 输入app-log-*, 点击Next step 点击创建 点击搜索,点击索引app-log-* 可 阅读全文

posted @ 2021-02-20 16:37 work hard work smart 阅读(136) 评论(0) 推荐(0)

摘要: 一、应用场景 1、消息队列 2、行为跟踪 3、元信息监控 4、日志收集 5、流处理 6、事件源 7、持久性日志 commit log 二、案例 1.下载与安装 1)Zookeeper下载 http://zookeeper.apache.org/releases.html#download 2)Kaf 阅读全文

posted @ 2021-02-20 16:35 work hard work smart 阅读(116) 评论(0) 推荐(0)

摘要: 分布式消息队列(MQ)应用场景 服务解耦 削峰填谷 异步化缓冲 分布式消息队列(MQ)应用思考点? 生产端可靠性投递 消费端幂等 高可用 低延迟 消息可靠性 扩展性 堆积能力 分布式消息队列(MQ)与技术选型 主流的分布式消息中间件 ActiveMQ: 传统行业,中小型公司,并发和消息的承载能力不是 阅读全文

posted @ 2021-02-20 16:33 work hard work smart 阅读(104) 评论(0) 推荐(0)

2021年2月17日

摘要: 一、算法导论中的红黑树 1、每个节点或者是红色的,或者是黑色的 2、根节点是黑色的 3、每一个叶子节点(最后的空节点)是黑色的 4、如果一个节点是红色的,那么他的孩子节点都是黑色的 5、从任意一个节点到叶子节点,经过的黑色节点是一样的 二、2-3树 满足二分搜索树的基本性质 节点可以存放一个元素或者 阅读全文

posted @ 2021-02-17 20:37 work hard work smart 阅读(84) 评论(0) 推荐(0)

2021年2月14日

摘要: 基于平衡二叉树实现Set public class AVLTreeSet<E extends Comparable<E>> implements ISet<E> { private AVLTree<E,Object> avl; public AVLTreeSet(){ avl = new AVLTr 阅读全文

posted @ 2021-02-14 21:56 work hard work smart 阅读(148) 评论(0) 推荐(0)

摘要: 基于平衡二叉树实现Map public class AVLTreeMap<K extends Comparable<K>,V> implements IMap<K,V> { private AVLTree<K,V> avl; public AVLTreeMap(){ avl = new AVLTre 阅读全文

posted @ 2021-02-14 21:53 work hard work smart 阅读(159) 评论(0) 推荐(0)

摘要: 平衡树与AVL 1、二分搜索树存在的问题 如果数据是顺序添加到二分搜索树,二分搜索树会退化成一个链表,这就好大大降低二分搜索树的效率。 如何解决这个问题呢? 需要添加一种机制,使得二分搜索树维持平衡二叉树的性质。AVL树就是一种经典的平衡二叉树。 2、AVL树介绍 AVL的名称来自俄罗斯两位科学的名 阅读全文

posted @ 2021-02-14 21:42 work hard work smart 阅读(380) 评论(0) 推荐(0)

2021年2月13日

摘要: 一、优先队列场景:1、系统中动态选择优先级最高的任务执行2、医院根据患者的患病情况,选择哪个患者最先做手术。3、游戏中,士兵去攻击优先级最高的那个敌人。 二、优先队列底层数据结构复杂度对比 三、堆 1、二叉堆Binary Heap 使用二叉树表示的堆,二叉堆是一棵完全二叉树 完全二叉树: 把元素顺序 阅读全文

posted @ 2021-02-13 22:28 work hard work smart 阅读(169) 评论(0) 推荐(0)

2021年2月12日

摘要: 1、什么是Map(映射) 存储( 键,值) 数据对的数据结构(Key,Value) 根据键(Key),寻找值(Value) 非常容易使用链表或者二分搜索树实现。 2、基于链表实现Map public class LinkedListMap<K,V> implements IMap<K,V>{ pri 阅读全文

posted @ 2021-02-12 22:46 work hard work smart 阅读(310) 评论(0) 推荐(0)

摘要: 集合的典型应用: 客户统计 词汇量统计 1、基于二分搜索树的集合 定义接口ISet public interface ISet<E> { void add(E e); void remove(E e); boolean contains(E e); int getSize(); boolean is 阅读全文

posted @ 2021-02-12 13:58 work hard work smart 阅读(134) 评论(0) 推荐(0)

2021年2月11日

摘要: 1、为什么要使用树结构 将数据使用树结构存储后,出奇的高效。 2、常用的数结构 二分搜索树(Binary Search Tree) 平衡二叉树: AVL; 红黑树 堆; 并查集 线段树; Trie(字典树,前缀树) 3、二叉树 和链表一样,动态数据结构 对于每一个节点,最多有两个孩子。 二叉树具有唯 阅读全文

posted @ 2021-02-11 21:17 work hard work smart 阅读(114) 评论(0) 推荐(0)

摘要: 一、Leetcode中与链表向操作 203. 移除链表元素 删除链表中等于给定值 val 的所有节点。 示例: 输入: 1->2->6->3->4->5->6, val = 6 输出: 1->2->3->4->5 https://leetcode-cn.com/problems/remove-lin 阅读全文

posted @ 2021-02-11 10:41 work hard work smart 阅读(85) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 7 8 9 ··· 59 下一页