论坛首页 Java企业应用论坛

讨论:大数据量的报表统计,性能作为第一考虑采取何种方案好

浏览 43177 次
精华帖 (5) :: 良好帖 (0) :: 新手帖 (1) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-02-26   最后修改:2009-02-26
建议先把业务理清楚,然后再考虑实现的方法。

0 请登录后投票
   发表时间:2009-02-26  
cats_tiger 写道
数据仓库+BI
专门干这个用的,要是自己做这两个东西,需要专家呀。


建设数据仓库,更多的是业务上的东西,专家不会帮你优化性能,只是帮你把业务整理好,设计好表。。

BI的话。。。可以看看Pentaho,

http://www.pentaho.com/

里面的Kettle,也就是ETL工具就是你说的,怎么把业务数据倒到数据仓库里面去的工具。。。


看了之后,你可能发现数据仓库+BI不是你想那回事。。。
0 请登录后投票
   发表时间:2009-02-26  
jizhan 写道
对于一个纯JAVA实现的项目,有如下一些需求,采取何种方案为好呢:
        并发的、大数据量的持久化(最少15G/天);
        大量的报表统计(对上面收集的各种数据做统计,时间跨度月、周、天....不等);
        第一时间反应要敏捷;
        要求支持多个主流数据库系统;
        并发用户访问量不大;
        这是一个产品型的项目;

对于以上这么一个需求,采取什么实现比较合理?这里的合理第一位为性能,然后才考虑可维护性、扩展性(首先、然后都很重要,不能太有偏向)。个人认为项目的可维护性和扩展性主要与程序的具体设计有关系,与采取什么样的持久化方案关系不大,这里要考虑的其实就一个性能问题。
    呵呵,以前主要做行业软件,初次接触产品型的开发,也很少碰到这么大的数据量,感觉比较紧张,恭请各位赐教......
   


我曾经做过一个类似的项目,是某银行总行级项目,数据量比你描述有过之无不及。
可以给你一些当时我的建议,只是一些提示:
1.引入嵌入式数据库,(DB4O,berkeley db)等。
2.“分布式计算”和“分步式计算”。
3.产品数据库(oracle,db2等)中基本仅存储结果。
4.优化报表查询。

提示:
    如果你们想做产品就别把逻辑绑定到数据库里,(存储过程是洪水,触发器是猛兽,离他们远点)。
0 请登录后投票
   发表时间:2009-02-26  
做个标记 慢慢看
0 请登录后投票
   发表时间:2009-02-27  
并发少,那缓存意义就不大了。
0 请登录后投票
   发表时间:2009-02-27  
jizhan 写道
对于一个纯JAVA实现的项目,有如下一些需求,采取何种方案为好呢:
        并发的、大数据量的持久化(最少15G/天);
        大量的报表统计(对上面收集的各种数据做统计,时间跨度月、周、天....不等);
        第一时间反应要敏捷;
        要求支持多个主流数据库系统;
        并发用户访问量不大;
        这是一个产品型的项目;

对于以上这么一个需求,采取什么实现比较合理?这里的合理第一位为性能,然后才考虑可维护性、扩展性(首先、然后都很重要,不能太有偏向)。个人认为项目的可维护性和扩展性主要与程序的具体设计有关系,与采取什么样的持久化方案关系不大,这里要考虑的其实就一个性能问题。
    呵呵,以前主要做行业软件,初次接触产品型的开发,也很少碰到这么大的数据量,感觉比较紧张,恭请各位赐教......
   

恩,感觉这个问题应该是数据挖掘方面的。关于事务性数据操作方面的优化和分布式计算应先放一放。
首要的是详细的理解业务需求,对数据进行合理的分类,清洗,和预处理。报表的统计应是规律性的数据运算。
通过数据的预处理,实现空间换时间。15G/天数据量不算十分的大,方法适当,就没问题。仅供参考。
0 请登录后投票
   发表时间:2009-02-27  
给以下建议:
1   数据量大,有些太片面了。一定分析下数据的规律,对数据进行分割存储;
2   数据仓库的思想是很适合作为你开发产品的基础指导;
3   缓存用在恰当的地方,将会发挥很大的威力,但不要过于依赖缓存;
4   并发性从一开始设计上就要关注;
0 请登录后投票
   发表时间:2009-02-27   最后修改:2009-02-27
gyytm 写道
项目定时并发的到不同地方去采集数据然后对数据进行处理
----这就是说,这是一个数据集成项目,很少或基本没有录入系统
该产品是管理类型的东西,使用的用户群是有范围界定的
----似乎是指该系统主要为管理决策人员使用,很可能在过程中遇极其变态的用户需求

结论: 感觉象是比较典型的OLAP需求....用OLTP的思路,恐怕会遇到N多问题,效率上,伸缩性上,方案上...
随便拉拉^_^

正解,报表部分需求不适当简化的话,就是要整OLAP了,这不是该Java做的。

建议楼主先搞清楚报表部分的解决方案,如果用OLAP或者专门的报表工具(带数据库部分方案的),就只要专心处理OLTP的方案即可。

如果想做实时报表,可以考虑TIBCO的辅助或者FirstBI的方案。
0 请登录后投票
   发表时间:2009-03-01  
OLAP 感觉
0 请登录后投票
   发表时间:2009-03-01  
用greenplum吧,这个还要从后台想办法,你指望着用J2EE在程序里面把这个搞定,这个不敢说不能实现,但是花费的代价肯定很大,并且极易出问题。  
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics