基于指标的数据流统计方法、服务器及存储介质与流程

文档序号:16609081发布日期:2019-01-14 21:25阅读:133来源:国知局
基于指标的数据流统计方法、服务器及存储介质与流程

本发明涉及数据统计领域,尤其涉及一种基于指标的数据流统计方法、服务器及存储介质。



背景技术:

随着移动网络的发展,传统的性能统计对象,已经不能满足企业用户进行精细化运营的要求,应运而生的用户行为分析成为企业用户的关注目标和提高赢利能力的基础。用户行为分析可以通过对用户的事件日志和媒体报文内容进行统计,这些事件日志和媒体报文所包含的内容远远超过传统的性能统计对象,在事件日志和媒体报文的基础上进行统计和分析,能够对系统性能、用户行为等一系列指标进行深层分析,获得更有价值的信息。

在用户行为的分析应用中,企业用户需要能够从多个维度或组合维度、多指标对用户行为进行分析。

现有技术中以单个用户的行为为基础进行逐一统计和分析数据工作,不仅繁琐,而且导致分析效率低。



技术实现要素:

本发明的目的是针对上述现有技术存在的缺陷,提供一种基于指标的数据流统计方法、服务器及存储介质。

本发明采用的技术方案是,首先提供一种基于指标的数据流统计方法,所述方法包括:

从指标信息中获取目标指标信息;

识别提取所述目标指标信息中的度量信息,根据所述目标指标度量信息匹配单个属性的维度,形成指标维度组合;

通过指标维度组合从多个数据集市中申请维度指标结果表进行交叉比对,获取交叉维度指标结果表。

优选的,所述根据所述目标指标的度量信息匹配单个属性的维度,形成指标维度组合包括:

根据所述目标指标度量信息与维度的属性相关度,对维度进行筛选匹配,并配置相应的优先级;

将匹配到的维度与所述目标指标进行关联,形成指标维度组合,所得指标维度组合根据维度的优先级进行优先级再配置。通过所述目标指标度量信息与维度的属性相关度来对维度进行筛选匹配,可以极大减少对维度的筛选工作,从而提高匹配速度。

优选的,所述根据所述目标指标度量信息与维度的属性相关度,对维度进行筛选匹配还包括:

根据所述维度与粒度的选取热度,按热度相关为维度匹配粒度。按粒度的选取热度进行匹配,选出热度高的粒度,可以提高粒度的匹配速度。

优选的,所述将匹配到的维度与所述目标指标进行关联,形成指标维度组合还包括:

将所述维度的粒度关联到所述指标维度组合。将粒度关联到所述指标维度组合中,使得指标数据可以被维度更好的描述。

优选的,所述通过指标维度组合从数据集市中申请维度指标结果表之前,所述方法还包括:

从数据仓库中筛选有效数据构建多个数据集市。构建数据集市,可以直接通过数据集市进行数据提取,以数据集市做为数据中转,可以提高数据提取的速度,并极大增加了数据提取的效率及精度。

优选的,所述从数据仓库中筛选有效数据构建多个数据集市包括:

通过维度的属性对所述数据仓库中的数据进行筛选,进而筛选出构建数据集市所需的事实表及维度表,根据筛选出的事实表及维度表构建第一数据集市。可以在所述事实表中提取所述目标指标的指标数据,可以维度表中提取所述维度的维度数据。

通过维度的优先级对所述数据仓库中的数据进行筛选,进而筛选出构建数据集市所需的事实表及维度表,根据筛选出的事实表及维度表构建第二数据集市。

优选的,对数据集市中的数据进行管理包括事实表管理和维度表管理。

优选的,根据不同维度属性及指标信息在所述数据集市中预设多个维度指标结果表。所述多个维度指标结果表对应多个维度指标组合,将维度指标结果表预设好后,可以根据维度指标组合直接进行调用,提高了申请结果表的速度。

其次,还提供一种服务器,包括处理器及存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或所述指令集由所述处理器加载并执行以实现如前述任一项所述的基于指标的数据流统计方法。

最后,还提供一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或所述指令集由所述处理器加载并执行以实现如前述任一项所述的基于指标的数据流统计方法。

与现有技术相比,本发明至少具有以下有益效果:本发明通过为目标指标匹配维度,形成指标维度组合,从根据指标维度组合在数据集市中申请维度指标结果表,对申请到的维度指标表进行交叉聚合,在提高申请维度结果表效率的前提下,得到精度更高的维度指标结果表。

附图说明

图1为本发明实施例的实施环境示意图;

图2为本发明实施例的方法流程图;

图3为本发明实施例的匹配维度的方法流程图。

具体实施方式

下面结合附图和实施例对本发明做进一步说明。

本发明首先提供一种基于指标的数据流统计方法、服务器及存储介质。

如图1所示,本发明采用的技术方案是,首先提供一种基于指标的数据流统计方法的实施环境,所述方法的实施环境包括:终端,所述终端可以是智能手机、智能机器人、平板及电脑等智能设备,但需要说明的是,所述终端并不限制于以上的智能手机、智能机器人、平板及电脑等智能设备,所述终端内置有指标拾取模块、数据提取模块及结果展示模块。除了终端外,所述实施环境还包括提供数据基础的数据仓库1b,基于所述数据仓库中的数据形成的数据集市2b,用于请求数据和计算数据的应用层3b及用于展示数据的展示层4b。

为更好示意本发明实施例的发明意图,所述实施环境可以具体为企业报表展示,部门人员向上级展示报表时,可以通过所述终端(比如手机)上进行展示。所述终端可以通过企业设置的数据仓库1b提取相关数据,根据维度及指标的数据构建表格,并在终端上将所述表格进行展示。

做为一种可能实施的环境,所述终端还可以通过云数据库提取相关数据做为数据源,根据提取的数据源构建企业数据仓库1b,再根据所述数据仓库中的数据构建数据集市2b。

如图2所示,所述基于指标的数据流统计方法包括步骤:

s11、从指标信息中获取目标指标信息;通过所述终端指标拾取模块从指标中拾取出目标指标,并获取目标指标的信息,所述目标指标的信息可以是人数、销售额等信息。

进一步的,为更容易的拾取目标指标,所述指标信息可以是在终端上设置的标签或标签集群,通过拾取目标标签获取目标指标信息,所述不同的标签对应不同的指标,并将所述标签关联到指标维度关系中。这样的设置,可以使指标信息直观化的展现在终端上,方便拾取。

做为一种可能实施的拾取目标指标方式,所述指标的拾取还可以采用语音进行,在所述终端内设置有语音识别模块,通过语音识别模块对语音中的关键词进行识别,从而获取目标指标,当然,所述关键词的语义与所述指标信息相关联。比如对终端输入“我想看访问量报表”中的关键词为“访问量”,其语义被识别后对应的指标为“访问量”,那么拾取访问量为目标指标。

s12、识别提取所述目标指标信息中的度量信息,根据所述目标指标度量信息匹配单个属性的维度,形成指标维度组合;

进一步的,所述度量信息中包含有所述目标指标数据的结构及单位,可以为所述目标指标匹配到更精准的维度。需要说明的,因为一个指标所对的维度不止一个,比如用户数量增加指标可以对应的维度包括:时间维度、地域维度等,所以与所述目标指标度量信息匹配的单个属性的维度不止一个,因此,形成指标维度组合也不止一个,但在这些组合中,目标指标始终不变,还是用户数量增加做为目标指标。

举例来说,目标指标信息中的度量信息是访问人数度量,通过这个访问人数,可以匹配到某个时间的访问人数,也可以匹配到某个地方的访问人数,甚至是可以匹配到某个年龄段的访问人数。

