数据仓库是从各种渠道收集和管理数据的技术,可提供有意义的业务洞察,战略性地使用数据。
它用于查询和分析而不是事务处理,是将数据转换为信息并及时向用户提供的过程。
决策支持数据库(数据仓库)与组织的运营数据库分开维护。 但是数据仓库不是产品,而是环境。 它是属于信息系统,向用户传统运营数据存储难以访问或展示的当前和历史决策支持信息。
数据仓库是BI系统的核心,BI是为数据分析和报告而构建的。
你们很多人都知道,3NF设计的库存系统数据库很多都有相互关联的表。 例如,有关当前库存信息的报告可包含超过12个连接条件,查询慢。 数据仓库提供了一种新设计,可以缩短响应时间,提高报表和分析查询的性能。
数据仓库系统的其他名称:
- 决策支持系统(DSS Decision Support System)
- 执行信息系统(Executive Information System)
- 管理信息系统(Management Information System)
- 商业智能解决方案(Management Information System)
- 分析应用(Analytic Application)
- 数据仓库(Data Warehouse)
数据仓库的历史
数据仓库使用户能够理解并提高其组织的绩效。 随着计算机系统变得越来越复杂并需要处理越来越多的信息,仓库数据的需求也在不断变化。
1960年 - Dartmouth和General Mills在一个联合研究项目中,提出了维度概念。
1970 - Nielsen和IR为零售引入了维度数据。
1983- Tera推出了专为决策支持而设计的数据库管理系统
数据仓库始于20世纪80年代后期,当时IBM工作人员Paul Murphy和Barry Devlin开发了业务数据仓库。
然而,真正的概念是由Inmon Bill提出的。 他是数据仓库之父。 他撰写了关于仓库和公司信息工厂的建设,使用和维护的各种主题。
Datawarehouse如何运作?
数据仓库作为中央存储库,信息从一个或多个数据源到达。 数据从事务系统和其他关系数据库流入数据仓库。
数据可能是:
- 结构化的
- 半结构化
- 非结构化数据
处理,转换和提取数据,以便用户可以通过商业智能工具,SQL客户端和电子表格访问数据仓库中的已处理数据。 数据仓库将来自不同来源的信息合并到综合数据库中。
通过合并所有这些信息,组织可以更全面地分析其客户。 这有助于确保它已考虑所有可用信息。 数据仓库使数据挖掘成为可能。 数据挖掘旨在寻找可能导致更高销售额和利润的数据模式。
数据仓库的类型
1.企业数据仓库:
企业数据仓库是一个集中式仓库。 它为整个企业提供决策支持服务。 它提供了统一的方法来组织和表示数据。 它还提供根据主题对数据进行分类并根据这些划分进行访问的能力。
2.运营数据存储:
只需要数据存储的运营数据存储(也称为ODS Operational Data Store)。 在ODS中,数据仓库实时刷新。 因此,它广泛地用于诸如存储雇员记录等。
3.数据集市:
数据集市是数据仓库的子集。 它专门针对特定业务部门而设计,例如销售,财务,销售或财务。 在独立的数据集市中,数据可以直接从源收集。
数据仓库的一般阶段
离线操作数据库:
在此阶段,数据只是从运营系统复制到服务器。
离线数据仓库:
数据仓库中的数据定期从运营数据库更新。 数据仓库中的数据经过映射和转换,以满足数据仓库的目标。
实时数据仓库:
运营数据库中发生任何事务,就会更新数据仓库。 例如,航空公司或铁路预订系统。
集成数据仓库:
运营系统执行事务时,数据仓库会不断更新。 然后,Datawarehouse生成传递回运营系统的事务。
数据仓库的组件
数据仓库的四个组成部分是:
加载管理器:加载管理器也称为前端组件。 它执行与提取和加载数据到仓库相关的所有操作。 这些操作包括转换准备用于进入数据仓库的数据。
仓库管理:仓库管理执行与仓库中数据管理相关的操作。 它执行数据分析等操作,以确保一致性,索引和视图的创建,非规范化和聚合的生成,源数据的转换和合并以及归档和备份数据。
查询管理器:查询管理器 也被称为后端组件。 它执行与用户查询管理相关的所有操作操作。 此数据仓库组件的操作是对相应表的直接查询。
最终用户访问工具:
这分为五个不同的组,如1.数据报告 2.查询工具 3.应用程序开发工具 4. EIS工具 5.OLAP工具和数据挖掘工具。
参考资料
- python测试开发项目实战-目录
- python工具书籍下载-持续更新
- python 3.7极速入门教程 - 目录
- 讨论qq群630011153 144081101
- 原文地址
- 本文涉及的python测试开发库 谢谢点赞!
- [本文相关海量书籍下载](https://github.com/china-testing/python-api-tesing/blob/master/books.md
- http://spark.apache.org/docs/2.1.0/api/python/pyspark.sql.html
谁需要数据仓库?
- 依赖大数据的决策者
- 使用自定义复杂流程从多个数据源获取信息的用户。
航空公司:
在航空公司系统中,它用于职员分配,路线盈利能力分析,旅客计划促销等。
银行业:
管理可用的资源。 一些银行也用于市场调研,产品和运营的绩效分析。
卫生保健:
医疗保健行业还使用数据仓库来制定战略并预测结果,生成患者的治疗报告,与保险公司等共享数据,医疗援助服务等。
公共部门:
在公共部门,数据仓库用于情报收集。 它有助于政府机构维护和分析每个人的税务记录,健康政策记录。
投资和保险业:
分析数据模式,客户趋势以及跟踪市场变动。
零售:
在零售连锁店中,数据仓库广泛用于分销和营销。 它还有助于跟踪项目,客户购买模式,促销以及用于确定定价政策。
电信:
产品促销,销售决策和制定分销决策。
酒店业:
设计和估计他们希望根据客户的反馈和旅行模式定位客户的广告和促销活动。
实施数据仓库的步骤
- 企业战略 :在此我们确定技术,包括当前的架构和工具。 我们还确定事实,维度和属性。 还传递了数据映射和转换。
- 分阶段交付 :应根据主题领域分阶段实施数据仓库。 应首先实施预订和计费等相关业务实体,然后相互集成。
- 迭代原型 :数据仓库应该迭代开发和测试。
这里是Datawarehouse实施的关键步骤及其可交付成果。
实施数据仓库的最佳实践
- 确定计划以测试数据的一致性,准确性和完整性。
- 数据仓库必须很好地集成,定义良好并带有时间戳。
- 在设计Datawarehouse时,请确保使用正确的工具,坚持生命周期,注意数据冲突并准备好从错误中学习。
- 切勿更换运营系统和报告
- 不要在提取,清理和加载数据上花费太多时间。
- 确保所有利益相关者(包括业务人员)参与数据仓库实施流程。 确定数据仓库是联合/团队项目。 您不希望创建对最终用户无用的数据仓库。
- 为最终用户准备培训计划。
为什么我们需要数据仓库? 优点缺点
数据仓库的优点:
- 数据仓库允许业务用户快速访问来自某些来源的关键数据。
- 数据仓库提供有关各种跨职能活动的一致信息。 它还支持临时报告和查询。
- 数据仓库有助于集成许多数据源,以减少生产系统的压力。
- 数据仓库有助于缩短分析和报告的总周转时间。
- 重组和集成使用户更容易用于报告和分析。
- 数据仓库允许用户访问多个源关键数据。 因此,它节省了用户从多个源检索数据的时间。
- 数据仓库存储大量历史数据。 这有助于用户分析不同的时间段和趋势,以便进行未来的预测。
数据仓库的缺点:
- 不是非结构化数据的理想选择。
- 数据仓库的创建和实施肯定会有时间混乱。
- 数据仓库很容易过时
- 难以对数据类型和范围,数据源架构,索引和查询进行更改。
- 数据仓库看起来很简单,但实际上,对于普通用户来说,它太复杂了。
- 尽管在项目管理方面做出了最大努力,但数据仓库项目范围仍将不断增加。
- 有时仓库用户会制定不同的业务规则。
- 组织需要将大量资源用于培训和实施目的。
数据仓库的未来
- 监管约束的变化可能会限制组合不同数据来源的能力。 这些不同的来源可能包括难以存储的非结构化数据。
- 随着数据库规模的增长,对构成非常大的数据库的估计值继续增长。 构建和运行数据仓库系统非常复杂,而且数据仓库系统的规模也在不断扩大。 目前可用的硬件和软件资源不允许在线保存大量数据。
- 多媒体数据检索问题。
数据仓库工具
市场上有许多数据仓库工具。 这里有一些最突出的:
1.MarkLogic:
MarkLogic使用一系列企业功能使数据集成更容易,更快捷。 此工具有助于执行非常复杂的搜索操作。 它可以查询不同类型的数据,如文档,关系和元数据。
http://developer.marklogic.com/products
甲骨文:
Oracle是业界领先的数据库。 它为内部部署和云端提供了广泛的数据仓库解决方案选择。 它有助于通过提高运营效率来优化客户体验。
https://www.oracle.com/index.html
3.亚马逊RedShift:
它使用标准SQL和现有BI工具分析所有类型数据的简单且经济高效的工具。 它还允许使用查询优化技术运行针对数PB的结构化数据的复杂查询。