日期:2014-05-18  浏览次数:20504 次

有偿求助mssql 数据仓库架构设计
业务需求:
各位大牛好,我在做一个媒体分析的小软件。主要是对各个电视台播放的电视剧进行信息汇总统计。用.net 程序把每年的160个TXT文件内的数据(每个TXT大概20W条)导入到数据库的主表里,然后用程序对导入的数据进行查询生成明细报告和统计报告。主表的结构如下
CREATE TABLE [dbo].[收视](
[收视地区] [char](30) COLLATE Chinese_PRC_CI_AS NOT NULL,
[时段] [char](10) COLLATE Chinese_PRC_CI_AS NOT NULL,
[剧目] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL,
[集数] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL,
[剧场冠名] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL,
[播出频道] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL,
[日期] [datetime] NOT NULL,
[周日] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL,
[开始时间] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL,
[时长] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL,
[结束时间] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL,
[收视率%四岁以上所有人] [float] NOT NULL,
[收视率%男] [float] NOT NULL,
[收视率%女] [float] NOT NULL,
[收视率%4-12岁少儿期] [float] NOT NULL,
[收视率%13-18岁青少年期] [float] NOT NULL,
[收视率%19-30岁青年期] [float] NOT NULL,
[收视率%31-45岁中年期] [float] NOT NULL,
[收视率%46-60岁中老年期] [float] NOT NULL,
[收视率%60岁以上老年期] [float] NOT NULL,
[收视人口(000)四岁以上所有人] [int] NOT NULL,
[收视人口(000)男] [int] NOT NULL,
[收视人口(000)女] [int] NOT NULL,
[收视人口(000)4-12岁少儿期] [int] NOT NULL,
[收视人口(000)13-18岁青少年期] [int] NOT NULL,
[收视人口(000)19-30岁青年期] [int] NOT NULL,
[收视人口(000)31-45岁中年期] [int] NOT NULL,
[收视人口(000)46-60岁中老年期] [int] NOT NULL,
[收视人口(000)60岁以上老年期] [int] NOT NULL
) ON [s]([日期])

这个表是主表,每年数据量在5000千万左右。现在有4年的数据要进行导入。已经按照日期列进行每月分区。
因为所有列数据不唯一所以没有办法创建唯一索引。
需要对收视人口和收视率进行统计。
其他几个小表数据量都很小,涉及到简单的联合查询。
主要功能就是查询生成明细报告、统计报告。
要求:
对源数据库进行设计、对数据仓库按业务需求进行设计。

有感兴趣的朋友欢迎加我QQ或MSN详聊
qq:355572711
msn:xiaoxuan158@163.com


------解决方案--------------------
DB里倒简单,数据仓库还没玩过。。本想抽时间学习一下,无奈忙了点
帮顶