总的来说,当需要对访问人数做一个报表时,可以以访问人数为指标,对终端发出指令,使终端获取目标指标信息为访问人数,但由于没有指定维度属性,所以需要对所述目标指标信息进行一个关联分析,即是提取目标指标信息中的度量信息,上述例子中访问人数的度量信息为人数,那么就可以根据人数来匹配一个可以分布人数的维度属性,用于分布人数最常用的是时间及地域,也就是说,时间和地域与访问人数的关联度最高,可以做为第一优先级进行匹配,一些关联度较低的,比如爱好、产品等维度可以做为第二优先级,当然,还有关联度更低的第三优先级及第四优先级。

在匹配维度属性后,可以形成指标维度组合,进行申请与指标维度组合对应的指标维度结果表。

s13、通过指标与维度之间的关系,形成所述指标维度组合。比如人数时间组合、人数地点组合等。所述指标与维度之间的关系可以预设在所述数据仓库中的指标维度关系表中,当然,为更快速的获取指标维度关系,所述指标维度关系还可以预设在所述终端内的指标维度关系表中。

s14、通过指标维度组合从多个数据集市中申请维度指标结果表进行交叉比对,获取交叉维度指标结果表。

进一步的,配置多个数据集市,通过指标维度组合从多个数据集市中申请维度指标结果表进行交叉比对的过程中,为使所述维度指标结果表的相关度较高,可以采用相关度较高的多个数据集市进行申请。

做为一种可能的实施例,在需要检查所述维度指标结果表的通用度时,可以采用相关度不高的多个数据集市进行申请,进而可以检查所述维度指标结果表是否在所述多个数据集市中通用。

需要说明的是,一个目标指标可能会对应多个维度,从而形成多个指标维度组合,进而会向数据集市申请多个维度指标结果表,比如,一个目标指标对应n个维度,即存在n个指标维度组合,向m个数据集市申请的维度指标结果表数量为s=n*m个。

进一步的,为使结果的精度更高,在对所述维度指标结果表进行交叉对比时可以包括:在相同维度属性的前提下,因为目标指标是不会改变的,对不同数据集市中申请的相同维度属性及粒度的维度指标结果表进行交叉对比,获取交叉对比的结果。

更进一步的,所述交叉对比的结果可以是多个维度指标结果表的交集,使所述维度指标结果表的精度得到极大的提升。

做为一种可能的实施例,需要在对数据进行模糊处理时,所述交叉对比的结果也可以是多个维度指标结果表的并集,使所述维度指标结果表的涵盖范围更大。

在本实施例中,需要说明的是,所述通过指标维度组合从多个数据集市中申请维度指标结果表进行交叉比对的步骤中,为更快速的获取所述维度指标表,所述维度指标结果表可以预设在所述数据集市中。

为了更清楚地说明本发明实施例,需要对所述维度指标结果表的预设进一步的说明,根据不同的指标与不同的维度属性间进行排列组合后,形成维度指标表,根据指标的不同在数据事实表中提取到相应的事实数据,根据维度的不同在维度表中提取到相应的维度数据,将所述事实数据与维度数据写入所述维度指标表中形成维度指标结果表,并在所述数据集市中设置关于所述维度指标结果表的分类索引目录。

如图3所示,在本发明实施例中,所述根据所述目标指标的度量信息匹配单个属性的维度,形成指标维度组合包括步骤:

s21、根据所述目标指标度量信息与维度的属性相关度,对维度进行筛选匹配,并配置相应的优先级;需要说明的是,所述度量信息可分为绝对度量及相对度量,所述度量信息可以分为绝对数度量和相对数度量,所述绝对数度量反映的是规模大小的指标,如人口数、gdp、收入、用户数,而相对数度量主要用来反映质量好坏的指标,如利润率、留存率、覆盖率等。也可以说,指标分为绝对数指标和相对数指标,所述绝对数指标为聚合数据,比如人口数、gdp、收入、用户数在时间、地点、范围的聚合数据,所述相对数指标为在绝对数指标的聚合数据基础上的再加工聚合得到,比如利润率、留存率、覆盖率等,在一个利润率公式:利润率=利润÷成本×100%中,利润为一个绝对数指标,成本也为一个绝对数指标,利润率数据为利润数据与成本数据的聚合。

