5.项目架构介绍

项目架构介绍

技术架构

技术架构描述的是实现数仓用的技术组成

  • 数据源存储(业务开发人员选择)

    • 业务数据都存储在关系型数据库中(都支持SQL操作)

    • Mysql

      • create table 表名(字段 字段类型)
      • 订单数据
      • 门店数据
      • 地区数据
      • 商品数据
    • SQL Server

      • create table 表名(字段 字段类型)
      • 物流数据
      • 库存数据
    • oracle

    • postgresql

    • sqllite

    • derby

  • 数据导入

    • sqoop
    • datax
    • flume
    • kettle
  • 数据仓库

    • 分布式存储 hdfs
    • 分布式计算 mapreduce + hive
    • 资源调度 yarn
    • CDH+hive
  • 数仓数据导出

    • datax
    • sqoop
    • kettle
  • 存储结果的数据库

    • mysql
    • Oracle
    • SQL server
    • PostGreSQL
  • 数据展示

    • FineBI
    • FineReport
    • superset
    • powerBI
    • database
  • 任务调度

    • DS(dolphinscheduler)海豚调度
    • oozie

在这里插入图片描述

数仓架构

数仓的分层建模

将数据分开存储在hdfs上

可以将一个复杂的计算简单化,将复杂计算任务进行拆分,每个计算任务的结果单独保存,任务和任务之间有数据依赖,形成一个数据流程

数仓的基本分层
  • ODS
    • 原始数据
    • 作用:保存数据源导入的数据
  • DW
    • 数据处理
      • 清洗转化 DWD
      • 宽表制作 join DWS
  • APP/ADS
    • 保存计算结果

在这里插入图片描述

数仓建模

每个分层中的表设计,用来保存每个分层计算的结果

  • ODS层
    • 表设计:直接按照数据源的表结构进行设计
    • 表设计规范
      • 命名规范
        • itcast_user
        • ods_day_user
      • 类型规范
        • 整型 bigint
        • 浮点型 decimal
        • 字符串 string
        • 时间 timestamp
  • DW层
    • 维度建模
      • 将表拆分成 事实表和维度表
      • 事实表就是计算的指标内容数据
      • 维度表就是计算时的分组维度数据
  • APP层
    • 保存最终计算结果
    • 按照展示的数据内容进行设计

表设计文档 也叫作数据字典

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值