[发明专利]字符串处理方法和装置有效
申请号: | 201410758617.X | 申请日: | 2014-12-10 |
公开(公告)号: | CN104462396B | 公开(公告)日: | 2017-12-19 |
发明(设计)人: | 赵立贺 | 申请(专利权)人: | 北京国双科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京康信知识产权代理有限责任公司11240 | 代理人: | 吴贵明,张永明 |
地址: | 100086 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 字符串 处理 方法 装置 | ||
技术领域
本发明涉及数据处理领域,具体而言,涉及一种字符串处理方法和装置。
背景技术
随着互联网的快速发展,在互联网上产生的数据量越来越大,处理压力也越来越大,如何快速有效地处理和分析这些数据成为互联网公司亟待解决的问题。
互联网数据通常以字符串的形式展现,以广告日志信息为例,监控得到的广告日志信息包含多个维度,如ReferrerUrl、Cookie、IP、UserAgent等。其中ReferrerUrl字符串可以解析出广告来源域名、来源路径和来源参数等信息,UserAgent字符串可以解析出操作系统信息、浏览器信息、设备信息和是否移动端等信息。在获取到这些字符串数据之后,通常先进行存储,以便于做进一步的数据分析。
然而,现有的字符串存储过程中,通常会存储所有的字符串,无论是相同的字符串还是字符串中存在无需解析的信息,均统一存储,这势必会浪费存储空间。例如,以下两条信息:
如下两条UserAgent字符串,对于广告维度分析而言,提供的维度信息是完全相同的,但是因为设备型号不同属于不同的UserAgent。
Mozilla/5.0(iPhone;CPU iPhone OS 7_1 like Mac OS X)AppleWebKit/537.51.2(KHTML,like Gecko)Mobile/11D167
Mozilla/5.0(iPhone;CPU iPhone OS 7_1 like Mac OS X)AppleWebKit/537.51.1(KHTML,like Gecko)Mobile/11B651
由于UserAgent字符串包含的信息多种多样,而广告维度分析需要的只是其中的操作系统、浏览器、设备信息和是否移动端等基本信息,对于UserAgent字符串中其他的信息(如浏览器版本、.net版本、设备型号等)无需解析。
通过以上描述的过程可以看出,当前的广告展现、跳转监控日志由于维度存在无需解析的信息,这使得维度信息的直接保存既不利于广告维度分析,也会造成存储空间的浪费。
针对现有技术中字符串数据存储浪费存储空间的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种字符串处理方法和装置,以解决现有技术中字符串数据存储浪费存储空间的问题。
为了实现上述目的,根据本发明实施例的一个方面,提供了一种字符串处理方法。根据本发明的字符串处理方法包括:获取用于记录多个维度信息的字符串;对所述字符串进行解析,得到与所述字符串对应的对象;生成与所述字符串对应的对象的唯一标识;查找第一字典中是否存在所述唯一标识,其中,所述第一字典为缓存有预设标识的缓存单元,其中,所述预设标识为已经存储的日志信息中的字符串对应的对象的标识;如果所述第一字典中不存在所述唯一标识,则存储所述唯一标识对应的对象;以及如果所述第一字典中存在所述唯一标识,则不存储所述唯一标识对应的对象。
进一步地,在获取用于记录多个维度信息的字符串之后,以及对所述字符串进行解析,得到与所述字符串对应的对象之前,所述字符串处理方法还包括:查找第二字典中是否存在所述字符串;如果所述第二字典中存在所述字符串,则过滤掉所述字符串;如果所述第二字典中不存在所述字符串,则将所述字符串缓存到所述第二字典中,对所述字符串进行解析,得到与所述字符串对应的对象包括:对确定在所述第二字典中不存在的字符串进行解析,得到与确定的字符串对应的对象。
进一步地,如果所述第一字典中不存在所述唯一标识,存储所述唯一标识对应的对象包括:如果所述第一字典中不存在所述唯一标识,则将所述唯一标识对应的对象的状态标记为新增状态;判断标记为所述新增状态的对象个数是否达到预设阈值;以及如果判断出标记为所述新增状态的对象个数达到所述预设阈值,则通过将标记为所述新增状态的对象插入数据库来存储标记为所述新增状态的对象。
进一步地,在查找第一字典中是否存在所述唯一标识之前,所述字符串处理方法还包括:将所述数据库中的对象的标识缓存到所述第一字典中,其中,在查找第一字典中是否存在所述唯一标识之后,如果所述第一字典中不存在所述唯一标识,则将所述唯一标识缓存到所述第一字典中。
进一步地,生成与所述字符串对应的对象的唯一标识包括:计算所述字符串中多个维度信息的散列值;由所述多个维度信息的散列值得到所述唯一标识。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京国双科技有限公司,未经北京国双科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410758617.X/2.html,转载请声明来源钻瓜专利网。