进一步的,在所述对维度进行筛选匹配的步骤中,根据指标度量信息与维度的属性相关度进行筛选,指标度量信息中,包括度量值与度量单位,从这些度量值与度量单位的信息可以筛选出相关度较大的维度。比如,所述指标度量信息为利润率,那么可以筛选出与利润率指标相关度较大的如时间维度、地点维度、产品维度等进行匹配,还可排除一些与利润率指标相关度不大的如性别维度、年龄维度等进行剔除。

更进一步的,在所述对维度进行和筛选匹配的步骤中,为维度配置优先级,可以在形成指标维度组合时变得有序,从而方便指标维度组合的优先级再配置。

在一些可能的实施例中,所述指标度量信息与维度的属性相关度可以从用户的事件日志中提取,具体而言,通过机器学习,分析事件日志中的指标度量信息与维度被提取的次数,获取目标指标度量条件下的提取次数在范围内的维度。

s22、将匹配到的维度与所述目标指标进行关联,形成指标维度组合,所得指标维度组合根据维度的优先级进行优先级再配置。通过所述目标指标度量信息与维度的属性相关度来对维度进行筛选匹配,可以极大减少对维度的筛选工作,从而提高匹配速度。在对所述指标维度组合进行优先级再配置,可以使所述指标维度组合的优先级区别于维度的优先级,便于指标维度组合数据及维度数据的管理。

进一步的,通过预设的指标维度关系表,将匹配到的维度与所述目标指标进行关联,形成指标维度组合。为了更快速的获取所述指标维度关系,可以将所述指标维度关系表预设在所述终端内,从而直接在所述终端内确定所述目标指标与维度的关系,形成指标维度组合。

做为一种可能的实施例,所述指标维度关系表预设在所述数据集市中,通过将所述指标维度关系映射到所述数据集市中的所述指标维度关系表中,从而提取出指标维度组合。这样可以降低所述终端的存储压力。

在本发明实施例中,所述根据所述目标指标度量信息与维度的属性相关度,对维度进行筛选匹配还包括:

根据所述维度与粒度的选取热度,按热度相关为维度匹配粒度。按粒度的选取热度进行匹配,选出热度高的粒度,可以提高粒度的匹配速度。需要说明的是,粒度是维度下的一个数据计算单位,数据的粒度主要针对指标数据的计算范围,以地点维度为例,如人口这个数据项在统计部门是以街区范围还是一个社区为范围统计的。人口数据细化程度越高,粒度级就越小,比如以社区为粒度对人口数据进行统计的范围就大于以居民楼为粒度对人口数据进行统计的范围;相反,细化程度越低,粒度级就越大。

进一步的,在根据所述目标指标度量信息与维度的属性相关度,对维度进行筛选匹配后,确定维度的属性,在所述维度的粒度中进行筛选,筛选出相关热度较高的粒度进行。具体的粒度筛选可以是提取在所述维度属性下常用的粒度单位,并分析这些常用的粒度单位中被提取的次数,进行为这些常用的粒度单位配置优先级,根据优先级将粒度匹配到维度中。

在一些可能的实施例中,粒度的筛选还可以是根据时间来进行的,具体的,在从指标信息中获取目标指标信息的步骤中,同时获取当时的时间信息,根据获取所述当时的时间信息对粒度进行匹配。比如,在获取到当时的时间是某月一号,可能要做的报表是关于前面一个月中各周的各种报表,那么可以匹配“周”为粒度;又比如,在获取到所述当时的时间是十二月某号,可能要做的是年度报表,即是关于前面几个月的各种报表,那么可以匹配“月”为粒度。

在另一些可能的实施例中,粒度的筛选还可以通过结合用户的事件日志及时间来进行,具体的,在从指标信息中获取目标指标信息的步骤中,同时获取用户的事件日志信息,在所述用户的事件日志信息中提取相关时间的具体行为属性,通过所述具体行为属性来对粒度进行匹配。在此可能的实施例中,需要说明的是,所述相关时间是在一定的时间周期中进行关联的时间点,比如在某月一号获取目标指标信息,以月为周期,获取上月一号的所述用户的事件日志,并从当日的所述用户的事件日志信息中提取当日用户的具体行为属性,即在上个月的这天,用户做了一些什么表,从这些表中获取粒度信息,从而匹配相应的粒度。

当然,在时间点与周期的设置上,由于报表可能需要提前做,或者报表展示日延迟后推等情况的发生,可以对所述时间点设置一个模糊阈值,比如,所述模糊阈值可以时间点的前后两天,即获取上月一号及其的前后两天的所述用户的事件日志,并从这几天的事件日志信息中提取当日用户的具体行为属性,从而匹配相应的粒度。

在本发明实施例中,所述将匹配到的维度与所述目标指标进行关联,形成指标维度组合还包括:

将所述维度的粒度关联到所述指标维度组合。将粒度关联到所述指标维度组合中,使得指标数据可以被维度更好的描述。

进一步的,将所述维度的粒度关联到所述指标维度组合包括步骤:

根据维度属性,在所述数据仓库中设置维度表,根据不同的属性,在所述维度表的下方设置粒度子表,所述粒度子表中存储有关于粒度的数据,从所述粒度表中提取相关的粒度数据,映射到所述指标维度组合中进行分布。

在一些可能的实施例中,所述维度表及粒度子表设置在所述终端内以目录的形式存储,所述维度表内的关于维度的数据及所述粒度子表内的关于粒度的数据设置在数据仓库之中,可以根据终端内的维度表及粒度子表对数据仓库之中的数据进行申请,在提高形成指标维度组合速度的前提下,还能降低所述终端的存储压力。

在另一些可能的实施例中,所述维度表及粒度子表可以配置在所述数据集市中,在所述数据集市中将所述粒度关联到所述指标维度组合的速度比之于在所述数据仓库中将所述粒度关联到所述指标维度组合的速度要快,所述数据集市的存储能力比之于所述终端的存储能力要更优秀。

当然,结合上述的实施例,所述维度表及粒度子表还可以配置在所述终端中,所述维度表内的关于维度的数据及所述粒度子表内的关于粒度的数据配置在所述数据集市之中。

在本发明实施例中,在所述通过指标维度组合从数据集市中申请维度指标结果表之前,所述方法还包括:

从数据仓库中筛选有效数据构建多个数据集市。构建数据集市,可以直接通过数据集市进行数据提取,以数据集市做为数据中转,可以提高数据提取的速度,并极大增加了数据提取的效率及精度。

进一步的,为更快地获取到维度指标结果表,可以根据数据的类型及所述构建的数据集市的要求,在所述数据集市中对所述维度指标结果表进行申请;在所述数据仓库中提取相关的数据做为数据源,根据提取到的数据源构建相应的数据集市。

为使提取的数据更加精准,可以对所述数据集市中的数据进行对比,具体的,将同一个维度指标表分别在所述数据仓库及所述数据集市中进行申请,对比申请到的维度指标结果表中的数据。

需要说明的是,所述数据集市相当于一个用于数据中转的数据仓库,相较于所述数据仓库而言,所述数据集市的数据针对性较强,数据查找范围也较小,所以在提取数据时速度会比较快。

在本发明实施例中,所述从数据仓库中筛选有效数据构建多个数据集市包括:

