一种基于移动终端应用类的数据处理方法及装置与流程

文档序号:18191484发布日期:2019-07-17 05:36阅读:182来源:国知局
一种基于移动终端应用类的数据处理方法及装置与流程

本发明涉及数据处理领域,特别涉及一种基于移动终端应用类的数据处理方法及装置。



背景技术:

目前在对移动终端(例如具有安卓系统的智能手机)应用类进行数据处理,特别是在进行数据的检索等操作时,通常使用模糊查询的方式进行检索等操作,例如进行全表扫描的方式进行,该数据处理方法由于匹配算法本身的原因,模糊查询的字段长度越大,模糊查询效率越低,这样就大大地增加了运算的负担,往往要耗费移动终端的cpu和内存的大量资源,从而引起应用类(如应用程序)卡顿,用户体验差。



技术实现要素:

本发明实施例的目的在于提供一种基于移动终端应用类的数据处理方法及装置,该方法能够有效提高数据处理时的检索速度,改善用户体验。

为了解决上述技术问题,本发明实施例采用了如下技术方案:一种基于移动终端应用类的数据处理方法,应用在移动终端上,所述方法包括:

针对所述移动终端建立数据库;

创建与所述数据库中的信息表相对应的虚拟表,所述虚拟表存储有所述信息表中关键字段的相应信息;

当进行数据检索时,根据所述关键字段对所述虚拟表进行检索,以从所述信息表中调取相应数据。

作为优选,在创建与所述数据库中的信息表相对应的虚拟表后,所述方法还包括:

将所述虚拟表与信息表进行实时关联,以根据所述信息表的变化及时更新所述虚拟表。

作为优选,所述的创建与所述数据库中的信息表相对应的虚拟表包括:

在所述数据库中分类创建至少一个所述信息表;

在所述信息表中提取关键字段,并建立所述关键字段与该关键字段对应的数据之间的映射关系;

根据所述关键字段和映射关系建立所述虚拟表。

作为优选,所述的根据所述关键字段对所述虚拟表进行检索,以从所述信息表中调取相应数据包括:

使用所述关键字段对所述虚拟表进行检索;

根据所述关键字段在所述虚拟表中获取所述映射关系;

通过所述映射关系从所述信息表中获取相应数据。

作为优选,所述的针对所述移动终端建立数据库具体为:针对所述移动终端的至少一个应用程序建立数据库。

本发明实施例还提供了一种基于移动终端应用类的数据处理装置,应用在移动终端上,针对所述移动终端建立有数据库,所述装置包括相互连接的创建模块和检索模块;

所述创建模块与数据库连接,所述创建模块配置为创建与所述数据库中的信息表相对应的虚拟表,所述虚拟表存储有所述信息表中关键字段的相应信息;

所述检索模块与数据库连接,所述检索模块配置为当进行数据检索时,根据所述关键字段对所述虚拟表进行检索,以从所述信息表中调取相应数据。

作为优选,所述装置还包括更新模块;

所述更新模块与数据库连接,所述更新模块配置为将所述虚拟表与信息表进行实时关联,以根据所述信息表的变化及时更新所述虚拟表。

作为优选,所述创建模块包括分类单元,提取单元和建立单元;

所述分类单元配置为在所述数据库中分类创建至少一个所述信息表;

所述提取单元与建立单元连接,所述提取单元配置为在所述信息表中提取关键字段,以使所述建立单元建立所述关键字段与该关键字段的相关信息之间的映射关系,并根据所述关键字段和映射关系建立所述虚拟表。

作为优选,所述检索模块包括获取单元和检索单元;

所述检索单元配置为使用所述关键字段对所述虚拟表进行检索;

所述获取单元分别与所述检索单元和数据库连接,所述获取单元配置为根据所述关键字段在所述虚拟表中获取所述映射关系,并通过所述映射关系从所述信息表中获取相应数据。

作为优选,所述数据库为针对所述移动终端的至少一个应用程序建立的数据库。

本发明实施例的有益效果在于:该方法能够有效提高数据处理时的检索速度,并能够方便的进行数据的检索,查询或删除等操作,还能够提高移动设备应用类的响应速度,改善用户体验。

附图说明

图1为本发明实施例的基于移动终端应用类的数据处理方法的流程图;

图2为本发明实施例的创建与数据库中的信息表相对应的虚拟表的流程图;

图3为本发明实施例的从信息表中调取相应数据的流程图;

图4为本发明实施例的基于移动终端应用类的数据处理装置的连接关系示意图。

