一直在听数据库和数据仓库,但是有时候也搞不懂这两个有啥区别,在看了一些文档再对比自己做的项目。
暂时这么理解
什么是数据库
数据库(Database)是按照数据结构来组织、存储和管理数据的建立在计算机存储设备上的仓库。
数据库是长期储存在计算机内、有组织的、可共享的数据集合。数据库中的数据指的是以一定的数据模型组织、描述和储存在一起、具有尽可能小的冗余度、较高的数据独立性和易扩展性的特点并可在一定范围内为多个用户共享。
什么是数据仓库?
1.数据仓库(Data Warehouse),可简写为DW或DWH,数据仓库,是为了企业所有级别的决策制定计划过程,提供所有类型数据类型的战略集合。它出于分析性报告和决策支持的目的而创建。为需要业务智能的企业 ,为需要指导业务流程改进、监视时间,成本,质量以及控制等;
2.数据仓库是一个面向主题、集成的、非易失和时变的数据集合,用于支持管理者的决策过程
可以看到上面两种解释都讲到数据仓库是用于决策的。
他的面向主题在我看来可以理解为需求。
我们不同的系统都会往数据库里传输数据。数据库里有很多种的数据,有可能重复,无用,或者需要进行处理。我们根据自己的需要来筛选处理数据并汇总,比如项目中得到基础层的表,最后得到的表的数据跟我们的主题有关,我们可以根据主题去查表里的数据。当然表述可能还是有点不准确,大概理解
数据仓库的特点
1.数据仓库是面向主题的。
主题是进行决策所关心的重点方面。一个主题可能跟多个操作系统的数据有关
2.数据仓库是集成的。
数据仓库的数据是从原来的分散的数据库数据(mysql等关系型数据库)抽取出来的。操作型数据库与DSS(决策支持系统)分析型数据库差别甚大。第一,数据仓库的每一个主题所对应的源数据在所有的各个分散的数据库中,有许多重复和不一样的地方,且来源于不同的联机系统的数据都和不同的应用逻辑捆绑在一起;第二,数据仓库中的综合数据不能从原来有的数据库系统直接得到。因此子在数据进入数据仓库之前,必然要经过统一与综合,这一步是数据仓库建设中最关键,最复杂的一步,所要挖成的工作有:
要统计源数据中所有矛盾之处,如字段的同名异议、异名同义、单位不统一,字长不统一等。
进行数据的综合和计算。数据仓库中的数据综合工作可以在原有数据库抽取数据时生成,但许多是在数据仓库内部生成的,即进入数据仓库以后进行综合生成的。
3.数据仓库的数据是随着时间的变化而变化的。
数据仓库中的数据不可更新是针对应用来说的,也就是说,数据仓库的用户进行分析处理是不进行数据更新操作的。但并不是说,在从数据集成输入数据仓库开始到最后被删除的整个生存周期中,所有的数据仓库数据都是永远不变的。
数据仓库的数据是随着时间变化而变化的,这是数据仓库的特征之一。这一特征主要有以下三个表现:
1数据仓库随着时间变化不断增加新的数据内容。数据仓库系统必须不断捕捉OLTP数据库中变化的数据,追加到数据仓库当中去,也就是要不断的生成OLTP数据库的快照,经统一集成增加到数据仓库中去;但对于确实不在变化的数据库快照,如果捕捉到新的变化数据,则只生成一个新的数据库快照增加进去,而不会对原有的数据库快照进行修改。
2数据库随着时间变化不断删去旧的数据内容 。数据仓库内的数据也有存储期限,一旦过了这一期限,过期数据就要被删除。只是数据库内的数据时限要远远的长于操作型环境中的数据时限。在操作型环境中一般只保存有60-90天的数据,而在数据仓库中则要需要保存较长时限的数据(例如:5~10年),以适应DSS进行趋势分析的要求。
3数据仓库中包含有大量的综合数据,这些综合数据中很多跟时间有关,如数据经常按照时间段进行综合,或隔一定的时间片进行抽样等等。这些数据要随着时间的变化不断地进行从新综合。因此数据仓库的数据特征都包含时间项,以标明数据的历史时期。
4.数据仓库的数据是不可修改的。
数据仓库的数据主要提供企业决策分析之用,所涉及的数据操作主要是数据查询,一般情况下并不进行修改操作。数据仓库的数据反映的是一段相当长的时间内历史数据的内容,是不同时点的数据库快照的集合, 以及基于这些快照进行统计、综合和重组的导出数据,而不是联机处理的数据。数据库中进行联机处理的书库进过集成输入到数据仓库中,一旦数据仓库存放的数据已经超过数据仓库的数据存储期限,这些数据将从当前的数据仓库中删去。因为数据仓库只进行数据查询操作,所以数据仓库当中的系统要比数据库中的系统要简单的多。数据库管理系统中许多技术难点,如完整性保护、并发控制等等,在数据仓库的管理中几乎可以省去。但是由于数据仓库的查询数据量往往很大,所以就对数据查询提出了更高的要求,他要求采用各种复杂的索引技术;同时数据仓库面向的是商业企业的高层管理层,他们会对数据查询的界面友好性和数据表示提出更高的要求;
数据库与数据仓库区别自我理解
最新推荐文章于 2024-06-22 21:16:08 发布