数仓技术实现

1 传统数仓 :

由单机数据库发展而来的,由关系型数据库组成MPP(大规模并行处理) 集群

将一张大表拆分到各个节点进行存储,分库分表存储(哈希)

在数据量较小时,具备优越的性能、数据量一旦达到一定量级后,就有局限性了。

缺点: 1)扩展性有限 ,2) 热点问题(数据倾斜)--可以通过数据加盐的方式解决

2 大数据数仓

依托大数据技术,利用大数据天然的扩展性,完成海量数据的存放。

将SQL转换为大数据计算引擎任务,完成数据分析 。 

并发计算 

优点 : 

可拓展,分布式文件系统拆分存储 ,计算时还原文件为原始表结构 ;

安全性 : 更安全

缺点: 

1 SQL支持率

2 事物支持

3 对于数据量没有达到一定量级时,计算效率较低。 

MPP架构和分布式结构区别

MPP :

  1. 传统数仓的常见技术架构,单机数据库节点组成集群,提升整体处理性能
  2. 节点间为非共享架构(share nothing),每个节点有独立的磁盘存储系统和内存系统
  3. 没台数据节点通过专用网络或者商业通用网络互相连接,彼此协同计算,作为整体提供服务
  4. 设计上优先考虑C,其次考虑A,尽量做好P

优点 : 

运算方式精细,延迟低,吞吐低

适合中等规模的结构化数据处理

缺点 : 

存储位置不透明,通过哈希决定数据所在的物理节点,查询任务在所有节点执行*架构决定)

并行计算时,单节点瓶颈会成为整个系统短板,容错率低

分布式事务的时限会导致扩展性降低

分布式架构(hadoop 架构/批处理架构)

  1. 各节点实现场地自治(可以单独运行局部应用), 数据在集群中全局透明共享(与MPP最大的区别)
  2. 每个节点通过广域网或局域网连接,节点间通信开销较大,在运算时致力减少数据移动(移动计算而非移动数据)
  3. 优先考虑P(分区容错性),然后A(可用性),最后C(一致性)。

一个数据会拆分成多个分片,一个分片会存储多个副本,解决单点故障的问题。

分布式处理方式比较粗犷(将数据当做文件存储),mpp是精细的。 

优点 :

扩展性极强,处理结构化半结构化数据,适合海量数据的存储和处理 。

MPP+分布式架构

存储层:分布式存储,上层采用MPP精细化处理,减少延迟。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值