本发明涉及大数据技术领域,尤其涉及一种数据报表搜索的方法、装置、电子设备及计算机可读存储介质。
背景技术:
对于数据报表的搜索,目前多数都是基于数据或者表头匹配的方法,虽然可以达到数据报表的搜索功能,但由于缺乏二次搜索功能,以及没有参照搜索记录,所以无法提高数据报表的搜索精确度。
技术实现要素:
本发明提供一种数据报表搜索方法、装置、电子设备及计算机可读存储介质,其主要目的在于根据用户的报表需求而进行数据报表搜索。
为实现上述目的,本发明提供的一种数据报表搜索方法,包括:
接收用户终端输入的报表搜索关键字,计算所述报表搜索关键字的词频值和文档频率值,根据所述词频值和所述文档频率值计算得到报表核心关键字;
接收用户终端输入的权限信息,若所述权限信息通过预构建的报表存储数据库的安全验证,对所述报表核心关键字进行绑定操作得到绑定核心关键字;
根据所述绑定核心关键字,从预构建的报表存储数据库中搜索与所述绑定核心关键字相关联的报表并根据所述报表得到关联报表集;
根据预设的兴趣计算方法对所述关联报表集进行分类,得到多个兴趣报表集,将所述多个兴趣报表集反馈给用户终端,完成数据报表搜索。
可选地,在所述接收用户终端输入的权限信息之前还包括:
在所述报表存储数据库中搜索与所述报表核心关键字相对应的报表数据集;
判断所述报表数据集在所述报表存储数据库中是否被设置权限,若所述报表数据集在所述报表存储数据库中已被设置权限,执行所述接收用户终端输入的权限信息的步骤;
若所述报表数据集在所述报表存储数据库中未被设置权限,将所述报表数据集作为预构建的sql权限程序的参数,并运行所述sql权限程序,完成对所述报表数据集的设置权限操作。
可选地,所述根据预设的兴趣计算方法对所述关联报表集进行分类,得到多个兴趣报表集,包括:
根据所述报表存储数据库的历史兴趣记录,将所述关联报表集划分成一个或多个兴趣域;
利用预设的兴趣计算方法计算所述一个或多个兴趣域的兴趣值;
根据所述兴趣值将所述关联报表集划分成多个兴趣报表集。
可选地,所述兴趣计算方法包括:
通过公式
其中,gij表示所述兴趣值,dik表示所述第i组兴趣域所包括的报表数据,djk表示所述第j组兴趣域所包括的报表数据,n为所述兴趣域的个数,h表示所述历史搜索记录,maxi,j∈h(dik∩djk)表示从所述历史搜索记录依次寻找与所述dik,djk报表数据相同的出现次数。
可选地,在所述将所述多个兴趣报表集反馈给用户终端之后还包括:
若用户终端接受所述多个兴趣报表集,则根据所述多个兴趣报表集建立权重函数;
并根据所述权重函数和所述多个兴趣报表集建立自相关函数;
求解所述自相关函数得到多个兴趣报表集的相关值,将所述相关值和所述多个兴趣报表集输入至所述报表存储数据库的历史兴趣记录中。
此外,为实现上述目的,本发明还提供一种数据报表搜索装置,该装置包括存储器和处理器,所述存储器中存储有可在所述处理器上运行的数据报表搜索程序,所述数据报表搜索程序被所述处理器执行时实现如下步骤:
接收用户终端输入的报表搜索关键字,计算所述报表搜索关键字的词频值和文档频率值,根据所述词频值和所述文档频率值计算得到报表核心关键字;
接收用户终端输入的权限信息,若所述权限信息通过预构建的报表存储数据库的安全验证,对所述报表核心关键字进行绑定操作得到绑定核心关键字;
根据所述绑定核心关键字,从预构建的报表存储数据库中搜索与所述绑定核心关键字相关联的报表并根据所述报表得到关联报表集;
根据预设的兴趣计算方法对所述关联报表集进行分类,得到多个兴趣报表集,将所述多个兴趣报表集反馈给用户终端,完成数据报表搜索。
可选地,在所述接收用户终端输入的权限信息之前还包括:
在所述报表存储数据库中搜索与所述报表核心关键字相对应的报表数据集;
判断所述报表数据集在所述报表存储数据库中是否被设置权限,若所述报表数据集在所述报表存储数据库中已被设置权限,执行所述接收用户终端输入的权限信息的步骤;
若所述报表数据集在所述报表存储数据库中未被设置权限,将所述报表数据集作为预构建的sql权限程序的参数,并运行所述sql权限程序,完成对所述报表数据集的设置权限操作。
可选地,所述根据预设的兴趣计算方法对所述关联报表集进行分类,得到多个兴趣报表集,包括:
根据所述报表存储数据库的历史兴趣记录,将所述关联报表集划分成一个或多个兴趣域;
利用预设的兴趣计算方法计算所述一个或多个兴趣域的兴趣值;
根据所述兴趣值将所述关联报表集划分成多个兴趣报表集。
可选地,所述兴趣计算方法包括:
通过公式
其中,gij表示所述兴趣值,dik表示所述第i组兴趣域所包括的报表数据,djk表示所述第j组兴趣域所包括的报表数据,n为所述兴趣域的个数,h表示所述历史搜索记录,maxi,j∈h(dik∩djk)表示从所述历史搜索记录依次寻找与所述dik,djk报表数据相同的出现次数。
可选地,在所述将所述多个兴趣报表集反馈给用户终端之后还包括:
若用户终端接受所述多个兴趣报表集,则根据所述多个兴趣报表集建立权重函数;
并根据所述权重函数和所述多个兴趣报表集建立自相关函数;
求解所述自相关函数得到多个兴趣报表集的相关值,将所述相关值和所述多个兴趣报表集输入至所述报表存储数据库的历史兴趣记录中。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有数据报表搜索程序,所述数据报表搜索程序可被一个或者多个处理器执行,以实现如上所述的数据报表搜索方法的步骤。
本发明对用户的查询内容进行关键字提取,精准的了解用户所想要的查询内容,从预构建的报表存储数据库中搜索与所述关键字相关联的报表得到关联报表集,因为所述报表存储数据库内存储了历史兴趣记录,在进行搜索时提供了可参照搜索的历史记录,提高了搜索准确度;另外,根据兴趣计算方法对所述关联报表集进行分类,因而在根据历史记录为搜索前提下,进一步进行二次搜索达到关联报表集的分类目的。因此本发明提出的数据报表搜索方法、装置及计算机可读存储介质,可以实现精准高效的表格查询功能。
附图说明
图1为本发明一实施例提供的数据报表搜索方法的流程示意图;
图2为本发明一实施例提供的数据报表搜索装置的内部结构示意图;
图3为本发明一实施例提供的数据报表搜索装置中数据报表搜索程序的模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种数据报表搜索方法。参照图1所示,为本发明一实施例提供的数据报表搜索方法的流程示意图。该方法可以由一个装置执行,该装置可以由软件和/或硬件实现。
在本实施例中,数据报表搜索方法包括:
s1、接收用户输入的报表搜索关键字,计算所述报表搜索关键字的词频值和文档频率值,根据所述词频值和所述文档频率值计算得到报表核心关键字。
本发明较佳实施例,如用户输入“我想生成财务类的数据报表”的报表搜索关键字,由于“我想”、“生成”、“数据报表”等词语对报表的生成没有实际的作用,对报表生成起作用的实际只有“财务”,因此需要从所述报表搜索关键字中提取报表核心关键字“财务”。
优选地,可使用批量接收多个用户输入的报表搜索关键字并进行打包的形式,这种打包批量接收的形式可提高整个发明的速度。如使用预先构建的报表搜索关键字接收系统接收用户输入的报表搜索关键字,所述报表搜索关键字接收系统包括物理层,访问层和数据采集层,通过所述数据采集层预先对多个用户输入的报表搜索关键字进行周期性的采集,在所述物理层中对千余条数据进行缓存,然后将缓存后的报表搜索关键字数据连接到所述访问层,在所述访问层中对报表搜索关键字数据进行打包得到报表搜索关键字数据包,同时设置传输协议并采取多线程机制传送所述报表搜索关键字数据包。
详细地,所述传输协议的设置如id标示、ip地址以及端口等。
详细地,所述计算所述报表搜索关键字的词频值和文档频率值,包括:对所述报表搜索关键字进行清洗及分词处理得到关键字集合,依次计算所述关键字集合内关键字的词频值,计算所述关键字集内各关键字在预设文档集合中出现的文档频率值。
其中,所述清洗包括去标点、去停用词。
所述词频值(tf)的计算方法为:
如上述“我想生成财务类的数据报表”,经过所述清洗及分词处理得到关键字集合是:“我想”、“生成”、“财务类”、“数据”、“报表”。
详细地,所述文档频率值idf的计算为:
进一步地,所述报表核心关键字tf-idf的计算方法为:
通过计算得到所述关键字集合内不同关键字的tf-idf值,选取最大的数值得到报表核心关键字。
s2、接收用户终端输入的权限信息,若所述权限信息无法通过预构建的报表存储数据库的安全验证,则重新接收用户终端输入的权限信息,若根据所述权限信息通过所述报表存储数据库的安全验证,对所述报表核心关键字进行绑定操作得到绑定核心关键字。
所述权限信息是在数据报表搜索的基础上,对相关信息进行权限操控,如预构建的报表存储数据库是财务存储数据库,为了财务存储数据库的安全性,则所述财务存储数据库只有财务人员才能进行数据报表搜索。
本发明另外一个较佳实施例中,在所述步骤s2之前,还包括:在所述报表存储数据库中搜索与所述报表核心关键字相对应的报表数据集,判断所述报表数据集在所述报表存储数据库中是否被设置权限,若所述报表数据集在所述报表存储数据库中已被设置权限,接收用户终端输入的权限信息,若所述报表数据集在所述报表存储数据库中未被设置权限,将所述报表数据集作为预构建的sql权限程序的参数,并运行所述sql权限程序,完成对所述报表数据集的设置权限操作。
详细地,所述sql权限程序是使用sql编程语言编写的权限程序,因为sql编程语言内置多种权限操作函数,如execute、references、delete等,可将所述报表数据集作为所述execute、所述references及所述delete等函数的函数参数,传递给所述execute、所述references及所述delete等函数后,直接运行sql编程语言内置的权限操作函数,完成对所述报表数据集的设置权限操作。
s3、根据所述绑定核心关键字,从所述预构建的报表存储数据库中搜索与所述绑定核心关键字相关联的报表并根据所述报表得到关联报表集。
较佳地,所述预构建的报表存储数据库是预先将不同类型的数据报表进行分类后所存储的地方,如mysql。所述不同类型的数据报表如财务报表、材料报表、管理系统报表等。
进一步地,如上述报表核心关键字是“财务”,根据“财务”关键字,在所述报表存储数据库搜索得到财务报表集。
s4、根据预设的兴趣计算方法对所述关联报表集进行分类,得到多个兴趣报表集,将所述多个兴趣报表集反馈给用户终端,完成数据报表搜索。
详细地,所述根据兴趣计算方法对所述关联报表集进行分类,包括:根据历史兴趣记录将所述关联报表集划分成一个或多个兴趣域,利用兴趣计算方法计算所述一个或多个兴趣域的兴趣值,根据所述兴趣值将所述关联报表集划分成多个兴趣报表集。
进一步地,如上述报表核心关键字是“财务”,根据“财务”关键字,在所述报表存储数据库搜索得到财务报表集,继续根据所述财务报表集在历史搜索记录中,最终用户最终出所述财务报表集内的哪几个财务报表,从而将所述财务报表集划分为一个或多个兴趣域。
进一步地,所述兴趣值的计算方法包括:
通过公式
其中,gij表示所述兴趣值,dik表示所述第i组兴趣域所包括的报表数据,djk表示所述第j组兴趣域所包括的报表数据,n为所述兴趣域的个数,h表示所述历史搜索记录,maxi,j∈h(dik∩djk)表示从所述历史搜索记录依次寻找与所述dik,djk报表数据相同的出现次数。
详细地,当计算出多个兴趣值时,通过遍历出兴趣值最高或前几个高的兴趣报表集反馈给用户。
详细地,所述根据关联报表集重新生成分组报表集包括:将所述关联报表集分成多个分表集,再将所述关联报表集与所述多个分表集建立一一对应关系,如企业经营管理的关联报表集下有现金流量分表、人事安排分表、外出报销表等,将所述关联报表集与所述多个分表集建立对应关系后,接收用户输入的分表搜索字,根据所述分表搜索字得到对应的分表集。
如上述用户输入“财务”关键字,经过s3、s4处理得到所述财务报表集,将所述财务报表表进一步细化得到多个分表集,如用户需要资产负债表,此时从所述多个分表集中导出资产总表集。
进一步地,若用户为接受所述多个兴趣报表集,根据所述多个兴趣报表集,将所述预先存储报表的数据库看做总兴趣报表集,将所述总兴趣报表集分成多个分兴趣报表集,再将所述总兴趣报表集与所述分兴趣报表集建立一一对应关系,如企业经营管理总报表下有现金流量分表、人员配置分表,将所述现金流量分表反馈给用户,若用户未选择所述现金流量分表,则将人员配置分表反馈给用户,依次类推完成所有的推荐。详细地,所述若用户接受所述多个兴趣报表集,完成数据报表搜索,包括:若用户接受所述多个兴趣报表集,根据所述多个兴趣报表集建立权重函数,并根据所述权重函数和所述多个兴趣报表集建立自相关函数,求解所述自相关函数得到多个兴趣报表集的相关值,将所述相关值和所述多个兴趣报表集输入至历史兴趣记录中,完成数据报表搜索。
较佳地,所述自相关函数为:
其中,r表示所述自相关函数值,x(i_set)表示所述权重函数,i_set表示所述兴趣报表集内的数据,ni_set表示在所述兴趣报表集内各兴趣报表所出现的次数,m表示所述用户输入次数,一般为1,n表示所述多个兴趣报表集的个数,k表示调节因子,用于协调和所述历史兴趣记录的计算匹配问题。
本发明还提供一种数据报表搜索装置。参照图2所示,为本发明一实施例提供的数据报表搜索装置的内部结构示意图。
在本实施例中,所述数据报表搜索装置1可以是pc(personalcomputer,个人电脑),或者是智能手机、平板电脑、便携计算机等终端设备,也可以是一种服务器等。该数据报表搜索装置1至少包括存储器11、处理器12,通信总线13,以及网络接口14。
其中,存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是数据报表搜索装置1的内部存储单元,例如该数据报表搜索装置1的硬盘。存储器11在另一些实施例中也可以是数据报表搜索装置1的外部存储设备,例如数据报表搜索装置1上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,存储器11还可以既包括数据报表搜索装置1的内部存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于数据报表搜索装置1的应用软件及各类数据,例如数据报表搜索程序01的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器12在一些实施例中可以是一中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行数据报表搜索程序01等。
通信总线13用于实现这些组件之间的连接通信。
网络接口14可选的可以包括标准的有线接口、无线接口(如wi-fi接口),通常用于在该装置1与其他电子设备之间建立通信连接。
可选地,该装置1还可以包括用户接口,用户接口可以包括显示器(display)、输入单元比如键盘(keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是led显示器、液晶显示器、触控式液晶显示器以及oled(organiclight-emittingdiode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在数据报表搜索装置1中处理的信息以及用于显示可视化的用户界面。
图2仅示出了具有组件11-14以及数据报表搜索程序01的数据报表搜索装置1,本领域技术人员可以理解的是,图1示出的结构并不构成对数据报表搜索装置1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
在图2所示的装置1实施例中,存储器11中存储有数据报表搜索程序01;处理器12执行存储器11中存储的数据报表搜索程序01时实现如下步骤:
步骤一、接收用户输入的报表搜索关键字,计算所述报表搜索关键字的词频值和文档频率值,根据所述词频值和所述文档频率值计算得到报表核心关键字。
本发明较佳实施例,如用户输入“我想生成财务类的数据报表”的报表搜索关键字,由于“我想”、“生成”、“数据报表”等词语对报表的生成没有实际的作用,对报表生成起作用的实际只有“财务”,因此需要从所述报表搜索关键字中提取报表核心关键字“财务”。
优选地,可使用批量接收多个用户输入的报表搜索关键字并进行打包的形式,这种打包批量接收的形式可提高整个发明的速度。如使用预先构建的报表搜索关键字接收系统接收用户输入的报表搜索关键字,所述报表搜索关键字接收系统包括物理层,访问层和数据采集层,通过所述数据采集层预先对多个用户输入的报表搜索关键字进行周期性的采集,在所述物理层中对千余条数据进行缓存,然后将缓存后的报表搜索关键字数据连接到所述访问层,在所述访问层中对报表搜索关键字数据进行打包得到报表搜索关键字数据包,同时设置传输协议并采取多线程机制传送所述报表搜索关键字数据包。
详细地,所述传输协议的设置如id标示、ip地址以及端口等。
详细地,所述计算所述报表搜索关键字的词频值和文档频率值,包括:对所述报表搜索关键字进行清洗及分词处理得到关键字集合,依次计算所述关键字集合内关键字的词频值,计算所述关键字集内各关键字在预设文档集合中出现的文档频率值。
其中,所述清洗包括去标点、去停用词。
所述词频值(tf)的计算方法为:
如上述“我想生成财务类的数据报表”,经过所述清洗及分词处理得到关键字集合是:“我想”、“生成”、“财务类”、“数据”、“报表”。
详细地,所述文档频率值idf的计算为:
进一步地,所述报表核心关键字tf-idf的计算方法为:
通过计算得到所述关键字集合内不同关键字的tf-idf值,选取最大的数值得到报表核心关键字。
步骤二、接收用户终端输入的权限信息,若所述权限信息无法通过预构建的报表存储数据库的安全验证,则重新接收用户终端输入的权限信息,若根据所述权限信息通过所述报表存储数据库的安全验证,对所述报表核心关键字进行绑定操作得到绑定核心关键字。
所述权限信息是在数据报表搜索的基础上,对相关信息进行权限操控,如预构建的报表存储数据库是财务存储数据库,为了财务存储数据库的安全性,则所述财务存储数据库只有财务人员才能进行数据报表搜索。
本发明另外一个较佳实施例中,在所述步骤二之前,还包括:在所述报表存储数据库中搜索与所述报表核心关键字相对应的报表数据集,判断所述报表数据集在所述报表存储数据库中是否被设置权限,若所述报表数据集在所述报表存储数据库中已被设置权限,接收用户终端输入的权限信息,若所述报表数据集在所述报表存储数据库中未被设置权限,将所述报表数据集作为预构建的sql权限程序的参数,并运行所述sql权限程序,完成对所述报表数据集的设置权限操作。
详细地,所述sql权限程序是使用sql编程语言编写的权限程序,因为sql编程语言内置多种权限操作函数,如execute、references、delete等,可将所述报表数据集作为所述execute、所述references及所述delete等函数的函数参数,传递给所述execute、所述references及所述delete等函数后,直接运行sql编程语言内置的权限操作函数,完成对所述报表数据集的设置权限操作。
步骤三、根据所述绑定核心关键字,从预构建的报表存储数据库中搜索与所述绑定核心关键字相关联的报表并根据所述报表得到关联报表集。
较佳地,所述预构建的报表存储数据库是预先将不同类型的数据报表进行分类后所存储的地方,如mysql。所述不同类型的数据报表如财务报表、材料报表、管理系统报表等。
进一步地,如上述报表核心关键字是“财务”,根据“财务”关键字,在所述报表存储数据库搜索得到财务报表集。
步骤四、根据预设的兴趣计算方法对所述关联报表集进行分类,得到多个兴趣报表集,将所述多个兴趣报表集反馈给用户终端,完成数据报表搜索。
详细地,所述根据兴趣计算方法对所述关联报表集进行分类,包括:根据历史兴趣记录将所述关联报表集划分成一个或多个兴趣域,利用兴趣计算方法计算所述一个或多个兴趣域的兴趣值,根据所述兴趣值将所述关联报表集划分成多个兴趣报表集。
进一步地,如上述报表核心关键字是“财务”,根据“财务”关键字,在所述报表存储数据库搜索得到财务报表集,继续根据所述财务报表集在历史搜索记录中,最终用户最终出所述财务报表集内的哪几个财务报表,从而将所述财务报表集划分为一个或多个兴趣域。
进一步地,所述兴趣值的计算方法包括:
通过公式
其中,gij表示所述兴趣值,dik表示所述第i组兴趣域所包括的报表数据,djk表示所述第j组兴趣域所包括的报表数据,n为所述兴趣域的个数,h表示所述历史搜索记录,maxi,j∈h(dik∩djk)表示从所述历史搜索记录依次寻找与所述dik,djk报表数据相同的出现次数。
详细地,当计算出多个兴趣值时,通过遍历出兴趣值最高或前几个高的兴趣报表集反馈给用户。
详细地,所述根据关联报表集重新生成分组报表集包括:将所述关联报表集分成多个分表集,再将所述关联报表集与所述多个分表集建立一一对应关系,如企业经营管理的关联报表集下有现金流量分表、人事安排分表、外出报销表等,将所述关联报表集与所述多个分表集建立对应关系后,接收用户输入的分表搜索字,根据所述分表搜索字得到对应的分表集。
如上述用户输入“财务”关键字,经过步骤三、步骤四处理得到所述财务报表集,将所述财务报表表进一步细化得到多个分表集,如用户需要资产负债表,此时从所述多个分表集中导出资产总表集。
进一步地,若用户为接受所述多个兴趣报表集,根据所述多个兴趣报表集,将所述预先存储报表的数据库看做总兴趣报表集,将所述总兴趣报表集分成多个分兴趣报表集,再将所述总兴趣报表集与所述分兴趣报表集建立一一对应关系,如企业经营管理总报表下有现金流量分表、人员配置分表,将所述现金流量分表反馈给用户,若用户未选择所述现金流量分表,则将人员配置分表反馈给用户,依次类推完成所有的推荐。
详细地,所述若用户接受所述多个兴趣报表集,完成数据报表搜索,包括:若用户接受所述多个兴趣报表集,根据所述多个兴趣报表集建立权重函数,并根据所述权重函数和所述多个兴趣报表集建立自相关函数,求解所述自相关函数得到多个兴趣报表集的相关值,将所述相关值和所述多个兴趣报表集输入至历史兴趣记录中,完成数据报表搜索。
较佳地,所述自相关函数为:
其中,r表示所述自相关函数值,x(i_set)表示所述权重函数,i_set表示所述兴趣报表集内的数据,ni_set表示在所述兴趣报表集内各兴趣报表所出现的次数,m表示所述用户输入次数,一般为1,n表示所述多个兴趣报表集的个数,k表示调节因子,用于协调和所述历史兴趣记录的计算匹配问题。
可选地,在其他实施例中,数据报表搜索程序还可以被分割为一个或者多个模块,一个或者多个模块被存储于存储器11中,并由一个或多个处理器(本实施例为处理器12)所执行以完成本发明,本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段,用于描述数据报表搜索程序在数据报表搜索装置中的执行过程。
例如,参照图3所示,为本发明数据报表搜索装置一实施例中的数据报表搜索程序的程序模块示意图,该实施例中,所述数据报表搜索程序可以被分割为报表核心关键字计算模块10、数据权限验证模块20、报表匹配模块30、报表划分及反馈模块40示例性地:
所述报表核心关键字计算模块10用于:接收用户终端输入的报表搜索关键字,计算所述报表搜索关键字的词频值和文档频率值,根据所述词频值和所述文档频率值计算得到报表核心关键字。
数据权限验证模块20用于:接收用户终端输入的权限信息,若根据所述权限信息无法通过预构建的报表存储数据库的安全验证,则重新接收用户终端输入的权限信息,若根据所述权限信息通过所述报表存储数据库的安全验证,对所述报表核心关键字进行绑定操作得到绑定核心关键字。
所述报表匹配模块30用于:根据所述绑定核心关键字,从预构建的报表存储数据库中搜索与所述绑定核心关键字相关联的报表并根据所述报表得到关联报表集。
所述报表划分及反馈模块40用于:根据预设的兴趣计算方法对所述关联报表集进行分类,得到多个兴趣报表集,将所述多个兴趣报表集反馈给用户终端,完成数据报表搜索。
上述报表核心关键字计算模块10、数据权限验证模块20、报表匹配模块30、报表划分及反馈模块40等程序模块被执行时所实现的功能或操作步骤与上述实施例大体相同,在此不再赘述。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有数据报表搜索程序,所述数据报表搜索程序可被一个或多个处理器执行,以实现如下操作:
接收用户终端输入的报表搜索关键字,计算所述报表搜索关键字的词频值和文档频率值,根据所述词频值和所述文档频率值计算得到报表核心关键字。
接收用户终端输入的权限信息,若根据所述权限信息无法通过预构建的报表存储数据库的安全验证,则重新接收用户终端输入的权限信息,若根据所述权限信息通过所述报表存储数据库的安全验证,对所述报表核心关键字进行绑定操作得到绑定核心关键字。
根据所述绑定核心关键字,从预构建的报表存储数据库中搜索与所述绑定核心关键字相关联的报表并根据所述报表得到关联报表集。
根据预设的兴趣计算方法对所述关联报表集进行分类,得到多个兴趣报表集,将所述多个兴趣报表集反馈给用户终端,完成数据报表搜索。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
1.一种数据报表搜索方法,其特征在于,所述方法包括:
接收用户终端输入的报表搜索关键字,计算所述报表搜索关键字的词频值和文档频率值,根据所述词频值和所述文档频率值计算得到报表核心关键字;
接收用户终端输入的权限信息,若所述权限信息通过预构建的报表存储数据库的安全验证,则对所述报表核心关键字进行绑定操作得到绑定核心关键字;
根据所述绑定核心关键字,从所述报表存储数据库中搜索与所述绑定核心关键字相关联的报表并根据所述报表得到关联报表集;
根据预设的兴趣计算方法对所述关联报表集进行分类,得到多个兴趣报表集,将所述多个兴趣报表集反馈给用户终端,完成数据报表搜索。
2.如权利要求1所述的数据报表搜索方法,其特征在于,在所述接收用户终端输入的权限信息之前还包括:
在所述报表存储数据库中搜索与所述报表核心关键字相对应的报表数据集;
判断所述报表数据集在所述报表存储数据库中是否被设置权限,若所述报表数据集在所述报表存储数据库中已被设置权限,执行所述接收用户终端输入的权限信息的步骤;
若所述报表数据集在所述报表存储数据库中未被设置权限,将所述报表数据集作为预构建的sql权限程序的参数,并运行所述sql权限程序,完成对所述报表数据集的设置权限操作。
3.如权利要求1所述的数据报表搜索方法,其特征在于,所述根据预设的兴趣计算方法对所述关联报表集进行分类,得到多个兴趣报表集,包括:
根据所述报表存储数据库的历史兴趣记录,将所述关联报表集划分成一个或多个兴趣域;
利用预设的兴趣计算方法计算所述一个或多个兴趣域的兴趣值;
根据所述兴趣值将所述关联报表集划分成多个兴趣报表集。
4.如权利要求3所述的数据报表搜索方法,其特征在于,所述兴趣计算方法包括:
通过公式
其中,gij表示所述兴趣值,dik表示所述第i组兴趣域所包括的报表数据,djk表示所述第j组兴趣域所包括的报表数据,n为所述兴趣域的个数,h表示所述历史搜索记录,maxi,j∈h(dik∩djk)表示从所述历史搜索记录依次寻找与所述dik,djk报表数据相同的出现次数。
5.如权利要求1至4中任意一项所述的数据报表搜索方法,其特征在于,在所述将所述多个兴趣报表集反馈给用户终端之后还包括:
若接收到用户终端反馈的兴趣报表集接受信息,则根据所述多个兴趣报表集建立权重函数;
并根据所述权重函数和所述多个兴趣报表集建立自相关函数;
求解所述自相关函数得到多个兴趣报表集的相关值,将所述相关值和所述多个兴趣报表集输入至所述报表存储数据库的历史兴趣记录中。
6.一种数据报表搜索装置,其特征在于,所述装置包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的数据报表搜索程序,所述数据报表搜索程序被所述处理器执行时实现如下步骤:
接收用户终端输入的报表搜索关键字,计算所述报表搜索关键字的词频值和文档频率值,根据所述词频值和所述文档频率值计算得到报表核心关键字;
接收用户终端输入的权限信息,若所述权限信息通过预构建的报表存储数据库的安全验证,则对所述报表核心关键字进行绑定操作得到绑定核心关键字;
根据所述绑定核心关键字,从所述报表存储数据库中搜索与所述绑定核心关键字相关联的报表并根据所述报表得到关联报表集;
根据预设的兴趣计算方法对所述关联报表集进行分类,得到多个兴趣报表集,将所述多个兴趣报表集反馈给用户终端,完成数据报表搜索。
7.如权利要求6所述的数据报表搜索装置,其特征在于,在所述接收用户终端输入的权限信息之前还包括:
在所述报表存储数据库中搜索与所述报表核心关键字相对应的报表数据集;
判断所述报表数据集在所述报表存储数据库中是否被设置权限,若所述报表数据集在所述报表存储数据库中已被设置权限,执行所述接收用户终端输入的权限信息的步骤;
若所述报表数据集在所述报表存储数据库中未被设置权限,将所述报表数据集作为预构建的sql权限程序的参数,并运行所述sql权限程序,完成对所述报表数据集的设置权限操作。
8.如权利要求6所述的数据报表搜索装置,其特征在于,所述根据预设的兴趣计算方法对所述关联报表集进行分类,得到多个兴趣报表集,包括:
根据所述报表存储数据库的历史兴趣记录,将所述关联报表集划分成一个或多个兴趣域;
利用预设的兴趣计算方法计算所述一个或多个兴趣域的兴趣值;
根据所述兴趣值将所述关联报表集划分成多个兴趣报表集。
9.一种电子设备,其特征在于,该电子设备包括一个或者多个功能模块,该功能模块存储在所述数据处理设备的存储器中,并由所述数据处理设备的处理器执行时实现如权利要求1至5中任一项所述的数据报表搜索方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有数据报表搜索程序,所述数据报表搜索程序可被一个或者多个处理器执行,以实现如权利要求1至5中任一项所述的数据报表搜索方法的步骤。
技术总结