摘要:
猫熊小才天の书院 阅读全文
摘要:
date: 2020-10-15 14:58:00 updated: 2020-10-19 17:58:00 Redis中的跳表 参考网址1 参考网址2 redis 数据类型 zset 实现有序集合,底层使用的数据结构是跳表。 源码在 src/t_zset.c 文件中,相关数据结构的定义在 src/ 阅读全文
摘要:
date: 2020-10-15 10:58:00 updated: 2020-10-19 18:00:00 Redis的一些问题 Remote Dictionary Server 底层C写的 类似于 mysql,可以把最近的query和对应的结果保存下来 ⇒ hashquery 存入到缓存里,如果 阅读全文
摘要:
date: 2020-10-09 17:45:00 updated: 2020-10-10 17:45:00 Distcp 跨集群同步 1. 使用方法及原理 hadoop distcp srcPath tarPath 会把srcPath和tarPath下的所有目录、文件信息放入到 _distcp_s 阅读全文
摘要:
date: 2020-09-28 16:09:00 updated: 2020-09-28 17:42:00 单例模式 1. 饿汉式 public class EHan { private static EHan instance = new EHan(); private EHan(){} pub 阅读全文
摘要:
date: 2020-09-28 11:08:00 updated: 2020-09-21 18:15:00 线程一些问题 1. 概述 单线程和多线程 表象化的一种理解:线程就是程序执行的路径,单线程就是只有一条路径,多线程就是多条路径 进程:一个程序装载到内存里,分配好资源如网络等等。是分配资源的 阅读全文
摘要:
date: 2020-09-27 13:50:00 updated: 2020-09-28 16:30:00 Phoenix创建索引源码过程 org.apache.phoenix.index.IndexMaintainer public byte[] buildRowKey(ValueGetter 阅读全文
摘要:
date: 2020-09-24 16:24:00 updated: 2020-09-24 17:30:00 Mac 搭建 Redis 集群 参考文档 摘要 安装docker brew cask install docker 在设置里选择 Docker Engine,添加国内下载镜像 { "regi 阅读全文
摘要:
date: 2020-09-18 17:07:00 updated: 2020-09-25 11:03:00 Redis 参考网址 1. 概述 Redis的主要功能都基于单线程模型实现,也就是说Redis使用一个线程来服务所有的客户端请求,同时Redis采用了非阻塞式IO,并精细地优化各种命令的算法 阅读全文
摘要:
date: 2020-09-10 13:50:00 updated: 2020-09-14 16:30:00 1. Phoenix索引 全局索引:适合读多写少的场景。写数据时因为索引表分布在不同数据节点,跨节点数据传输带来巨大的性能消耗。 全局索引必须是查询语句中所有列都包含在全局索引中,它才会生效 阅读全文
摘要:
date: 2020-09-10 09:57:00 updated: 2020-09-12 09:54:00 MySQL索引 参考文档 1. 多页结构 OS存储数据按页来存储,一页是4KB,读取数据也是一次读一页,原因是程序局部性的概念,大意是“一个程序在访问了一条数据之后,在之后会有极大的可能再次 阅读全文
摘要:
date: 2020-09-09 17:36:00 updated: 2020-09-09 17:54:00 红黑树 1. 红黑树 数组查询快,链表插入删除快 ⇒ 二叉树兼具两者优点 ⇒ 但是二叉树可能存在特殊情况,即一侧子树非常长,另一侧很短,不平衡 ⇒ 红黑树,即二叉平衡树,是一个去除二叉树顶端 阅读全文
摘要:
date: 2020-09-06 13:34:00 updated: 2020-09-10 09:57:00 B-树和B+树 1. B-树 1.1 B-树就是B树 英文名字叫做B-tree,中间的短线是英文连接符,只是翻译的时候将短线翻译成了减号。 全称Balance-tree(平衡多路查找树),平 阅读全文
摘要:
date: 2020-09-03 14:08:00 updated: 2020-09-03 14:28:00 面向对象编程 摘自知乎 理解:参考Alan Kay的原话来看,对象就像是细胞,互相交流是靠消息传递。OOP对它只是消息传递,本地保留和保护,隐藏状态进程,极端的后期绑定。 原文如下: 面向对 阅读全文
摘要:
date: 2020-08-21 16:48:00 updated: 2020-08-21 16:52:00 HashMap 中的哈希值计算问题 1. hash 计算 JDK1.8 HashMap源码 static final int hash(Object key) { int h; return 阅读全文
摘要:
date: 2020-08-19 13:48:00 updated: 2020-08-21 17:23:00 守护线程和用户线程 Java分为两种线程:用户线程和守护线程 所谓守护线程是指在程序运行的时候在后台提供一种通用服务的线程,比如垃圾回收线程就是一个很称职的守护者,并且这种线程并不属于程序中 阅读全文
摘要:
date: 2020-08-19 10:16:00 updated: 2020-08-19 10:16:00 ThreadLocal 参考网址 以数据库连接为例,如果多个线程共享一个连接,有可能一个线程在对数据库进行操作,另一个线程调用了closeConnection操作;如果在每一个线程都new一 阅读全文
摘要:
date: 2020-08-11 14:32:00 updated: 2020-08-20 17:23:00 同步队列 ∵ 多线程 ∴ 需要针对一些资源进行同步 ∴ 有了同步队列 实现方式主要有两种:阻塞方式(队列使用一个锁,出队入队用同一把锁或者队列使用两把锁,出队和入队用不同的锁)和非阻塞方式( 阅读全文
摘要:
date: 2020-07-29 09:54:00 updated: 2020-08-04 17:09:00 血缘分析 1. LineageLogger 首先需要对 org.apache.hadoop.hive.ql.hooks.LineageLogger 这个类进行改写,原类会把 lineage 阅读全文
摘要:
date: 2020-07-20 16:15:00 updated: 2020-07-27 13:40:00 Parquet 源码解析 Parquet文件是以二进制方式存储的,所以是不可以直接读取的,文件中包括该文件的数据和元数据,因此Parquet格式文件是自解析的。在HDFS文件系统和Parqu 阅读全文