### 数据仓库开发心得 #### 一、为什么要推动数据仓库(Data Warehouse, DW) 数据仓库的建设对于企业来说至关重要,它能够解决一系列与数据管理和数据分析相关的问题。以下几点详细阐述了推动数据仓库的重要性和必要性: 1. **数据可信性**:在传统的企业环境中,由于各个部门可能基于不同的时间基准或算法来收集和处理数据,导致同一数据项在不同部门之间出现差异,这会让管理层在决策时感到困惑。通过构建统一的数据仓库,可以确保各部门使用的数据具备一致性,从而提高数据的可信度。 - **时间基准不一**:例如,销售部门和财务部门可能会有不同的时间划分方式,这可能导致数据比较时出现问题。 - **算法差异**:不同部门在计算关键指标时采用的算法不同,比如销售额的计算方式。 - **无公共的起始数据源**:缺乏一个中心化的数据存储平台会导致数据孤岛现象严重,难以实现跨部门的数据共享。 2. **报表生产效率问题**:由于在线事务处理(OLTP)系统的特性,它们通常只关注于事务处理而忽视了报表生成,导致报表制作效率低下。数据仓库通过整合来自多个OLTP系统的数据,可以显著提高报表生成的效率和质量。 3. **历史数据保存**:OLTP系统通常只能保存有限的历史数据,而数据仓库可以长期保存这些数据,满足决策支持系统(DSS)对长时间序列数据的需求。 4. **关键字段变更记录**:在OLTP系统中,关键字段如客户信息等的变更往往没有被记录下来,这在后续分析中会成为一个问题。数据仓库可以设计为记录这些变更,以便于追踪和分析。 5. **面向应用与面向主题的区别**:传统的面向应用的设计方法无法满足面向主题分析的需求。数据仓库设计时注重面向主题的数据组织,以更好地支持分析需求。 6. **决策需求的独特性**:决策者的需求往往是突发性的、独特的,并且具有很高的启发性,这些需求无法通过常规的报表系统满足。数据仓库提供了灵活的数据分析能力,可以适应这类需求。 7. **业务行为可控性**:通过数据仓库可以实现对业务行为的事后监控,有助于发现问题并及时调整策略。 8. **提升工作效率**:数据仓库减轻了用户的统计工作负担,使得他们有更多时间投入到更高价值的工作中。 9. **降低信息获取成本**:数据仓库的建立可以降低企业获取信息的成本,加速决策过程,提高市场响应速度。 10. **IT部门的角色转变**:没有数据仓库,IT部门往往处于被动应对的状态,很难跟上管理层不断变化的需求。数据仓库可以让IT部门变得更加主动。 11. **政策与活动效果评估**:数据仓库可以帮助企业评估新政策或营销活动的效果。 12. **作为EIS和数据挖掘的基础**:数据仓库是执行信息系统(EIS)和数据挖掘技术的基础架构之一。 #### 二、推动数据仓库之前IT人员需具备的观念 1. **用户导向**:首先满足用户的需求,在使用过程中引导用户走向正确的发展路径。 2. **投资回报率**:向高层展示数据仓库项目的投资回报率,使其成为决策依据。 3. **前瞻性思考**:比用户考虑得更细致,因为随着管理精细化程度的提高,细节变得越来越重要。 4. **迭代开发**:数据仓库建设是一个渐进的过程,需要不断迭代更新。 5. **OLAP软件的选择**:OLAP软件可以是数据仓库的一部分,但不是必需的。选择是否使用OLAP软件应该基于用户的具体需求。 6. **前端展现工具**:前端展现工具应该具备向上和向下钻取功能,以便用户能够深入分析数据。 #### 三、与老板沟通的观念 1. **需求界限**:明确数据仓库项目的边界,避免无限扩大需求范围。 2. **角度差异**:理解不同部门从各自的角度出发可能会得出不同的结论,接受这种差异的存在。 3. **资料可信度优先**:强调原始数据的质量和业务行为的规范比工具本身更为重要。 4. **术语定义统一化**:由专门机构负责业务术语的定义和解释,确保从上至下的一致性。 5. **高层支持**:获得企业高层的支持对于项目成功至关重要。 6. **数据动态性**:由于OLTP系统的数据持续变动,数据仓库中的数据也会相应地发生变化。 7. **目的定位**:明确数据仓库主要用于趋势分析、预测和数据挖掘,而不是用于精确计算奖金等具体事务。 8. **认知一致性**:确保全体员工对于数据仓库的意义和作用有一致的理解。 9. **用户专业化**:重视用户培训,提高其独立完成报表设计的能力。 10. **软件选择**:采取横向联合的方式选择软件供应商,不必拘泥于单一厂商的产品。 #### 四、数据仓库设计模式和方法 1. **数据存储选择**:数据仓库应基于关系型数据库(RDBMS)构建,而数据集市(dm)可以采用RDBMS或多维数据库(MDDB)。 2. **数据集市设计**:星型设计是最常见的模式,雪花模型是备选项。 3. **设计模式差异**:数据仓库的设计以数据驱动为主,与面向应用的OLTP系统设计有所不同。 4. **面向主题设计**:数据集成是数据流入数据仓库的前提条件。 5. **分步实施**:每次开发一个主题,逐步推进整个项目。 6. **逆规范化**:为了提高查询性能,在数据集市中采用逆规范化设计是有必要的。 7. **迭代开发模式**:通过不断迭代改进设计,以用户反馈为核心进行优化。 8. **开发流程**:首先建立企业数据模型,明确企业信息需求的基础上逐步推进数据仓库的构建。 通过以上总结可以看出,数据仓库不仅是一项技术解决方案,更是企业管理思维和方法论的体现。它能够帮助企业有效地管理海量数据,为决策提供有力支持,从而提升整体竞争力。
- 粉丝: 1
- 资源: 23
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- YOLO-yolo资源
- 适用于 Java 项目的 Squash 客户端库 .zip
- 适用于 Java 的 Chef 食谱.zip
- Simulink仿真快速入门与实践基础教程
- js-leetcode题解之179-largest-number.js
- js-leetcode题解之174-dungeon-game.js
- Matlab工具箱使用与实践基础教程
- js-leetcode题解之173-binary-search-tree-iterator.js
- js-leetcode题解之172-factorial-trailing-zeroes.js
- js-leetcode题解之171-excel-sheet-column-number.js