数据量达到10亿以上的时候,BI怎么处理
发布时间:2010-05-24 21:29:05 文章来源:www.iduyao.cn 采编人员:星星草
数据量达到10亿以上的时候,BI怎么办?
公司的oracle,数据库做BI,现在的问题是数据量非常大,250G以上,数据量10亿以上。
每天晚上跑ETL和一些存储过程,很多存储过程里面都有对临时表和事实表进行全部删除,插入,数据的动作,速度很慢
早上9点的时候还没有跑完,如果业务部门修改了历史数据,比如09年2月3日的数据,那历史数据都要变,我不知道关于这些大量数据的数据库,如何提高速度,请高人解答。
------解决方案--------------------
250G还算可以,应该是朝九晚五的业务系统。
给几个建议,不过一般来说,应该是已经都这么做了,呵呵:
1:保持数据更新时在数据上打时间戳,只要业务数据发生了写(改)动作,都打上一个时间戳标记变化时间
业务数据应该不会有删除这个说法。
这样抽取数据的时候,只要抽取某一个时间戳后的数据即可。
另外,抽取后的数据带两个戳,一个是抽取时数据带的时间戳,另外就是当前抽取时的时间戳。
这样后面查异常数据的时候好查。
2:“对临时表和事实表进行全部删除”,全部删除不要用Delete,用Truncate table
如果事实表上有索引,写入数据前,先把索引去掉,数据写入后,再重新生成索引
整个过程比带索引写入要快很多
另外就是对数据进行分区。这个应该就更不用说了。。
3:理论上讲,如果单纯的抽取时间过程,能从次日凌晨0:00开始抽,假设抽到7点,那7个小时的时间,可以抽取N亿条数据了。
但是如果抽取后,还带着其他的业务处理,那么时间就拿不准了。
所以建议把抽取和进一步处理分开,先保证在下一个业务区间来临时,把上一业务区间变化的数据抽好,再做其他的处理。这样即使是第2天已经上班业务数据又发生了新的变化,也不会再影响到上一区间的结果。
4:抽取的时候不要一次性全部抽,比如可以分公司(或者地域)区间的,一家公司一家公司抽。
这样的速度一般比一次性全部抽取要快一些。
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
PowerDesigner15少了四个菜单
我新安装的PowerDesigner15没有Model,Symbol,Database,Report这几个菜单,什么原因呢
------解决方...
-
数据仓库 元数据管理问题
刚刚接触数据数据仓库
对于元数据管理 我不知道怎么弄 ?
有哪位会的 帮帮忙啊
我有的是Sybase 创建...
-
Unix文件和Dos格式文件向数据库导数的问题?!请高手解答
我最近遇到的问题是这样的,我在AIX服务器下向greenplum数据库导数的时候,文本...
-
在线紧急求助,公司系统崩溃,重装系统,怎么样使用原来的数据库!
由于公司系统崩溃,重装系统了。
以前的系统装在D盘,sql2000也装在D盘
现...
-
数据量达到10亿以上的时候,BI怎么办?
公司的oracle,数据库做BI,现在的问题是数据量非常大,250G以上,数据量10亿以上。
每天晚上跑ETL和...
-
数据库 开发 资料 !
大家手头上的数据库开发的资料拿出来共享了!
大家如果 有感觉不错的 数据库开发资料都可以贴上,下载、参阅网址...
-
高分求解有关数据建模方面的问题,进来看看也有分!
什么是数据建模,为什么要进行数据建模,有什么好处,数据挖掘和数据建模之间的关系,我...
-
公司要上BI项目,我负责做一个原型prototype。看了一下csdn版
深深感到国内IT行业真是悲剧啊。
------解决方案------------------...
-
‘数据仓库’初学着请指导!
毕业将近 5 年多少时间再搞软件开发,在此过程中接触过 Oracle 、sql server!
现在学习 数据仓库、BI、E...
-
部署项目:SQL SERVER 2005 Analysis Service ??
部署项目:SQL SERVER 2005 Analysis Service
我在本机的数据库服务器上部署后可运...