搭建数据仓库的基本步骤

一、主要步骤

1、确定主题 
 确定数据分析的主题.eg:分析某年某月某地区的各种啤酒销售情况. 
 主题要体现出某一方面的各个分析维度和统计量度之间的关系.
2、确定度量 
 度量是分析的技术指标,一般为数值型数据.eg:某地区某派出某粒度所发生的警情积分值
3、确定分析粒度 
 采用”最小粒度原则”来满足度量的不同聚合程度.eg:将时间粒度精确到秒可以满足小时,天,周….等不同粒度的度量值
4、确定维度表 
 分析主题的各个维度.eg:主题:分析某年某月某地区的各种啤酒销售情况. 
 则维度应该有时间维 , 地域维 , 产品维 .基于不同维度,可以看到各种不同维度的度量值.
5、确定事实表 
将原始数据表和各个维度表进行关联,生成事实表. 
注意:考虑到数据源存在脏数据,在关联时候应该使用外连接.将各个维度的代理键存放到事实表中.另外,度量值将由粒度对源数据进行聚合来得到.
 

二、数据仓库的四个特点

1、面向主题:数据仓库都是基于某个明确主题,仅需要与该主题相关的数据,其他的无关细节数据将被排除掉
2、集成的:从不同的数据源采集数据到同一个数据源,此过程会有一些ETL操作
3、随时间变化:关键数据隐式或显式的基于时间变化
4、数据仓库的数据是不可更新的:
数据装入以后一般只进行查询操作,没有传统数据库的增删改操作。
数据仓库的数据反映的是一段相当长的时间内历史数据的内容,是不同时点的数据库快照的集合,
以及基于这些快照进行统计、综合和重组的导出数据,而不是联机处理的数据。

分析:根据个人以及查看相关的资料也可以总结两大特点:

1、数据量:数据量特别的庞大

2、及时性:数据是实时变化的,而不是离线数据 

三、二者之间的对比

名称数据库数据仓库
概念用来存放数据的仓库逻辑概念上与数据库基本一致,都是用数据库软件来管理数据的
表维度二维多维
作用主要是数据查询主要是数据挖掘、数据分析、管理决策

   PS: 

1、业务数据库中的数据结构是为了完成交易而设计的,不是为了而查询和分析的便利设计的。
2、业务数据库大多是读写优化的,即又要读(查看商品信息),也要写(产生订单,完成支付)。

四、常见的数据库与数据仓库

数据库 比较流行的有:MySQL, Oracle, SqlServer等
数据仓库 比较流行的有:AWS Redshift, Greenplum, Hive等

总结:

企业级数据仓库/数据集市

企业级数据仓库:突出大而全,不论是细致数据和聚合数据它全都有,设计时使用事实星座模式.

数据集市:可以看做是企业级数据仓库的一个子集,它是针对某一方面的数据设计的数据仓库,例如为公司的支付业务设计一个单独的数据集市。由于数据集市没有进行企业级的设计和规划,所以长期来看,它本身的集成将会极其复杂。其数据来源有两种,一种是直接从原生数据源得到,另一种是从企业数据仓库得到。

 

 

  • 2
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
搭建一个数据仓库步骤和代码取决于你要使用的技术栈和具体的业务需求,这里提供一个基本搭建步骤和代码示例: 1.需求分析和设计 在开始搭建数据仓库之前,需要先进行需求分析和设计。主要包括: - 数据仓库的目标和业务需求 - 数据源的类型和数量 - 数据模型设计和数据清洗规则 - 数据仓库的架构设计和容量规划 - 数据仓库的查询和分析需求 2.搭建基础设施 在进行数据仓库搭建之前,需要先搭建好基础设施,包括: - 数据库服务器和存储设备 - 数据库管理系统 - ETL(抽取、转换、加载)工具 - 数据可视化工具 3.数据抽取和清洗 数据抽取和清洗是数据仓库搭建的重要步骤,需要使用 ETL 工具进行。具体步骤包括: - 从数据源中抽取数据 - 对数据进行清洗、转换、合并等处理 - 将处理后的数据加载到数据仓库中 以下是使用 Python 和 Pandas 进行数据清洗和转换的示例代码: ```python import pandas as pd # 读取数据源 df = pd.read_csv('source_data.csv') # 数据清洗和转换 df = df.dropna() # 删除缺失值 df['date'] = pd.to_datetime(df['date']) # 转换日期格式 df['sales'] = df['sales'] * 1000 # 转换货币单位 # 保存处理后的数据到 CSV 文件 df.to_csv('cleaned_data.csv', index=False) ``` 4.数据仓库建模和加载 建立数据模型是数据仓库搭建的关键步骤之一,需要根据业务需求设计合适的数据模型。具体步骤包括: - 设计维度表和事实表 - 设计数据架构 - 加载数据到数据仓库中 以下是使用 SQL Server 建立数据模型的示例代码: ```sql -- 创建维度表 CREATE TABLE dim_date ( date_key INT PRIMARY KEY, date DATE, year INT, month INT, day INT ); -- 创建事实表 CREATE TABLE fact_sales ( date_key INT, product_key INT, sales DECIMAL(18,2), CONSTRAINT fk_date_key FOREIGN KEY (date_key) REFERENCES dim_date (date_key), CONSTRAINT fk_product_key FOREIGN KEY (product_key) REFERENCES dim_product (product_key) ); -- 加载数据到维度表 INSERT INTO dim_date (date_key, date, year, month, day) SELECT DISTINCT CAST(date AS INT), date, YEAR(date), MONTH(date), DAY(date) FROM cleaned_data; -- 加载数据到事实表 INSERT INTO fact_sales (date_key, product_key, sales) SELECT dim_date.date_key, dim_product.product_key, cleaned_data.sales FROM cleaned_data JOIN dim_date ON cleaned_data.date = dim_date.date JOIN dim_product ON cleaned_data.product = dim_product.product; ``` 5.数据可视化和分析 数据可视化和分析是数据仓库的重要应用之一,需要使用相应的工具进行。具体步骤包括: - 使用 BI 工具进行数据可视化和报表设计 - 使用 SQL 进行数据查询和分析 以下是使用 Power BI 进行数据可视化和报表设计的示例: ![Power BI 示例图](https://i.imgur.com/GlWD8Yl.png) 以上是基本数据仓库搭建步骤和代码示例,具体的实现方式和代码会根据不同的技术栈和业务需求而有所不同。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值