问:集团下面有 10多家分公司,每公司有多台数据库服务器(SQL Server, Oracle)未来公司拟建立一个信息中心,建立资料仓库,我想现在多了解这方面的知识,以为后面作准备,请专家指点:
1. 该怎么入门数据仓库这一领域?
3. 数据库有SQL SERVER 和 ORACLE 可以整合到一起吗?
现在集团在作报表整合工作,也就是一张报表要访问多家公司的DB,可是感觉没有好的方法。我们做集团报表整合工作,是这样进行的:我们在集团信息中心一台SQL SERVER 2000 服务器上 建立一个数据库,每天各分公司排程定时把集团报表所需要的数据拋到该服务器,目前遇到如下问题:
1.由于报表很多,涉及各个部门的报表,每天由各个分公司把数据拋过来这样各个公司IT任务都比较重,而且如果TABLE有变动的话,各个公司都要跟着变,各项开销较大,而且排程太多管理起来也困难;
2.集团各个公司的管理人员都要通过IE来查询集团信息中心的报表,这些拋过来的数据,并没有经过汇总整理,所以有些分公司查询报表速度会很慢;如果要让各厂用户直接查询经过预处理的报表结果,这样就可以改善报表访问速度问题,但是如何预处理这些拋过来的数据呢?
请专家指点迷津,给一些好的建议。
答:1.一般来说, 数据仓库不是原有资料的直接整合, 而是根据业务需要, 对历史数据进行定期整理, 抽取分析需要的数据放入数据库中.
一般来说, 这种整理会把该合并的数据合并(例如, 对于销售单, 一般是根据需要按部门,产品,客户等汇总, 而不像业务数据库中那样按单据),
该拆分的拆分, 例如, 对于日期, 一般会把年,季,月这些信息单独拆分出来.
你可以看看数据挖掘, sql server的analyse serversice, olap等方面的资料, 这些在sql联机帮助上就有.
2.数据仓库既然不是直接连接业务数据库, 则是对业务数据的抽取, 自然也就不会存在各种类型的数据库的问题, 因为数据抽取工作就是从不同类型的业务数据库中抽取数据, 最终的结果都是放在同一种数据库中.
从你最后的需求"现在集团在作报表整合工作,也就是一张报表要访问多家公司的DB" 这个也可以看得出来. 你需要的东西用sql server的: analyse server, report server就能满足大多数需求(sql 2005中是BI的功能)