附图标记说明

1-数据处理装置2-创建模块3-检索模块

4-更新模块5-虚拟表6-数据库

具体实施方式

此处参考附图描述本发明的各种方案以及特征。

应理解的是,可以对此处发明的实施例做出各种修改。因此,上述说明书不应该视为限制,而仅是作为实施例的范例。本领域的技术人员将想到在本发明的范围和精神内的其他修改。

包含在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且与上面给出的对本发明的大致描述以及下面给出的对实施例的详细描述一起用于解释本发明的原理。

通过下面参照附图对给定为非限制性实例的实施例的优选形式的描述,本发明的这些和其它特性将会变得显而易见。

还应当理解,尽管已经参照一些具体实例对本发明进行了描述,但本领域技术人员能够确定地实现本发明的很多其它等效形式,它们具有如权利要求所述的特征并因此都位于借此所限定的保护范围内。

当结合附图时,鉴于以下详细说明,本发明的上述和其他方面、特征和优势将变得更为显而易见。

此后参照附图描述本发明的具体实施例;然而,应当理解,所发明的实施例仅仅是本发明的实例,其可采用多种方式实施。熟知和/或重复的功能和结构并未详细描述以避免不必要或多余的细节使得本发明模糊不清。因此,本文所发明的具体的结构性和功能性细节并非意在限定,而是仅仅作为权利要求的基础和代表性基础用于教导本领域技术人员以实质上任意合适的详细结构多样地使用本发明。

本说明书可使用词组“在一种实施例中”、“在另一个实施例中”、“在又一实施例中”或“在其他实施例中”,其均可指代根据本发明的相同或不同实施例中的一个或多个。

本发明实施例的一种基于移动终端应用类的数据处理方法,应用在移动终端上,应用类可以为安装在移动终端上的各种类型的程序,例如移动终端的操作系统,移动终端的各种类型的应用程序等,该数据处理方法包括:

s1,针对移动终端建立数据库6。该数据库6可以存储关于移动终端的各种数据,也可以将移动终端保存的数据存储在该数据库6中,其中移动终端可以安装多种操作系统,如安卓操作系统。在一个实施例中,可以根据存储数据的类型建立多个相对应的数据库6,例如,针对移动终端保存的电影数据和文档数据分别建立相应的数据库6,在进行数据处理时,可以根据处理对象而有目的的调用相应的数据库6中的数据并进行处理。

s2,创建与数据库6中的信息表相对应的虚拟表5,虚拟表5存储有信息表中关键字段的相应信息。虚拟表5是指在物理上不存在,但在逻辑上存在的表。在一个实施例中,虚拟表5是一种通过查询语句查询常量表达式形成的一个结果集,与数据库6中的视图、物理表、临时表类似,对该虚拟表5的操作方式可以类似于对普通表的操作,虚拟表5具有操作时运行速度快,方便使用的特点。在一个实施例中,虚拟表5的数据和表结构都储存在内存之中,退出时,其所占的空间会自动被释放,节省物理存储空间。在一个实施例中一个数据库6可以将数据分类存储在多个信息表,例如建立一个视频应用程序的数据库6(cantv.db),对于该数据库6来说,可以将该视频应用程序的所有数据分别存储在用户信息表(userinfo),影片信息表(videoinfo),观看记录信息表(watchrecordinfo),收藏信息表(collectinfo)等,每个信息表中存储的数据为同类型。在本实施例中,虚拟表5存储有信息表中关键字段的相应信息,并通过该关键字段的相应信息建立与信息表之间的关系,例如虚拟表5中存储有影片的导演的姓名及其他信息,那么该虚拟表5可以通过该影片的导演的姓名及其他信息与影片信息表(videoinfo)建立关系。此外在一个实施例中,该虚拟表5可以被创建在移动设备上。

s3,当进行数据检索时,根据关键字段对虚拟表5进行检索,以从信息表中调取相应数据。具体来说,在根据关键字段对虚拟表5进行检索时可以快速的从虚拟表5中获取与该关键字段相对应的关系,该关系可以以表的形式,预设检索方案的形式或数据链接的形式体现。通过该关系可以从相应的信息表中调用相应数据,例如虚拟表5中的关键字段为影片的导演的姓名及其他信息,则可以通过上述关键字段从影片信息表(videoinfo)中获取所有的与该关键字段有联系的数据,如该导演还拍摄了其他影片的名称,该导演的获奖情况等信息。

