PageRank网页排名算法
摘要:互联网上各个网页之间的链接关系我们都可以看成是一个有向图,一个网页的重要性由链接到该网页的其他网页来投票,一个较多链入的页面会有比较高等级,反之如果一个页面没有链入或链入较少等级则低,网页的PR值越高,代表网页越重要 假设一个有A、B、C、D四个网页组成的集合,B、C、D三个页面都链入到A,则A的P
阅读全文
posted @
2017-02-10 18:00
百里琰
阅读(6374)
推荐(0)
文档倒排序索引
摘要:倒排索引是目前几乎所有支持全文检索的搜索引擎都需要依赖的数据结构,该索引结构被用来存储某个单词(或词组)在一个文档或一组文档中存储位置的映射,即提供了一种根据内容来查找文档的方式,由于不是根据文档来确定文档所含的内容,而是进行了相反的操作,因而被称为倒排索引。 图1-1为带词频统计属性的文档呢倒排索
阅读全文
posted @
2017-01-20 10:52
百里琰
阅读(677)
推荐(0)
单词共现算法
摘要:如果单词u属于单词w的窗口内,则认为(u,w)出现一次,这里的窗口可以定义为一个固定大小的窗口,或者是前后相连出现、在同一句中出现、在同一个段落中出现的单词,如果窗口中的单词为[w1,w2,w3],则发射((w1,w2),1)和((w1,w3),1)出去,然后窗口向后移动一个单词。Reduce阶段则
阅读全文
posted @
2017-01-12 21:03
百里琰
阅读(2439)
推荐(0)
MapReduce关系代数运算
摘要:常见关系代数运算包括:选择、投影、并、交、差以及自然连接操作等,都可以十分容易利用MapReduce框架进行并行化计算 选择操作 将关系R的数据存储在relationR文件,然后移入HDFS下的data文件夹,如代码1-1 代码1-1 对于关系R的应用条件C,选择性别为女的数据,只需在Map阶段对每
阅读全文
posted @
2017-01-08 11:32
百里琰
阅读(2374)
推荐(0)
矩阵乘法的MapReduce实现
摘要:对于任意矩阵M和N,若矩阵M的列数等于矩阵N的行数,则记M和N的乘积为P=M*N,其中mik 记做矩阵M的第i行和第k列,nkj记做矩阵N的第k行和第j列,则矩阵P中,第i行第j列的元素可表示为公式(1-1): pij=(M*N)ij=∑miknkj=mi1*n1j+mi2*n2j+……+mik*n
阅读全文
posted @
2017-01-07 12:08
百里琰
阅读(4840)
推荐(0)
对象序列化(二)
摘要:本文是基于Linux环境运行,读者阅读前需要具备一定Linux知识 自定义序列化 在一些情况下,如果某个类的一些属性不希望被序列化,或者没有实现Serializable接口又不希望在序列化时报错,可以在属性前面加上transient关键字,Java程序在序列化时会忽略该属性 代码1-1 代码1-1运
阅读全文
posted @
2016-12-31 09:48
百里琰
阅读(191)
推荐(0)
对象序列化(一)
摘要:本文是基于Linux环境运行,读者阅读前需要具备一定Linux知识 对象序列化 对象序列化的目标是将对象保存到磁盘中,或允许在网络中直接传输对象。对象序列化机制允许把内存中的Java对象转换成平台无关的二进制流,从而允许把这种二进制流持久地保存在磁盘上,通过网络将这种二进制流传输到另一个网络节点,其
阅读全文
posted @
2016-12-30 11:15
百里琰
阅读(374)
推荐(0)
RandomAccessFile使用小结
摘要:本文是基于Linux环境运行,读者阅读前需要具备一定Linux知识 RandomAccessFile是Java输入/输出流体系中功能最丰富的文件内容访问类,既可以读取文件内容,也可以向文件输出数据。与普通的输入/输出流不同的是,RandomAccessFile支持跳到文件任意位置读写数据,Rando
阅读全文
posted @
2016-12-28 14:44
百里琰
阅读(40245)
推荐(0)
重定向标准输入/输出
摘要:本文是基于Linux环境运行,读者阅读前需要具备一定Linux知识 Java的标准输入/输出分别通过System.in和System.out来代表,默认情况下它们分别代表键盘和显示器,当程序通过System.in来获取输入时,实际上是从键盘读取输入,当程序试图通过System.out执行输出时,程序
阅读全文
posted @
2016-12-26 20:42
百里琰
阅读(2264)
推荐(0)
处理流小结
摘要:本文是基于Linux环境运行,读者阅读前需要具备一定Linux知识 使用处理流来包装节点流,程序通过处理流来执行输入/输出功能,只要流的构造器参数不是一个物理节点,而是一个已存在的流,那该流则是处理流,所有节点流都时直接以物理IO节点作为构造参数的 代码1-1使用PrintStream处理流来包装I
阅读全文
posted @
2016-12-26 16:31
百里琰
阅读(246)
推荐(0)
FileInputStream、FileReader、FileInputStream、FileWriter使用小结
摘要:本文是基于Linux环境运行,读者阅读前需要具备一定Linux知识 InputStream包含如下三个方法: int read():从输入流中读取单个字节,返回所读取的字节数据(字节数据可直接转化为int类型) int read(byte[] b):从输入流中最多读取b.length个字节的数据,并
阅读全文
posted @
2016-12-25 21:07
百里琰
阅读(2511)
推荐(0)
File类使用小结
摘要:本文是基于Linux环境运行,读者阅读前需要具备一定Linux知识 File类是java.io包下代表与平台无关的文件或目录,如果希望在程序中操作文件或目录,可以通过File类来完成,File类可以使用相对路径或绝对路径来创建File对象,默认情况下,系统总是根据用户的工作路径来解释相对路径 访问文
阅读全文
posted @
2016-12-25 16:27
百里琰
阅读(1124)
推荐(0)