数据库 Database

数据库(Database)是用户存放数据的集合。由于采用了存算分离架构,Database 可以绑定到某一 Warebase,形成类似于传统 Postgres 中的 Database 概念,供用户进行增删改查。Database 也可以脱离于计算单元(Warebase)而独立存在。

Database 和 Warebase 绑定方式主要有:

  1. 通过 SQL 在 Warebase 中创建 Database(如 CREATE DATABASE xxx),新创建的 Database 信息将展示在 Data Cloud 的“数据库”页面。
  2. 在 Warebase 中解绑(Detach)Database,生成不与任何 Warebase 绑定的 Database,可再次绑定(Attach)至原来或另一个 Warebase。
  3. 通过备份(Backup)并恢复(Restore)到特定 Warebase。

Database 和 Warebase 解绑方式包括:

  1. 通过 SQL 在 Warebase 中删除 Database(如 DROP DATABASE xxx)。
  2. 通过解绑(Detach)操作,将 Database 从 Warebase 中解除绑定。

注意事项:Database 和 Warebase 关系的变化及存储大小的更新,目前存在几分钟的延迟。

Database 的查找

在数据库页面,默认情况下会分页展示当前 Data Cloud 下所有 Database 的情况。主要信息包括数据库句柄(Handle)、Database 和 Warebase 绑定后的数据库命名(DatabaseName)、绑定状态(Attached/Detached)、存储大小等,还包括当前数据库的各种操作。此外,页面还显示数据库总存储大小、各状态下存储大小以及各 Warebase 绑定的 Database 存储大小,如下图所示:

搜索框提供丰富的搜索功能,包括:

  1. 模糊搜索:在搜索框中输入关键词(如 "post"),会列出包含该关键词的数据库句柄(Handle)、Warebase 名称(WarebaseName)、数据库命名(DatabaseName)等字段的 Database 条目。
  2. 精确匹配: 搜索框支持使用“字段名:字段值”的格式进行精确匹配。例如: - handle:精确匹配 handle 字段的值,如:handle:postgres-9c1475d0 - DatabaseName:精确匹配 databaseName 字段的值,如:DatabaseName:postgres
    • warebaseId:精确匹配 warebaseId 字段的值,如:warebaseId:wb3vlgqzev - warebaseName:精确匹配 warebaseName 字段的值,如:warebaseName:v_warebase - state:精确匹配 state 字段的值,目前支持 attached 和 detached(其他值无效),如:state:attached

注意事项:- 模糊搜索和精确匹配可以混合使用,用空格分割。 - 多个精确匹配可以混合使用,用空格分割。 - 多个模糊搜索关键词将仅显示最后一个关键词的结果,多个相同 key 的匹配将仅显示最后一个 key 对应值的匹配结果。 - 所有 key 不区分大小写,所有值(包括模糊搜索)区分大小写。

Database 的管理

我们为 Database 提供了多种操作,包括重命名数据库句柄(Handle)、Database 与 Warebase 解绑(Detach)、Database 与 Warebase 绑定(Attach)、备份(Backup)、恢复(Restore)以及删除 Database(Drop)等。

  1. 重命名: 在新建数据库时,系统会自动创建一个数据库句柄,通常以绑定后的数据库名作为前缀。用户可以根据自身习惯或规划对数据库句柄进行重命名。需要注意的是,数据库句柄在同一 Data Cloud 下必须保持唯一。这项重命名操作既可以适用于单个 Database,也可以批量对多个 Database 进行。
  2. 解绑:已绑定的 Database 可从 Warebase/数据库名称 解绑,前提是 Warebase 处于“运行中”状态。
  3. 备份:详情见“备份和恢复”页,前提是 Warebase 处于“运行中”状态。
  4. 恢复:详情见“备份和恢复”页,前提是恢复目标的 Warebase 处于“运行中”状态。
  5. 绑定:将 Database 绑定到特定的 Warebase,前提是 Warebase 处于“运行中”状态。
  6. 删除:删除 Database,等同于执行 DROP DATABASE xxx,前提是 Warebase 处于“运行中”状态。

进入 Database 详情页面,可以查看详细信息并设置 PITR 时间窗口,如下图所示:

在存储页中,用户可以自定义时间范围,查看 Database 存储大小的变化曲线。