在本发明的一个实施例中,在创建与数据库6中的信息表相对应的虚拟表5后,该基于移动终端应用类的数据处理方法还包括:将虚拟表5与信息表进行实时关联,以根据信息表的变化及时更新虚拟表5。在一个实施例中,可以以预定时间间隔对信息表的是否发生变化进行侦测,当然该预定时间间隔可以根据实际使用情况进行修改,当发现信息表中的数据发生了变化则获取数据变化的相应信息,以更新数据。在一个实施例中,针对虚拟表(videoinfo_search)分别设置添加触发器(vir_videoinfo_update),删除触发器(vir_videoinfo_delete)和/或插入触发器(vir_videoinfo_insert)等,触发器不需手动启动,而是由事件来触发,触发器内可以设置复杂的数据库6语言,用于强制服从复杂的业务规则或要求。当侦测到信息表中的数据发生了变化,则会触发上述触发器进行工作,根据数据变化的相应信息对虚拟表5进行添加,删除和/或插入等操作,例如,当影片信息表(videoinfo)有内容更新的时候,添加触发器(vir_videoinfo_update)立即添加相应数据到虚拟表videoinfo_search;当影片信息表(videoinfo)删除数据的时候,删除触发器(vir_videoinfo_delete)被触发同步删除videoinfo_search中的相应记录;当影片信息表(videoinfo)有数据插入时,插入触发器(vir_videoinfo_insert)被触发将虚拟表videoinfo_search中插入相应数据,使得虚拟表5与信息表进行实时关联。

在本发明的一个实施例中,所述的创建与数据库6中的信息表相对应的虚拟表5包括:

s21,在数据库6中分类创建至少一个信息表。多数情况下会根据数据库6中数据的类型创建多个信息表,例如在名称为cantv.db的数据库6中创建用户信息表(userinfo),影片信息表(videoinfo),观看记录信息表(watchrecordinfo)和收藏信息表(collectinfo)等,信息表之间可以有数据的交叉,并且交叉数据的相关信息可以被预先记录。

s22,在信息表中提取关键字段,并建立关键字段与该关键字段对应的数据之间的映射关系。该关键字段可以为能够进行全文检索的字段,关键字段对应的数据可以分布在该信息表中多处位置,而映射关系可以为多对一或一对多的关系,在本实施例中建立关键字段与该关键字段对应的数据之间一对多的映射关系,通过关键字段可以获取在信息表中的对应的多个数据。

s23,根据关键字段和映射关系建立虚拟表5。建立的虚拟表5能够通过关键字段和映射关系与信息表建立联系。在一个实施例中,虚拟表5可以根据关键字段和映射关系建立较小的数据结构,使得更加容易对其进行数据的操作。在另一个实施例中,对关键字段和映射关系建立优先级,以使得通过虚拟表5来获取信息表中的数据时可以根据上述的优先级来优先获取相应的数据。例如通过导演的姓名可以优先的获取其导演的影片的信息,而对于非优先的该导演的小道消息可以随后再获取。

在本发明的一个实施例中,所述的根据关键字段对虚拟表5进行检索,以从信息表中调取相应数据的步骤包括:

s31,使用关键字段对虚拟表5进行检索。该检索方式最为直接有效,并且关键字段为相应数据的关键信息,由关键字段进行检索可以容易的将所有的相关数据检索出来。

s32,根据关键字段在虚拟表5中获取映射关系。关键字具有相应的映射关系,该映射关系可以以表的形式或链接的形式等体现,该映射关系可以为一对一,一对多,多对一或多对多等关系,通过该映射关系可以获取相应的数据,也可以根据数据的变化通过该映射关系对虚拟表5进行相应的更新操作。

s33,通过映射关系从信息表中获取相应数据。该映射关系可以以表的形式,预设检索方案的形式或数据链接的形式体现。在一个实施例中,对于上述的预设检索方案具体来说,其可以是预设的数据库命令集,通过该数据库命令集可以对获取方式进行操作或限定。例如,用户通过关键字对数据库6进行检索,可以对关键字进行形式上的更改,或检索目标的限定等操作以优化检索过程,如根据影片名称从影片信息表(videoinfo)进行检索,还可以根据已经获取的数据记录的信息进行再次检索,如根据已经检索出来的影片再次检索同名的其他影片。

在本发明的一个实施例中,所述的针对移动终端建立数据库6具体为:针对移动终端的至少一个应用程序建立数据库6。移动终端上可以安装数量众多的应用程序,针对至少一个应用程序建立数据库6可以避免建立过程中逻辑上的混乱,而且在对数据进行操作时可以有针对性,并且容易对数据进行分类生成多个相应的信息表,从而达到快速对数据进行操作的目的。

