Skip to content

数据库模式设计概述

本篇文章简要概述了 MatrixOne 的数据库模式。本篇概述主要介绍 MatrixOne 数据库相关术语和后续的数据读写示例。

关键术语 - 数据库模式

数据库模式 (Schema):本篇文章所提到的数据库模式等同于逻辑对象数据库,与 MySQL 一样,不做区分。

数据库 Database

MatrixOne 数据库或 MatrixOne Database,为表的集合。

你可以使用 SHOW DATABASES; 查看 MatrixOne 所包含的默认数据库。你也可以使用 CREATE DATABASE database_name; 创建一个新的数据库。

表 Table

MatrixOne 所指的表或 Table,从属于 MatrixOne 的某个数据库。

表包含数据行。每行数据中的每个值都属于一个特定的列。每列都只允许单一数据类型的数据值。

索引 Index

索引是一种数据结构,用于快速查找数据库表格中的数据。它可以看作是一本目录,包含有关表格中各行数据的指针,使得查询可以更快速地定位到满足特定条件的数据。

数据库中常用的索引类型包括主键索引、次级索引等。其中,唯一索引用于保证特定列或列组合的唯一性,普通索引用于提高查询性能,全文索引则用于在文本数据中进行全文检索。

索引有两种常见的类型,分别为:

  • Primary Key:主键索引,即标识在主键列上的索引,主键索引用于唯一标识表格中的每一行数据。
  • Secondary Index:次级索引,即在非主键上标识的索引,次级索引也称为非聚集索引(non-clustered index),用于提高查询性能和加速数据检索。

其他对象

MatrixOne 支持一些和表同级的对象:

  • 视图:视图是一张虚拟表,该虚拟表的结构由创建视图时的 SELECT 语句定义,MatrixOne 暂不支持物化视图。
  • 临时表:临时表是数据不持久化的表。

访问控制

MatrixOne 支持基于用户或角色的访问控制。你可以通过角色或直接指向用户,从而授予用户查看、修改或删除数据对象和数据模式的权限。

更多信息,参见 MatrixOne 中的权限控制

对象大小限制

标识符长度限制

对象 限制
数据库名称 64 字符
表名称 64 字符
列名称 64 字符
视图名称 64 字符

单个表内限制

对象 限制
列数 默认为 1017,最大可调至 4096
分区数 8192
单行大小 默认为 6MB
单行内单列大小 6MB

数据类型限制

更多关于数据类型的参考文档,参见数据类型

行数

MatrixOne 可通过增加集群的节点数来支持任意数量的行。