网站大量收购闲置独家精品文档,联系QQ:2885784924

2025年「分布式技术专题」数据切分与合并 .pdfVIP

2025年「分布式技术专题」数据切分与合并 .pdf

  1. 1、本文档共2页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

为天地立心,为生民立命,为往圣继绝学,为万世开太平。——张载

「分布式技术专题」数据切分与合并

为何进⾏数据切分

海量数据的存储和访问成为系统设计的瓶颈问题。每天海量数据的增长⽆疑对数据库造成了相当⾼的负载。给系统的稳定性和扩展性造成了

极⼤的问题。通过数据的拆来提⾼系统整体性能,扩充系统整体容量,横向扩展数据层已经成为分布式数据库架构师及开发⼈员⾸选的⽅

式。因此,需要能数据库的数据进分切分存储。

为何进⾏数据合并

果⽂件的数⽬达到阈值,合并(compaction)过程将把它们合并成数量更少的体积更⼤的⽂件,便于数据库更好地进⾏数据

原理

数据的切分(Sharding)原理:依据其切分规则的类型,能够分为两种切分模式。⼀种是依照不同的表(或者Schema)来切分

数据库(主机)之上。这样的切能够称之为数据的垂直(纵向)切分。第⼆种则是依据表中的数据的逻辑关系,将同⼀个表中的数据依照某

种条件拆分到多台数据库(主机)上⾯,这样的切分称之为数据的⽔平(横向)切分。

数据合并原理:

⼩合并,指选取⼀些⼩的、相邻的StoreFile将他们合并成⼀个更⼤的StoreFile,在这个过程中不会处理已经Deleted的⽂件。

Compaction的结果是更少并且更⼤的StoreFile。

⼤合并,将所有的StoreFile合并成⼀个StoreFile,这个过程会清理三种数据:被删除的数据、TTL过期数据、版本号超过设定版本号的数

据(VERSION)。

实现⽅式

切分⼀个Region代表⼀个表的⼀段数据集合,当Region太⼤,hubbleMaster会将其拆分。Region太⼤会导致读取效率太低

太长,通过将⼤数据拆分到不同机器上,分别查询再聚合。

Region可以⼿动和⾃动拆分

⼿动拆分

在建表的时候就定义好拆分点的算法,创建表,并传⼊拆分点算法,就可以在建表同事定义拆分点算法。开始的时候定义预拆分,导⼊初始

数据,之后使⽤⾃动拆分来让Hubble数据库⾃动管理Region。不要关闭⾃动拆分。避免因为直接使⽤预拆分导致的热点Region问题。

⾃动拆分

固定⼤⼩拆分策略,如果单个Region⼤⼩超过了阀值那么就拆分为两个Region,这种策略使得集群的Region⼤⼩很平均。动态限制拆分

策略,是新版本的默认策略。有的数据库⽂件增长是翻倍的数据量⼤⼩时,进⾏拆分,如64M、128M、256M等。

热点拆分策略,这是唯⼀考虑到热点数据的拆分策略,如果数据库中的Region某些短时间内被访问很频繁,承载了很⼤压⼒,就是热点

Region。

合并

在进⾏合并的过程中,不同机器上的Region需要进⾏合并,Region中的⽂件夹需要合并,⽂件夹中的sst⽂件也需要合并,合并过程会进

⾏⼤量的读写操作,极⼤程度上占⽤资源;Region的合并称之为⼤合并,⼀般情况下是关闭的,尤其是业务⾼峰期;平时只会进⾏sst⽂件

之间的⼩合并;只有在业务低峰期(节假⽇)进⾏Region之间的⼤合并。⼀般存放标签性质的数据报表,当达到过期时间时需要进⾏

Region之间的合并操作。

合并有两种⽅式:

⼿动合并(⼜称冷合并)

通过客户端命令⾏的⽅式,通过⼈⼯指定所所需合并⽂件,调⽤合并的⼯具类来实现两个Region的合并,但是有⼀个前提,必须保证这两

个Region已经下线,保证HubbleMaster和所有的HubbleRegionServer都停掉,否则会报错,但是这样太⿇烦了,⽽且不适合⽣产使

⽤。

⾃动合并(⼜秒热合并)

百学须先立志。——朱熹

在合并策略中配置⽂件合并策略阀值,当系统⽂件数据达到这值后,系统⾃动触发合并任务。

优势与劣势

优势

1、拆分规则明确。

2、系统之间进⾏整合或扩展很容易。

3、按照成本、应⽤的等级、应⽤的类型等将表放到不同的机器上便于管理。

4、切分的表结构相同,应⽤层改造较少,只需要增加路由规则即可。

5、提⾼了系统的稳定性和负载能⼒。

劣势

1、提⾼了系统的复杂度。

2、事务处理复杂。

3、切分后,数据是分散的,跨库join操作难和性能差。

⾯临挑战

1、分⽚事务的⼀致性机制实现复杂。

2、分布式事务的问题。

3、数据迁移的时候⿇烦。

以上为数据切分与合并,「分布式技术专题」是国产数据库hubble团队精⼼整编,专题会持续更新,欢迎⼤家保持关注。

您可能关注的文档

文档评论(0)

185****2215 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档