此外,在一个实施例中,在根据关键字段对虚拟表5进行检索时使用match语句。不需要使用like语句,从而避免进行长时间的检索等待。例如:

在进行全表匹配时使用:select*fromvideoinfo_searchwherevideoinfo_searchmatch‘需要匹配的字段’;

在进行按列匹配时使用:select*fromvideoinfo_searchwhere需要匹配的列名match‘需要匹配的字段’。

本发明实施例还提供了一种基于移动终端应用类的数据处理装置1,应用在移动终端上,针对移动终端建立有数据库6,该数据库6可以存储关于移动终端的各种数据,也可以将移动终端保存的数据存储在该数据库6中,其中移动终端可以安装多种操作系统,如安卓操作系统。在一个实施例中,可以根据存储数据的类型建立多个相对应的数据库6,例如,针对移动终端保存的电影数据和文档数据分别建立相应的数据库6,在进行数据处理时,可以根据处理对象而有目的的调用相应的数据库6中的数据并进行处理。

该数据处理装置1包括相互连接的创建模块2和检索模块3。

创建模块2与数据库6连接,创建模块2配置为创建与数据库6中的信息表相对应的虚拟表5,虚拟表5存储有信息表中关键字段的相应信息。虚拟表5是指在物理上不存在,但在逻辑上存在的表。在一个实施例中,创建模块2创建的虚拟表5是一种通过查询语句查询常量表达式形成的一个结果集,与数据库6中的视图、物理表、临时表类似,对该虚拟表5的操作方式可以类似于对普通表的操作,虚拟表5具有操作时运行速度快,方便使用的特点。在一个实施例中,虚拟表5的数据和表结构都储存在内存之中,退出时,其所占的空间会自动被释放,节省物理存储空间。在一个实施例中一个数据库6可以将数据分类存储在多个信息表,例如建立一个视频应用程序的数据库6(cantv.db),对于该数据库6来说,可以将该视频应用程序的所有数据分别存储在用户信息表(userinfo),影片信息表(videoinfo),观看记录信息表(watchrecordinfo),收藏信息表(collectinfo)等,每个信息表中存储的数据为同类型。在本实施例中,创建模块2创建的虚拟表5存储有信息表中关键字段的相应信息,并通过该关键字段的相应信息建立与信息表之间的关系,例如虚拟表5中存储有影片的导演的姓名及其他信息,那么该虚拟表5可以通过该影片的导演的姓名及其他信息与影片信息表(videoinfo)建立关系。此外在一个实施例中,该虚拟表5可以被创建模块2创建在移动设备上。

检索模块3与数据库6连接,检索模块3配置为当进行数据检索时,根据关键字段对虚拟表5进行检索,以从信息表中调取相应数据。具体来说,检索模块3在根据关键字段对虚拟表5进行检索时可以快速的从虚拟表5中获取与该关键字段相对应的关系,该关系可以以表的形式,预设检索方案的形式或数据链接的形式体现。通过该关系检索模块3可以从相应的信息表中调用相应数据,例如虚拟表5中的关键字段为影片的导演的姓名及其他信息,则检索模块3可以通过上述关键字段从影片信息表(videoinfo)中获取所有的与该关键字段有联系的数据,如该导演还拍摄了其他影片的名称,该导演的获奖情况等信息。

在本发明的一个实施例中,该数据处理装置1还包括更新模块4;更新模块4与数据库6连接,更新模块4配置为将虚拟表5与信息表进行实时关联,以根据信息表的变化及时更新虚拟表5。

在一个实施例中,更新模块4可以以预定时间间隔对信息表的是否发生变化进行侦测,当然该预定时间间隔可以根据实际使用情况进行修改,当更新模块4发现信息表中的数据发生了变化则获取数据变化的相应信息,以更新数据。在一个实施例中,更新模块4中针对虚拟表(videoinfo_search)分别设置添加触发器(vir_videoinfo_update),删除触发器(vir_videoinfo_delete)和/或插入触发器(vir_videoinfo_insert)等,触发器不需手动启动,而是由事件来触发,触发器内可以设置复杂的数据库6语言,用于强制服从复杂的业务规则或要求。当更新模块4侦测到信息表中的数据发生了变化,则会触发上述触发器进行工作,根据数据变化的相应信息对虚拟表5进行添加,删除和/或插入等操作,例如,当影片信息表(videoinfo)有内容更新的时候,添加触发器(vir_videoinfo_update)立即添加相应数据到虚拟表videoinfo_search;当影片信息表(videoinfo)删除数据的时候,删除触发器(vir_videoinfo_delete)被触发同步删除videoinfo_search中的相应记录;当影片信息表(videoinfo)有数据插入时,插入触发器(vir_videoinfo_insert)被触发将虚拟表videoinfo_search中插入相应数据,使得虚拟表5与信息表进行实时关联。

