> 文章列表 > 什么是 分片表?索引?

什么是 分片表?索引?

什么是 分片表?索引?

一、概述

数据 分片:允许 表一级 控制 数据存储

表 分片:GBase 8S数据库 特征,

        1.允许 用户对表中的记录分组

        2.将数据 存储到多个磁盘上,可减少磁盘IO竞争

        3.对数据索引 分区的主要目的:提高程序访问数据库的效率,提高是无的吞吐能力

二、分片的意义

1、分片以 表 为对象,的分散存储方法

2、表与索引可分散存储于不同的dbspaces或partitions中

3、

三、记录?字段?索引?事务?

记录:一行 的所有数据

字段:一列,某属性。比如学生表(id,name,score),那么学生表有3个字段

事务操作!原子操作,逻辑上的 一组操作,组成这组操作的所有单元,要么全部成功,要么全部失败。在不同的环境中,都可以由事务,那么在数据库中,对应的就是数据库事务。所以类似原子操作,要么全做,要么一个都不做!

        意义:

                比如小明给小红转钱,那么小明的账户上就要少1000,小红的账户上就要多1000,,但是若是中间发生了断点,网络不好的状况,有可能小明账户上的钱少了1000,但是小红账户上却没有多1000,这就造成了麻烦。所以要引出事务概念:

创建表:
create table accout(
id int primary key auto_increment,
name varchar(20) comment '账户名称',
money decimal(11,2) comment '金额'
);插入数据:
insert into accout(name, money) values
('小明', 5000),
('小红', 1000);转账操作:
-- 小明账户减少2000
update accout set money=money-2000 where name = '小明';
-- 小红账户增加2000
update accout set money=money+2000 where name = '小红'---------------------------------------------------------------
1、转钱之前开始事务:
start transaction;2、然后开始转钱3、操作完之后,要么提交、要么回滚
提交事务:commit;
回滚事务:rollback;

索引:表、文件、特殊类型的表(内容有:1关键字段值 + 2指针:所有记录的引用指针、指向记录)。这些值和指针是按照特定的顺序存储的,表示数据库中将采用这种顺序排列数据

        操作:可以对表中的一列或多列创建索引,并指定索引的类型,各类索引有各自的数据结构实现。

        意义:索引理解为书本的目录,它可以帮我们快速找到数据的位置,提高海量数据的查询效率

        应用场景:

                1、数据量较大,且经常对这些列进行条件查询。

                2、该数据库表的插入操作,及对这些列的修改操作频率较低。

                3、索引会占用额外的磁盘空间,会额外创建索引信息表。

        不适合场景:

                1、对于插入、删除数据频率高的表,不适用索引

                2、对于某列修改频率高的,该列不适用索引

        使用:

查看索引:

show index from 表名;
例如查看学生表已有的索引:show index from student;

创建索引:

create index 索引名 on 表名(字段名);
例如创建班级表中,name字段的索引:create index idx_classes_name on classes(name);

删除索引:

drop index 索引名 on 表名;
例如删除班级表中name字段的索引:drop index idx_classes_name on classes