摘要: 共享锁和排它锁 InnoDB实现了标准的行级锁,包括两种类型:共享锁(S)和排它锁(X) 一个共享锁(S)允许事务持有这种锁来读取一行 一个排它锁(X)允许事务持有这种锁来修改或删除一行 如果事务T1对行r持有一个共享锁(S),那么来自其它事务T的对于行r的锁的请求处理如下: 如果T2请求的是共享锁 阅读全文
posted @ 2018-01-10 16:47 废物大师兄 阅读(412) 评论(0) 推荐(0)
摘要: 上面这段代码一直在用,面试的时候也经常被问到,却从未深究过,不知道线程池到底是怎么回事,今天看看源代码,一探其究竟 线程池主要控制的状态是ctl,它是一个原子的整数,其包含两个概念字段: workerCount:有效的线程数量 runState:线程池的状态 为了在一个整型值里面包含这两个字段,我们 阅读全文
posted @ 2018-01-06 22:59 废物大师兄 阅读(9460) 评论(0) 推荐(2)
摘要: JDK1.8中的HashMap实现跟JDK1.7中的实现有很大差别。下面分析JDK1.8中的实现,主要看put和get方法。 构造方法的时候并没有初始化,而是在第一次put的时候初始化 putVal方法的主要逻辑是这样的: 1、如果数组还没有初始化(数组长度是0),则先初始化 2、通过hash方法计 阅读全文
posted @ 2018-01-05 22:57 废物大师兄 阅读(4981) 评论(2) 推荐(2)
摘要: 用户对物品的评分矩阵 × 物品相似矩阵 = 推荐列表 构建物品相似度矩阵的时候可以通过计算两个物品的余弦相似度得出,于是需要构建每个物品在所有用户中的评分矩阵 本例中,不采用余弦相似度的方式计算物品与物品相似度 在MapReduce作业中,输入数据的格式是:用户,物品,评分 第一步、构建用于评分矩阵 阅读全文
posted @ 2018-01-02 14:29 废物大师兄 阅读(19950) 评论(2) 推荐(11)
摘要: 在MapReduce整个过程可以概括为以下过程: 输入 --> map --> shuffle --> reduce -->输出 输入文件会被切分成多个块,每一块都有一个map task map阶段的输出结果会先写到内存缓冲区,然后由缓冲区写到磁盘上。默认的缓冲区大小是100M,溢出的百分比是0.8 阅读全文
posted @ 2018-01-01 19:32 废物大师兄 阅读(37172) 评论(0) 推荐(12)
摘要: 阅读全文
posted @ 2018-01-01 16:01 废物大师兄 阅读(513) 评论(0) 推荐(0)
摘要: 参考 http://hbase.apache.org/book.html#_architecture Architecture 65. Overview 65.1. NoSQL? HBase是一种"NoSQL"数据库。“NoSQL”一般指的是非关系型数据库,我们知道,关系型数据库支持SQL,也就是说 阅读全文
posted @ 2017-12-31 18:24 废物大师兄 阅读(1489) 评论(0) 推荐(2)
摘要: http://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/YARN.html Apache Hadoop YARN YARN的主要功能包括:资源管理和任务调度及监控,它们各自都是独立的守护进程。要实现这个目标,必须有一个全局 阅读全文
posted @ 2017-12-30 18:09 废物大师兄 阅读(913) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2017-12-28 12:50 废物大师兄 阅读(391) 评论(0) 推荐(0)
摘要: https://dev.mysql.com/doc/refman/5.7/en/data-type-overview.html 阅读全文
posted @ 2017-12-28 12:36 废物大师兄 阅读(437) 评论(0) 推荐(0)