摘要: 特质(trait)是scala里代码服用的基础单元。特质封装了方法和字段的定义,并可以通过“混入”到类中重用它们。与类的继承时每个类都只能继承唯一的超类不同,类可以混入任意多个特质。特质的定义除了使用关键字trait之外,与类定义无异,如代码1-1 代码1-1 这个特质名为Fish,它没有声明超类, 阅读全文
posted @ 2017-05-01 11:51 百里琰 阅读(467) 评论(0) 推荐(0) 编辑
摘要: 控制抽象 所有的函数都可以被分成通用部分,以及非通用部分,这将导致代码存在大量的冗余。 代码1-1 代码1-1中,fileEnding和fileContains两个方法,一个是查询以query结尾的,一个是查询包含query的,虽然功能不同,但代码大部分却相同,随着功能的增加,冗余的代码将会越来越多 阅读全文
posted @ 2017-04-29 20:49 百里琰 阅读(364) 评论(0) 推荐(0) 编辑
摘要: 函数和闭包 Scala的函数式头等函数,你不仅可以定义和调用函数,还可以把它们写成匿名的字面量,并把它们作为值传递。Scala函数字面量的语法:(x: Int, y: Int) => x + y。函数字面量被编译进类,并在运行期实例化为函数值。因此,函数字面量和函数值的区别在于函数字面量存在于源代码 阅读全文
posted @ 2017-04-28 21:35 百里琰 阅读(297) 评论(0) 推荐(0) 编辑
摘要: 函数式对象 本文的重点在于定义函数式对象,也就是说,不具备任何可变状态的对象的类。不可变对象提供了若干强于可变对象的优点和一个潜在的缺点: 优点: 首先,不可变对象常常比可变对象更易理清头绪,因为它们的内部状态不因时间的变化而变化。 其次,当你把可变对象传递给其他方法或函数时,可能在执行代码的过程中 阅读全文
posted @ 2017-04-27 21:25 百里琰 阅读(434) 评论(0) 推荐(0) 编辑
摘要: 互联网上各个网页之间的链接关系我们都可以看成是一个有向图,一个网页的重要性由链接到该网页的其他网页来投票,一个较多链入的页面会有比较高等级,反之如果一个页面没有链入或链入较少等级则低,网页的PR值越高,代表网页越重要 假设一个有A、B、C、D四个网页组成的集合,B、C、D三个页面都链入到A,则A的P 阅读全文
posted @ 2017-02-10 18:00 百里琰 阅读(6251) 评论(0) 推荐(0) 编辑
摘要: 倒排索引是目前几乎所有支持全文检索的搜索引擎都需要依赖的数据结构,该索引结构被用来存储某个单词(或词组)在一个文档或一组文档中存储位置的映射,即提供了一种根据内容来查找文档的方式,由于不是根据文档来确定文档所含的内容,而是进行了相反的操作,因而被称为倒排索引。 图1-1为带词频统计属性的文档呢倒排索 阅读全文
posted @ 2017-01-20 10:52 百里琰 阅读(649) 评论(0) 推荐(0) 编辑
摘要: 如果单词u属于单词w的窗口内,则认为(u,w)出现一次,这里的窗口可以定义为一个固定大小的窗口,或者是前后相连出现、在同一句中出现、在同一个段落中出现的单词,如果窗口中的单词为[w1,w2,w3],则发射((w1,w2),1)和((w1,w3),1)出去,然后窗口向后移动一个单词。Reduce阶段则 阅读全文
posted @ 2017-01-12 21:03 百里琰 阅读(2373) 评论(0) 推荐(0) 编辑
摘要: 常见关系代数运算包括:选择、投影、并、交、差以及自然连接操作等,都可以十分容易利用MapReduce框架进行并行化计算 选择操作 将关系R的数据存储在relationR文件,然后移入HDFS下的data文件夹,如代码1-1 代码1-1 对于关系R的应用条件C,选择性别为女的数据,只需在Map阶段对每 阅读全文
posted @ 2017-01-08 11:32 百里琰 阅读(2264) 评论(0) 推荐(0) 编辑
摘要: 对于任意矩阵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 百里琰 阅读(4784) 评论(0) 推荐(0) 编辑
摘要: 本文是基于Linux环境运行,读者阅读前需要具备一定Linux知识 自定义序列化 在一些情况下,如果某个类的一些属性不希望被序列化,或者没有实现Serializable接口又不希望在序列化时报错,可以在属性前面加上transient关键字,Java程序在序列化时会忽略该属性 代码1-1 代码1-1运 阅读全文
posted @ 2016-12-31 09:48 百里琰 阅读(176) 评论(0) 推荐(0) 编辑