GBase8s 分片表

        GBase8s 的分片是用来处理数据量非常大的表和索引的技术。分片是gbases数据库服务器提供的一种内部的把大表拆分为多个小表的管理方式,同时对外提供同一个表的管理方式,这样对表的访问者而言非常透明。分片可以用将大表拆分为小表的方式进行管理,大大提高了gbase8s的大数据处理性能。

  • 分片是指把一个表的数据分散到多个dbspace中存储。
  • 在逻辑上对外提供一个表的访问接口。
  • 在数据库内部,物理上把大表拆分为多个小表进行管理。

1.分片的优缺点

(1)有效处理大数据表。
        有效利用并发运行,分片表可以启动PDQ,开启多线程并行处理,可以充分利用多 CPU、多磁盘的物理资源,大大提高大数据表的访问速度。
利用分片忽略,可减少需要访问的表空间。利用分片表将大表拆分存放的特性,相当于以访问小表的效率进行访问,如某分片方式将每年存储在一个分片上,那么查询某一时间点的数据时,只需要扫描分片表的一个分片即可,可以有效地处理大数据量的表。
(2)分片容易管理--表组合/表分离(attach/detach)。
        可以利用GBase 8t 对分片表提供的 attach 和 detach 功能对分片表进行快速、高效的管理。例如 detach 可以对表的某一个分片进行快速分离,我们可以利用该功能对历史数据进行快速删除,可以替代delete 方式。
(3)有效地提高可用性。
        当表的某个分片出现故障时,表的其他分片的数据仍然可用,同时只需要修复该分片即可。当我们需要对表进行重建时,我们可以对分片表利用attach/detach按分片一个个地完成重建,从而提高表的可用性,满足7x24运行模式的要求。

2.分片表的缺点
不合理的分片策略和数据访问方式很容易导致分片在实际应用中不能利用如上所指述的分片的好处,如果利用不到分片的好处,那么分片会带来负面问题。

分片方式

        GBase 8s分片方式概括起来分为s两类:第一类是轮转法分片(Round-Robin);第二类是基于表达式的方式(Expression-Based),包括多种具体的形式,如基本表达式、list等。
GBase 8s兼容 Oracle 的分片语法 partition 关键字。
        轮转法采用GBase 8s内部提供的哈希算法,把数据均匀地分布在不同的表空间(dbspace)上。而基于表达式的分片方法是按照用户定义的表达式把数据分布存储在预定的表空间上,数据的分布方式完全由用户自行根据数据的特征和访问情况进行指定。

        轮转法分片(Round-Robin)采用GBase8s内部提供的哈希算法进行数据的均匀分布,使用起来很简单,不需要了解数据的分片情况。轮转法只能应用于表,不能对索引采用该方法进行分片。同时轮转法不能利用分片表的忽略分片的特性减少查询对磁盘的扫描,但对于需要扫描大部分数据的应用情况,使用轮转法分片方法可以利用PDQ启用多线程并行扫描,提高查询性能。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值