在本发明的一个实施例中,创建模块2包括分类单元,提取单元和建立单元。

分类单元配置为在数据库6中分类创建至少一个信息表。多数情况下分类单元会根据数据库6中数据的类型创建多个信息表,例如在名称为cantv.db的数据库6中创建用户信息表(userinfo),影片信息表(videoinfo),观看记录信息表(watchrecordinfo)和收藏信息表(collectinfo)等,分类单元创建的信息表之间可以有数据的交叉,并且交叉数据的相关信息可以被预先记录。

提取单元与建立单元连接,提取单元配置为在信息表中提取关键字段,以使建立单元建立关键字段与该关键字段的相关信息之间的映射关系,并根据关键字段和映射关系建立虚拟表5。提取单元提取的关键字段可以为能够进行全文检索的字段,关键字段对应的数据可以分布在该信息表中多处位置,而映射关系可以为多对一或一对多的关系,在本实施例中建立单元建立关键字段与该关键字段对应的数据之间一对多的映射关系,通过关键字段可以获取在信息表中的对应的多个数据。在一个实施例中,建立单元可以根据关键字段和映射关系对虚拟表5建立较小的数据结构,使得更加容易对其进行数据的操作。在另一个实施例中,建立单元对关键字段和映射关系建立优先级,以使得通过虚拟表5来获取信息表中的数据时可以根据上述的优先级来优先获取相应的数据。例如通过导演的姓名可以优先的获取其导演的影片的信息,而对于非优先的该导演的小道消息可以随后再获取。

在本发明的一个实施例中,检索模块3包括获取单元和检索单元;

检索单元配置为使用关键字段对虚拟表5进行检索。该检索方式最为直接有效,并且关键字段为相应数据的关键信息,由关键字段进行检索可以容易的将所有的相关数据检索出来。

获取单元分别与检索单元和数据库6连接,获取单元配置为根据关键字段在虚拟表5中获取映射关系,并通过映射关系从信息表中获取相应数据。关键字具有相应的映射关系,该映射关系可以以表的形式或链接的形式等体现,该映射关系可以为一对一,一对多,多对一或多对多等关系,获取单元通过该映射关系可以获取相应的数据,更新模块4也可以根据数据的变化通过该映射关系对虚拟表5进行相应的更新操作。该映射关系可以以表的形式,预设检索方案的形式或数据链接的形式体现。在一个实施例中,对于上述的预设检索方案具体来说,其可以是预设的数据库命令集,获取单元通过该数据库命令集可以对获取方式进行操作或限定。例如,用户通过关键字对数据库6进行检索,可以对关键字进行形式上的更改,或检索目标的限定等操作以优化检索过程,如根据影片名称从影片信息表(videoinfo)进行检索,还可以根据已经获取的数据记录的信息进行再次检索,如根据已经检索出来的影片再次检索同名的其他影片。

在本发明的一个实施例中,数据库6为针对移动终端的至少一个应用程序建立的数据库6。移动终端上可以安装数量众多的应用程序,针对至少一个应用程序建立数据库6可以避免建立过程中逻辑上的混乱,而且在对数据进行操作时可以有针对性,并且容易对数据进行分类生成多个相应的信息表,从而达到快速对数据进行操作的目的。

此外,在一个实施例中,在根据关键字段对虚拟表5进行检索时使用match语句。不需要使用like语句,从而避免进行长时间的检索等待。例如:

在进行全表匹配时使用:select*fromvideoinfo_searchwherevideoinfo_searchmatch‘需要匹配的字段’;

在进行按列匹配时使用:select*fromvideoinfo_searchwhere需要匹配的列名match‘需要匹配的字段’。

以上实施例仅为本发明的示例性实施例,不用于限制本发明,本发明的保护范围由权利要求书限定。本领域技术人员可以在本发明的实质和保护范围内,对本发明做出各种修改或等同替换,这种修改或等同替换也应视为落在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1