通过维度的属性对所述数据仓库中的数据进行筛选,进而筛选出构建数据集市所需的事实表及维度表,根据筛选出的事实表及维度表构建第一数据集市。可以在所述事实表中提取所述目标指标的指标数据,可以在维度表中提取所述维度的维度数据。

通过维度的优先级对所述数据仓库中的数据进行筛选,进而筛选出构建数据集市所需的事实表及维度表,根据筛选出的事实表及维度表构建第二数据集市。

需要说明的是,所述事实表及维度表是所述数据仓库中的数据载体,所述事实表存储有关于指标的度量数据,所述维度表存储有关于维度的说明数据。所述第一数据集市与所述第二数据集市的构建策略并不一样,因此,同时从第一数据集市及第二数据集市中申请出来的结果表也可能会存在不同。具体以第一数据集市为主还是以第二数据集市为主,用户可自行定义。另外,数据集市的构建包括第一数据集市及第二数据集市,但是并不限于是第一数据集市及第二数据集市,也可以构建第三数据集市,甚至更多的数据集市。

进一步的,为获取想要的数据,可以在所述数据仓库中提取相关的数据,用提取出的数据在所述数据集市中构建事实表及维度表。

在一些可能的实施例中,所述事实表及维度表可以直接从所述数据仓库中进行提取,这样可以使所述数据集市的构建更加快速,还能避免在构建所述数据集市时数据缺失。

在本发明实施例中,对数据集市中的数据进行管理包括事实表管理和维度表管理。

进一步的,对所述事实表管理包括事实表数据更新,增加或删除事实表中的数据类型;对所述维度表管理包括,增加或删除维度表中的事实数据。需要说明的是,所述事实表及维度表是制成所述维度指标结果表的关键。

在一些可能的实施例中,所述数据集市中的数据只是关于所述维度指标结果表的数据,而没有设置相关的事实表和维度表,所述维度指标结果表中数据来源于数据仓库,所述事实表及所述维度表的数据在所述数据仓库中进行聚合,形成维度指标结果表,所述数据集市根据需要,直接从所述数据仓库中提取所述维度指标结果表进行存储,也就是说,此实施例中的数据集市只负责存储经过聚合的维度指标结果表,并配置索引目录,在所述终端根据目标指标信息和维度形成的指标维度组合对所述数据集市进行请求时,直接提取所述维度指标结果表,无需在所述数据集市中对数据进行聚合。

在本发明实施例中,根据不同维度属性及指标信息在所述数据集市中预设多个维度指标结果表。所述多个维度指标结果表对应多个维度指标组合,将维度指标结果表预设好后,可以根据维度指标组合直接进行调用,提高了申请结果表的速度。

进一步的,在所述数据集市中预设多个维度指标结果表的规则可以是将不同维度属性的维度及不同类型的指标进行排列组合,得到要要预设的所述多个维度指标结果表。需要说明的是,在预设所述多个维度指标结果表后,还要在所述多个维度指标结果表中写入相关的数据及说明;所述相关的数据为所述指标的事实表数据,所述说明是在所述维度上对所述指标数据的说明数据。

在一些可能的实施例中,为降低所述数据集市的存储压力,所述相关的数据及说明可以在所述终端发出申请后,从所述数据仓库中再行提取。

其次,还提供一种服务器,包括处理器及存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或所述指令集由所述处理器加载并执行以实现如前述任一项所述的基于指标的数据流统计方法。

所述服务器中的处理器可以是计算芯片,用以计算处理数据库中的维度数据和指标数据的聚合,所述存储器可以是:u盘、只读存储器(rom)、随机存取存储器(ram)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的存储装置。

最后,还提供一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或所述指令集由所述处理器加载并执行以实现如前述任一项所述的基于指标的数据流统计方法。

所述计算机可读存储介质包括:u盘、只读存储器(rom)、随机存取存储器(ram)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

上述实施例仅用于说明本发明的具体实施方式。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和变化,这些变形和变化都应属于本发明的保护范围。

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