注意:仅在分布式版本中可以创建分片表
AntDB支持多种分片方式,默认为hash分片。
创建如下测试表,可以看出分片键选择的默认行为。
create table test1
(
id int,
name text
);
create table test2
(
id int,
name text,
primary key (name)
);
create table test3
(
id int,
name text
) distribute by hash(name);
create table test4
(
id int,
name text,
constraint c_name unique(name)
);
create table test5
(
id int,
name text
) distribute by replication;在adb中通过\d+ tablename命令可以看到表分片方式:
antdb=> \d+ test1
Table "user1.test1"
Column | Type | Collation | Nullable | Default | Storage | Stats target | Description
--------+---------+-----------+----------+---------+----------+--------------+-------------
id | integer | | | | plain | |
name | text | | | | extended | |
Distribute By: HASH(id)
Location Nodes: ALL DATANODES
antdb=> \d+ test5
Table "user1.test5"
Column | Type | Collation | Nullable | Default | Storage | Stats target | Description
--------+---------+-----------+----------+---------+----------+--------------+-------------
id | integer | | | | plain | |
name | text | | | | extended | |
Distribute By: REPLICATION
Location Nodes: ALL DATANODES可以看到test1和test5 有不同的分片方式。
在AntDB中也提供了不同分片方式之间的转换。
复制表修改为分片表:
alter table test5 distribute by hash(id);分片表修改为复制表:
alter table test5 distribute by replication;修改分片字段:
alter table test5 distribute by hash(name);关于AntDB数据库
AntDB数据库始于2008年,在运营商的核心系统上,为全国24个省份的10亿多用户提供在线服务,具备高性能、弹性扩展、高可靠等产品特性,峰值每秒可处理百万笔通信核心交易,保障系统持续稳定运行近十年,并在通信、金融、交通、能源、物联网等行业成功商用落地。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




