CN108984619A - 一种基于大数据的自定义报表的方法 - Google Patents
一种基于大数据的自定义报表的方法 Download PDFInfo
- Publication number
- CN108984619A CN108984619A CN201810609611.4A CN201810609611A CN108984619A CN 108984619 A CN108984619 A CN 108984619A CN 201810609611 A CN201810609611 A CN 201810609611A CN 108984619 A CN108984619 A CN 108984619A
- Authority
- CN
- China
- Prior art keywords
- data
- big data
- data processing
- processing center
- report
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种基于大数据的智能报表实现方法,包括:1)客户端收到用户要求生成报表的请求,该请求中包含为这张报表设定的查询数据的条件;2)客户端根据这些条件生成访问业务大数据处理中心的请求并发往报表服务器;3)报表服务器根据收到的请求从系统大数据处理中心中读取业务大数据处理中心的信息,根据这些信息访问业务大数据处理中心;4)业务大数据处理中心对存储在业务大数据处理中心的数据库中的数据进行近似连接,找出近似度值大于设定阈值的满足设定条件的数据作为近似数据返回客户端;5)客户端根据该近似数据及报表套件中的格式自动生成报表并显示给用户。
Description
技术领域
本发明涉及信息技术领域,具体涉及一种基于大数据的自定义报表的方法。
背景技术
大数据(big data),指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。
相关技术中,大数据中心的各个数据采集来源使用不同的技术来实现,使用的开发技术存在差异,同时业务支撑数据库也是互不相同。因此很难形成一个通用的自定义报表的方法,能够基于大数据进行处理。
发明内容
针对上述问题,本发明提供智能报表实现方法。
本发明的目的采用以下技术方案来实现:提供了一种基于大数据的智能报表实现方法,其特征是,包括:
1)客户端收到用户要求生成报表的请求,该请求中包含为这张报表设定的查询数据的条件;
2)客户端根据这些条件生成访问业务大数据处理中心的请求并发往报表服务器;
3)报表服务器根据收到的请求从系统大数据处理中心中读取业务大数据处理中心的信息,根据这些信息访问业务大数据处理中心;
4)业务大数据处理中心对存储在业务大数据处理中心的数据库中的数据进行近似连接,找出近似度值大于设定阈值的满足设定条件的数据作为近似数据返回客户端;
5)客户端根据该近似数据及报表套件中的格式自动生成报表并显示给用户。
优选的,所述设定条件包括数据源属性、表与存储过程,其中数据源属性包括大数据处理中心名称、端口、大数据处理中心用户名和大数据处理中心用户名密码。
优选的,报表服务器从系统大数据处理中心中读取业务大数据处理中心的信息的同时,还从系统数据库中读取大数据处理中心代理的信息,根据这些信息将请求分发到对应的大数据处理中心代理上,由该大数据处理中心代理访问业务大数据处理中心。
优选的,业务大数据处理中心对存储在业务大数据处理中心的数据库中的数据进行近似连接,具体包括:
(1)随机提取所述数据库中的一段数据,并按照该数据的采集时间顺序来构建时间队列;
(2)从时间队列中选择多个基准点,针对时间队列中的数据基于基准点建立基于距离树的数据索引结构,利用数据索引结构生成MapReduce的数据分区方案;
(3)将基准点集合、数据索引结构以及MapReduce的数据分区方案信息作为全局变量,利用MapReduce任务对存在近似性的数据进行精确计算,得到时间队列中所有满足近似度值大于设定阈值的近似数据。
优选的,从时间队列中选择多个基准点,具体包括:
(1)从时间队列中随机选择一个数据,并在时间队列中找到距离该数据最远的数据,设为第一个基准点r1;
(2)设置第二个基准点r2为找出离r1距离最远的数据;
(3)针对每个未被选为基准点的数据xi,选择最小距离差权值的数据作为下一个基准点:
其中,表示未被选为基准点的数据xi的距离差权值,d(r1,r2)表示基准点r1,r2之间的距离,d(rk,xi)表示数据xi与已经选择的基准点rk之间的距离,Ω表示已经选择的基准点集合;
(4)重复(3)直至选出设定数量的基准点,归入基准点集合。
优选的,针对时间队列中的数据基于基准点建立基于距离树的数据索引结构,具体包括:
(1)将Ω中的r1作为距离树的根节点对应的基准点,并设置根节点的所属层级为0,位置p=0,个数n=0;
(2)通过逐个插入数据的方式构建距离树,包括:利用r1对根节点进行划分,生成属于其子节点的叶节点,把每个数据分发到对应的叶节点,其中,分发到叶节点α内部的数据满足与其父节点对应的基准点的距离在区间[(pα-1)×G,pα×G)内,其中pα为叶节点α的位置,且叶节点α内部存放的数据量小于设定的最大值,其中每个叶节点包含所属层级、其内部的数据量以及位置三个属性,其中位置是指该叶节点距离其父节点对应的基准点的距离和设定的距离阈值G的倍数关系;
(3)如果叶节点存放的数据量到达设定的最大值,则从Ω中选取新的基准点对该叶节点进行划分,生成相应的子节点,将该叶节点中的多余数据分发到其子节点中,重复该过程,直至所有的叶节点或者子节点包含的数据量都小于设定的最大值。
本发明基于大数据处理技术将众多数据采集来源的数据进行汇总并统一分析处理,可进行数据分析利用,形成一个通用的自定义报表的方法。
附图说明
利用附图对本发明作进一步说明,但附图中的实施例不构成对本发明的任何限制,对于本领域的普通技术人员,在不付出创造性劳动的前提下,还可以根据以下附图获得其它的附图。
图1是本发明一个示例性实施例的基于大数据的智能报表实现方法的流程图。
具体实施方式
结合以下实施例对本发明作进一步描述。
图1是本发明一个示例性实施例的基于大数据的智能报表实现方法的流程图,
包括:
1)客户端收到用户要求生成报表的请求,该请求中包含为这张报表设定的查询数据的条件;
2)客户端根据这些条件生成访问业务大数据处理中心的请求并发往报表服务器;
3)报表服务器根据收到的请求从系统大数据处理中心中读取业务大数据处理中心的信息,根据这些信息访问业务大数据处理中心;
4)业务大数据处理中心对存储在业务大数据处理中心的数据库中的数据进行近似连接,找出近似度值大于设定阈值的满足设定条件的数据作为近似数据返回客户端;
5)客户端根据该近似数据及报表套件中的格式自动生成报表并显示给用户。
相关技术中,大数据中心的各个数据采集来源使用不同的技术来实现,使用的开发技术存在差异,同时业务支撑数据库也是互不相同。因此很难形成一个通用的自定义报表的方法,能够基于大数据进行处理。
而本发明实施例对存储在业务大数据处理中心的数据库中的数据进行近似连接,基于大数据处理技术将众多数据采集来源的数据进行汇总并统一分析处理,可进行数据分析利用,形成一个通用的自定义报表的方法。
优选的,所述设定条件包括数据源属性、表与存储过程,其中数据源属性包括大数据处理中心名称、端口、大数据处理中心用户名和大数据处理中心用户名密码。
优选的,报表服务器从系统大数据处理中心中读取业务大数据处理中心的信息的同时,还从系统数据库中读取大数据处理中心代理的信息,根据这些信息将请求分发到对应的大数据处理中心代理上,由该大数据处理中心代理访问业务大数据处理中心。
优选的,业务大数据处理中心对存储在业务大数据处理中心的数据库中的数据进行近似连接,具体包括:
(1)随机提取所述数据库中的一段数据,并按照该数据的采集时间顺序来构建时间队列;
(2)从时间队列中选择多个基准点,针对时间队列中的数据基于基准点建立基于距离树的数据索引结构,利用数据索引结构生成MapReduce的数据分区方案;
(3)将基准点集合、数据索引结构以及MapReduce的数据分区方案信息作为全局变量,利用MapReduce任务对存在近似性的数据进行精确计算,得到时间队列中所有满足近似度值大于设定阈值的近似数据。
MapReduce是Google提出的一个软件架构,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)"和"Reduce(规约)",和它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。MapReduce极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新的键值对,指定并发的Reduce(规约)函数,用来保证所有映射的键值对中的每一个共享相同的键组。
优选的,从时间队列中选择多个基准点,具体包括:
(1)从时间队列中随机选择一个数据,并在时间队列中找到距离该数据最远的数据,设为第一个基准点r1;
(2)设置第二个基准点r2为找出离r1距离最远的数据;
(3)针对每个未被选为基准点的数据xi,选择最小距离差权值的数据作为下一个基准点:
其中,表示未被选为基准点的数据xi的距离差权值,d(r1,r2)表示基准点r1,r2之间的距离,d(rk,xi)表示数据xi与已经选择的基准点rk之间的距离,Ω表示已经选择的基准点集合;
(4)重复(3)直至选出设定数量的基准点,归入基准点集合。
本实施例设定了基准点的选择方法,基准点的选择影响到对数据进行数据近似性分析的性能,设置合理的基准点集合可以将时间队列进行优化分割。本实施例的选择方法,能够使得时间队列的离群值具有更大的概率成为基准点,且使得选取的基准点之间的距离较远。因此,本实施例使得选取到的基准点集合能够较好地对时间队列进行分割,有利于优化对数据进行数据近似性分析的性能。
优选的,针对时间队列中的数据基于基准点建立基于距离树的数据索引结构,具体包括:
(1)将Ω中的r1作为距离树的根节点对应的基准点,并设置根节点的所属层级为0,位置p=0,个数n=0;
(2)通过逐个插入数据的方式构建距离树,包括:利用r1对根节点进行划分,生成属于其子节点的叶节点,把每个数据分发到对应的叶节点,其中,分发到叶节点α内部的数据满足与其父节点对应的基准点的距离在区间[(pα-1)×G,pα×G)内,其中pα为叶节点α的位置,且叶节点α内部存放的数据量小于设定的最大值,其中每个叶节点包含所属层级、其内部的数据量以及位置三个属性,其中位置是指该叶节点距离其父节点对应的基准点的距离和设定的距离阈值G的倍数关系;
(3)如果叶节点存放的数据量到达设定的最大值,则从Ω中选取新的基准点对该叶节点进行划分,生成相应的子节点,将该叶节点中的多余数据分发到其子节点中,重复该过程,直至所有的叶节点或者子节点包含的数据量都小于设定的最大值。
优选的,设要分发的数据集为{x1,x2,..,xn},则设置的区间数量为:
式中,d(xa,r)为数据xa与父节点对应的基准点r的距离。
在相关技术中,近似计算的计算量非常庞大,成本很高,而本实施例对数据进行近似连接采用了基于距离树的数据索引结构,通过剪枝不必要的数据对比较,从而来降低数据近似计算的冗余花费,节省了系统的数据计算成本。
其中,根据与基准点的最大距离设定了区间数量的计算公式,这有利于构建合理的距离树,从而为后续的数据分区奠定良好的基础。
优选的,利用数据索引结构生成MapReduce的数据分区方案,具体包括:
(1)根据基于距离树的数据索引结构创建一个图M(U,V),顶点U的集合是距离树的所有叶节点,边V的集合是不能被剪枝原则剪枝的节点对,每个顶点有一个与其自身相连的边,设置顶点U的权重w(U)是对应叶节点的数据量,边V的权重w(v)等于其上两个顶点的权重w(U)的和;
(2)将M(U,V)分成两个子图M(U,V)1、M(U,V)2,满足下列均衡度条件
式中,为设定的均衡度阈值,
(3)将子图M(U,V)1、M(U,V)2添加到一个优先队列中,优先队列中的子图按照代价进行降序排列;
其中子图M(U,V)i的代价的计算公式为:
(3)继续迭代,从优先队列中选出排在最前面的子图,将其随机地分成子图,这两个子图的顶点个数相同,然后将分成的子图添加值优先队列,判断优先队列中排在最前面的子图的代价是否小于设定的代价阈值,如果不小于,则重复该过程直至优先队列中排在最前面的子图的代价满足小于设定的代价阈值,输出当前的分区方案,将其作为成MapReduce的数据分区方案。
本实施例以图分区的方法将存在近似性的数据尽可能地分布在同一个分区,这样做能够尽可能地减少分区间的数据交换和副本量。另外,在进行分区时设定了要满足均衡度条件以及代价条件,这有利于在Reduce任务中,能够在确保负载均衡的情况下最小化数据传输成本和冗余。
优选的,剪枝原则为:给定在L1层和L2层的两个叶节点α1和α2,假设L1≥L2;从根节点到α1和α2经过的叶节点的位置序列分别为{η1,η2,...,ηL1}和{ζ1,ζ2,...,ζL2}。如果对于任意的t≤L2,都有ηt+2<ζt或者ηt>ζt+2,则α1中的任何数据和α2中的任何数据之间的距离大于ε。
本实施例的计算量很小,剪枝效果良好。
最后应当说明的是,以上实施例仅用以说明本发明的技术方案,而非对本发明保护范围的限制,尽管参照较佳实施例对本发明作了详细地说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的实质和范围。
Claims (6)
1.一种基于大数据的智能报表实现方法,其特征是,包括:
1)客户端收到用户要求生成报表的请求,该请求中包含为这张报表设定的查询数据的条件;
2)客户端根据这些条件生成访问业务大数据处理中心的请求并发往报表服务器;
3)报表服务器根据收到的请求从系统大数据处理中心中读取业务大数据处理中心的信息,根据这些信息访问业务大数据处理中心;
4)业务大数据处理中心对存储在业务大数据处理中心的数据库中的数据进行近似连接,找出近似度值大于设定阈值的满足设定条件的数据作为近似数据返回客户端;
5)客户端根据该近似数据及报表套件中的格式自动生成报表并显示给用户。
2.根据权利要求1所述的智能报表实现方法,其特征是:所述设定条件包括数据源属性、表与存储过程,其中数据源属性包括大数据处理中心名称、端口、大数据处理中心用户名和大数据处理中心用户名密码。
3.根据权利要求2所述的智能报表实现方法,其特征是:报表服务器从系统大数据处理中心中读取业务大数据处理中心的信息的同时,还从系统数据库中读取大数据处理中心代理的信息,根据这些信息将请求分发到对应的大数据处理中心代理上,由该大数据处理中心代理访问业务大数据处理中心。
4.根据权利要求3所述的智能报表实现方法,其特征是,业务大数据处理中心对存储在业务大数据处理中心的数据库中的数据进行近似连接,具体包括:
(1)随机提取所述数据库中的一段数据,并按照该数据的采集时间顺序来构建时间队列;
(2)从时间队列中选择多个基准点,针对时间队列中的数据基于基准点建立基于距离树的数据索引结构,利用数据索引结构生成MapReduce的数据分区方案;
(3)将基准点集合、数据索引结构以及MapReduce的数据分区方案信息作为全局变量,利用MapReduce任务对存在近似性的数据进行精确计算,得到时间队列中所有满足近似度值大于设定阈值的近似数据。
5.根据权利要求4所述的智能报表实现方法,其特征是,从时间队列中选择多个基准点,具体包括:
(1)从时间队列中随机选择一个数据,并在时间队列中找到距离该数据最远的数据,设为第一个基准点r1;
(2)设置第二个基准点r2为找出离r1距离最远的数据;
(3)针对每个未被选为基准点的数据xi,选择最小距离差权值的数据作为下一个基准点:
其中,表示未被选为基准点的数据xi的距离差权值,d(r1,r2)表示基准点r1,r2之间的距离,d(rk,xi)表示数据xi与已经选择的基准点rk之间的距离,Ω表示已经选择的基准点集合;
(4)重复(3)直至选出设定数量的基准点,归入基准点集合。
6.根据权利要求5所述的智能报表实现方法,其特征是,针对时间队列中的数据基于基准点建立基于距离树的数据索引结构,具体包括:
(1)将Ω中的r1作为距离树的根节点对应的基准点,并设置根节点的所属层级为0,位置p=0,个数n=0;
(2)通过逐个插入数据的方式构建距离树,包括:利用r1对根节点进行划分,生成属于其子节点的叶节点,把每个数据分发到对应的叶节点,其中,分发到叶节点α内部的数据满足与其父节点对应的基准点的距离在区间[(pα-1)×G,pα×G)内,其中pα为叶节点α的位置,且叶节点α内部存放的数据量小于设定的最大值,其中每个叶节点包含所属层级、其内部的数据量以及位置三个属性,其中位置是指该叶节点距离其父节点对应的基准点的距离和设定的距离阈值G的倍数关系;
(3)如果叶节点存放的数据量到达设定的最大值,则从Ω中选取新的基准点对该叶节点进行划分,生成相应的子节点,将该叶节点中的多余数据分发到其子节点中,重复该过程,直至所有的叶节点或者子节点包含的数据量都小于设定的最大值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810609611.4A CN108984619A (zh) | 2018-06-13 | 2018-06-13 | 一种基于大数据的自定义报表的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810609611.4A CN108984619A (zh) | 2018-06-13 | 2018-06-13 | 一种基于大数据的自定义报表的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108984619A true CN108984619A (zh) | 2018-12-11 |
Family
ID=64540345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810609611.4A Pending CN108984619A (zh) | 2018-06-13 | 2018-06-13 | 一种基于大数据的自定义报表的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108984619A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112965977A (zh) * | 2021-03-05 | 2021-06-15 | 浙大城市学院 | 一种支持多集团多组织分发的报表系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1438591A (zh) * | 2002-02-10 | 2003-08-27 | 华为技术有限公司 | 智能报表的实现方法 |
CN101196903A (zh) * | 2007-12-27 | 2008-06-11 | 上海全景数字技术有限公司 | 一种通用报表制作装置和方法 |
CN103092890A (zh) * | 2011-11-08 | 2013-05-08 | 苏州中茵泰格科技有限公司 | 报表自动生成及发送的系统及方法 |
CN104715052A (zh) * | 2015-03-27 | 2015-06-17 | 国家电网公司 | 生成报表的方法及其系统 |
CN104778245A (zh) * | 2015-04-09 | 2015-07-15 | 北方工业大学 | 基于海量车牌识别数据的相似轨迹挖掘方法及装置 |
CN105893488A (zh) * | 2016-03-29 | 2016-08-24 | 国云科技股份有限公司 | 一种便捷灵活自制的数据统计报表制作方法 |
US20160378809A1 (en) * | 2015-06-25 | 2016-12-29 | International Business Machines Corporation | Massive time series correlation similarity computation |
-
2018
- 2018-06-13 CN CN201810609611.4A patent/CN108984619A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1438591A (zh) * | 2002-02-10 | 2003-08-27 | 华为技术有限公司 | 智能报表的实现方法 |
CN101196903A (zh) * | 2007-12-27 | 2008-06-11 | 上海全景数字技术有限公司 | 一种通用报表制作装置和方法 |
CN103092890A (zh) * | 2011-11-08 | 2013-05-08 | 苏州中茵泰格科技有限公司 | 报表自动生成及发送的系统及方法 |
CN104715052A (zh) * | 2015-03-27 | 2015-06-17 | 国家电网公司 | 生成报表的方法及其系统 |
CN104778245A (zh) * | 2015-04-09 | 2015-07-15 | 北方工业大学 | 基于海量车牌识别数据的相似轨迹挖掘方法及装置 |
US20160378809A1 (en) * | 2015-06-25 | 2016-12-29 | International Business Machines Corporation | Massive time series correlation similarity computation |
CN105893488A (zh) * | 2016-03-29 | 2016-08-24 | 国云科技股份有限公司 | 一种便捷灵活自制的数据统计报表制作方法 |
Non-Patent Citations (2)
Title |
---|
刘文: "海量时间序列数据处理的关键技术研究", 《中国博士学位论文全文数据库 基础科学辑》 * |
庞俊等: "基于MapReduce框架的海量数据相似性连接研究进展", 《计算机科学》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112965977A (zh) * | 2021-03-05 | 2021-06-15 | 浙大城市学院 | 一种支持多集团多组织分发的报表系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103150394B (zh) | 面向高性能计算的分布式文件系统元数据管理方法 | |
CN102567495B (zh) | 一种海量信息存储系统及实现方法 | |
US7457835B2 (en) | Movement of data in a distributed database system to a storage location closest to a center of activity for the data | |
US8676951B2 (en) | Traffic reduction method for distributed key-value store | |
KR101120847B1 (ko) | 데이터 오버레이, 자가-조직 메타데이터 오버레이 및 애플리케이션 레벨 멀티캐스팅 | |
Alfarrarjeh et al. | Scalable spatial crowdsourcing: A study of distributed algorithms | |
US20050114478A1 (en) | Method and apparatus for providing dynamic group management for distributed interactive applications | |
EP2050001A2 (en) | System and apparatus for optimally trading off the replication overhead and consistency level in distributed applications | |
WO2007149701A2 (en) | A method and system for federated resource discovery service in distributed systems | |
JP2007213592A (ja) | 文字処理装置、方法、プログラムおよび記録媒体 | |
CN108829880B (zh) | 一种光网络终端设备的配置管理的方法 | |
CN106503196A (zh) | 云环境下可扩展存储索引结构的构建和查询方法 | |
CN109492060A (zh) | 一种基于MBTiles的地图瓦片存储方法 | |
CN101128827A (zh) | 用于交换网络中分布式数据管理的方法和装置 | |
CN102158533B (zh) | 基于QoS的分布式web服务选择方法 | |
CN101222391A (zh) | 一种在服务器/客户端结构中构造拓扑树的方法 | |
CN103412883B (zh) | 基于p2p技术的语义智能信息发布订阅方法 | |
CN103326925A (zh) | 一种消息推送方法及装置 | |
US11409725B1 (en) | Multi-tenant partitioning in a time-series database | |
CN107704475A (zh) | 多层分布式非结构化数据存储方法、查询方法及装置 | |
CN114372058A (zh) | 一种空间数据管理方法、装置、存储介质及区块链系统 | |
US11108854B2 (en) | Peer-to-peer network for internet of things resource allocation operation | |
CN108984619A (zh) | 一种基于大数据的自定义报表的方法 | |
US11599516B1 (en) | Scalable metadata index for a time-series database | |
CN112507026A (zh) | 基于键值模型、文档模型和图模型数据的分布式高速存储方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |