大数据技术学习笔记:倒排索引

岁月蹉跎,就在今年上半年我做职业规划的时候,"大数据"这个词出现在了我的脑海,当前IT行业火爆的方向当属大数据和人工智能。人工智能门槛高,那么曲线救国之路呢?那就是大数据了,机器学习吃的是数据,所以毅然决定辞职投身大数据行业。

大数据技术学习笔记:倒排索引

小白、没有社会关系如何入行?好在有大数据培训机构。在经过精心对比之后,选择了千锋的大数据+人工智能这门课程进行培训。我看重的是大数据高端班的课程设置,标准化AI工程流程,如:加载数据集、分割数据集、选择建立模型、训练模型、测试模型和应用模型,从项目立项分析、确定分析目标到项目分析设计。项目实战也覆盖西二旗、中关村、亦庄和朝阳的大数据商业实战,让我离梦想进一步,再进一步!

下面是我的技术学习笔记,记录一下自己的学习大数据之路!

· 倒排索引:

· 关键字存在于一些文章或者页面中,顺序索引为这些关键字在某一文章中的数量和位置。

· 倒排索引就是一关键字为单位,以关键字为主,将所有包含这些关键字的文章或者页面与该关键字关联,作为该关键字的索引。称为倒排。

· 倒排索引常见思路:

· 比如统计某个关键字在多个网页中存在的数量和存在的文件。

· 在map中将关键字所在文件的文件名称和关键字拼接组成key,value直接使用1,使用combiner,做聚合操作,key值不变,将key_filename进行组合操作,计算出这样的组合key总数量,然后发给reduce。

· 对于组合键如何发送给reduce,这里需要自定义分分区类。在分区类中不要使用默认的key_filename真个字符串hash,而是只提取key做hash.这样相同关键字就会被发送到同一个reduce。

· 在reduce方,键会以key_filename方式出现,但是这个key_filename包含了来自所有map的。在reduce函数中聚合,然后将key,filename,counter拆分出来根据key输出到不同的文件中。后面可能会有相同关键字但是来自于不同网页这样的组合关键字,但是真实关键字一定会被发送到同一个reduce,所有不会存在多个reduce同时写同一个结果文件的情况。后面相同真实关键字到来后,即使与之前的相同真实关键字不连续,也会写到相同的结果文件中。

相关推荐