数据仓库和数据库区别
两者最大得区别在于用途,数据库 Database (Oracle, Mysql, PostgreSQL)主要用于**事务处理**,数据仓库 Datawarehouse (Amazon Redshift, Hive)主要用于**数据分析**。
- 数据仓库是面向主题的,而操作型数据库的数据面向事务处理任务,各个任务之间是相互隔离的;
- 什么是主题?在逻辑意义上,他是对企业中某一个宏观分析领域所涉及的分析对象。
- 数据仓库是集成的,从原来分散的数据库抽取数据过来的
- 这一步是数据仓库建设中最关键,最复杂的一步,所要挖成的工作有:
- 要统计源数据中所有矛盾之处,如字段的同名异议、异名同义、单位不统一,字长不统一等。
- 进行数据的综合和计算。数据仓库中的数据综合工作可以在原有数据库抽取数据时生成,但许多是在数据仓库内部生成的,即进入数据仓库以后进行综合生成的。
- 这一步是数据仓库建设中最关键,最复杂的一步,所要挖成的工作有:
- 数据仓库数据是不可修改的,追加数据
数据库的特点
- 相对复杂的表格结构,存储结构相对紧致,少冗余数据。
- 读和写都有优化。
相对简单的read/write query,单次作用于相对的少量数据。
数据仓库(Datawarehouse)的特点是
相对简单的(Denormalized)表格结构,存储结构相对松散,多冗余数据。
- 一般只是读优化。
- 相对复杂的read query,单次作用于相对大量的数据(历史数据)。
维度和度量
维度:即观察数据的角度。比如员工数据,可以从性别角度分析,也可以更加细化,从入职时间或者地区的维度来观察。维度是一组离散的值,比如性别中的男和女,或者时间维度上的每一个独立的日期。因此统计时可以将维度值相同的记录聚合在一起,然后用聚合函数做累加、平均、最大和最小值等聚合计算。
度量:即被聚合(观察)的统计值,也就是聚合运算的结果。比如员工数据中不同性别员工的人数,又或者说在同一年入职的员工有多少。