深入浅出分布式技术原理
陈现麟
伴鱼技术中台负责人,前小米工程师
21241 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 39 讲
深入浅出分布式技术原理
15
15
1.0x
00:00/00:00
登录|注册

18|分片(二):垂直分片和混合分片的 trade-off

写入性能牺牲
高效压缩
适合宽表按列读取
不适合宽表按列读取
适合按行写入和读取
读多写少
高效压缩
按列顺序存储
适用场景
行式存储和列式存储的优缺点
没有完美架构,只有完美的trade-off
依赖业务场景特点
缺点
优点
缺点
优点
提升处理效率
减少网络IO
保留列式存储优点
结合体,减少网络IO和分布式事务
先水平分片,再垂直分片
垂直分片策略的水平扩容版本
先垂直分片,再水平分片
有限的水平扩展能力
高I/O性能
低存储成本
列式存储
宽表存储,按列读取
数据分析
达到读写和水平扩展的最优平衡
结合垂直分片和水平分片
每个分片处理一部分字段的全部数据
数据Schema字段集个数作为划分对象
每个分片处理一定数据条数
数据条数作为划分对象
你接触的数据库系统是行式还是列式存储?
知识库
架构设计取舍
列式存储
行式存储
优势
水平垂直分片策略
垂直水平分片策略
限制
优势
技术原理
应用场景
混合分片
垂直分片
水平分片
思考题
总结
行列存储比较
混合分片策略
垂直分片策略
分片策略概述
数据分片策略总结

该思维导图由 AI 生成,仅供参考

你好,我是陈现麟。
通过了解水平分片策略中,关于数据划分和数据平衡的原理和知识,我们可以基于极客时间的业务场景,选择合适的数据划分和数据平衡的方式,组合出最佳的水平分片策略。
而在一些数据分析的场景中,一行数据往往有非常多的字段,我们在计算时,却只需要一列或者几列的数据。这时基于水平分片策略,虽然能解决数据容量的问题,但是却没有充分利用数据分析场景的业务特点进行优化。那么是否有针对这个场景设计的数据分片方式呢?
答案是肯定的,数据的垂直分片与混合分片,比起水平分片来说,能更好地满足数据分析场景。所以在本节课中,我们将一起来讨论数据分片的另外两种方式:垂直分片与混合分片,思考一下垂直分片与混合分片,是如何利用数据分析场景的业务特点,来做数据存储优化的。
我们会先讨论垂直分片策略的应用场景和技术原理,接着分析混合分片策略是如何结合垂直分片与混合分片,在读写和水平扩展之间达到最优平衡的,最后再对讨论垂直分片时,引入的两种存储方式:行式存储和列式存储,进行对比和总结。

垂直分片策略

垂直分片策略和水平分片策略都是对数据进行分片,但是它们的思路却截然不同。水平分片策略将整个数据集的条数作为划分的对象,每一个分片负责处理一定的数据条数。而垂直分片策略则是将数据 Schema 的字段集个数作为划分的对象,每一个分片负责处理一个或几个字段的全部数据,具体如下图所示。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

混合分片策略在大数据分析场景中发挥着重要作用。相对于水平分片,垂直分片更适合处理宽表存储、按列读取、读多写少、数据量大、查询无规律的场景。垂直分片通过列式存储和高效压缩降低存储成本、提高读取性能。然而,混合分片策略将垂直分片与水平分片结合起来,以达到最优平衡。垂直水平分片策略和水平垂直分片策略是混合分片的两种模式,分别适用于不同的数据集。此外,文章还对行式存储和列式存储进行了全面的对比和总结,帮助读者更好地理解它们的优缺点以及适用场景。通过对各种策略不同优缺点的讨论和对比,读者能够明白架构设计总是依赖业务场景的特点来做取舍,没有完美的架构,只有完美的 trade-off。文章内容丰富,对于需要了解大数据分片策略的读者具有重要参考价值。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《深入浅出分布式技术原理》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(5)

  • 最新
  • 精选
  • 不吃辣👾
    老师,垂直分片就没有上节水平分片带来的,访问冷热不均,数据倾斜,数据有序性问题吗?

    作者回复: 也有,不过垂直分片一般和水平分片组合使用,所以可以利用水平分片来解决这样问题。

    2022-04-04
    1
  • 水草
    垂直水平和水平垂直还是没看懂,它们两个示意图都一样。

    作者回复: 分片的数目不一样,一个是 2 个分片,一个是 10 个分片

    2022-03-20
    2
  • peter
    请教老师两个问题啊: Q1:垂直分片为什么水平扩展性差? 水平扩展是把数据水平分为多个部分,照样可以啊,只不过可能麻烦一些,需要把多个垂直分片同事分裂。 Q2:水平垂直拆分图,为什么是2个分片?应该也是十个分片啊。
    2022-03-11
    2
  • shuff1e
    其中,主键所在的列是有序的,其他列的读取性能也非常不错,可以理解为数据即索引,所以一般来说,列式存储系统对二级索引依赖不大,列式存储可以方便地应对查询无规律,不能预先建立索引的情况。 —— 其他列的读取性能也非常不错,列式存储对二级索引依赖不大,这个的意思具体是?
    2022-03-12
    1
    1
  • 雾都
    请问老师一个问题,水平分片和垂直分片中的每一片在物理机上是怎么存储的,一片一个物理机?一片一个物理文件?
    2022-03-11
    2
收起评论
显示
设置
留言
5
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部