ITPub博客

首页 > 数据库 > 国内数据库 > 南大通用GBase 8c 数据库分区表实践探秘(四)

南大通用GBase 8c 数据库分区表实践探秘(四)

原创 国内数据库 作者:GBASE南大通用 时间:2025-09-11 13:48:10 0 删除 编辑

本文继续针对南大通用GBase 8c 数据库四种分区类型分别阐述其功能、效果及常用使用场景。

3. 哈希分区表

哈希分区通过哈希函数将数据均匀分布到不同分区,适用于负载均衡场景。

适用场景

哈希分区适用于:

  • 需要均匀分布数据以避免热点的场景
  • 没有明显范围或列表特征的数据
  • 高并发插入和查询场景

语法格式

CREATE TABLE partition_table_name

(

[column_name data_type ] [, ... ]

)

PARTITION BY HASH (partition_key)

(PARTITION partition_name )

[, ... ]

;

SQL示例

注:HASH 分区表不支持新建/删除/合并分区

drop table if exists record_hash;

create table record_hash

(

number integer,

name varchar(20),

class varchar(20),

classno varchar(1),

grade integer

)

partition by hash(classno)

(

partition class_01 ,

partition class_02 ,

partition class_03

);

INSERT INTO record_hash (number, name, class, classno, grade) VALUES

(1, 'Alice', 'Class A', 1, 55),

(2, 'Bob', 'Class B', 2, 35),

(3, 'Charlie', 'Class D', 4, 75),

(4, 'David', 'Class A', 1, 45),

(5, 'Eve', 'Class B', 2, 65),

(6, 'Frank', 'Class C', 3, 85),

(7, 'Grace', 'Class A', 1, 70),

(8, 'Hannah', 'Class D', 4, 80),

(9, 'Ivy', 'Class C', 3, 95),

(10, 'Jack', 'Class D', 4, 50),

(11, 'Kate', 'Class B', 2, 60),

(12, 'Leo', 'Class C', 3, 20),

(13, 'Mike', 'Class D', 4, 72),

(14, 'Nancy', 'Class B', 2, 82),

(15, 'Olivia', 'Class C', 3, 92),

(16, 'Peter', 'Class A', 1, 62),

(17, 'Queen', 'Class D', 4, 5),

(18, 'Ryan', 'Class C', 3, 100),

(19, 'Sara', 'Class A', 1, 79), (20, 'Tom', 'Class B', 2, 89);

-- 查询数据

SELECT * FROM record_hash ;

-- 查询分区为 指定的值所在的分区

SELECT * FROM record_hash PARTITION FOR (1);

-- 查询分区为 class_01 的数据

SELECT * FROM record_hash PARTITION (class_03);

-- 重命名分区:将 class_05 改成 class_06

ALTER TABLE record_hash rename PARTITION class_03 to class_04;

-- 查看分区表信息

SELECT relname, boundaries::varchar FROM pg_partition p where p.parentid='record_hash'::regclass order by 1;


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69979120/viewspace-3095457/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
GBASE南大通用,致力于成为用户最信赖的数据库产品供应商!

注册时间:2020-07-16

  • 博文量
    1314
  • 访问量
    1292636