一种多维分析方法和系统技术方案

技术编号:12128062 阅读:75 留言:0更新日期:2015-09-25 16:59
本发明专利技术公开了一种多维分析方法和系统,该方法包括:拦截用户发送的访问请求,并获取所述访问请求中查询表达式的至少一个请求参数;根据所述请求参数和配置文件,为每一个所述请求参数匹配对应的数据源,所述配置文件中包括预设参数与数据源的关联关系;在匹配的所述数据源中进行所述访问请求的查询数据操作。本发明专利技术提供的方法和系统,切换数据源的过程简单,并且能够自动、快速的切换数据源,且可通过多个请求参数查找数据源,解决了现有技术的问题。

【技术实现步骤摘要】

本专利技术涉及数据查询技术,尤其涉及一种多维分析方法和系统
技术介绍
联机分析处理(Online Analytical Processing,0LAP)系统是一种多维分析系统,通常作为数据库系统最主要的应用,分析人员通过OLAP系统可以快速的、灵活的从多种维度进行大数据量的复杂查询处理,并且OLAP系统会通过直观易懂的形式将查询结果提供给分析人员。存储在数据库中的大量数据,往往会因为存储空间、组织管理等因素,需要将存储数据库的一台存储设备扩展成为多台存储设备,即将数据库分布在多台存储设备中进行存储。每台存储设备都是一个数据源,具有独立的设备地址。数据库的组织形式是包括多个维度,每个维度有具体的维度因子,例如,时间、地域、商品名称和销量,均可作为维度,时间的维度因子可具体为2014、2015年等,地域的维度因子可具体为北京、上海、天津等。为了查询、组织管理方便,可以将数据库按照维度的维度因子进行数据拆分,并存储。例如,以时间这个维度的维度因子为划分依据,将2014年、2015年的数据分别存储在不同数据源的存储设备中。基于上述形式的数据库,用户会产生查询请求,查询请求中可包括一条或多条查询表达式(又可称为Cube)。查询表达式是一系列维度(Dimens1n)和度量(Measure)的集合。例如,查询请求为:2015年北京iphone5手机的销量,或2014年上海iphone4手机的销量。上述两条请求对应的查询表达式相同,均涉及到的维度是时间、地域和商品名称,销量是待查询的目标维度,即度量。现有技术在数据库中执行查询表达式的查询请求时,需要通过分析模型(Schema)来实现。Schema定义了一个多维逻辑分析模型,包含了一系列逻辑分析模型,而这个逻辑分析模型用于提供多维分析查询语句,从而展示数据。具体的,Schema中规定了用户可输入的查询表达式的维度和度量,以及确定了维度下维度因子所对应的数据存储在哪个数据源中。例如,Schema-1中确定了北京的数据存储在A设备,Schema-2中确定了上海的数据存储在B设备。则Schema-1为用户提供在A设备中查询涉及北京数据的查询表达式的查询操作,Schema-2为用户提供在B设备中查询涉及上海数据的查询表达式的查询操作。一个Schema中可以供多个查询表达式使用,一个查询表达式只能属于一个Schema。基于大量数据查询时,在OLAP多维数据分析情况下,需要对后台数据库根据不同的查询表达式、以及多个维度因子等业务场景进行底层数据分库操作。即经常会由于数据量增长或管理需求将一个存储设备的数据分库在多个存储设备中。目前一个Schema多维逻辑模型只能连接一个数据源,所以分库操作导致在基于现有技术执行查询请求时,必须为新存储设备中的数据生成新的Schema与其对应,这样用户才可以通过该Schema输入查询表达式,进而在相应的存储设备中进行查询。现有技术无法从查询表达式、多个维度因子等不同角度进行数据源切换。显然,当新增数据源对应的存储设备时,必须新增Schema模型,这样的操作非常繁琐。
技术实现思路
本专利技术提供一种多维分析方法和系统,以解决现有技术的问题。第一方面,本专利技术提供的一种多维分析方法,包括:拦截用户发送的访问请求,并获取所述访问请求中查询表达式的至少一个请求参数;根据所述请求参数和配置文件,为每一个所述请求参数匹配对应的数据源,所述配置文件中包括预设参数与数据源的关联关系;在匹配的所述数据源中进行所述访问请求的查询数据操作。进一步地,所述请求参数和预设参数均为维度因子。进一步地,在拦截用户发送的访问请求之前,还包括:确定每个数据源中所存储的维度因子,将所述数据源与维度因子的关联关系添加至配置文件中。进一步地,根据所述请求参数和配置文件,为每一个所述请求参数匹配对应的数据源,包括:将每一个所述请求参数和所述配置文件中的预设参数分别封装成对象;比较每一个所述请求参数的对象和所述预设参数的对象,以获取与每一个所述请求参数的对象一致的所述预设参数的对象;将一致的所述预设参数对应的数据源匹配为对应的所述请求参数的数据源。第二方面,本专利技术提供的一种多维分析系统,包括:拦截用户请求模块,用于拦截用户发送的访问请求,并获取所述访问请求中查询表达式的至少一个请求参数;匹配数据源模块,用于根据所述请求参数和配置文件,为每一个所述请求参数匹配对应的数据源,所述配置文件中包括预设参数与数据源的关联关系;查询数据模块,用于在匹配的所述数据源中进行所述访问请求的查询数据操作。进一步地,所述请求参数和预设参数均为维度因子。进一步地,在所述拦截用户请求模块之前,还包括:配置数据源模块,用于确定每个数据源中所存储的维度因子,将所述数据源与维度因子的关联关系添加至配置文件中。进一步地,所述匹配数据源模块包括:封装对象单元,用于将每一个所述请求参数和所述配置文件中的预设参数分别封装成对象;比较对象单元,用于比较每一个所述请求参数的对象和所述预设参数的对象,以获取与每一个所述请求参数的对象一致的所述预设参数的对象;匹配数据源单元,用于将一致的所述预设参数对应的数据源匹配为对应的所述请求参数的数据源。本专利技术提供的一种多维分析方法和系统,通过拦截用户发送的访问请求,并获取访问请求中查询表达式的至少一个请求参数,再根据请求参数和配置文件,为每一个请求参数匹配对应的数据源,在匹配的数据源中进行访问请求的查询数据操作。本专利技术提供的方法和系统,切换数据源的过程简单,并且能够自动、快速的切换数据源,且可通过多个请求参数查找切换数据源,根据用户访问请求的至少一个请求参数从至少一个数据源查询数据,此外还能够根据自定义参数编写配置文件,以及根据自定义的匹配规则进行数据源的匹配和切换,解决了现有技术的问题。【附图说明】为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例一提供的一种多维分析方法的流程图;图2是本专利技术实施例二提供的一种多维分析系统的示意图;图3是本专利技术实施例二提供的一种多维分析系统的结构图;图4是本专利技术实施例二提供的切换数据源装置的结构图。【具体实施方式】为使本专利技术的目的、技术方案和优点更加清楚,以下将参照本专利技术实施例中的附图,通过实施方式清楚、完整地描述本专利技术的技术方案,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例一参考图1所示,为本专利技术实施例一提供的一种多维分析方法的流程图,本实施例的技术方案适用于快速、自动的切换数据源,并根据用户访问请求中的多个请求参数从至少一个数据源中查询数据以响应用户请求的情况,该方法可以由多维分析系统(OLAP系统)来执行,配置在计算机中应用。本专利技术实施例一提供的一种多维分析方法,包括:步骤110、拦截用户发送的访问请求,并获取所述访问请求中查询表达式的至少一个请求参数。如上所述,用户根据自己的需求通过对应的schema多本文档来自技高网
...

【技术保护点】
一种多维分析方法,其特征在于,包括:拦截用户发送的访问请求,并获取所述访问请求中查询表达式的至少一个请求参数;根据所述请求参数和配置文件,为每一个所述请求参数匹配对应的数据源,所述配置文件中包括预设参数与数据源的关联关系;在匹配的所述数据源中进行所述访问请求的查询数据操作。

【技术特征摘要】

【专利技术属性】
技术研发人员:李雪楠胡浩马斗常伟李涛尹家彬宋全旺王乐宋腾刘兴瑶
申请(专利权)人:北京京东尚科信息技术有限公司北京京东世纪贸易有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1