大数据应用实例 文章匹配的一些思路与提高查询速度
沉沙 2018-09-27 来源 : 阅读 1055 评论 0

摘要:本篇教程介绍了大数据应用实例 文章匹配的一些思路与提高查询速度,希望阅读本篇文章以后大家有所收获,帮助大家对大数据云计算大数据应用的理解更加深入。

本篇教程介绍了大数据应用实例 文章匹配的一些思路与提高查询速度,希望阅读本篇文章以后大家有所收获,帮助大家对大数据云计算大数据应用的理解更加深入。

<

 需求,最近实现了文章的原创度检测功能,处理思路一是分词之后做搜索引擎匹配飘红,另一方面是量化词组,按文章、段落、句子做数据库查询,功能基本满足实际需求。
接下来,还需要在海量大数据中快速的查找到与一句或者一段话最相关的文章、段落。
按想法具体实现并测试了一次,速度比直接分组查询肯定快了很多很多,回顾下我的实现步骤:
  压缩"语料库,即提取特征词或词频,做量化处理之后以“列向量”形式保存到数据库;然后按前N组词拼为向量组,以供查询使用,即组合为1到N字的组合,量化后以“行向量”形式保存到数据库(目前是用MYSQL),计算和查询相似度的时候先提取特征,然后量化,再查询各Long型数值字段,速度应该会较一般查询要快一些。
应用举例:[下午实现了具体想法,目前系统正在处理数据中,预计会在八千万行的数据集,相信查询速度应该还可以]
        【查询测试】查询以下特征
            Dictionary words = new Dictionary();
            words.Add("五笔", 1);
            words.Add("拼音", 1);
            words.Add("笔画", 1);
            words.Add("其它", 1);
            words.Add("英盘", 1);
            words.Add("美盘", 1);
            words.Add("法盘", 1);
            //List<Dictionary> WordList = new List<Dictionary>();
            //for (int i = 0; i < 15; i++)
            //{
            //    WordList.Add(GetWordSecurity(words, i + 1));   
            //}
            //直观看数据
            Dictionary R1 = GetWordSecurity(words, 1);
            Dictionary R2 = GetWordSecurity(words, 2);
            Dictionary R3 = GetWordSecurity(words, 3);
            Dictionary R4 = GetWordSecurity(words, 4);
            Dictionary R5 = GetWordSecurity(words, 5);
            Dictionary R6 = GetWordSecurity(words, 6);
            Dictionary R7 = GetWordSecurity(words, 7);
            Dictionary R8 = GetWordSecurity(words, 8);
            Dictionary R9 = GetWordSecurity(words, 9);
            Dictionary R10 = GetWordSecurity(words, 10);
            Dictionary R11 = GetWordSecurity(words, 11);
            Dictionary R12 = GetWordSecurity(words, 12);
            Dictionary R13 = GetWordSecurity(words, 13);
            Dictionary R14 = GetWordSecurity(words, 14);
 
  【量化数据】我选的是MD5->Long做量化
五笔 -8683246507546018072
拼音 5720075168044685354
笔画 6444854990336207024
其它 -4797408270696495584
英盘 -1741849883950345011
美盘 4116094244106799890
法盘 5071717547464226258
 
      【查询】 根据实际需求(即相关度要求)仅仅只需要取以下列表中的一个值做为查询条件。即,通过分词-做词行向量排列,特征列向量排列将文章映射成ID,这样我们
就可以通过 Select .. From T Where Long1= Value 实现文章相关度的查询【根据相关度要求可随时改变查询字段LongN】
   二字词   Dictionary R1 = GetWordSecurity(words, 1);
+  [0] {[1, -2963171339501332718]} System.Collections.Generic.KeyValuePair
+  [1] {[2, -2238391517209811048]} System.Collections.Generic.KeyValuePair
+  [2] {[3, 4966089295467037960]} System.Collections.Generic.KeyValuePair
+  [3] {[4, -6281813915328659238]} System.Collections.Generic.KeyValuePair
+  [4] {[5, 922666897348189770]} System.Collections.Generic.KeyValuePair
+  [5] {[6, 3978225284094340343]} System.Collections.Generic.KeyValuePair
+  [6] {[7, -8610574661558066372]} System.Collections.Generic.KeyValuePair
Dictionary R2 = GetWordSecurity(words, 2);
      

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标大数据云计算大数据应用频道!

本文由 @沉沙 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved