1

我是一名在金融服务公司实习的数学和 CS 学生,我必须开发一个数据库,用于存储过去部分损益表中的数据,并在将新数据导入数据库后从新数据生成新报告。我只用 Java 和 C++ 进行过编程,所以这是我第一次处理数据库,我没有实际的应用程序经验。我一直在阅读大量有关该主题的书籍和文章,因此我了解了基础知识。

  • 从现在到 2010 年 1 月(13 个季度),我在 excel 中有季度分段报告

  • 有 2 个不同的部分对公司的所有活动进行分类。我现在只称它们为 Segment1 和 Segment2。

  • 这两个部门都有多个部门在不同的国家运营(例如美国部门、欧洲部门等)。Segment1 有 6 个,Segment2 有 12 个。

  • 每个部门服务于多个行业(建筑、能源等),这取决于他们在哪个部门下运营。Segment1下的所有事业部服务16个行业,Segment2下的所有事业部服务10个行业。

  • 每个行业都有 13 条数据被跟踪,它们是收入和支出的混合体。

我想出了一个设计模式,但我对它不是很有信心,希望得到一些建议。我只是把它画出来,然后在 draw io 中重新创建它。我是新手,所以我不知道是否有任何程序可以帮助这个过程。红色 = 主键。蓝色 = 外键。我缩写了这张图片中跟踪的数据的名称,因为它们很长,我不想把它们打出来。

数据库设计

因此,一旦设置了设计,我就想专注于寻找将当前数据从 Excel 导入 Access 的方法(我的经理推荐 Access,因为这是他知道的唯一程序,但如果有其他更好的程序,他愿意接受)。目前,所有细分数据都在 Excel 电子表格中,格式相同,按部门分隔,文件夹按季度分组。列是各个行业,行是被跟踪的数据。电子表格中有很多无关信息,我希望在导入数据时能够删除这些信息。有没有办法使用 VBA 或其他语言自动执行此操作,或者我很可能会被卡住复制和粘贴?

最后,该数据库的最终目标是寻找数据随时间变化的趋势。查询的一些示例是:

  • 计算每个季度的收入与支出的比率
  • 找出哪个部门的收入最多/费用最少

这是我今年夏天唯一的项目,我真的很想把它做好。非常感谢您在此过程中的任何步骤提出的任何建议。

4

1 回答 1

4

简化分析的数据库称为数据仓库

与操作数据库相比,它具有更简单和更非规范化的模式。

您还可以对其执行一组特定的分析操作,例如旋转、切片、切块、向下钻取,称为OLAP。这些通常在数据透视表中可视化。

让你的老板给你买敏捷数据仓库设计(20 美元左右)。它在亚马逊上的评价很高。

考虑Mondrian开源 OLAP 服务器(使用 Access 工作)和Saiku数据透视表

为了简化仓库的加载,请考虑使用诸如Kettle之类的 ETL 工具。

于 2013-06-27T19:54:50.443 回答