041、TiDB特性_在线索引

这篇具有很好参考价值的文章主要介绍了041、TiDB特性_在线索引。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

索引 DDL

索引概述

索引:指向行记录的指针以加快数据检索速度
快速找到表里的行记录
避免全表扫描
提高查询性能

以下 TiDB 约束默认提供索引:

  • Primary Key
  • Unique Key

可以通过 CREATE INDEX 语句创建

  • 索引信息系统表: information_schema.tidb_indexes,索引名称: KEY_NAME
  • SHOW INDEX FROM table_name; 获取索引的定义

Unique Key 和索引

唯一键具有以下特点:

  • 唯一标识表中的单个行
  • 接受 NULL
  • 每张表允许多个唯一键
tidb> CREATE TABLE test.dropme (
   ->   id BIGINT AUTO_RANDOM,
   ->   name CHAR(35) NOT NULL,
   ->   PRIMARY KEY (id),
   ->   UNIQUE KEY (name)
   ->   );
tidb> SELECT key_name, column_name, index_id FROM information_schema.tidb_indexes 
   -> WHERE table_schema='test' AND table_name='dropme';
+----------+-------------+----------+
| key_name | column_name | index_id |
+----------+-------------+----------+
| PRIMARY  | id          |        0 |
|  name    | name        |        1 |
+----------+-------------+----------+

二级索引

  • 二级索引:主键以外的索引
  • 唯一二级索引:具有约束条件的二级索引

创建二级索引:
创建表时使用 INDEX 或 KEY 关键字
对现有的表:

ALTER TABLE ... ADD INDEX/KEY ...
CREATE INDEX ... ON ...
tidb> CREATE TABLE test.ggg (id INT, name CHAR(30), KEY(name));

tidb> CREATE INDEX ggg_idx ON test.ggg (id);

tidb> CREATE TABLE test.gg (id INT, id2 INT, name CHAR(30), INDEX(name));

tidb> ALTER TABLE test.gg ADD KEY (id);

tidb> ALTER TABLE test.gg ADD INDEX (id2);

复合 Primary Key

复合主键需要两列或更多列才能唯一标识行
组成复合主键的各个列单独并不需要保证唯一性文章来源地址https://www.toymoban.com/news/detail-586479.html

infromation_schema.tidb_indexes
COLUMN_NAME
SEQ_IN_INDEX
CREATE TABLE `stars` (
  `name` char(20) NOT NULL DEFAULT '',
  `mass` float NOT NULL DEFAULT 0.0 COMMENT '10**24 kg',
  ...
  `distance_from_earth` float COMMENT 'light year',
  `discover_date` datetime NOT NULL,
  PRIMARY KEY (`name`, `discover_date`)
);
name 和 discover_date 两个列共同组成了一个复合主键。

到了这里,关于041、TiDB特性_在线索引的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 044、TiDB特性_PlacementPolicy

    跨地域部署的集群,无法本地访问 无法根据业务隔离资源 难以按照业务登记配置资源和副本数 跨地域部署的集群,支持本地访问 根据业务隔离资源 按照业务等级配置资源和副本数 Region放置规则 用户可以将表指定部署到不同的地域、主机 支持应用跨地域部署 保证本地的数

    2024年02月17日
    浏览(38)
  • TiDB(4):TiDB-SQL操作

    1 创建、查看和删除数据库 (1)要创建一个名为 samp_db 的数据库,可使用以下语句: (2)使用 SHOW DATABASES 语句查看数据库: (3)使用 DROP DATABASE 语句删除数据库,例如: (4)再次查看数据库: 2 创建、查看和删除表 (1)先创建一个库 (2)使用 SHOW TABLES 语句查看数据库

    2024年02月12日
    浏览(45)
  • tidb数据库的安装与部署

      TiDB  是  PingCAP  公司自主设计、研发的开源分布式关系型数据库,是一款同时支持在线事务处理与在线分析处理 (Hybrid Transactional and Analytical Processing, HTAP) 的融合型分布式数据库产品,具备水平扩容或者缩容、金融级高可用、实时 HTAP、云原生的分布式数据库、兼容 MySQL

    2024年02月04日
    浏览(44)
  • 【TiDB理论知识 07】SQL执行流程

    目录 目录 一 DML语句读写流程概要 1 DML语句读流程概要 2  DML语句写流程概要 二 DDL语句的执行流程概要 SQL解析 Parse 与 编译 Compile 读取的执行 写入的执行 DDL的执行 1 DML语句读流程概要 用户发出SQL 被协议层接收 Protocal Layer 通过PD获取时间戳  parse模块 解析SQL,通过词法解析

    2024年02月15日
    浏览(32)
  • [Lesson 01] TiDB数据库架构概述

    目录 一 章节目标  二 TiDB 体系结构  1 TiDB Server 2.1 TiKV 2.2 TiFlash 3 PD 参考  理解TiDB数据库整体架构 了解TiDB Server ,TiKV ,TiFlash 和 PD的主要功能 了解这些体系结构是如何实现TiDB的核心功能的 TiDB Server 是无状态的,所以可以结合负载均衡的组件LVS。 数据并不是存储在TiDB Ser

    2024年02月16日
    浏览(38)
  • 我的docker随笔42:TiDB数据库部署

    本文介绍 TiDB 数据库的容器化部署。 前段时间,国产化替换提上了日程,有关部门(这个真的是某部门)作为领导身份介入,因此,需启动相应的事情,但最近似乎没有什么动静。因为身份问题,只好私下做一些力所能及的事。 数据库方面,有同事已经对接上达梦,当前只

    2024年02月12日
    浏览(41)
  • 11.云原生分布式数据库之TIDB

    云原生专栏大纲 从后端视角、运维视角和基础架构视角来看,使用 TiDB 作为数据库系统可以获得分布式架构、高可用性、强一致性、事务支持、水平扩展、高性能、简化运维、灵活的扩展和配置、集成的监控和告警等优势。这些优势使得 TiDB 成为处理大规模数据和高并发请求

    2024年02月01日
    浏览(65)
  • 分布式数据库(DorisDB、Clickhouse、TiDB)调研

    B站视频:DorisDB VS ClickHouse OLAP PK 1.1 DorisDB 场量:线上数据应用 访问官方网站 DorisDB企业版文档 单表/多表查询,DorisDB总体时间最短 单表查询:DorisDB最快次数最多,ClickHouse次之 多表查询:DorisDB所有执行均最快 DorisDB多表关联效率好 支持各种主流分布式Join,不仅支持大宽表模

    2024年02月06日
    浏览(45)
  • 【产品兼容认证】WhaleStudio 成功兼容TiDB数据库软件

    北京,2023年12月27日 - 平凯星辰(北京)科技有限公司(以下简称平凯星辰)旗下的 TiDB 产品与白鲸开源的 WhaleStudio 已成功完成产品兼容性认证。这一重要合作旨在为全球客户提供更大的价值。 WhaleStudio 是一款由 Apache DolphinScheduler 和 SeaTunnel 核心团队打造的商业版高性能分布

    2024年01月24日
    浏览(43)
  • 【NewSQL】-- 分布式数据库 TiDB 和 CockroachDB

          国产骄傲。从2015年开始,至今已8年,当前最新版本是7.5.x。TiDB 开源分布式 NewSQL 关系型数据库 是新一代开源分布式 NewSQL 数据库,模型受 Google Spanner / F1 论文的启发,实现了自动的水平伸缩,强一致性的分布式事务,基于 Raft 算法的多副本复制等重要 NewSQL 特性。  

    2024年01月21日
    浏览(61)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包